ACSD-47027: långsam fråga B2B CompanyRole GraphQL uppdatering

Korrigeringen ACSD-47027 löser problemet där den långsamma uppdateringen av fråga B2B CompanyRole GraphQL inte fungerar som förväntat. Den här korrigeringen är tillgänglig när Quality Patches Tool (QPT) 1.1.23 har installerats. Korrigerings-ID är ACSD-47027. Observera att problemet är planerat att åtgärdas i Adobe Commerce 2.4.6.

Berörda produkter och versioner

Korrigeringen har skapats för Adobe Commerce-version:

  • Adobe Commerce (alla distributionsmetoder) 2.4.2-p1

Kompatibel med Adobe Commerce-versioner:

  • Adobe Commerce (alla distributionsmetoder) 2.4.2 - 2.4.5-p1
NOTE
Korrigeringen kan bli tillämplig för andra versioner med nya Quality Patches Tool-versioner. Om du vill kontrollera om korrigeringen är kompatibel med din Adobe Commerce-version uppdaterar du magento/quality-patches-paketet till den senaste versionen och kontrollerar kompatibiliteten på Quality Patches Tool: Sök efter korrigeringsfiler. Använd patch-ID:t som söknyckelord för att hitta patchen.

Problem

Den långsamma uppdateringen av fråga B2B CompanyRole GraphQL fungerar inte som förväntat.

Förutsättningar:

Installera B2B-modulen.

Steg som ska återskapas:

  1. Gå till Stores > Settings > Configurations > B2B Features i Adobe Commerce Admin och ange Enable Company som Ja.

  2. Gå till fronten och skapa ett företag.

  3. När du har loggat in som företagsanvändare går du till My Account > Roles and Permissions och lägger till en ny roll.

  4. Aktivera dev-frågelogg med bin/magento dev:que:enab.

  5. Skicka nu begäran GraphQL nedan (id är det base64-kodade roll-ID:t):

    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
          }
        }
      }
    }
    
  6. Kontrollera frågeloggen.

  7. Du ser att frågan ovan körs. Frågan körs i app/code/Magento/CompanyGraphQl/Model/Company/Role/ValidateRole.php::validateResources.

Förväntade resultat:

app/code/Magento/CompanyGraphQl/Model/Company/Role/ValidateRole.php::validateResources måste optimeras för att undvika inläsning av alla data som är tillgängliga i databastabellen company_permissions.

Faktiska resultat:

Adobe Commerce kör en fråga utan något filter. När det finns ett stort antal poster tar det lång tid för Adobe Commerce att förbereda datainsamlingen.

Tillämpa korrigeringen

Använd följande länkar beroende på distributionsmetod för att tillämpa enskilda korrigeringsfiler:

Relaterad läsning

Mer information om Quality Patches Tool finns i:

Mer information om andra tillgängliga korrigeringsfiler i QPT finns i Quality Patches Tool: Söka efter korrigeringsfileri Quality Patches Tool-handboken.

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