Ошибка массового импортаasticsearch json_parse_exception - PullRequest
0 голосов
/ 14 ноября 2018

Я использую asticsearch-php для импорта массовых данных в индекс эластичного поиска.Я использую версию 6.4, если это имеет значение.

Теперь мои данные не меняются, но каждый раз, когда я запускаю массовый импорт с теми же данными, я случайно получаю сообщение об ошибке, как показано ниже

{
  "error" : { "root_cause" : 
   [{
     "type":"json_parse_exception",
     "reason":"Unrecognized token 'POST': was expecting ('true', 'false' or 'null')

## and sometimes like this

{
  "error" : { "root_cause" : 
   [{
     "type":"json_parse_exception",
     "reason":"Unrecognized token 'Host': was expecting ('true', 'false' or 'null')

Иногда ошибка всплывает при альтернативных запусках.Как я буду импортировать данные, и все будет хорошо без ошибок.Я удалю индекс, повторно импортирую данные и все.одна и та же ошибка будет появляться случайно через некоторое время, пока выполняется импорт.

Я проверил данные json построчно, используя скрипт php, и в данных нет ошибки синтаксического анализа json.

Что яне могу понять, это поведение не то же самое при каждом запуске.Я стал совершенно невежественным.Где я должен искать решение этой проблемы?

Подозревая, что могут быть некоторые непечатаемые символы, вызывающие проблему, я добавил скрипт очистки, как показано ниже.

$line = preg_replace('/[\x00-\x1F\x7F\xA0]/u', '', $json); // clean up of control characters if any
$lineData = json_decode($line, true);

Но все же случайныйошибка не отпускаетМожет ли это быть ошибкой в ​​php-библиотекеasticsearch?

...