Я пытаюсь проанализировать огромные данные XML-клоба из oracle DB в Redhat linux 5.5, 64bit, используя libxml2-2.7.6
Но когда я попытался проанализировать XML размером более 400 КБ (409600 байт), функция синтаксического анализатора xml 'xmlParseMemory' вернула нулевой указатель.
(Успешно загрузить данные XML-сгустка в строку в C, проверил, правильно ли строка 'sData' заполнена данными.)
xmlDocPtr xDoc;
...
xDoc = xmlParseMemory(sData, strlen(sData));
if(xDoc == NULL) return -1;
...
Parser работает, когда размер XML меньше 400 КБ.
Но только когда больше 400 КБ, paser возвращает нулевой указатель, несмотря на правильные строковые данные, 'sData'.
И я уже пробовал xmlReadDoc, xmlReadMemory с использованием xmlMemSetup до xmlInitParser.
Как решить эту проблему с помощью функций парсера xml?