DBAtlas · Atlas de operaciones de bases de datos

version_conflict_engine_exception: version_conflict_engine_exception: [_doc][id]: version conflict, current version [x] is different than the one provided [y] (HTTP 409) (conflicto de versión del documento)

Elasticsearch

¿Qué significa?

El control de concurrencia optimista rechazó una solicitud de actualización/eliminación de un documento. La versión del documento (o _seq_no/_primary_term) no coincide con la de la solicitud; es decir, otro modificó el documento después de que usted lo leyera. Devuelve HTTP 409.

¿Por qué ocurre?

Actualizaciones concurrentes del mismo documento, una escritura intentada con una version/seq_no obsoleta, un intento de crear (op_type=create) un documento que ya existe o una condición de carrera durante _bulk.

Cómo solucionarlo

Vuelva a leer el documento y reintente la solicitud con los _seq_no y _primary_term (o version) actuales (bucle read-modify-write). Para reintentos automáticos, use el parámetro retry_on_conflict en la solicitud _update; en _update_by_query/_delete_by_query pase conflicts=proceed para omitir los documentos en conflicto y continuar. Si la intención es solo crear, el conflicto es normal; capture el 409 en la aplicación y gestiónelo adecuadamente (reintentar u omitir).

Abrir en DBAtlas →

Más entradas de este motor