[Endast PaaS]{class="badge informative" title="Gäller endast Adobe Commerce i molnprojekt (Adobe-hanterad PaaS-infrastruktur) och lokala projekt."}

ACP2E-4522: Intermittenta dubblettnyckelfel inträffar i tabellen quote_coupons när flera kundvagnssammanfognings- eller offertsparbegäranden körs samtidigt

Korrigeringen ACP2E-4522 åtgärdar ett problem där ett återkommande dubblettnyckelfel inträffar i tabellen quote_coupons när flera begäranden om att spara kundvagn eller offerter körs samtidigt. Den här korrigeringen är tillgänglig när Quality Patches Tool (QPT) 1.1.78 har installerats. Korrigerings-ID är ACP2E-4522. Observera att problemet är planerat att åtgärdas i Adobe Commerce 2.4.9.

Berörda produkter och versioner

Korrigeringen har skapats för Adobe Commerce-version:

  • Adobe Commerce (alla distributionsmetoder) 2.4.7-p7

Kompatibel med Adobe Commerce-versioner:

  • Adobe Commerce (alla distributionsmetoder) 2.4.7 - 2.4.8-p4
NOTE
Korrigeringen kan bli tillämplig för andra versioner med nya Quality Patches Tool-versioner. Om du vill kontrollera om korrigeringen är kompatibel med din Adobe Commerce-version uppdaterar du paketet magento/quality-patches till den senaste versionen och kontrollerar kompatibiliteten för Quality Patches Tool: Sök efter sidan med korrigeringsfiler ​. Använd patch-ID:t som söknyckelord för att hitta patchen.

Problem

Ett återkommande dubblettnyckelfel inträffar i tabellen quote_coupons när flera begäranden om att spara kundvagn eller offerter körs samtidigt.

Steg som ska återskapas:

  1. Aktivera det maximala antalet kuponger per order = 10 under administratörssidofältet på Stores > Settings > Configuration > Sales > Multicoupon Settings.

  2. Skapa en kundprisregel under Marketing > Promotions > Cart Price Rules > ​ Add New Rule:

    1. Rule Name: TESTCOUPON2026
    2. Active: Yes; Websites: Main Website; Customer Groups; Välj alla tillämpliga grupper.
    3. Coupon: Specific Coupon; Coupon Code: TESTCOUPON2026.
    4. Uses per Customer: lämna tomt.
    5. Conditions: Inga villkor har lagts till.
    6. Actions > Percent of product price discount; Discount Amount = 10.
  3. Lägg till en produkt med en kvantitet på minst 7 i en gästvagn med GraphQL och tillämpa sedan kupongen.

  4. Kör sex parallella GraphQL mergeCarts-anrop:

    code language-none
    mutation {
      mergeCarts(
        source_cart_id: "<GUEST_CART_ID>"
        destination_cart_id: "<DESTINATION_CART_ID>"
      ) {
        id
        items { id product { sku } }
        applied_coupons { code }
      }
    }
    

Förväntade resultat:

GraphQL-sammanslagningen returnerar inget fel.

Faktiska resultat:

GraphQL-mutationen mergeCarts returnerar ett fel.
Loggar visar att GraphQL-felet orsakas av en dubblettnyckelvillkorsöverträdelse i tabellen quote_coupons (QUOTE_COUPONS_QUOTE_ID_COUPON_CODE) när flera sparade sammanfognings- eller offertbegäranden körs samtidigt.

tail -n 200 var/log/exception.log var/log/debug.log | grep -E "Duplicate entry|QUOTE_COUPONS_QUOTE_ID_COUPON_CODE"

Tillämpa korrigeringen

Använd följande länkar beroende på distributionsmetod för att tillämpa enskilda korrigeringsfiler:

Relaterad läsning

Mer information om Quality Patches Tool finns i:

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