Назад | Перейти на главную страницу

Почему модуль mongo pecl теряет соединение после основного перехода?

Я запускаю Apache 2.2.22-13 с модулем pecl "mongo 1.4.4". Он подключается к сегментированному кластеру MongoDB 2.4.6.

Когда происходит stepDown, модуль mongo, кажется, остается на узле mongod, который был основным, и сообщает: «Неустранимая ошибка PHP: исключение Uncaught« MongoCursorException »с сообщением« node1.mongodb.cluster: 27017: Удаленный сервер закрыл соединение » ...

Чтобы установить соединение, я попробовал 2 следующих способа:

$ m = новый MongoClient ('mongodb: //mongod0.mongodb.cluster, mongod1.mongodb.cluster, mongod2.mongodb.cluster, mongod3.mongodb.cluster', array ("replicaSet" => "myrs"));

и

$ m = новый MongoClient ('mongodb: //mongos.mongodb.cluster', array ("replicaSet" => "myrs"));

После stepDown оба способа выдают одно и то же сообщение об ошибке.

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

Заранее спасибо,

Грег.

Я обновил модуль mongo pecl с 1.4.5 до 1.5.8. Эта проблема исправлена.