ACSD-55100: GraphQL não retorna produtos acima de 10k nos resultados da pesquisa
O patch ACSD-55100 corrige o problema em que GraphQL não retorna produtos além de 10k nos resultados da pesquisa. Este patch está disponível quando o Quality Patches Tool (QPT) 1.1.46 está instalado. A ID do patch é ACSD-55100. Observe que o problema está programado para ser corrigido no Adobe Commerce 2.4.8.
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.6
Compatível com as versões do Adobe Commerce:
- Adobe Commerce (todos os métodos de implantação) 2.4.6 - 2.4.6-p3
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
GraphQL não retorna produtos além de 10k nos resultados da pesquisa.
Pré-requisitos:
No caso de OpenSearch, verifique se você está usando a versão mais recente disponível.
Para resolver o problema relatado, a funcionalidade Ponto no Tempo foi introduzida, disponível após OpenSearch 2.5.0 e requer a versão 2.2 do pacote opensearch-project/opensearch-php
.
No entanto, há um conflito com magento/magento-cloud-metapackage
, que especifica uma dependência no pacote opensearch-project/opensearch-php
que deve ser menor que a versão 2.0.1.
Esta dependência impede a atualização do pacote [opensearch-project/opensearch-php] para a versão 2.2 mais recente.
Como resultado, o sistema encontra o seguinte erro e retorna resultados nulos para produtos que excedem 10.000.
Namespace [createPointInTime] not found in /vendor/opensearch-project/opensearch-php/src/OpenSearch/Client.php:135
A dependência existente torna desafiador adicionar diretamente uma versão ao arquivo composer.json
e atualizar o pacote opensearch-project/opensearch-php
para a versão 2.2.
Para resolver o problema, inclua a seguinte linha no arquivo composer.json
principal no bloco obrigatório. Depois, reimplante para atualizar o pacote problemático para a versão mais recente.
"opensearch-project/opensearch-php": "2.2.0 as 2.0.0",
Etapas a serem reproduzidas:
- Gerar o catálogo com 15k produtos.
- Enviar o GraphQL:
query {
products(
filter: {
# category_id:{eq:""}
}
, pageSize: 5, currentPage: 1
) {
total_count
page_info {
current_page
page_size
total_pages
}
aggregations {
attribute_code
count
label
options {
label
value
}
}
items {
uid
sku
is_for_clearance
categories {
name
breadcrumbs {
category_name
category_uid
}
display_mode
description
}
}
}
}
Resultados esperados:
Total_count = 15k
Você poderá mostrar todos os produtos.
Resultados reais:
Total_count = 10k
Não é possível exibir mais nenhum produto após o lote 10k.
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:
- Quality Patches Tool lançamento: uma nova ferramenta para autoatender patches de qualidade na base de dados de conhecimento de suporte.
- Verifique se há patch disponível para o problema do Adobe Commerce usando o Quality Patches Tool no guia Quality Patches Tool.
Para obter informações sobre outros patches disponíveis no QPT, consulte Quality Patches Tool: Pesquisar patches no guia Quality Patches Tool.