ACSD-47027: consulta lenta B2B CompanyRole GraphQL actualizar

El parche ACSD-47027 resuelve el problema en el que la consulta lenta B2B CompanyRole GraphQL la actualización no funciona según lo esperado. Este parche está disponible cuando la variable Quality Patches Tool (QPT) 1.1.23 está instalado. El ID del parche es ACSD-47027. Tenga en cuenta que el problema está programado para solucionarse en Adobe Commerce 2.4.6.

Productos y versiones afectados

El parche se crea para la versión de Adobe Commerce:

  • Adobe Commerce (todos los métodos de implementación) 2.4.2-p1

Compatible con las versiones de Adobe Commerce:

  • Adobe Commerce (todos los métodos de implementación) 2.4.2 - 2.4.5-p1
NOTE
El parche podría aplicarse a otras versiones con Quality Patches Tool versiones. Para comprobar si el parche es compatible con su versión de Adobe Commerce, actualice el magento/quality-patches paquete a la versión más reciente y compruebe la compatibilidad en la Quality Patches Tool: Página Buscar Parches. Utilice el ID de parche como palabra clave de búsqueda para localizar el parche.

Problema

La consulta lenta B2B CompanyRole GraphQL la actualización no funciona según lo esperado.

Requisitos previos:

Instale el módulo B2B.

Pasos a seguir:

  1. En Adobe Commerce Admin, vaya a Stores > Settings > Configurations > B2B Features y establecer Enable Company hasta .

  2. Vaya al front-end y cree una compañía.

  3. Después de iniciar sesión como usuario de la empresa, vaya a My Account > Roles and Permissions y agregue una función nueva.

  4. Activar dev registro de consultas mediante bin/magento dev:que:enab.

  5. Ahora envíe lo siguiente GraphQL solicitud (el id es el base64 función codificada (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
          }
        }
      }
    }
    
  6. Compruebe el registro de consultas.

  7. Puede ver que se ejecuta la consulta anterior. Esta consulta se ejecuta en app/code/Magento/CompanyGraphQl/Model/Company/Role/ValidateRole.php::validateResources.

Resultados esperados:

El app/code/Magento/CompanyGraphQl/Model/Company/Role/ValidateRole.php::validateResources debe optimizarse para evitar cargar todos los datos disponibles en la company_permissions Tabla de BD.

Resultados reales:

Adobe Commerce ejecuta una consulta sin ningún filtro. Cuando hay un gran número de registros, Adobe Commerce tarda mucho tiempo en preparar la recopilación de datos.

Aplicar el parche

Para aplicar parches individuales, utilice los siguientes vínculos según el método de implementación:

Lectura relacionada

Para obtener más información acerca de Quality Patches Tool, consulte:

Para obtener más información sobre otros parches disponibles en QPT, consulte Quality Patches Tool: Buscar parches en el Quality Patches Tool guía.

recommendation-more-help
8bd06ef0-b3d5-4137-b74e-d7b00485808a