ACP2E-5143: a consulta do GraphQL route renderiza conteúdo de página do CMS não solicitado
O patch ACP2E-5143 corrige o problema em que a consulta do GraphQL route renderiza o conteúdo completo da página do CMS, incluindo widgets do Page Builder e listas de produtos, mesmo quando apenas campos de roteamento de URL são solicitados, o que atrasa a resolução do URL. Este patch está disponível quando o Quality Patches Tool (QPT) 1.1.84 está instalado. A ID do patch é ACP2E-5143. Observe que esse problema está programado para ser corrigido no Adobe Commerce 2.4.10.
Produtos e versões afetados
O patch foi criado para a versão do Adobe Commerce:
- Adobe Commerce (todos os métodos de implantação) 2.4.7-p9
Compatível com as versões do Adobe Commerce:
- Adobe Commerce (todos os métodos de implantação) 2.4.4 - 2.4.7-p10
magento/quality-patches para a versão mais recente e verifique a compatibilidade na Quality Patches Tool: página Procurar patches. Use a ID do patch como palavra-chave de pesquisa para localizar o patch.Problema
Problema em que a consulta route do GraphQL renderiza o conteúdo completo da página do CMS, incluindo widgets do Page Builder e listas de produtos, mesmo quando apenas campos de roteamento de URL são solicitados, o que torna a resolução do URL mais lenta.
Pré-requisitos:
O Page Builder está instalado.
Etapas a serem reproduzidas:
-
Vá para Admin > Content > Elements > Pages e clique em Add New Page.
-
Insira os detalhes da página, defina Enable Page como Yes e clique em Edit with Page Builder na seção Content. Expanda Add Content no painel do Page Builder e arraste para o palco um espaço reservado de Products, ou insira um widget de produto de catálogo no conteúdo da página.
-
No Admin, vá para Stores > Settings > Configuration. No painel esquerdo, em General, escolha Web e expanda Default Pages. Defina CMS Home Page para a nova página e clique em Save Config.
-
Envie a seguinte solicitação do GraphQL:
code language-none query ResolveURL($url: String!) { route(url: $url) { relative_url redirect_code type ... on CmsPage { identifier __typename } ... on ProductInterface { uid __typename } ... on CategoryInterface { uid __typename } __typename } } -
Use as seguintes variáveis para a solicitação:
code language-none { "url": "/" }
Resultados esperados:
A consulta route retorna os metadados de roteamento solicitados e os campos discriminadores de tipo para a página inicial do CMS sem renderizar seu conteúdo completo.
Resultados reais:
- A consulta
routerenderiza o conteúdo completo da página inicial do CMS, mesmo que apenas os metadados de roteamento e campos discriminadores de tipo sejam solicitados. - Os widgets do Page Builder carregam coleções de produtos, aumentando o tempo de resposta e o número de consultas ao banco de dados por solicitação.
Aplicar o patch
Para aplicar patches individuais, use os links a seguir, dependendo do método de implantação:
- Adobe Commerce ou Magento Open Source local: Quality Patches Tool > Uso no guia Quality Patches Tool
- Adobe Commerce na infraestrutura em nuvem: Atualizações e patches > Aplicar patches no guia do Commerce na infraestrutura em nuvem
Leitura relacionada
Para saber mais sobre Quality Patches Tool, consulte: