Problem/Motivation

When performing migrations, even on "simple"/"basic" sites, you are likely to run into a variety of known issues. However, some of these are quite severe, from a UX point of view, and can result in an overall lack of confidence in the D8 migration system. :\

Let's see how many of these we can mitigate / prevent and provide end users with guidance on how to find their way out.

Proposed resolution

Here is a list of issues related to this topic. Feel free to also add your own issues that are hit on almost every migration, cause concern with the that we could help prevent / protect against.

Problems with the source database
The source database might have known problems—for example, links to non-existent files, entity reference fields that are pointing to non-existent content, entities in general that don't validate for some reason—but these will manifest themselves as errors raised with the Drupal 8 migration. It would be useful to have a "pre-flight check" to patch things up ahead of time.

#3061676: Create an audit plugin class/manager for migrations

Blank body fields post-migration
Something that seems like it will hit every site, big and small, is that filter formats between 6/7 and 8 do not line up 1:1, and so from a security POV, the system defaults to filter_null, which results in all of the fields being blank. It feels like we could do more to help with this condition, and get people off and running on the right foot.

#3061571: If no Drupal 8 equivalent filter is found during migration, drop transformation-only filters, so that body fields show up
or, fancier:
#3061681: Provide the ability to map text formats between source and destination

Let users figure out why something went wrong.

#3063856: Add ability to view migrate_message table data
#3063857: The migration system should log when it tries to make an educated guess and what a user should do next
#3213044: Log the name of the missing text filter when filter_null is mapped

Give people better information on what's done/outstanding in terms of migrate requirements

#2936365: Migrate UI - allow modules to declare the state of their migrations

// @todo: More

Remaining tasks

  • Review list of common problems / solutions to ensure it's complete.
  • Spin off sub-issues for each

User interface changes

Yes! :P

API changes

Yes! :P

Data model changes

N/A?

Release notes snippet

N/A; see individual issues.

Comments

webchick created an issue. See original summary.

webchick’s picture

Issue summary: View changes
bogdog400’s picture

I found this page because my body fields were disappearing. After pulling out some hair, I found this error in the log:

Missing filter plugin: filter_null.

After stumbling around, I found that if I went to Home>Administration>Configuration>Content authoring and started editing the content types, I would start getting messages that "filter_null" couldn't be found and so it would be deleted when I saved the text format. After saving the text format for Full HTML, the body text started appearing.

Version: 8.8.x-dev » 8.9.x-dev

Drupal 8.8.0-alpha1 will be released the week of October 14th, 2019, which means new developments and disruptive changes should now be targeted against the 8.9.x-dev branch. (Any changes to 8.9.x will also be committed to 9.0.x in preparation for Drupal 9’s release, but some changes like significant feature additions will be deferred to 9.1.x.). For more information see the Drupal 8 and 9 minor version schedule and the Allowed changes during the Drupal 8 and 9 release cycles.

Version: 8.9.x-dev » 9.1.x-dev

Drupal 8.9.0-beta1 was released on March 20, 2020. 8.9.x is the final, long-term support (LTS) minor release of Drupal 8, which means new developments and disruptive changes should now be targeted against the 9.1.x-dev branch. For more information see the Drupal 8 and 9 minor version schedule and the Allowed changes during the Drupal 8 and 9 release cycles.

Anonymous’s picture

Not sure whether example problems are wanted here?

PHPStan failed:

Got several instances of this; no information given about what it failed on.

quietone’s picture

#3. The solution for #3 is documented on the Known Issues, page Text/Input formats.

#6 @a1tsal, please provide more information. What action did you take that caused the error and what did you expect to happen?

Anonymous’s picture

There were several instances of this in the log for a D7->D8 migration. Since there was no further information in the log message, I can't supply any more detail than that.

Version: 9.1.x-dev » 9.2.x-dev

Drupal 9.1.0-alpha1 will be released the week of October 19, 2020, which means new developments and disruptive changes should now be targeted for the 9.2.x-dev branch. For more information see the Drupal 9 minor version schedule and the Allowed changes during the Drupal 9 release cycle.

Version: 9.2.x-dev » 9.3.x-dev

Drupal 9.2.0-alpha1 will be released the week of May 3, 2021, which means new developments and disruptive changes should now be targeted for the 9.3.x-dev branch. For more information see the Drupal core minor version schedule and the Allowed changes during the Drupal core release cycle.

anybody’s picture

Issue summary: View changes

Re #3. Indeed it's listed in the Known Problems page, but still isn't user-friendly. Added #3213044: Log the name of the missing text filter when filter_null is mapped to the IS for that reason.

Version: 9.3.x-dev » 9.4.x-dev

Drupal 9.3.0-rc1 was released on November 26, 2021, which means new developments and disruptive changes should now be targeted for the 9.4.x-dev branch. For more information see the Drupal core minor version schedule and the Allowed changes during the Drupal core release cycle.

Version: 9.4.x-dev » 9.5.x-dev

Drupal 9.4.0-alpha1 was released on May 6, 2022, which means new developments and disruptive changes should now be targeted for the 9.5.x-dev branch. For more information see the Drupal core minor version schedule and the Allowed changes during the Drupal core release cycle.

Version: 9.5.x-dev » 10.1.x-dev

Drupal 9.5.0-beta2 and Drupal 10.0.0-beta2 were released on September 29, 2022, which means new developments and disruptive changes should now be targeted for the 10.1.x-dev branch. For more information see the Drupal core minor version schedule and the Allowed changes during the Drupal core release cycle.

Version: 10.1.x-dev » 11.x-dev

Drupal core is moving towards using a “main” branch. As an interim step, a new 11.x branch has been opened, as Drupal.org infrastructure cannot currently fully support a branch named main. New developments and disruptive changes should now be targeted for the 11.x branch, which currently accepts only minor-version allowed changes. For more information, see the Drupal core minor version schedule and the Allowed changes during the Drupal core release cycle.

Version: 11.x-dev » main

Drupal core is now using the main branch as the primary development branch. New developments and disruptive changes should now be targeted to the main branch.

Read more in the announcement.