parser

Написать ответ на текущее сообщение

 

 
   команды управления поиском

Там достаточно странно.

MoKo 22.12.2017 05:05

У меня получилось повторить исключение только когда в цикле аттрибутов "досыпал". Интересно, что размер тоже около 10Mb. При 1040 в цикле ошибки уже нет. Добавление в xdoc.C

#define xmlParseMemory(buffer, size) xmlReadMemory(buffer, size, NULL, NULL, XML_PARSE_HUGE)

проблему устраняет, так что завел тикет, добавим такую возможность.
@xml1[][i]
^for[i](0;1050){<picture id="88888" title="Доставка для иногородних" comment="Доставка для иногородних" url="/img/88888_delivery_time.png" alt="Доставка для иногородних" alt2="" filesize="8688" width="434" height="323" expires="7200" node_name="logo" y="2012" m="7" d="4" dsql="2012-07-04 10:22:00" h="10" min="22" s="0" $attr />}

@main[]
    $attr[^for[i](1;50){attr$i="$i" }]
    $data[^for[i](1;10){^xml1[]}]
    ^data.length[]
    $x[^xdoc::create{<?xml version="1.0" encoding="utf-8"?><root>$data</root>}]
}

cpu $status:rusage.utime memory($status:memory.used/$status:memory.free) parser $env:PARSER_VERSION