Desde as versões 1.4 do driver MongoDB para PHP, colocaremos os servidores na "lista negra" por até um minuto se eles não puderem ser contatados. Isso é para que não batamos o servidor com conexões, que podem expirar. Isso é feito principalmente para garantir que em um ambiente de conjunto de réplicas ainda possamos continuar usando apenas outro dos hosts, mas é claro que se você tiver apenas uma máquina, isso é um pouco mais complicado.
Se você usa o MongoLog, pode identificar facilmente o que acontece nos bastidores:
MongoLog::setModule(MongoLog::ALL);
MongoLog::setLevel(MongoLog::ALL);
MongoLog::setCallback('print_mongo_log');
function print_mongo_log($a, $b, $c) { echo $c, "\n"; }
Isso exibirá tudo o que o driver está tentando fazer. Seria interessante ver o primeiro despejo de quando algo dá errado, e também por uma vez está "preso" na lista negra.
O aviso acima desaparecerá após 60 segundos ou após a reinicialização do software do servidor web (ou PHP-FPM, se você o usar). Se você acha que esta explicação não está correta, envie uma solicitação de bug/recurso em http://jira. mongodb.org/browse/PHP