Advertencia
Limitaciones de versiones pasadas
Las advertencias críticas que se mencionan a continuación afectan a algunos sistemas anteriores. mongosync
versiones. Actualiza a la última versión disponible del parche.
Problema | Versiones afectadas |
|---|---|
| 1.5.0 - 1.7.1 |
| 1.1.0 - 1.7.1 |
Versiones de parches
Lanzamiento 1.6.1
3 de octubre de 2023
Problemas corregidos:
Se corrigió un error que podía provocar que las operaciones de
mongosyncde larga duración fueran interrumpidas prematuramente por un tiempo de espera. Ahora,mongosyncproduce menos erroresMaxTimeMSExpireddurante la fase de copia de colección.
1.6.0 Versión
22 de septiembre de 2023
Filtros de exclusión
A partir de 1.6.0, el start El endpoint de la API ahora admite el uso de filtros de exclusión mediante el parámetro excludeNamespaces.
Para obtener más información, consulte Sincronización filtrada.
Filtros de expresiones regulares
Los filtros de inclusión y exclusión en Filtered Sync ahora admiten la coincidencia de bases de datos y colecciones mediante expresiones regulares con los databaseRegex collectionsRegex campos y.
Para obtener más información, consulta Expresiones regulares en filtros.
Soporte 7.0
A partir de la versión 1.6.0, mongosync admite la sincronización con MongoDB 7.0.
Otras notas
Nuevas características:
Se aceleró el proceso de confirmación al paralelizar la limpieza de metadatos.
Se redujo la asignación de memoria durante la aplicación de eventos de cambio en aproximadamente un 30 % para las versiones anteriores a la 6.0 de MongoDB Server.
Se modificó la telemetría para enviar también mensajes de error a Segment cuando
mongosyncsale con un error fatal.Se agregó soporte para
mongosyncpara sincronizar entre clústeres de origen y destino que tienen las mismas versiones principales y secundarias, pero diferentes versiones de parches.Se actualizó la compilar para usar Go 1.20.
mongosyncahora registra periódicamente cuando las operaciones del servidor toman más tiempo del esperado.
Problemas corregidos:
Se solucionó un error introducido en
mongosyncv1.5.0 y descubierto por nuestras pruebas internas en el que en un caso límite poco probablemongosyncpuede omitir un evento de cambio para ser aplicado durante la fase de Copia de Colección.Para que este error ocurra, el evento de cambio debe caer entre un rango
_idespecífico quemongosyncesté en proceso de copiar, debe ocurrir y procesarse mientras se copia ese rango_idespecífico, y no debe ir seguido de otro evento de cambio para el mismo rango_iddurante el resto de la migración.Este error solo ocurre cuando
mongosyncestá en procesamiento de eventos de cambio con un atraso de la replicación casi nulo durante la Copia de la colección.Se corrigió un error por el cual
mongosyncpodía fallar debido a que el clúster de origen contenía índices heredados con opciones de índice desconocidas.Se solucionó un error en el que
mongosyncpodía fallar con un error durante la aplicación de eventos de cambio, si la aplicación no lograba leer 500 documentos en 5 minutos o alcanzaba el final del oplog al leer desde los flujos de cambio en el clúster de origen.Se corrigió un error donde
mongosyncpodía fallar cuando los índices aplicaban restricciones a los documentos de la colección.Este error ocurrió cuando se añadió o eliminó dicho índice casi al mismo tiempo que se eliminó o insertó un índice que infringía estas restricciones. Se manifestaría con un error como:
Ambiguous field name found in array (do not use numeric field names in embedded elements in an array) o un error similar. Esta solución hace que este fallo sea menos probable, pero no elimina la posibilidad de que ocurra.
Se corrigió un error que
mongosyncimpedía copiar ciertos documentos si la inserción de documentos causaba errores de clave duplicada simultáneamente con un error de escritura. Este error ha estado presente en mongosync desde su primera versión y podría haber surgido si los registros del clúster de destino informaban de un error de escritura junto con un error de clave duplicada.Se corrigió un error introducido en
mongosync1.5 donde los eventos de cambio podían omitirse durante la fase de Copia de colección cuando hay poca actividad de escritura en el clúster de origen.Se corrigió un error poco común introducido en
mongosyncv1.5.0 y descubierto por nuestras pruebas internas, donde puede haber una pequeña brecha de continuidad entre los ciclos de Resiliencia de Oplog Rollover (ORR) en una situación específica, causando que el mecanismo ORR posiblemente omita un evento de cambio que deba aplicarse durante la fase de Copia de Colección.Este es un caso extremo ya que requiere consistentemente poca actividad de guardar en el clúster de origen (es decir, El atraso de la replicación de
mongosyncse mantiene constantemente cerca de cero durante la copia de la colección, así como el evento de cambio ocurre en rangos específicos de_identre ciclos de ORR.Se corrigió un error introducido en v1.5.0 donde
mongosyncpodía causar errores de consistencia de datos en colecciones con intercalación no predeterminada.Este problema solo afecta a las colecciones con intercalación no simple que están presentes durante la inicialización de
mongosyncy que contienen documentos con valores de string_id. Cualquier colección con intercalación no simple creada después de la inicialización demongosynco en la que todos los documentos tienen valores_idque no son cadenas de texto no se verá afectada.Nota
Para mitigar este problema,
mongosyncv1.6.0 desactiva automáticamente la resiliencia de cambio de oplog si encuentra al menos una colección con una intercalación no simple durante la inicialización de Mongosync.Investigaremos una solución más permanente para futuras versiones.
Versión mínima compatible
En 1.6, las versiones mínimas compatibles de MongoDB son 6.0.8 y 7.0.0.