MDVA-32655: "quoteItemCleaner" コンシューマーは、実行ごとに 1 つのメッセージを実行します

MDVA-32655 パッチにより、誤った「進行中」メッセージ ステータスが、コンシューマー向けの正しい「完了」メッセージに修正されます quoteItemCleaner 複数の製品を削除した後。 このパッチは、 品質向上パッチツール(QPT) 1.0.18 がインストールされています。 パッチ ID は 32655 です。 この問題はAdobe Commerce 2.4.3 で修正される予定であることに注意してください。

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

Adobe Commerce バージョン用のパッチが作成されます。

クラウドインフラストラクチャー上のAdobe Commerce 2.3.3

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

Adobe Commerce on cloud infrastructure およびAdobe Commerce オンプレミス 2.3.0 - 2.4.2

NOTE
パッチは、新しい Quality Patches Tool リリースを使用する他のバージョンにも適用される可能性があります。 パッチがお使いのAdobe Commerceのバージョンと互換性があるかどうかを確認するには、 magento/quality-patches を最新バージョンにパッケージ化し、 Quality Patches Tool:パッチの検索ページ. パッチ ID を検索キーワードとして使用して、パッチを見つけます。

問題

この quoteItemCleaner コンシューマーは、各実行で 1 つのメッセージのみを実行します。

再現手順:

  1. を確認します queue_message_status データベーステーブルを使用し、既存のすべてのキューメッセージが「完了」状態(ステータス ID 4)であることを確認します。

  2. 自動Adobe Commerce cron 実行を停止します。

  3. 2 つまたは 3 つの簡単な製品を作成します。

  4. これら 3 つの簡単な製品を一括削除します。

  5. が含まれる queue_message_status の新しいレコードが 3 つあることがわかります。 catalog_product_removed_queue トピック、状態 ID 2 (新しいレコード)。

  6. 次のコマンドを実行して、これらを保留中に処理します catalog_product_removed_queue メッセージ:

    code language-bash
    bin/magento queue:consumers:start quoteItemCleaner --single-thread --max-messages=100
    

期待される結果:

select * from queue_message_status s join queue q on s.queue_id = q.id where q.name = "catalog_product_removed_queue";

すべての catalog_product_removed_queue メッセージのステータスが「完了」(ID=4)に更新されます。

実際の結果:

3 つのうち 1 つのレコードのみが「完了」ステータスに更新されます(ID = 4)。 他の 2 つのメッセージのステータスは、ステータス ID = 3 (処理中)です。 未処理のキューメッセージを含んだバックログが生成される。

パッチの適用

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

関連資料

品質向上パッチツールの詳細については、次を参照してください。

QPT で使用可能なその他のパッチについては、 QPT で使用可能なパッチ 開発者向けドキュメントを参照してください。

recommendation-more-help
8bd06ef0-b3d5-4137-b74e-d7b00485808a