DBAtlas · Atlas de operaciones de bases de datos

292: QueryExceededMemoryLimitNoDiskUseAllowed (código de error 292)

MongoDB

¿Qué significa?

Una consulta o etapa de agregación superó el límite de memoria permitido (por defecto 100 MB) y falló porque no se permitía escribir en disco. Suele verse en etapas de sort o group.

¿Por qué ocurre?

Ordenación en memoria sobre datos grandes sin índice, etapas de agregación $group/$sort grandes, conjuntos de resultados intermedios muy grandes, la opción allowDiskUse:false.

Cómo solucionarlo

Permita el volcado a disco en la agregación con la opción allowDiskUse:true: db.collection.aggregate(pipeline, {allowDiskUse:true}). Reduzca el uso de memoria indexando los campos ordenados. Filtre pronto el pipeline con $match para reducir los datos procesados. Pagine los resultados si es necesario. En MongoDB 6.0+, el uso de disco está habilitado por defecto en la mayoría de los casos.

Abrir en DBAtlas →

Más entradas de este motor