diff --git a/core/modules/migrate/src/Plugin/migrate/source/SqlBase.php b/core/modules/migrate/src/Plugin/migrate/source/SqlBase.php index 93569f4..ef102b6 100644 --- a/core/modules/migrate/src/Plugin/migrate/source/SqlBase.php +++ b/core/modules/migrate/src/Plugin/migrate/source/SqlBase.php @@ -91,6 +91,9 @@ public function getDatabase() { if (isset($this->configuration['database_state_key'])) { $this->database = $this->setUpDatabase($this->state->get($this->configuration['database_state_key'])); } + elseif (($fallback_state_key = $this->state->get('migrate.fallback_state_key'))) { + $this->database = $this->setUpDatabase($this->state->get($fallback_state_key)); + } else { $this->database = $this->setUpDatabase($this->configuration); } diff --git a/core/modules/migrate_drupal/src/MigrationCreationTrait.php b/core/modules/migrate_drupal/src/MigrationCreationTrait.php index 817429b..99420a8 100644 --- a/core/modules/migrate_drupal/src/MigrationCreationTrait.php +++ b/core/modules/migrate_drupal/src/MigrationCreationTrait.php @@ -84,6 +84,7 @@ protected function getSourceDatabaseConnection(array $database) { $database_state['database'] = $database; $database_state_key = 'migrate_drupal_' . $drupal_version; \Drupal::state()->set($database_state_key, $database_state); + \Drupal::state()->set('migrate.fallback_state_key', $database_state_key); return $connection; } diff --git a/core/modules/migrate_drupal_ui/src/Form/MigrateUpgradeForm.php b/core/modules/migrate_drupal_ui/src/Form/MigrateUpgradeForm.php index 825ba34..938f3c9 100644 --- a/core/modules/migrate_drupal_ui/src/Form/MigrateUpgradeForm.php +++ b/core/modules/migrate_drupal_ui/src/Form/MigrateUpgradeForm.php @@ -1029,6 +1029,8 @@ public function buildConfirmForm(array $form, FormStateInterface $form_state) { $system_data = $form_state->get('system_data'); } + // Handle derivatives. + list($migration_id,) = explode(':', $migration_id, 2); $source_module = $this->moduleUpgradePaths[$migration_id]['source_module']; $destination_module = $this->moduleUpgradePaths[$migration_id]['destination_module']; $table_data[$source_module][$destination_module][$migration_id] = $migration_label;