diff --git a/src/Umbraco.Infrastructure/Migrations/Upgrade/UmbracoPlan.cs b/src/Umbraco.Infrastructure/Migrations/Upgrade/UmbracoPlan.cs index 1789a82f8b..d727770b62 100644 --- a/src/Umbraco.Infrastructure/Migrations/Upgrade/UmbracoPlan.cs +++ b/src/Umbraco.Infrastructure/Migrations/Upgrade/UmbracoPlan.cs @@ -81,5 +81,7 @@ public class UmbracoPlan : MigrationPlan To("{8184E61D-ECBA-4AAA-B61B-D7A82EB82EB7}"); To("{E261BF01-2C7F-4544-BAE7-49D545B21D68}"); To("{5A2EF07D-37B4-49D5-8E9B-3ED01877263B}"); + // we need to re-run this migration, as it was flawed for V14 RC3 (the migration can run twice without any issues) + To("{6FB5CA9E-C823-473B-A14C-FE760D75943C}"); } } diff --git a/src/Umbraco.Infrastructure/Migrations/Upgrade/V_14_0_0/AddEditorUiToDataType.cs b/src/Umbraco.Infrastructure/Migrations/Upgrade/V_14_0_0/AddEditorUiToDataType.cs index 21fe51899d..8e3028c44a 100644 --- a/src/Umbraco.Infrastructure/Migrations/Upgrade/V_14_0_0/AddEditorUiToDataType.cs +++ b/src/Umbraco.Infrastructure/Migrations/Upgrade/V_14_0_0/AddEditorUiToDataType.cs @@ -27,17 +27,9 @@ public class AddEditorUiToDataType : MigrationBase protected override void Migrate() { var dataEditorSplitCollectionData = _keyValueService.GetValue("migrateDataEditorSplitCollectionData"); - if (dataEditorSplitCollectionData.IsNullOrWhiteSpace()) - { - return; - } - - DataTypeEditorAliasMigrationData[]? migrationData = _jsonSerializer.Deserialize(dataEditorSplitCollectionData); - if (migrationData?.Any() is not true) - { - _logger.LogError("No migration data was found for the data editor split. Please make sure you're upgrading from the latest V13. Any data types based on custom property editors may not work correctly."); - return; - } + DataTypeEditorAliasMigrationData[]? migrationData = dataEditorSplitCollectionData.IsNullOrWhiteSpace() is false + ? _jsonSerializer.Deserialize(dataEditorSplitCollectionData) + : null; Sql sql = Sql() .Select() @@ -88,7 +80,7 @@ public class AddEditorUiToDataType : MigrationBase if (dataTypeDto.EditorUiAlias is null) { - DataTypeEditorAliasMigrationData? dataTypeMigrationData = migrationData.FirstOrDefault(md => md.DataTypeId == dataTypeDto.NodeId); + DataTypeEditorAliasMigrationData? dataTypeMigrationData = migrationData?.FirstOrDefault(md => md.DataTypeId == dataTypeDto.NodeId); if (dataTypeMigrationData is not null) { // the V13 "data type split data collector" works like this: