Класс MongoProtocolException

(PECL mongo >= 1.5.0)

Введение

При обращении к MongoDB 2.6.0 и более поздним версиям, некоторые операции (например, запись) могут вызвать исключение MongoProtocolException, когда ответ от сервера не имеет смысла - например, во время сбоя сети (мы могли прочитать весь ответ) или повреждения данных.

Это исключение также выдается при попытке использовать новые протоколы, которые поддерживает сервер, например, используя MongoWriteBatch при обращении к серверу MongoDB до версии 2.6.0.

Обзор классов

MongoProtocolException extends MongoException {
/* Наследуемые свойства */
protected string $message ;
protected int $code ;
protected string $file ;
protected int $line ;
}

Примеры

Пример #1 Отлавливаем MongoProtocolException

Выполнение следующего примера с MongoDB до 2.6.0 вызовет исключение MongoProtocolException

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

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

Результатом выполнения данных примеров будет что-то подобное:

Текущий основной сервер не имеет API записи