[PaaS のみ]{class="badge informative" title="Adobe Commerce on Cloud プロジェクト(Adobeが管理する PaaS インフラストラクチャ)およびオンプレミスプロジェクトにのみ適用されます。"}

ACSD-67166:ストアフロントに見積もりを読み込む際の、cataloginventory_stock_status クエリの重複実行

ACSD-67166 パッチでは、ストアフロントで見積もりを読み込む際に cataloginventory_stock_status クエリの重複実行が発生し、冗長な DB 呼び出しが発生する問題が修正されています。 このパッチは、Quality Patches Tool (QPT) 1.1.70 がインストールされている場合に使用できます。 パッチ ID は ACSD-67166 です。 この問題はAdobe Commerce 2.4.9 で修正される予定であることに注意してください。

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

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

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

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

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

問題

ストアフロントで引用符を読み込むと、cataloginventory_stock_status クエリの重複実行が発生し、冗長な DB 呼び出しが発生します。

再現手順 :

  1. クリーンなインスタンスをインストールします。

  2. CategorySimple Product を作成します。

  3. カテゴリに移動し、商品を買い物かごに追加します。

  4. 買い物かごページに移動:/checkout/cart/

  5. xDebug にブレークポイントを設定します。

    1. app/code/Magento/CatalogInventory/Model/StockRegistryPreloader.php:115
    2. app/code/Magento/InventoryCatalog/Model/LegacyStockStatusCache.php:73
    3. lib/internal/Magento/Framework/Data/AbstractSearchResult.php:233
    4. ブレークポイントの条件: strpos($this->query->getSelectSql(true), 'stock_status') !==false
      $_SERVER['REQUEST_URI']watches に追加して、同じリクエスト内でクエリが 2 回呼び出されることを PHPStorm 認します。

期待される結果 :

クエリはリクエストごとに 1 回実行されます。

実際の結果 :

同じクエリが 2 回実行されます。

SELECT `main_table`.*, `cp_table`.`sku`, `cp_table`.`type_id` FROM `cataloginventory_stock_status` AS `main_table`
 INNER JOIN `catalog_product_entity` AS `cp_table` ON main_table.product_id = cp_table.entity_id AND (cp_table.created_in <= 1 AND cp_table.updated_in > 1) WHERE (`main_table`.`product_id` IN(2)) AND (`main_table`.`website_id` = '0')

パッチの適用

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

関連資料

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

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