Résoudre l’erreur de table customer_grid_flat manquante dans Adobe Commerce
L’erreur de table customer_grid_flat manquante dans Adobe Commerce 2.4.5 se produit lors du chevauchement des processus de réindexation qui suppriment et recréent la table customer_grid simultanément, ce qui entraîne des échecs de SQLSTATE[ 42S02]. Pour résoudre ce problème, vérifiez les journaux d’actions d’administration pour les conflits de processus, évitez la réindexation manuelle pendant l’exécution de cron, réinitialisez l’indexeur à l’aide de bin/magento indexer:reset customer_grid et surveillez les planifications de tâches cron pour éviter les chevauchements futurs.
Description description
Environnement
- Produit : Adobe Commerce, v2.4.5
- Instance : Production
Problème/Symptômes
- La table
customer_grid_flatest absente de la base de données. - Des erreurs telles que SQLSTATE
[42S02]: table ou vue de base introuvable : 1146 La table 'z3gmkbwmwerl4g.customer_grid_flat' n'existe pas s'affichent.
Cause
Le problème est dû au fait que, lorsque l’indexeur complet customer_grid s’exécute, il abandonne et recrée la table customer_grid pour ajuster les colonnes, puis insère des données. Si une réindexation manuelle et la tâche indexer_reindex_all_invalid cron s’exécutent simultanément, un processus supprime la table customer_grid tandis qu’un autre tente d’y insérer des données. Ce chevauchement entraîne l’apparition d’erreurs SQLSTATE[ 42S02] : table ou vue de base introuvable : 1146 La table 'z3gmkbwmwerl4g.customer_grid_flat' n’existe pas.
Résolution resolution
Restaurez le tableau en effectuant une réindexation complète. Pour résoudre et prévenir ce problème, procédez comme suit :
- Vérifiez si l’opération de réindexation manuelle (
bin/magento indexer:reindex customer_grid) a fait double emploi avec l’exécution de la tâche cronindexer_reindex_all_invaliden vérifiant les journaux d’actions d’administration. - N’exécutez pas
bin/magento indexer:reindex customer_gridpendant l’exécution duindexer_reindex_all_invalid cron. Si une réindexation complète est requise, utilisezbin/magento indexer:reset customer_grid. Le cronindexer_reindex_all_invalidgère la réindexation complète en tant que processus en arrière-plan, en recréant et en renseignant automatiquement les tables sans conflit. - Utilisez les outils de surveillance pour suivre le moment où les tâches cron critiques telles que
indexer_reindex_all_invalidsont exécutées afin d’éviter le chevauchement des tâches.