Не удалось подключиться к серверу MongoDB при прерванном системном вызове

Я запускаю облачный сервер Rackspace CentOs + модуль apache2 + php 5.4 + pcntl с базовой платформой Kohana php с модулем задач mongoDb, который разветвляет дочерние процессы. Я получаю следующую ошибку, если пытаюсь одновременно запустить более 1 дочернего процесса задачи:

Unable to connect to MongoDB server at Interrupted system call

По словам автора модуля задачи mongoDb, проблема связана не с кодом, а, возможно, с драйвером mongoDb или сервером.

Кто-нибудь знает, что означает ошибка и / или что может быть причиной?

Полный вывод ошибки:

0 /var/www/.../modules/mangodb/classes/mangodb.php(370): MangoDB-›connect()

1 /var/www/.../modules/mangodb/classes/mangodb.php(173): MangoDB-›_call('команда', Массив, Массив)

2 /var/www/.../modules/mangotask/classes/model/queue/task.php(33): MangoDB-›command(массив)

3 /var/www/.../modules/mangoQueue/classes/controller/daemon.php(232): Model_Queue_Task->get_next()

4 /var/www/.../modules/mangoQueue/classes/controller/daemon.php(111): Controller_Daemon-›daemon()

5 [внутренняя функция]: Controller_Daemon-›action_index()

6 /var/www/.../system/classes/kohana/request/client/internal.php(118): ReflectMethod->invoke(Object(Controller_Daemon))

7 /var/www/.../system/classes/kohana/request/client.php(64): Kohana_Request_Client_Internal->execute_request(Object(Request))

8 /var/www/.../system/classes/kohana/request.php(1138): Kohana_Request_Client->выполнить(Объект(Запрос))

9 /var/www/.../index.php(109): Kohana_Request->execute()


person JonnyJon    schedule 17.09.2012    source источник


Ответы (1)


Версия драйвера 1.2.12 определенно имеет проблемы с разветвлением, но это должно быть решено в готовящемся выпуске 1.3.0. В частности, PHP-426 — одна из последних проблем, направленных на решение этой проблемы, поскольку переместил выбор соединения с MongoCursor на MongoCursor::doQuery(), что позволяет драйверу работать правильно после разветвления. Я бы следил за следующим предварительным выпуском 1.3.0 (будь то beta3 или rc1) и, конечно же, когда финальная версия 1.3.0 будет выпущена через http://pecl.php.net/package./mongo.

person jmikola    schedule 19.09.2012