Skip to content

Commit eb1af21

Browse files
committed
MC-38168: Manual Indexer after Merchandising - Empty Catalog/ Number of products incorrect
1 parent e06f08e commit eb1af21

File tree

1 file changed

+10
-1
lines changed

1 file changed

+10
-1
lines changed

app/code/Magento/Indexer/Model/Indexer.php

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@
1313
use Magento\Framework\Indexer\IndexStructureInterface;
1414
use Magento\Framework\Indexer\StateInterface;
1515
use Magento\Framework\Indexer\StructureFactory;
16+
use Magento\Framework\Indexer\IndexerInterfaceFactory;
1617

1718
/**
1819
* Indexer model.
@@ -66,6 +67,11 @@ class Indexer extends \Magento\Framework\DataObject implements IndexerInterface
6667
*/
6768
private $workingStateProvider;
6869

70+
/**
71+
* @var IndexerInterfaceFactory
72+
*/
73+
private $indexerFactory;
74+
6975
/**
7076
* @param ConfigInterface $config
7177
* @param ActionFactory $actionFactory
@@ -74,6 +80,7 @@ class Indexer extends \Magento\Framework\DataObject implements IndexerInterface
7480
* @param Indexer\StateFactory $stateFactory
7581
* @param Indexer\CollectionFactory $indexersFactory
7682
* @param WorkingStateProvider $workingStateProvider
83+
* @param IndexerInterfaceFactory $indexerFactory
7784
* @param array $data
7885
*/
7986
public function __construct(
@@ -84,6 +91,7 @@ public function __construct(
8491
Indexer\StateFactory $stateFactory,
8592
Indexer\CollectionFactory $indexersFactory,
8693
WorkingStateProvider $workingStateProvider,
94+
IndexerInterfaceFactory $indexerFactory,
8795
array $data = []
8896
) {
8997
$this->config = $config;
@@ -93,6 +101,7 @@ public function __construct(
93101
$this->stateFactory = $stateFactory;
94102
$this->indexersFactory = $indexersFactory;
95103
$this->workingStateProvider = $workingStateProvider;
104+
$this->indexerFactory = $indexerFactory;
96105
parent::__construct($data);
97106
}
98107

@@ -465,7 +474,7 @@ private function getSharedIndexers(string $sharedIndex) : array
465474
}
466475
$indexerConfig = $this->config->getIndexer($indexerId);
467476
if ($indexerConfig['shared_index'] === $sharedIndex) {
468-
$indexer = $this->indexersFactory->create();
477+
$indexer = $this->indexerFactory->create();
469478
$indexer->load($indexerId);
470479
$result[] = $indexer;
471480
}

0 commit comments

Comments
 (0)