QUALITY PATCH

ACSD-62332: The product listing GraphQL query is limited to a total_count of 10…

The product listing GraphQL query is limited to a total_count of 10,000 products and where Live Search sets the current page to 1 instead of page 2 in the search criteria when queried via GraphQL. Quality patch ACSD-62332 for magento/framework applies to Magento Open Source and Adobe Commerce 2.4.6 to 2.4.6-p15.

Categories
GraphQL, Catalog Search, Catalog/Product
Components
magento/framework, magento/module-catalog-graph-ql, magento/module-catalog-search, magento/module-elasticsearch, magento/module-elasticsearch-7, magento/module-graph-ql, magento/module-open-search, magento/module-elasticsearch-catalog-permissions
Origin
adobe-commerce-support
Since QPT
1.1.55

Issue

The product listing GraphQL query is limited to a total_count of 10,000 products and where Live Search sets the current page to 1 instead of page 2 in the search criteria when queried via GraphQL.

Adobe's page lists 2.4.6 - 2.4.6-p8 as compatible; the versions below are resolved from the current QPT constraints and are the ones the tool will offer.

Install

Install the Quality Patches Tool with composer require magento/quality-patches, apply the prerequisites listed for all files applicable to your distribution and version first, then run vendor/bin/magento-patches apply ACSD-62332. On Cloud, add ACSD-62332 under stage.build.QUALITY_PATCHES in .magento.env.yaml.

For cweagans/composer-patches, choose a compatible version below and download the bundle. Copy its ACSD-62332/ folder into patches/composer/, merge composer.patches.json into composer.json, then run composer install. Bundle prerequisites the same way and list them first. Paths are relative to each package root, using the default -p1 level. Prefer local files when configuring composer-patches; a remote URL can change.

Patch files and compatible versions

Packages across compatible versions (7): magento/module-catalog-graph-ql, magento/module-catalog-search, magento/module-elasticsearch, magento/module-elasticsearch-7, magento/module-graph-ql, magento/module-open-search, magento/framework
Packages across compatible versions (8): magento/module-catalog-graph-ql, magento/module-catalog-search, magento/module-elasticsearch, magento/module-elasticsearch-7, magento/module-graph-ql, magento/module-open-search, magento/framework, magento/module-elasticsearch-catalog-permissions

magento/magento2-base >=2.4.6 <2.4.7

Magento Open Source
2.4.6-p15, 2.4.6-p14, 2.4.6-p13, 2.4.6-p12, 2.4.6-p11, 2.4.6-p10, 2.4.6-p9, 2.4.6-p8, 2.4.6-p7, 2.4.6-p6, 2.4.6-p5, 2.4.6-p4, 2.4.6-p3, 2.4.6-p2, 2.4.6-p1, 2.4.6
Adobe Commerce
2.4.6-p15, 2.4.6-p14, 2.4.6-p13, 2.4.6-p12, 2.4.6-p11, 2.4.6-p10, 2.4.6-p9, 2.4.6-p8, 2.4.6-p7, 2.4.6-p6, 2.4.6-p5, 2.4.6-p4, 2.4.6-p3, 2.4.6-p2, 2.4.6-p1, 2.4.6
Requires
ACSD-61103
Patch file
patches/os/ACSD-62332_2.4.6-p5.patch
  • vendor/magento/module-catalog-graph-ql/DataProvider/Product/RequestDataBuilder.php (added)
  • vendor/magento/module-catalog-graph-ql/DataProvider/Product/SearchCriteriaBuilder.php
  • vendor/magento/module-catalog-graph-ql/Model/Resolver/Products/DataProvider/ProductSearch.php
  • vendor/magento/module-catalog-graph-ql/Model/Resolver/Products/DataProvider/ProductSearch/ProductCollectionSearchCriteriaBuilder.php
  • vendor/magento/module-catalog-graph-ql/Model/Resolver/Products/Query/Search.php
  • vendor/magento/module-catalog-graph-ql/Model/Resolver/Products/SearchCriteria/CollectionProcessor/FilterProcessor/CategoryFilter.php
  • vendor/magento/module-catalog-search/Model/ResourceModel/Fulltext/Collection.php
  • vendor/magento/module-catalog-search/Model/ResourceModel/Fulltext/Collection/SearchResultApplier.php
  • vendor/magento/module-elasticsearch/Model/Adapter/BatchDataMapper/ProductDataMapper.php
  • vendor/magento/module-elasticsearch/Model/ResourceModel/Fulltext/Collection/SearchCriteriaResolver.php
  • vendor/magento/module-elasticsearch/SearchAdapter/Query/Builder/Sort.php
  • vendor/magento/module-elasticsearch/SearchAdapter/Query/Builder/Sort/DefaultExpression.php (added)
  • vendor/magento/module-elasticsearch/SearchAdapter/Query/Builder/Sort/EntityId.php (added)
  • vendor/magento/module-elasticsearch/SearchAdapter/Query/Builder/Sort/ExpressionBuilder.php (added)
  • vendor/magento/module-elasticsearch/SearchAdapter/Query/Builder/Sort/ExpressionBuilderInterface.php (added)
  • vendor/magento/module-elasticsearch/SearchAdapter/Query/Builder/Sort/Position.php (added)
  • vendor/magento/module-elasticsearch/SearchAdapter/Query/Builder/Sort/Relevance.php (added)
  • vendor/magento/module-elasticsearch/etc/di.xml
  • vendor/magento/module-elasticsearch-7/Model/Client/Elasticsearch.php
  • vendor/magento/module-elasticsearch-7/SearchAdapter/Adapter.php
  • vendor/magento/module-graph-ql/etc/schema.graphqls
  • vendor/magento/module-open-search/Model/SearchClient.php
  • vendor/magento/module-open-search/SearchAdapter/Adapter.php
  • vendor/magento/framework/Search/Request/Builder.php

magento/magento2-ee-base >=2.4.6 <2.4.7

Magento Open Source
—
Adobe Commerce
2.4.6-p15, 2.4.6-p14, 2.4.6-p13, 2.4.6-p12, 2.4.6-p11, 2.4.6-p10, 2.4.6-p9, 2.4.6-p8, 2.4.6-p7, 2.4.6-p6, 2.4.6-p5, 2.4.6-p4, 2.4.6-p3, 2.4.6-p2, 2.4.6-p1, 2.4.6
Patch file
patches/commerce/ACSD-62332_2.4.6-p5.patch
  • vendor/magento/module-elasticsearch-catalog-permissions/Model/ResourceModel/Index.php
  • vendor/magento/module-elasticsearch-catalog-permissions/etc/di.xml

Sources

Łukasz Bajsarowicz
Built by

Łukasz Bajsarowicz, e-commerce architect

Magento and Adobe Commerce architecture, upgrades, performance and audits for merchants and agencies since 2015; magento.watch is the tooling I use on those projects.

Open source, maintained on weekends.