Por que o mongo pecl module perde sua conexão após o Primary stepDown?

1

Eu executo um Apache 2.2.22-13 com o módulo pecl "mongo 1.4.4". Ele se conecta a um cluster fragmentado do MongoDB 2.4.6.

Quando ocorre um stepDown, o módulo mongo parece permanecer no nó mongod que era o primário e diz: "PHP Erro fatal: exceção não capturada 'MongoCursorException' com mensagem 'node1.mongodb.cluster: 27017: servidor remoto fechou a conexão '...

Para estabelecer a conexão, eu tentei as duas maneiras a seguir:

$m = new MongoClient('mongodb://mongod0.mongodb.cluster, mongod1.mongodb.cluster, mongod2.mongodb.cluster, mongod3.mongodb.cluster', array("replicaSet" => "myrs"));

e

$m = new MongoClient('mongodb://mongos.mongodb.cluster', array("replicaSet" => "myrs"));

Depois de um stepDown, as duas formas apresentam a mesma mensagem de erro.

Com a primeira string de conexão, reiniciar o Apache é o suficiente para colocar as coisas de volta nos trilhos. Com o último, a reinicialização não: não recebo mais nenhuma mensagem de erro, mas os dados que devem vir do MongoDB ainda estão faltando.

Agradecemos antecipadamente

Greg.

    
por Icu 18.10.2013 / 09:46

1 resposta

0

Eu atualizei o módulo mongo pecl de 1.4.5 para 1.5.8. Este problema está resolvido.

    
por 12.02.2015 / 11:10