Risolvere l’errore di tabella customer_grid_flat mancante in Adobe Commerce

L'errore di tabella mancante customer_grid_flat in Adobe Commerce 2.4.5 si verifica quando i processi di reindicizzazione sovrapposti eliminano e ricreano la tabella customer_gridcontemporaneamente, causando errori SQLSTATE[ 42S02]. Per risolvere questo problema, verificare i registri delle azioni di amministrazione per individuare eventuali conflitti di processo, evitare la reindicizzazione manuale durante l'esecuzione del cron, reimpostare l'indicizzatore utilizzando bin/magento indexer:reset customer_grid e monitorare le pianificazioni dei processi cron per evitare sovrapposizioni future.

Descrizione description

Ambiente

  • Prodotto: Adobe Commerce, v2.4.5
  • Istanza: Produzione

Problema/Sintomi

  • Tabella customer_grid_flat mancante nel database.
  • Errori come SQLSTATE[ 42S02]: tabella o vista di base non trovata. La tabella 1146 'z3gmkbwmwrl4g.customer_grid_flat' non esiste verrà visualizzata.

Causa

Il problema si verifica perché quando l'indicizzatore completo customer_grid viene eseguito, elimina e ricrea la tabella customer_grid per regolare le colonne, quindi inserisce i dati. Se la reindicizzazione manuale e il processo cron indexer_reindex_all_invalid vengono eseguiti contemporaneamente, un processo elimina la tabella customer_grid mentre un altro tenta di inserirvi i dati. Questa sovrapposizione porta a SQLSTATE[ 42S02] : tabella o vista di base non trovata: la tabella 1146 'z3gmkbwmwrl4g.customer_grid_flat' non esiste errori.

Risoluzione resolution

Ripristinare la tabella eseguendo una reindicizzazione completa. Per risolvere e prevenire questo problema, eseguire la procedura seguente:

  1. Verificare se l'operazione di reindicizzazione manuale (bin/magento indexer:reindex customer_grid) si sovrappone all'esecuzione del processo cron indexer_reindex_all_invalid controllando i log delle azioni di amministrazione.
  2. Non eseguire bin/magento indexer:reindex customer_grid mentre indexer_reindex_all_invalid cron è in esecuzione. Se è richiesta una reindicizzazione completa, utilizzare bin/magento indexer:reset customer_grid. Il cron indexer_reindex_all_invalid gestirà la reindicizzazione completa come processo in background, ricreando e popolando automaticamente le tabelle senza conflitti.
  3. Utilizzare gli strumenti di monitoraggio per tenere traccia dei processi cron critici, come indexer_reindex_all_invalid, in esecuzione per evitare la pianificazione di attività sovrapposte.
recommendation-more-help
3d58f420-19b5-47a0-a122-5c9dab55ec7f