MDVA-32655: "quoteItemCleaner"消費者每次執行都會執行一則訊息

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和Adobe Commerce內部部署2.3.0 - 2.4.2

NOTE
此修補程式可能適用於其他發行了「品質修補程式」工具的版本。 若要檢查修補程式是否與您的Adobe Commerce版本相容,請將magento/quality-patches套件更新至最新版本,並在Quality Patches Tool上檢查相容性:搜尋修補程式頁面。 使用修補程式ID作為搜尋關鍵字,以尋找修補程式。

問題

quoteItemCleaner取用者只會在每次執行時執行一個訊息。

要再現的步驟

  1. 檢查queue_message_status資料庫資料表,並確定所有現有的佇列訊息都處於「完成」狀態(狀態識別碼4)。

  2. 停止自動Adobe Commerce cron執行。

  3. 建立兩或三個簡單的產品。

  4. 對這三個簡單產品執行大量刪除。

  5. queue_message_status表格中,您看到catalog_product_removed_queue主題有三個具有狀態識別碼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訊息狀態都已更新為完成(識別碼=4)。

實際結果

三個記錄中只有一個會更新為「完成」狀態(識別碼= 4)。 其他兩則訊息的狀態為狀態識別碼= 3 (進行中)。 產生未處理佇列訊息的待處理專案。

套用修補程式

若要套用個別修補程式,請根據您的部署方法使用下列連結:

相關閱讀

若要進一步瞭解「品質修補程式」工具,請參閱:

如需QPT中其他修補程式的詳細資訊,請參閱我們的開發人員檔案中的QPT🔗中的修補程式。

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