[僅限PaaS]{class="badge informative" title="僅適用於雲端專案(Adobe管理的PaaS基礎結構)和內部部署專案的Adobe Commerce 。"}

ACSD-59036:載入上下限均設為​ $0 ​的產品價格時發生例外狀況

ACSD-59036修補程式修正載入上下限均設為​ $0 ​的產品價格時發生例外狀況的問題。 安裝Quality Patches Tool (QPT) 1.1.50時,即可使用此修補程式。 修補程式ID為ACSD-59036。 請注意,此問題已排程在Adobe Commerce 2.4.8中修正。

受影響的產品和版本

已為Adobe Commerce版本建立修補程式:

Adobe Commerce (所有部署方法) 2.4.7

與Adobe Commerce版本相容:

Adobe Commerce (所有部署方法) 2.4.7 - 2.4.7-p2

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

問題

載入上下限皆設為​ $0 ​的產品價格時發生例外狀況。

發生此問題是因為載入包含價格範圍的查詢時,演演算法不會考慮NULL值。 若要修正此問題,我們可以檢查上下範圍是否均為NULL,如果是,請為兩個限制指派值​0。 這應該可以避免擲回任何錯誤。

要再現的步驟

  1. 建立​ 13 ​簡單產品。
  2. 將所有​ 13 ​產品指派至類別。
  3. 將一項產品的價格設定為​$1322.94
  4. 將所有其他產品的價格設定為​$0
  5. 將OpenSearch設定為搜尋引擎。
  6. 移至​Stores > Configuration > Catalog > Storefront,並將​ PLP ​計數設為​16
  7. 將​ Price Navigation Step Calculation ​設定為​自動(平均產品計數)
  8. 執行完整重新索引。
  9. 開啟​ Category ​頁面。

預期結果

Category​頁面會顯示所有產品。

實際結果

發生錯誤:

report.CRITICAL: OpenSearch\Common\Exceptions\BadRequest400Exception: {"error":{"root_cause":[{"type":"x_content_parse_exception","reason":"[1:193] [bool] failed to parse field [must]"}],"type":"x_content_parse_exception","reason":"[1:193] [bool] failed to parse field [filter]","caused_by":{"type":"x_content_parse_exception","reason":"[1:193] [bool] failed to parse field [must]","caused_by":{"type":"illegal_argument_exception","reason":"field name is null or empty"}}},"status":400} in /vendor/opensearch-project/opensearch-php/src/OpenSearch/Connections/Connection.php:664

套用修補程式

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

相關閱讀

若要進一步瞭解Quality Patches Tool,請參閱:

如需QPT中其他修補程式的詳細資訊,請參閱Quality Patches Tool指南中的:搜尋修補程式Quality Patches Tool。

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