Рейтинг:0

Последующие миграции требуют много времени для импорта данных в пункт назначения.

флаг cn

У меня довольно большой набор миграции примерно из 200 тыс. пользователей. При первом запуске миграции (через drush) или после отката и повторного запуска сразу начинается откат+импорт. Под этим я подразумеваю, что индикатор выполнения сразу же начинает показывать ход импорта элементов.

Я знаю, что нет способа обойти саму миграцию, занимающую много времени из-за количества элементов, но я сталкиваюсь с проблемой при последующих запусках, когда до того, как данные фактически начнут импортироваться в место назначения, миграция просто сидит там, по-видимому ничего не делая, в течение безумного количества времени. Под последующими запусками я подразумеваю любой запуск миграции, который не является первым запуском или первым запуском после отката. Итак, миграция, которая выполняется либо для привлечения дополнительных пользователей, либо запускается после того, как первоначальная столкнется с ошибкой.

Если я добавлю --обратная связь=х, я вижу консольное сообщение Обработано 0 элементов (0 создано, 0 обновлено, 0 не выполнено, 0 проигнорировано) — продолжение с «upgrade_d7_user» время от времени, так что я знаю, что это должно быть сделано что-нибудь и обновление после этого количества элементов, но я не знаю, что это такое. Кажется, что мы просто ждем, пока он «посмотрит» на каждый элемент перед его обработкой, чего не происходит при «начальном» запуске, и я предполагаю, что в основном удваивается время выполнения. Я думаю, что мои вопросы:

  • Что именно делает миграция на данный момент? Это просто какая-то проверка данных?
  • Есть ли способ обойти этот шаг и сразу перейти к обработке самих данных? Мы уже ищем несколько дней, чтобы выполнить эту единственную миграцию, и это дополнительное время довольно изнурительно.
sonfd avatar
флаг in
Это повторяющаяся миграция, при которой последующие запуски должны обновлять существующие объекты новыми данными из источника?
флаг cn
Да и нет. На данный момент я не занимаюсь обновлением существующих объектов из источника и не передаю флаг обновления. Прямо сейчас я просто пытаюсь импортировать сущности, которых нет в месте назначения.
Рейтинг:0
флаг in

резервное копированиемигрировать/ядро . Эта библиотека требует psr/log dev-master, а Drupal 8в его файле composer.json требуется psr/log ^ 1.0.Вероятно, эта библиотека добавлена ​​в этот файл composer.json, потому что она требуется от Резервное копирование и миграция для Drupal 8модуль, но он не требуется от ядра Drupal.Для изменения профиля установки вручную потребуется изменить любую ссылку на старый профиль установки в базе данных на ссылку на новый профиль установки, выполнить новый профиль крючок_установить () внедрение и, в конечном итоге, отменить изменения, сделанные из старого профиля

крючок_установить () выполнение.Конфигурация по-прежнему добавляется с файлами конфигурации в каталогах config/install и config/Optional для профилей установки. (См., например, конфигурация/установка и конфигурация/необязательно для Стандарт profile.) Следует удалить конфигурацию из старого профиля и добавить конфигурацию из нового профиля.

Вы делаете это через источник YAML

'#название': текстовое поле Я нашел ошибку, которую я создал

флаг cn
Итак, миграция завершена, поэтому я не могу проверить это, но то, что вы описываете, определенно похоже на решение, поэтому я отмечу его как принятое. Я пару раз натыкался на высшие отметки, исследуя это, но не думаю, что понял, как это реализовать. Эти ссылки являются хорошими ресурсами.

Ответить или комментировать

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