Что означает (тайм-аут) в «Strace» -выход? (анализ MySQL / PHP)

У меня проблема с запросом SQL, который по причинам (которые я не понимаю), согласно «strace» a (timeout) и встанет для запуска X-times?

опрос ([{fd = 6, события = POLLIN | POLLPRI}], 1, 0) = 0 (время ожидания)

Сценарий PHP, который выполняет запрос, сначала просматривает базу данных, если соответствующий адрес электронной почты уже есть в базе данных, если нет, то он будет добавлен, и если не было ошибок, отправляется электронное письмо.

Сервер: Ubuntu 14.04.3 LTS

DB: mysql Ver 14.14 Distrib 5.5.44, для debian-linux-gnu (x86_64) с использованием readline 6.3

Таблица: InnoDB

SQL: (Пример | Продолжительность 1 запроса: 0,031 сек.)

SELECT SQL_NO_CACHE user_email FROM mail_logging
WHERE mail_id_fk IN (142)
AND user_email = '[email protected]'

SQL: (EXPLAIN)

id select_type табличный тип возможных_ключей ключ key_len ref row Extra
1 ПРОСТОЙ mail_logging ref id_mail, mail_id_fk, user_email id_mail 775 const, const 1 Использование где; Используя индекс

Трассирование: http://pastebin.com/FbYUZ1a3

Lsof: http://pastebin.com/RyQcbWmj

редактировать: спасибо @VolkerK, теперь я вижу проблему: P

1

Решение

Я думаю, что это сигнал о том, что опрос закончился с таймаутом. Из справочной страницы опроса:

Аргумент timeout указывает минимальное количество миллисекунд, которые блокирует poll (). (Этот интервал будет округлен до степени детализации системных часов, а задержки планирования ядра означают, что интервал блокировки может превышать небольшую величину.) Указание отрицательного значения в тайм-ауте означает бесконечный тайм-аут. Указание тайм-аут, равный нулю, приводит к немедленному возврату poll (), даже если дескрипторы файлов не готовы.

2

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

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

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