[Nur PaaS]{class="badge informative" title="Gilt nur für Adobe Commerce in Cloud-Projekten (von Adobe verwaltete PaaS-Infrastruktur) und lokale Projekte."}

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
NOTE
Der Patch könnte mit neuen Quality Patches Tool-Versionen auch für andere Versionen gelten. Um zu überprüfen, ob der Patch mit Ihrer Adobe Commerce-Version kompatibel ist, aktualisieren Sie das 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:

  1. Einrichten von Multi-Prozess-Lösungen für Verbraucher in env.php:

    code language-none
    'multiple_processes' =>
        array (
            'async.operations.all' => 4,
        ),
    
  2. Fügen Sie der Haupt-Website einen zusätzlichen Store und eine neue Storeview hinzu.

  3. Senden Sie eine Massen-API-Anfrage an den standardmäßigen StoreReview-Endpunkt /rest/default/async/bulk/V1/products mit der folgenden Payload, um ein Produkt zu erstellen:

    code language-none
    [
      {
        "product": {
          "sku": "Test_Prod",
          "name": "Test Product",
          "attribute_set_id": 4
        }
      }
    ]
    
  4. Verwenden Sie dieselbe Payload, um eine Massen-API-Anfrage an den neuen StoreReview-Endpunkt /rest/store/async/bulk/V1/products zu senden und so das Produkt zu aktualisieren.

  5. Cache leeren.

  6. Cron-Aufträge ausführen.

  7. Überprüfen Sie die catalog_product_entity Tabelle auf Einträge für das Produkt aus den vorherigen Schritten.

Erwartete Ergebnisse:

  • Die catalog_product_entity Tabelle 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:

Verwandtes Lesen

Weitere Informationen zu Quality Patches Tool finden Sie unter:

recommendation-more-help
c2d96e17-5179-455c-ad3a-e1697bb4e8c3