Bug 9224

Summary: Broken XML Catalog env variables
Product: Sisyphus Reporter: Vitaly A. Ostanin <vyt>
Component: libxml2Assignee: Mikhail Zabaluev <mhz>
Status: CLOSED FIXED QA Contact: qa-sisyphus
Severity: normal    
Priority: P2 CC: at, mike, shaba
Version: unstable   
Hardware: all   
OS: Linux   

Description Vitaly A. Ostanin 2006-03-10 15:46:12 MSK
export XML_DEBUG_CATALOG=test && xmllint --noout --valid test.xml
I/O error : failed to load external entity "test.xml"

Проявляется на одной машине с xml-utils-2.6.11-alt1.1 и на другой с
xml-utils-2.6.23-alt1.1 

Переменная XML_CATALOG_FILES тоже не учитывается.

После простой пересборки libxml2-2.6.23-alt1.1.src.rpm из Сизифа, и установки
поверх xml-utils-2.6.23-alt1.1 с помощью 'sudo rpm -Uvh --force ...' всё
заработало как надо:

0 Parsing catalog file:///etc/xml/catalog
file:///etc/xml/catalog added to file hash
file:///usr/share/xml/alt-entities/catalog.xml not found in file hash
0 Parsing catalog file:///usr/share/xml/alt-entities/catalog.xml
file:///usr/share/xml/alt-entities/catalog.xml added to file hash
Comment 1 Mikhail Zabaluev 2006-03-10 22:30:06 MSK
Приложите тестовый файл для воспроизведения проблемы.

Есть идея, почему пересборка помогает?
Comment 2 Vitaly A. Ostanin 2006-03-13 12:18:48 MSK
Тестовый файл не нужен, для отладки достаточно попытки его загрузить, это тоже
делается через XML Catalogs.

Идей нет, проблема странная, и думаю, что трудно воспроизводимая. 

У Григория Баталова воспроизводится на xml-utils-2.6.11-alt1.1 из Сизифа.
У меня воспроизводилась на xml-utils-2.6.23-alt1.1 из Сизифа, пересборка помогла.
У Виталия Липатова не воспроизводится с xml-utils-2.6.23-alt1.1 из Сизифа.
Comment 3 Mikhail Zabaluev 2006-03-13 14:53:50 MSK
Все-таки не понимаю, в чем состоит проблема и как ее попытаться воспроизвести.
Произвольный файл, указанный в командной строке, не загружается? У меня это
работает.
Не загружается external entity, указанная в документе?
Значение переменной окружения влияет на результат?
Comment 4 Vitaly A. Ostanin 2006-03-13 16:22:36 MSK
Проблема в том, что переменная окружения XML_DEBUG_CATALOG не включает отладку
каталогов. В  выводе:

export XML_DEBUG_CATALOG=test && xmllint --noout --valid test.xml
I/O error : failed to load external entity "test.xml"

кроме I/O error должна быть отладка наподобие:

0 Parsing catalog file:///etc/xml/catalog
file:///etc/xml/catalog added to file hash

См. http://xmlsoft.org/catalog.html#validate
Воспроизводить ошибку специально, наверное, не нужно, т.к. отладка мало кому
нужна. Баг репорт я повесил, чтобы зафиксировать версии, и если ошибка
повторится, попробовать её отследить.
Comment 5 Michael Shigorin 2010-10-09 17:23:39 MSD
libxml2 с тех пор пересобиралась не раз, а отследить так никто и не добрался.

$ rpm -q xml-utils
xml-utils-2.7.3-alt2
$ export XML_DEBUG_CATALOG=test && xmllint --noout --valid test.xml
Resolve: sysID test.xml
0 Parsing catalog file:///etc/xml/catalog
file:///etc/xml/catalog added to file hash
Resolve URI test.xml
warning: failed to load external entity "test.xml"
Catalogs cleanup
Free catalog entry -//OASIS//ENTITIES DocBook XML
Free catalog entry -//OASIS//DTD DocBook XML
Free catalog entry ISO 8879:1986
Free catalog entry http://www.oasis-open.org/docbook/
Free catalog entry http://www.oasis-open.org/docbook/
Free catalog entry http://glade.gnome.org/glade-2.0.dtd
Free catalog entry file:///etc/xml/catalog
Free catalog entry