ACP2E-4522:複数の買い物かごの結合または見積もり保存要求を同時に実行すると、quote_coupons テーブルで断続的に重複キーエラーが発生する
ACP2E-4522 パッチは、複数の買い物かごの結合または見積もりの保存リクエストが同時に実行されるときに、quote_coupons テーブルで断続的な重複キーエラーが発生する問題を修正します。 このパッチは、Quality Patches Tool (QPT) 1.1.78がインストールされている場合に利用できます。 パッチ IDはACP2E-4522です。 この問題は、Adobe Commerce 2.4.9で修正される予定です。
影響を受ける製品とバージョン
パッチはAdobe Commerceのバージョン用に作成されました
- Adobe Commerce(すべてのデプロイメント方法) 2.4.7-p7
Adobe Commerceのバージョンとの互換性:
- Adobe Commerce(すべてのデプロイメント方法) 2.4.7 - 2.4.8-p4
magento/quality-patches パッケージを最新バージョンに更新し、Quality Patches Tool:パッチの検索ページ で互換性を確認します。 パッチ IDを検索キーワードとして使用して、パッチを検索します。イシュー
複数の買い物かごの結合要求または見積もり保存要求を同時に実行すると、断続的な重複キーエラーがquote_coupons テーブルで発生します。
複製する手順:
-
管理者サイドバーのStores > Settings > Configuration > Sales > Multicoupon Settingsで、注文あたりのクーポンの最大数= 10を有効にします。
-
Marketing > Promotions > Cart Price Rules > Add New Ruleの下にカート価格ルールを作成します。
- Rule Name: TESTCOUPON2026
- Active: Yes、Websites: Main Website、Customer Groups;該当するすべてのグループを選択します。
- Coupon: Specific Coupon; Coupon Code: TESTCOUPON2026。
- Uses per Customer:空白のままにします。
- Conditions:条件が追加されていません。
- Actions > Percent of product price discount; Discount Amount = 10.
-
GraphQLを使用して、ゲストカートに少なくとも7の数量の商品を追加し、クーポンを適用します。
-
GraphQL mergeCarts呼び出しを6回同時に実行します。
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 } } }
期待される結果:
GraphQLの結合でエラーは返されません。
実際の結果:
mergeCarts GraphQLのミューテーションはエラーを返します。
ログは、複数の結合または引用符の保存リクエストが同時に実行される場合、GraphQL エラーがquote_coupons テーブル (QUOTE_COUPONS_QUOTE_ID_COUPON_CODE)の重複キー制約の違反によって発生したことを示しています。
tail -n 200 var/log/exception.log var/log/debug.log | grep -E "Duplicate entry|QUOTE_COUPONS_QUOTE_ID_COUPON_CODE"
パッチを適用する
個別のパッチを適用するには、デプロイメント方法に応じて次のリンクを使用します。
- Adobe CommerceまたはMagento Open Source オンプレミス:Quality Patches Tool ガイドのQuality Patches Tool >使用状況。
- クラウドインフラストラクチャ上のAdobe Commerce:「 アップグレードとパッチ > パッチを適用」(Commerce クラウドインフラストラクチャガイド)。
関連トピックス
Quality Patches Toolについて詳しくは、次を参照してください。
- Quality Patches Tool: ツール ガイドの品質パッチ のセルフサービス ツール。