PHP Velho Oeste 2024

La clase MongoProtocolException

(PECL mongo >= 1.5.0)

Introducción

Al conversar con MongoDB 2.6.0, y posterior, ciertas operaciones (como las escrituras) pueden lanzar una MongoProtocolException cuando la respuesta del servidor no tiene sentido - por ejemplo durante un fallo de red (podríamos leer la respuesta completa) o corrupción de datos.

Esta excepción también es lanzada al intentar conversar con protocolos más recientes de los que soporta el servidor, por ejemplo, usando MongoWriteBatch al conversar con un servidor de MongoDB anterior a la versión 2.6.0.

Sinopsis de la Clase

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

Ejemplos

Ejemplo #1 Capturar una MongoProtocolException

Ejecutar el siguiente ejemplo con MongoDB anterior a 2.6.0 lanzará una MongoProtocolException

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

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

El resultado de los ejemplos sería algo similar a:

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