После написания нескольких кастомных парсеров чере Net::Http появился следующий баг: если отправить подряд несколько запросов по одному пресету, то и выполнения задачи и результаты как бы склеиваются и в результате некоторых файла оказываются и соседние запросы тоже. По моим наблюдениям ошибка возникает, когда в пресете используется переменная $query.orig. Запросы отправляю и получаю следующим кодом: my $parser = AParser->new('http://localhost:9091/API', 'password'); my($taskUid, $error) = $parser->addTask('20-threads-proxy', $transform, 'text', [$input]); if($taskUid) { $parser->waitForTask($taskUid); my $url=$parser->getTaskResultsFile($taskUid); my $content = get $url; ... ... }
Скорее всего проблема в том, что возможно где-то допущена ошибка (в коде или задании) и сохранение результатов идет в один и тот же файл. Или запросы отправляются по несколько штук в секунду, что при использовании стандартного формата имени файла $datefile.format().txt дает одинаковый файл, в который пишутся результаты из разных заданий. В таком случае можно в имя файла дописывать запрос, или другую информацию, чтобы сделать его более уникальным. Например: Код: $query_$datefile.format().txt