Hola Mateo Gonzalez,
El error de memoria insuficiente en SmsEngine.exe durante la fase de inventario con más de 20 millones de archivos no se debe a falta de RAM física, sino a las limitaciones internas del motor de SMS en su asignación de heap y en la forma en que maneja el multithreading. Microsoft documenta que el Servicio de migración de almacenamiento no está optimizado para volúmenes con decenas de millones de objetos en una sola ejecución, y en esos casos el inventario debe dividirse en unidades más pequeñas. No existen parámetros soportados para ampliar manualmente el montón del proceso ni para ajustar el threading desde el registro o PowerShell; el motor usa límites fijos para evitar la corrupción de la memoria.
La práctica recomendada es segmentar el inventario en varios trabajos, por ejemplo dividiendo el volumen en subcarpetas críticas y ejecutando tareas independientes, de modo que cada ejecución procese un conjunto de archivos manejables. Otra opción es realizar un inventario preliminar con filtros (Include/Exclude) para reducir la carga y luego consolidar los resultados. Si el inventario completo de un único volumen es imprescindible, la única vía es escalar al Soporte de Microsoft, ya que se trata de una limitación de diseño del motor y puede requerir un hotfix o actualización del SMS.
Si mi respuesta es útil para usted, presione Aceptar la respuesta para apoyarme.
Gracias,
Domic.