136 CappedPositionLost: Capped collection position lost
MongoDB¿Qué significa?
Un cursor que lee una capped collection (de tamaño fijo), normalmente un tailable cursor, perdió su posición. El documento en el que estaba posicionado ya no existe porque la colección lo sobrescribió cíclicamente.
¿Por qué ocurre?
Cuando una capped collection está llena, los documentos más antiguos se eliminan y sobrescriben automáticamente; un tailable cursor que sigue una colección en la que se escribe más rápido de lo que puede consumir se queda atrás y su posición se sobrescribe. Se ve en consumidores que siguen estructuras capped como el oplog.
Cómo solucionarlo
Reposicione el cursor (abra un nuevo tailable cursor) y reinicie el seguimiento; capture este error en la aplicación y renueve la lectura. Si la causa raíz es un consumidor que no puede seguir el ritmo de escritura: aumente el tamaño de la capped collection/del oplog o acelere el consumidor. Para seguir los cambios de forma fiable, use change streams en lugar de tailable cursors siempre que sea posible.
Más entradas de este motor
- 7 HostNotFoundCould not find host
- 175 QueryPlanKilledQuery plan killed during execution
- 11602 InterruptedDueToReplStateChangeOperation interrupted due to a replication state change (operación interrumpida por un cambio de estado de la replicación)
- 28 PathNotViableCannot use the part of the path to traverse the element (no se puede usar esa parte de la ruta para recorrer el elemento)
- 216 ElectionInProgressElectionInProgress
- 225 TransactionTooOldTransactionTooOld
- 246 SnapshotUnavailableSnapshotUnavailable