[Somente PaaS]{class="badge informative" title="Aplica-se somente a projetos do Adobe Commerce na nuvem (infraestrutura do PaaS gerenciada pela Adobe) e a projetos locais."}

ACSD-55100: GraphQL não retorna produtos acima de 10k nos resultados da pesquisa

NOTE
Um patch atualizado (ACSD-62332) foi lançado para resolver o mesmo problema para as versões 2.4.6 - 2.4.6-p8. Para obter mais detalhes, consulte ACSD-62332.

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
NOTE
O patch pode se tornar aplicável a outras versões com as novas versões do Quality Patches Tool. Para verificar se o patch é compatível com a sua versão do Adobe Commerce, atualize o pacote 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:

  1. Gerar o catálogo com 15k produtos.
  2. 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:

Leitura relacionada

Para saber mais sobre Quality Patches Tool, consulte:

Para obter informações sobre outros patches disponíveis no QPT, consulte Quality Patches Tool: Pesquisar patches no guia Quality Patches Tool.

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