PHPKonf 2020 Online

The MongoProtocolException class

(PECL mongo >= 1.5.0)

Einführung

When talking to MongoDB 2.6.0, and later, certain operations (such as writes) may throw MongoProtocolException when the response from the server did not make sense - for example during network failure (we could read the entire response) or data corruption.

This exception is also thrown when attempting to talk newer protocols then the server supports, for example using the MongoWriteBatch when talking to a MongoDB server prior to 2.6.0.

Klassenbeschreibung

MongoProtocolException extends MongoException {
/* Geerbte Eigenschaften */
protected string $message ;
protected int $code ;
protected string $file ;
protected int $line ;
}

Beispiele

Beispiel #1 Catching MongoProtocolException

Running the following example against MongoDB prior to 2.6.0 will throw an MongoProtocolException

<?php
$mc 
= new MongoClient("localhost");
$c $mc->selectCollection("test""test");

try {
    
$batch = new MongoInsertBatch($c);
} catch(
MongoProtocolException $e) {
    echo 
$e->getMessage();
}
?>

Oben gezeigte Beispiele erzeugen eine ähnliche Ausgabe wie:

Current primary does not have a Write API
add a note add a note

User Contributed Notes

There are no user contributed notes for this page.
To Top