Cómo Solucionar el Error de Indexers Bloqueados en Magento 2 Paso a Paso

Cómo Solucionar el Error de Indexers Bloqueados en Magento 2 Paso a Paso
Anuncio relacionado

¿Qué provoca el error de indexadores bloqueados en Magento 2?

El sistema de reindexación en Magento 2 procesa grandes volúmenes de datos como catálogo, reglas de precios, inventario y búsquedas. Cuando un proceso de reindexación se interrumpe abruptamente debido a un límite de memoria PHP, una desconexión de base de datos o un cron job que expira por tiempo límite (timeout), el índice queda atascado en estado Processing o Working. Como mecanismo de seguridad para evitar escrituras concurrentes, Magento bloquea el índice afectado, arrojando el error de bloqueo al intentar ejecutar nuevos procesos.

Método 1: Resetear el estado de los indexadores mediante Magento CLI

La forma más rápida y recomendada por Adobe Commerce para solucionar los bloqueos es utilizar la herramienta de consola propia de Magento.

  1. Conéctate a tu servidor web vía SSH y dirígete a la raíz de tu instalación de Magento: cd /var/www/html/magento2
  2. Consulta el estado actual de todos los índices para identificar cuáles están bloqueados: php bin/magento indexer:status
  3. Si observas índices en estado Processing que no finalizan, ejecuta el comando para resetear todos los estados a Invalid: php bin/magento indexer:reset
  4. Si solo deseas resetear un índice en particular (por ejemplo, el catálogo de productos), especifícalo directamente: php bin/magento indexer:reset catalog_product_attribute
  5. Una vez reseteados, ejecuta la reindexación completa: php bin/magento indexer:reindex
  6. Limpia la caché del sistema para aplicar los cambios en la tienda: php bin/magento cache:flush

Método 2: Desbloqueo manual en la tabla de la Base de Datos

Si la interfaz CLI arroja excepciones o no permite cambiar el estado, puedes actualizar el registro del índice directamente desde MySQL o phpMyAdmin.

  1. Accede a tu gestor de base de datos o inicia sesión en el cliente MySQL: mysql -u usuario_bd -p nombre_bd
  2. Revisa los estados actuales consultando la tabla indexer_state: SELECT * FROM indexer_state;
  3. Identifica los registros cuyo valor en la columna status sea working.
  4. Ejecuta la siguiente sentencia para forzar el estado a inválido en todos los índices congelados: UPDATE indexer_state SET status = 'invalid' WHERE status = 'working';
  5. Vuelve a tu terminal SSH y lanza la reindexación nuevamente: php bin/magento indexer:reindex

Método 3: Incrementar la memoria y tiempo de ejecución en PHP CLI

Si los bloqueos ocurren recurrentemente cada vez que se ejecutan los cron jobs, es indispensable otorgar suficientes recursos al intérprete PHP de la línea de comandos.

  • Ejecuta la reindexación manual omitiendo el límite de memoria temporalmente: php -d memory_limit=2G bin/magento indexer:reindex
  • Edita el archivo php.ini correspondiente a la versión CLI de tu servidor (habitualmente en /etc/php/8.1/cli/php.ini o /etc/php/8.2/cli/php.ini).
  • Asegúrate de que la directiva memory_limit esté configurada en un mínimo de 2G o 4G según el tamaño de tu catálogo.
  • Aumenta max_execution_time a 1800 segundos para evitar caídas durante catálogos extensos.
Anuncio
Seguir Leyendo

Guías y Soluciones Relacionadas

Windows Apps Juegos
Magento

Cómo Solucionar el Error Allowed Memory Size Exhausted en Magento de Forma Definitiva

¿Tu tienda online muestra un error de memoria agotada? Descubre cómo ampliar el límite en PHP para que tu plataforma vuelva a funcionar con normalidad.

Leer guía completa →
Desarrollo

Cómo Solucionar el Error Maximum Execution Time Exceeded en PHP Definitivamente

Descubre por qué ocurre el error de tiempo máximo de ejecución en PHP y cómo solucionarlo rápidamente en tu servidor. Sigue nuestra guía paso a paso.

Leer guía completa →
WordPress

Cómo Solucionar el Error al Establecer una Conexión con la Base de Datos en WordPress

Descubre por qué ocurre el error al establecer una conexión con la base de datos en WordPress y cómo solucionarlo rápidamente. Sigue nuestra guía paso a paso.

Leer guía completa →