ACSD-47027: langsame Abfrage B2B CompanyRole GraphQL Update
Der Patch ACSD-47027 behebt das Problem, dass die langsame Abfrage B2B CompanyRole GraphQL Update nicht wie erwartet funktioniert. Dieser Patch ist verfügbar, wenn Quality Patches Tool (QPT) 1.1.23 installiert ist. Die Patch-ID ist ACSD-47027. Bitte beachten Sie, dass das Problem in Adobe Commerce 2.4.6 behoben sein soll.
Betroffene Produkte und Versionen
Der Patch wird für die Adobe Commerce-Version erstellt:
- Adobe Commerce (alle Bereitstellungsmethoden) 2.4.2-p1
Kompatibel mit Adobe Commerce-Versionen:
- Adobe Commerce (alle Bereitstellungsmethoden) 2.4.2 - 2.4.5-p1
magento/quality-patches
auf die neueste Version und überprüfen Sie die Kompatibilität auf der Seite Quality Patches Tool: Suchen nach Patches. Verwenden Sie die Patch-ID als Suchschlüsselwort, um den Patch zu finden.Problem
Die langsame Abfrage B2B CompanyRole GraphQL Update funktioniert nicht erwartungsgemäß.
Voraussetzungen:
Installieren Sie das B2B-Modul.
Zu reproduzierende Schritte:
-
Gehen Sie im Adobe Commerce-Admin zu Stores > Settings > Configurations > B2B Features und legen Sie Enable Company auf Ja fest.
-
Gehen Sie zum Frontend und erstellen Sie ein Unternehmen.
-
Nachdem Sie sich als Unternehmensbenutzer angemeldet haben, gehen Sie zu My Account > Roles and Permissions und fügen Sie eine neue Rolle hinzu.
-
Aktivieren Sie das dev-Abfrageprotokoll mit
bin/magento dev:que:enab
. -
Senden Sie nun die unten stehende GraphQL -Anfrage (id ist die base64 -kodierte Rollen-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 } } } }
-
Überprüfen Sie das Abfrageprotokoll.
-
Sie können sehen, dass die obige Abfrage ausgeführt wird. Diese Abfrage wird in
app/code/Magento/CompanyGraphQl/Model/Company/Role/ValidateRole.php::validateResources
ausgeführt.
Erwartete Ergebnisse:
Der app/code/Magento/CompanyGraphQl/Model/Company/Role/ValidateRole.php::validateResources
muss optimiert werden, damit nicht alle in der company_permissions DB-Tabelle verfügbaren Daten geladen werden.
Tatsächliche Ergebnisse:
Adobe Commerce führt eine Abfrage ohne Filter aus. Bei einer großen Anzahl von Datensätzen dauert es sehr lange, bis Adobe Commerce die Datenerfassung vorbereitet.
Wenden Sie den Patch an
Verwenden Sie je nach Bereitstellungsmethode die folgenden Links, um einzelne Patches anzuwenden:
- Adobe Commerce oder Magento Open Source vor Ort: Quality Patches Tool > Nutzung im Quality Patches Tool-Handbuch.
- Adobe Commerce auf Cloud-Infrastruktur: Upgrades und Patches > Patches anwenden im Handbuch Commerce on Cloud Infrastructure.
Verwandtes Lesen
Weitere Informationen zu Quality Patches Tool finden Sie unter:
- Quality Patches Tool release: ein neues Tool zur Selbstbedienung von Qualitäts-Patches in der Support-Wissensdatenbank.
- Überprüfen Sie mithilfe von Quality Patches Tool im Quality Patches Tool -Handbuch, ob ein Patch für Ihr Adobe Commerce-Problem verfügbar ist.
Weitere Informationen zu anderen in QPT verfügbaren Patches finden Sie unter Quality Patches Tool: Suchen nach Patches im Quality Patches Tool -Handbuch.