ACSD-47027:低速クエリ B2B CompanyRole GraphQL の更新
ACSD-47027 パッチを使用すると、低速のクエリ B2B CompanyRole GraphQL アップデートが期待どおりに動作しない問題を解決できます。 このパッチは、Quality Patches Tool (QPT) 1.1.23 がインストールされている場合に使用できます。 パッチ ID は ACSD-47027 です。 この問題はAdobe Commerce 2.4.6 で修正される予定であることに注意してください。
影響を受ける製品とバージョン
Adobe Commerce バージョン用のパッチが作成されます。
- Adobe Commerce(すべてのデプロイメント方法) 2.4.2-p1
Adobe Commerce バージョンとの互換性:
- Adobe Commerce(すべてのデプロイメント方法) 2.4.2 ~ 2.4.5-p1
magento/quality-patches
パッケージを最新バージョンに更新し、Quality Patches Tool: Search for patches page で互換性を確認します。 パッチ ID を検索キーワードとして使用して、パッチを見つけます。問題
低速のクエリ B2B CompanyRole GraphQL の更新が期待どおりに動作しません。
前提条件 :
B2B モジュールをインストールします。
再現手順 :
-
Adobe Commerce管理者で、Stores / Settings / Configurations / B2B Features に移動し、「Enable Company」を はい に設定します。
-
フロントエンドに移動し、会社を作成します。
-
会社ユーザーとしてログインしたら、My Account/Roles and Permissions に移動し、新しい役割を追加します。
-
bin/magento dev:que:enab
dev 使用してクエリログを有効にします。 -
次に、以下の GraphQL リクエストを送信します(ID は base64 でエンコードされた役割 ID です)。
code language-none mutation { updateCompanyRole( input: { id: "Mg==" permissions: [ "Magento_Company::view" "Magento_Company::view_account" "Magento_Company::user_management" "Magento_Company::roles_view" ] } ) { role { id name permissions { id text children { id text children { id text } } } }
-
クエリログを確認します。
-
上記のクエリが実行されていることがわかります。 このクエリは
app/code/Magento/CompanyGraphQl/Model/Company/Role/ValidateRole.php::validateResources
で実行されます。
期待される結果 :
company_permissions DB テーブルで使用可能なすべてのデータを読み込まないように、app/code/Magento/CompanyGraphQl/Model/Company/Role/ValidateRole.php::validateResources
を最適化する必要があります。
実際の結果 :
Adobe Commerceは、フィルターなしでクエリを実行します。 レコード数が多い場合、Adobe Commerceでのデータ収集の準備に多くの時間がかかります。
パッチの適用
個々のパッチを適用するには、デプロイメント方法に応じて、次のリンクを使用します。
- Adobe CommerceまたはMagento Open Sourceオンプレミス:Quality Patches Tool > Usage in the Quality Patches Tool guide.
- クラウドインフラストラクチャー上のAdobe Commerce:開発者向けドキュメントの アップグレードとパッチ/パッチの適用。
関連資料
Quality Patches Tool について詳しくは、以下を参照してください。
- Quality Patches Tool リリース済み:品質パッチをセルフサービスで提供する新しいツールアドビのサポートナレッジベースに含まれています。
- を使用して、Adobe Commerceの問題にパッチが使用できるかどうかを Quality Patches Tool サポートナレッジベースで確認します。
QPT で使用可能なその他のパッチの詳細については、Quality Patches Tool ガイドの「Quality Patches Tool: Search for patches」を参照してください。