ACSD-64118: Gleichzeitige Produktspeicherungsanfragen für dasselbe Produkt führen zu Dateninkonsistenz und doppelten Einträgen
Mit dem Patch ACSD-64118 wird das Problem behoben, dass gleichzeitige Anfragen zum Speichern und Aktualisieren desselben Produkts zu Dateninkonsistenz oder doppelten Produkten führen. Dieser Patch ist verfügbar, wenn Quality Patches Tool (QPT) 1.1.65 installiert ist. Die Patch-ID ist ACSD-64118. Dieses Problem wird voraussichtlich in Adobe Commerce 2.4.9 behoben.
Betroffene Produkte und Versionen
Der Patch wird für die Adobe Commerce-Version erstellt:
- Adobe Commerce (alle Bereitstellungsmethoden) 2.4.5-p7
Kompatibel mit Adobe Commerce-Versionen:
- Adobe Commerce (alle Bereitstellungsmethoden) 2.4.4 - 2.4.6-p10
magento/quality-patches auf die neueste Version und überprüfen Sie die Kompatibilität auf der Seite Quality Patches Tool: Nach Patches suchen. Verwenden Sie die Patch-ID als Suchbegriff, um den Patch zu finden.Problem
Gleichzeitige Anfragen zum Speichern und Aktualisieren desselben Produkts führen zu Dateninkonsistenzen oder doppelten Produkten.
Schritte zur Reproduktion:
-
Einrichten von Multi-Prozess-Lösungen für Verbraucher in
env.php:code language-none 'multiple_processes' => array ( 'async.operations.all' => 4, ), -
Fügen Sie der Haupt-Website einen zusätzlichen Store und eine neue Storeview hinzu.
-
Senden Sie eine Massen-API-Anfrage an den standardmäßigen StoreReview-Endpunkt
/rest/default/async/bulk/V1/productsmit der folgenden Payload, um ein Produkt zu erstellen:code language-none [ { "product": { "sku": "Test_Prod", "name": "Test Product", "attribute_set_id": 4 } } ] -
Verwenden Sie dieselbe Payload, um eine Massen-API-Anfrage an den neuen StoreReview-Endpunkt
/rest/store/async/bulk/V1/productszu senden und so das Produkt zu aktualisieren. -
Cache leeren.
-
Cron-Aufträge ausführen.
-
Überprüfen Sie die
catalog_product_entityTabelle auf Einträge für das Produkt aus den vorherigen Schritten.
Erwartete Ergebnisse:
- Die
catalog_product_entityTabelle sollte einen einzelnen Eintrag für die Produkt-SKU enthalten. - Die erste REST-API-Anfrage sollte einen Datenbankeintrag erstellen, und alle nachfolgenden Anfragen sollten diesen Datenbankeintrag aktualisieren.
Tatsächliche Ergebnisse:
In der catalog_product_entity Tabelle sind mehrere Einträge für dieselbe SKU vorhanden.
Patch anwenden
Verwenden Sie je nach Bereitstellungsmethode die folgenden Links, um einzelne Patches anzuwenden:
- Adobe Commerce oder Magento Open Source On-Premise: Quality Patches Tool > Nutzung im Quality Patches Tool.
- Adobe Commerce in Cloud-Infrastruktur: Upgrades und Patches > Patches anwenden im Handbuch zu Commerce in Cloud-Infrastruktur.
Verwandtes Lesen
Weitere Informationen zu Quality Patches Tool finden Sie unter:
- Quality Patches Tool: Ein Self-Service-Tool für hochwertige Patches im Tools-Handbuch.