Index wird durch einen anderen Prozess gesperrt

In diesem Artikel wird über ein gängiges Indizierungsproblem in Adobe Commerce gesprochen, bei dem der Index durch einen anderen Prozess gesperrt und übersprungen wird.

Betroffene Produkte und Versionen

  • Adobe Commerce 2.X

Problem

Während einer vollständigen Neuindizierung in Ihrer CLI erhalten Sie von Adobe Commerce die Fehlermeldung: Der Index von wird durch einen anderen Neuindizierungsprozess gesperrt. Überspringen." Mit anderen Worten: Wenn der Prozess oder der Indextyp gesperrt ist, können Sie diesen bestimmten gesperrten Indextyp nicht neu indizieren. Die Neuindizierung überspringt diesen Indextyp immer.

Ursache

Dieser Fehler konnte auftreten, wenn der vorherige Index nicht erfolgreich abgeschlossen wurde. Einige mögliche Gründe sind:

  • Der Prozess wurde durch einen anderen Prozess oder Benutzer unterbrochen.
  • Speicherbegrenzung.
  • MySQL-Fehler, wie eine Zeitüberschreitung.
  • Schwerwiegender PHP-Fehler während der Neuindizierung.

Zu reproduzierende Schritte

  1. Nehmen Sie beispielsweise Folgendes an: bash cataloginventory_stock Der Indextyp ist gesperrt.
  2. Wenn Sie versuchen, alle Daten durch Ausführen des CLI-Befehls neu zu indizieren bash php bin/magento indexer:reindex , erhalten Sie das folgende Ausgabeergebnis: bash customer_grid index has been rebuilt successfully in 00:00:09 catalog_category_product index has been rebuilt successfully in 00:00:07 catalog_product_category index has been rebuilt successfully in 00:00:00 catalogrule_rule index has been rebuilt successfully in 00:00:05 catalog_product_attribute index has been rebuilt successfully in 00:00:04 cataloginventory_stock index is locked by another reindex process. Skipping. catalog_product_price index has been rebuilt successfully in 00:00:01 catalogrule_product has been rebuilt successfully in 00:00:00 catalogsearch_fulltext index has been rebuilt successfully in 00:00:01
  3. Wie Sie oben sehen können, wird die bash cataloginventory_stock Der Indexprozess wurde übersprungen.

Lösung

Sie müssen den Indexstatus zurücksetzen und dann versuchen, den neuen Neuindizierungsprozess auszuführen. Für den Status des Reset-Index müssen Sie den Befehl ausführen:

bin/magento indexer:reset <index identifier>

Wenn Sie sich nicht sicher sind, was die Indexkennungen (Code) sind, können Sie sie mithilfe des Befehls auflisten:

bin/magento indexer:info

Für die Vollständigkeit sind hier alle möglichen Kombinationen für native Indizes aufgeführt:

bin/magento indexer:reset design_config_grid;
bin/magento indexer:reset customer_grid;
bin/magento indexer:reset catalog_category_product;
bin/magento indexer:reset catalog_product_category;
bin/magento indexer:reset catalogrule_rule;
bin/magento indexer:reset catalog_product_attribute;
bin/magento indexer:reset cataloginventory_stock;
bin/magento indexer:reset catalog_product_price;
bin/magento indexer:reset catalogrule_product;
bin/magento indexer:reset catalogsearch_fulltext;

Verwandtes Lesen

In unserer Support-Wissensdatenbank:

In unserem Benutzerhandbuch:

In unserer Entwicklerdokumentation:

recommendation-more-help
8bd06ef0-b3d5-4137-b74e-d7b00485808a