Sinds de 1.4-versies van het MongoDB-stuurprogramma voor PHP zullen we servers voor maximaal een minuut op een "zwarte lijst" plaatsen als er geen contact met ze kan worden opgenomen. Dit is zodat we de server niet dichtslaan met verbindingen, die een time-out kunnen veroorzaken. Dit wordt voornamelijk gedaan om ervoor te zorgen dat we in een replicaset-omgeving nog steeds verder kunnen gaan door gewoon een van de andere hosts te gebruiken, maar als je maar één machine hebt, is dit natuurlijk wat lastiger.
Als u MongoLog gebruikt, kunt u heel gemakkelijk zien wat er onder de motorkap gebeurt:
MongoLog::setModule(MongoLog::ALL);
MongoLog::setLevel(MongoLog::ALL);
MongoLog::setCallback('print_mongo_log');
function print_mongo_log($a, $b, $c) { echo $c, "\n"; }
Hiermee wordt alles weergegeven wat de bestuurder probeert te doen. Het zou interessant zijn om de eerste . te zien dump van wanneer er iets mis gaat, en ook voor een keer is het "vast" op de zwarte lijst.
De bovenstaande waarschuwing verdwijnt na 60 seconden, of bij het opnieuw opstarten van uw webserversoftware (of PHP-FPM als u dat gebruikt). Als je denkt dat deze uitleg niet correct is, dien dan een bug-/functieverzoek in op http://jira. mongodb.org/browse/PHP