ACP2E-4913: データベースのデッドロック後にREST APIの出荷と請求書の作成が再試行されない

ACP2E-4913 パッチは、操作が再試行されないためにデータベースのデッドロックが発生した場合に、REST APIを介して出荷または請求書を作成する際に永続的に失敗する問題を修正します。 このパッチは、Quality Patches Tool (QPT) 1.1.84がインストールされている場合に利用できます。 パッチ IDはACP2E-4913です。 この問題は、Adobe Commerce 2.4.10で修正される予定です。

影響を受ける製品とバージョン

パッチはAdobe Commerceのバージョン​用に作成されました

  • Adobe Commerce(すべてのデプロイメント方法) 2.4.8-p3

Adobe Commerceのバージョンとの互換性:

  • Adobe Commerce(すべてのデプロイメント方法) 2.4.7 - 2.4.8-p5
NOTE
このパッチは、新しいQuality Patches Tool リリースを含む他のバージョンに適用される可能性があります。 パッチがAdobe Commerceのバージョンと互換性があるかどうかを確認するには、magento/quality-patches パッケージを最新バージョンに更新し、Quality Patches Tool:パッチの検索ページ ​で互換性を確認します。 パッチ IDを検索キーワードとして使用して、パッチを検索します。

イシュー

操作が再試行されないため、データベースのデッドロックが発生すると、REST APIを介した出荷または請求書の作成が永続的に失敗します。

複製する手順:

  1. 発送可能な複数の注文と、請求書を作成できる複数の注文を準備します。
  2. 統合が読み込み中になる可能性があるため、これらの注文に対して複数のPOST /rest/V1/order/<orderId>/ship リクエストを並行して送信します。
  3. 同じ方法で、複数のPOST /rest/V1/order/<orderId>/invoice リクエストを並行して送信します。
  4. APIの応答とvar/log/exception.logを確認してください。

期待される結果:

デッドロックの後、操作が再試行され、出荷または請求書が作成されます。

実際の結果:

一部のリクエストは、次のデッドロックエラーで失敗します。 出荷または請求書は作成されないので、手動で作成する必要があります。

SQLSTATE[40001]: Serialization failure: 1213 Deadlock found when trying to get lock; try restarting transaction

パッチを適用する

個別のパッチを適用するには、デプロイメント方法に応じて次のリンクを使用します。

関連トピックス

Quality Patches Toolについて詳しくは、次を参照してください。

recommendation-more-help
commerce-operations-help-tools