Превышение лимитов памяти при запросе перевода в модуле tmgmt

Это проблема рекурсии при сборе информации о статье. Модуль сканирует ссылочные поля (reference entity fields) и может попасть в своеобразную рекурсивную петлю. К примеру, статья ссылается на параграф, а тот ссылается на эту же статью.

Т.к. глубина рекурсии не ограничена, то петля приводит к превышению лимитов оперативной памяти.

Я обнаружил похожую тему в issues данного модуля, чтобы опубликовать там свой небольшой патч, решающий проблему — #3040609.

https://www.drupal.org/files/issues/2024-09-26/tmgmt-recursion_0.patch

Идея патча в том, чтобы создать реестр объектов, и избежать повторного анализа структуры ранее найденного объекта.

Мало букафф? Читайте есчо !

Подготовка строки для использования в качестве имени html класса

Январь 18, 2022 г.

То, что в семерке выполняется функцией drupal_html_class(), в Drupal 8 реализовано в виде статического метода\Drupal\Component\Utility\Html::getClass($str). Данная функция также востребована в шаблонах (twig). Здесь вы можете использовать фильтр ...

Читать

Создаём программно url alias в Drupal 9

Август 28, 2021 г.

Сниппет кода, демонстрирующий как alias создаётся в Drupal 9. Ранее (в 8й версии) это был сервис ядра path.alias_storage, и код выглядел так: [crayon-69ea292220eca757376550/] В 9й версии хранилище перенесли в entityTypeManager и потому выглядит ...

Читать

Программный вывод блока в Drupal 9

Август 31, 2021 г.

Рассмотрим пару кейсов, того как рендерить блок из вашего кода. Блок существует как Entity Вы создали произвольный блок через Manage->Structure->Block ...

Читать

Убрать копейки при выводе цены Drupal/Commerce

Май 16, 2021 г.

Сложно сейчас найти рублевые цены с копейками, но по умолчанию они выводятся в шаблонах. Давайте посмотрим как их убрать в случае настройки магазина построенного ...

Читать
 

Комментарии к «Превышение лимитов памяти при запросе перевода в модуле tmgmt»

Понравилась статья? Есть вопросы? - пишите в комментариях.



Комментарий: