Join us at MongoDB.local London on 7 May to unlock new possibilities for your data. Use WEB50 to save 50%.
Register now >
Docs Menu
Docs Home
/ /

Cambios de compatibilidad en MongoDB 8.2

Importante

MongoDB 8.2 es la última versión menor. A partir de MongoDB 8.2, las versiones menores están disponibles para implementaciones on-premises (MongoDB Community y Enterprise) para casos de uso específicos. Para obtener más información, consulta Versionado de MongoDB.

Para instalar la última versión de MongoDB compatible para uso on-premises, consulta las instrucciones de instalación.

A partir de MongoDB 8.2, si intentas usar el CLUSTER_TIME variable en una implementación autónoma, el servidor devuelve un error.

Desde MongoDB 8.2, $rankFusion ahora puede ejecutarse en vistas. Para más información, consulta $rankFusion.

A partir de MongoDB 8.2, el valor por defecto de orphanCleanupDelaySecs es 3600 (anteriormente 900).

A partir de MongoDB 8.2 (también disponible en 8.1.2 y 8.0.13), El particionamiento vuelve a entrar en la sección crítica cuando el tiempo estimado para completar el trabajo restante es de 500 ms o menos.

A partir de MongoDB 8.2, cpuNanos está ubicado en la $queryStats etapa de agregación de métricas y contiene métricas adicionales relacionadas con el uso de CPU para operaciones de query. La métrica cpuNanos solo se encuentra disponible en sistemas Linux.

En versiones anteriores, cpuNanos se ubicaba en operationMetrics.

En MongoDB 8.2.0, collectionUUID y updateDescription.disambiguatedPaths se incluyen en los eventos de cambio aplicables incluso si no configuras showExpandedEvents. En las versiones de MongoDB anteriores a la 8.2.0 y en las versiones 8.2.1 y después, estos campos sólo se incluyen si se abre el flujo de cambios con showExpandedEvents: true.

Si actualizas desde MongoDB 8.2.0 a MongoDB 8.2.1 o posterior, collectionUUID y updateDescription.disambiguatedPaths ya no aparecen en los eventos de cambio a menos que establezcas showExpandedEvents al abrir el flujo.

Las aplicaciones no deben depender de commitTimestamp. Está expuesto en MongoDB 8.2.0, pero no está presente por defecto en MongoDB 8.2.1 y posteriores.

MongoDB 8.2 remueve el parámetro catalogCacheIndexMaxEntries.

MongoDB 8.2 también incluye los cambios introducidos en MongoDB 8.1. Esta sección describe los cambios de compatibilidad que se introdujeron en MongoDB 8.1.

A partir de MongoDB 8.1, la $densify etapa produce errores si field comparte su prefijo con cualquier campo en el arreglo partitionByFields. Por ejemplo, las siguientes combinaciones de field y partitionByFields provocan un error:

  • field: "timestamp", partitionByFields: ["timestamp"]

  • field: "timestamp", partitionByFields: ["timestamp.hours"]

  • field: "timestamp.hours", partitionByFields: ["timestamp"]

Cualquier aplicación que ejecute el comando buildInfo antes de autenticarse es incompatible con MongoDB 8.1. Las siguientes versiones del driver son incompatibles con MongoDB 8.1 debido a este cambio:

  • controladores JVM v3.x y anteriores (incluye Java sincronizar, Java Reactive Streams, Kotlin corrutina, Kotlin sincronizar y controladores Scala)

  • Controlador .NET/C# v2.14.1 y anteriores

A partir de MongoDB 8.1, las lecturas protegidas son eliminadas. Si especificas opciones de lecturas protegidas en una query, MongoDB ejecuta la query pero ignora las opciones de cobertura y registra un registro una advertencia.

Los siguientes parámetros del servidor relacionados con lecturas protegidas no surten ningún efecto:

  • maxTimeMSForHedgedReads

  • opportunisticSecondaryTargeting

  • readHedgingMode

El comando serverStatus ya no retorna el objeto hedgingMetrics.

A partir de MongoDB 8.0, $fill puede utilizar el método linear para interpolar si hay valores idénticos en diferentes particiones.

Las versiones anteriores de MongoDB devuelven un error que indica que el campo de ordenación no puede tener valores repetidos.

Para más detalles, consulta Interpolar valores idénticos en distintas particiones.

A partir de MongoDB 8.1 (y 8.0.16, 7.0.27), el número máximo de conexiones entrantes que puedes establecer con la opción del archivo de configuración net.maxIncomingConnections en sistemas Linux es el valor de (RLIMIT_NOFILE / 2) * 0.8. Si especificas un valor mayor, MongoDB usa el valor por defecto.

A partir de MongoDB 8.1, $convert devuelve un error al intentar convertir entre diferentes subtipos de binData. En MongoDB 8.0, $convert devuelve el valor original y el subtipo original: no se realiza ninguna conversión. Las versiones de MongoDB anteriores a la 8.0 no realizan conversión de binData.

Si utilizas una acción de validación errorAndLog en una colección, MongoDB no podrá realizar un downgrade hasta que elimines la colección, o si cambias la acción de validación de la colección por una admitida en versiones anteriores. Para cambiar la acción de validación en una colección, utiliza el comando collMod.

Obsoleto
Descripción

metadataRefreshInTransactionMaxWaitBehindCritSecMS

A partir de MongoDB 8.1, el parámetro antiguo metadataRefreshInTransactionMaxWaitBehindCritSecMS se renombra a metadataRefreshInTransactionMaxWaitMS. Puedes continuar usando metadataRefreshInTransactionMaxWaitBehindCritSecMS como nombre de parámetro, pero está obsoleto y se eliminará en una versión futura de MongoDB.

Para obtener más detalles, consulte metadataRefreshInTransactionMaxWaitMS.

Volver

8.2 (Versión estable)

En esta página