mysql — PHP: сломанный канал в операторе возврата

У меня есть скрипт, который запускается из командной строки и выполняет некоторую обработку базы данных mysql (выберите данные из одной таблицы, сделайте некоторые вычисления и вставьте / обновите другую таблицу). После примерно 10000 итераций я снова получаю следующую ошибку:

DBALStatement :: removeColons (): отправка 5 байтов завершилась неудачно с errno = 32
Сломанная труба

Это метод, о котором идет речь:

public static function removeColons($params) : array
{
$result = [];
foreach ($params as $key => $val) {
if ($key[0] == ':') {
$key = substr($key, 1);
}
$result[$key] = $val;
}

return $result;
}

Строка, в которой происходит ошибка, является оператором return:

    return $result;

Я понимаю, что при выполнении сетевых или файловых операций или чего-либо еще могут возникать разрывы каналов, но как я могу получить эту ошибку в простом операторе возврата, когда рядом нет канала? Что мне не хватает?

редактировать: Кажется, что во время запроса mysql происходит разрыв канала, что будет иметь немного больше смысла. Я в настоящее время все еще пытаюсь выяснить, является ли это проблемой тайм-аута или чем. Тем не менее, важно отметить, что метод и номер строки, указанные в журнале ошибок PHP, в этом случае кажутся неправильными, поскольку ошибка явно не возникает в операторе возврата. Я бы посчитал это ошибкой в ​​отчете об ошибках PHP.

1

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]