Я получаю ошибку исчерпания памяти при выполнении массового действия на модели с большим количеством записей. Я пытаюсь оптимизировать это, устанавливая ограничение для коллекции, однако кажется, что полная коллекция загружается еще до того, как предел установлен. Вот код, который вызывает исчерпание памяти:
$collection = $this->filter->getCollection($this->collectionFactory->create())->setPageSize(1)->setCurPage(1);
Это метод выполнения контроллера массового действия.
edit: Так что я предполагаю, что Magento\Ui\Component\MassAction::getFilterIds()
виноват, поскольку генерирует все выбранные идентификаторы внутри массива, чтобы позже выполнить SQL в выражении для фильтрации, какие строки модели необходимо использовать. Не уверен, смогу ли я это исправить.