QUALITY PATCH

MDVA-30977-V2: Random products missing from categories after reindex

Random products missing from categories after reindex. Quality patch MDVA-30977-V2 for magento/module-catalog applies to Magento Open Source and Adobe Commerce 2.3.0 to 2.4.1-p1.

Categories
Catalog/Product
Components
magento/module-catalog, magento/module-catalog-search, magento/module-catalog-rule, magento/module-indexer, magento/module-inventory-configurable-product-indexer, magento/module-inventory-indexer
Origin
adobe-commerce-support

No Adobe documentation page exists for this patch.

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 MDVA-30977-V2. On Cloud, add MDVA-30977-V2 under stage.build.QUALITY_PATCHES in .magento.env.yaml.

For cweagans/composer-patches, choose a compatible version below and download the bundle. Copy its MDVA-30977-V2/ 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 (6): magento/module-catalog, magento/module-catalog-search, magento/module-catalog-rule, magento/module-indexer, magento/module-inventory-configurable-product-indexer, magento/module-inventory-indexer
Packages across compatible versions (6): magento/module-catalog, magento/module-catalog-search, magento/module-catalog-rule, magento/module-indexer, magento/module-inventory-configurable-product-indexer, magento/module-inventory-indexer

magento/magento2-base >=2.3.0 <2.3.3

Magento Open Source
2.3.2-p2, 2.3.2-p1, 2.3.2, 2.3.1, 2.3.0
Adobe Commerce
2.3.2-p2, 2.3.2-p1, 2.3.2, 2.3.1, 2.3.0
Patch file
patches/os/MDVA-28682_2.3.0.patch
  • vendor/magento/module-catalog/Model/Indexer/Product/Price/AbstractAction.php
  • vendor/magento/module-catalog/Model/Indexer/Product/Price/Action/Rows.php
  • vendor/magento/module-catalog-search/Model/Indexer/Fulltext.php

magento/magento2-base >=2.3.3 <2.3.4

Magento Open Source
2.3.3-p2, 2.3.3
Adobe Commerce
2.3.3-p2, 2.3.3
Patch file
patches/os/MDVA-28682_2.3.3.patch
  • vendor/magento/module-catalog/Model/Indexer/Product/Price/AbstractAction.php
  • vendor/magento/module-catalog/Model/Indexer/Product/Price/Action/Rows.php
  • vendor/magento/module-catalog-search/Model/Indexer/Fulltext.php
  • vendor/magento/module-catalog-rule/Model/Indexer/IndexBuilder.php
  • vendor/magento/module-catalog-rule/Model/Indexer/ReindexRuleProductPrice.php
  • vendor/magento/module-catalog-rule/Model/Indexer/RuleProductsSelectBuilder.php

magento/magento2-base >=2.3.4 <2.3.5

Magento Open Source
2.3.4-p2, 2.3.4-p1, 2.3.4
Adobe Commerce
2.3.4-p2, 2.3.4-p1, 2.3.4
Patch file
patches/os/MDVA-30977_2.3.4.patch
  • vendor/magento/module-catalog-search/Model/Indexer/Fulltext.php

magento/magento2-base >=2.3.5 <2.3.7

Magento Open Source
2.3.6-p1, 2.3.6, 2.3.5-p2, 2.3.5-p1, 2.3.5
Adobe Commerce
2.3.6-p1, 2.3.6, 2.3.5-p2, 2.3.5-p1, 2.3.5
Patch file
patches/os/MDVA-30977_2.3.5-p1_v4.patch
  • vendor/magento/module-catalog/Model/Indexer/Category/Product/Action/Rows.php
  • vendor/magento/module-catalog/Model/Indexer/Product/Category/Action/Rows.php
  • vendor/magento/module-catalog/Model/Indexer/Product/Price/Action/Rows.php
  • vendor/magento/module-catalog-search/Model/Indexer/Fulltext.php
  • vendor/magento/module-indexer/Model/Indexer.php
  • vendor/magento/module-indexer/Model/Processor.php
  • vendor/magento/module-indexer/Model/Processor/MakeSharedIndexValid.php (added)
  • vendor/magento/module-indexer/Model/WorkingStateProvider.php (added)

magento/magento2-base >=2.3.7 <=2.3.7-p2

Magento Open Source
2.3.7-p2, 2.3.7-p1, 2.3.7
Adobe Commerce
2.3.7-p2, 2.3.7-p1, 2.3.7
Patch file
patches/os/MDVA-39190_2.3.7.patch
  • vendor/magento/module-catalog/Model/Indexer/Category/Product/Action/Rows.php
  • vendor/magento/module-catalog/Model/Indexer/Product/Category/Action/Rows.php
  • vendor/magento/module-catalog/Model/Indexer/Product/Price/Action/Rows.php
  • vendor/magento/module-catalog-search/Model/Indexer/Fulltext.php
  • vendor/magento/module-indexer/Model/Indexer.php
  • vendor/magento/module-indexer/Model/Processor.php
  • vendor/magento/module-indexer/Model/Processor/MakeSharedIndexValid.php (added)
  • vendor/magento/module-indexer/Model/WorkingStateProvider.php (added)

magento/magento2-base >=2.4.0 <2.4.2

Magento Open Source
2.4.1-p1, 2.4.1, 2.4.0-p1, 2.4.0
Adobe Commerce
2.4.1-p1, 2.4.1, 2.4.0-p1, 2.4.0
Patch file
patches/os/MDVA-33068_2.4.0.patch
  • vendor/magento/module-catalog/Model/Indexer/Category/Product/Action/Rows.php
  • vendor/magento/module-catalog/Model/Indexer/Product/Category/Action/Rows.php
  • vendor/magento/module-catalog/Model/Indexer/Product/Price/Action/Rows.php
  • vendor/magento/module-catalog-search/Model/Indexer/Fulltext.php
  • vendor/magento/module-indexer/Model/Indexer.php
  • vendor/magento/module-indexer/Model/Processor.php
  • vendor/magento/module-indexer/Model/Processor/MakeSharedIndexValid.php (added)
  • vendor/magento/module-indexer/Model/WorkingStateProvider.php (added)

magento/inventory-composer-metapackage >=1.1.4 <1.1.7

Magento Open Source
2.3.6-p1, 2.3.6, 2.3.5-p2, 2.3.5-p1, 2.3.5, 2.3.4-p2, 2.3.4-p1, 2.3.4
Adobe Commerce
2.3.6-p1, 2.3.6, 2.3.5-p2, 2.3.5-p1, 2.3.5, 2.3.4-p2, 2.3.4-p1, 2.3.4
Patch file
patches/os/MDVA-30977_1.1.5-p1_v4.patch
  • vendor/magento/module-inventory-configurable-product-indexer/Indexer/SourceItem/SourceItemIndexer.php
  • vendor/magento/module-inventory-configurable-product-indexer/Indexer/Stock/StockIndexer.php
  • vendor/magento/module-inventory-configurable-product-indexer/etc/di.xml
  • vendor/magento/module-inventory-indexer/Indexer/Stock/IndexDataProviderByStockId.php
  • vendor/magento/module-inventory-indexer/etc/di.xml

magento/inventory-composer-metapackage 1.1.7

Magento Open Source
2.3.7-p3, 2.3.7-p2, 2.3.7-p1, 2.3.7
Adobe Commerce
2.3.7-p3, 2.3.7-p2, 2.3.7-p1, 2.3.7
Patch file
patches/os/MDVA-39190_1.1.7.patch
  • vendor/magento/module-inventory-configurable-product-indexer/Indexer/SourceItem/SourceItemIndexer.php
  • vendor/magento/module-inventory-configurable-product-indexer/Indexer/Stock/StockIndexer.php
  • vendor/magento/module-inventory-configurable-product-indexer/etc/di.xml
  • vendor/magento/module-inventory-indexer/Indexer/Stock/IndexDataProviderByStockId.php
  • vendor/magento/module-inventory-indexer/etc/di.xml

magento/inventory-metapackage >=1.2.0 <1.2.2

Magento Open Source
2.4.1-p1, 2.4.1, 2.4.0-p1, 2.4.0
Adobe Commerce
2.4.1-p1, 2.4.1, 2.4.0-p1, 2.4.0
Patch file
patches/os/MDVA-33068_1.2.0.patch
  • vendor/magento/module-inventory-configurable-product-indexer/Indexer/SelectBuilder.php
  • vendor/magento/module-inventory-configurable-product-indexer/Indexer/SourceItem/SourceItemIndexer.php
  • vendor/magento/module-inventory-configurable-product-indexer/Indexer/Stock/StockIndexer.php
  • vendor/magento/module-inventory-configurable-product-indexer/etc/di.xml
  • vendor/magento/module-inventory-indexer/Indexer/SelectBuilder.php
  • vendor/magento/module-inventory-indexer/Indexer/SelectBuilderInterface.php (added)
  • vendor/magento/module-inventory-indexer/Indexer/Stock/IndexDataProviderByStockId.php
  • vendor/magento/module-inventory-indexer/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.