ACSD-53750: Broken pipe or closed connection error during multi-threaded catalog_product_price reindex

The ACSD-53750 patch fixes the issue where a Broken pipe or closed connection error occurs during multi-threaded catalog_product_price reindex. This patch is available when the Quality Patches Tool (QPT) 1.1.37 is installed. The patch ID is ACSD-53750. Please note that the issue is scheduled to be fixed in Adobe Commerce 2.4.7.

Affected products and versions

The patch is created for Adobe Commerce version:

  • Adobe Commerce (all deployment methods) 2.4.6-p1

Compatible with Adobe Commerce versions:

  • Adobe Commerce (all deployment methods) 2.4.4 - 2.4.6-p2
NOTE
The patch might become applicable to other versions with new Quality Patches Tool releases. To check if the patch is compatible with your Adobe Commerce version, update the magento/quality-patches package to the latest version and check the compatibility on the Quality Patches Tool: Search for patches page. Use the patch ID as a search keyword to locate the patch.

Issue

Broken pipe or closed connection error occurs during multi-threaded catalog_product_price reindex.

Steps to reproduce:

  1. Configure RabbitMq.

  2. Generate sample data using the attached small.xml file.

  3. Go to Stores > Config > Catalog > Inventory > Inventory Indexer Setting and set Stock/Source reindex strategy = Asynchronous.

  4. Set the dimension mode for indexes which support that. E.g., catalog_product_price_website_and_customer_group or customer_group.

    code language-none
    bin/magento indexer:set-dimensions-mode catalog_product_price customer_group
    
  5. Run reset of indexers for catalog_product_price.

    code language-none
    bin/magento indexer:reset catalog_product_price
    
  6. Run the indexer for the reset indexer using multiple threads.

    code language-none
    MAGE_INDEXER_THREADS_COUNT=10 bin/magento indexer:reindex catalog_product_price
    

Expected results:

No errors occur.

Actual results:

The following error is caused by an AMQP connection: Broken pipe or closed connection.

Apply the patch

To apply individual patches, use the following links depending on your deployment method:

To learn more about Quality Patches Tool, refer to:

For info about other patches available in QPT, refer to Quality Patches Tool: Search for patches in the Quality Patches Tool guide.

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