Upgrade 4.x to 5.5

Product: PowerShell Universal
Version: 5.5

I am trying to upgrade an instance from 4.x to 5.5. In doing so, I get this error:
[UniversalAutomation.Services.ConfigurationScript] Failed to read configuration file. dashboards.ps1
System.InvalidOperationException: The instance of entity type ‘DashboardPage’ cannot be tracked because another instance with the same key value for {‘Id’} is already being tracked. When attaching existing entities, ensure that only one entity instance with a given key value is attached. Consider using ‘DbContextOptionsBuilder.EnableSensitiveDataLogging’ to see the conflicting key values.
at Microsoft.EntityFrameworkCore.ChangeTracking.Internal.IdentityMap1.ThrowIdentityConflict(InternalEntityEntry entry) at Microsoft.EntityFrameworkCore.ChangeTracking.Internal.IdentityMap1.Add(TKey key, InternalEntityEntry entry, Boolean updateDuplicate)
at Microsoft.EntityFrameworkCore.ChangeTracking.Internal.StateManager.StartTracking(InternalEntityEntry entry)
at Microsoft.EntityFrameworkCore.ChangeTracking.Internal.InternalEntityEntry.SetEntityState(EntityState oldState, EntityState newState, Boolean acceptChanges, Boolean modifyProperties)
at Microsoft.EntityFrameworkCore.ChangeTracking.Internal.EntityGraphAttacher.PaintAction(EntityEntryGraphNode1 node) at Microsoft.EntityFrameworkCore.ChangeTracking.Internal.EntityEntryGraphIterator.TraverseGraph[TState](EntityEntryGraphNode1 node, Func2 handleNode) at Microsoft.EntityFrameworkCore.ChangeTracking.Internal.EntityEntryGraphIterator.TraverseGraph[TState](EntityEntryGraphNode1 node, Func2 handleNode) at Microsoft.EntityFrameworkCore.ChangeTracking.Internal.EntityGraphAttacher.AttachGraph(InternalEntityEntry rootEntry, EntityState targetState, EntityState storeGeneratedWithKeySetTargetState, Boolean forceStateWhenUnknownKey) at Microsoft.EntityFrameworkCore.DbContext.SetEntityState(InternalEntityEntry entry, EntityState entityState) at Microsoft.EntityFrameworkCore.DbContext.SetEntityState[TEntity](TEntity entity, EntityState entityState) at PowerShellUniversal.Extensibility.EFTable2.UpdateObjectAsync[TItem](TItem item)
at PowerShellUniversal.Extensibility.EFTable2.UpdateObjectAsync[TItem](TItem item) in D:\a\universal\universal\src\PowerShellUniversal.Extensibility\Persistence\EFTable.cs:line 403 at PowerShellUniversal.Extensibility.EFTable2.UpdateAsync(T item) in D:\a\universal\universal\src\PowerShellUniversal.Extensibility\Persistence\EFTable.cs:line 313
at UniversalAutomation.Services.DashboardService.UpdateAsync(ModelOperationContext1 context) in D:\a\universal\universal\src\Universal.Server\Services\Configuration\Dashboards.cs:line 242 at UniversalAutomation.Services.ConfigurationScript1.ReadAsync(SyncContext syncContext)

How do I troubleshoot where this error is coming from and the duplicate ID?

I have the same issue and more :slightly_smiling_face:

I also got: Invalid configuration: schedules.ps1
The transaction log for database ‘PSU5’ is full due to ‘ACTIVE_TRANSACTION’. (Computer: PSUserver)

at Microsoft.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection, Action`1 wrapCloseInAction)
   at Microsoft.Data.SqlClient.SqlInternalConnection.OnError(SqlException exception, Boolean breakConnection, Action`1 wrapCloseInAction)
   at Microsoft.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj, SqlCommand command, Boolean callerHasConnectionLock, Boolean asyncClose)
   at Microsoft.Data.SqlClient.TdsParser.TryRun(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj, Boolean& dataReady)
   at Microsoft.Data.SqlClient.SqlCommand.FinishExecuteReader(SqlDataReader ds, RunBehavior runBehavior, String resetOptionsString, Boolean isInternal, Boolean forDescribeParameterEncryption, Boolean shouldCacheForAlwaysEncrypted)
   at Microsoft.Data.SqlClient.SqlCommand.RunExecuteReaderTds(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, Boolean isAsync, Int32 timeout, Task& task, Boolean asyncWrite, Boolean inRetry, SqlDataReader ds, Boolean describeParameterEncryptionRequest)
   at Microsoft.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, TaskCompletionSource`1 completion, Int32 timeout, Task& task, Boolean& usedCache, Boolean asyncWrite, Boolean inRetry, String method)
   at Microsoft.Data.SqlClient.SqlCommand.ExecuteNonQuery()
   at Microsoft.Data.SqlClient.SqlCommandSet.ExecuteNonQuery()
   at Hangfire.SqlServer.SqlCommandBatch.ExecuteNonQuery() in C:\projects\hangfire-525\src\Hangfire.SqlServer\SqlCommandBatch.cs:line 95
   at Hangfire.SqlServer.SqlServerWriteOnlyTransaction.<>c.<Commit>b__17_0(SqlServerStorage storage, DbConnection connection, DbTransaction transaction, SqlServerWriteOnlyTransaction ctx) in C:\projects\hangfire-525\src\Hangfire.SqlServer\SqlServerWriteOnlyTransaction.cs:line 96
   at Hangfire.SqlServer.SqlServerStorage.<>c__45`2.<UseTransaction>b__45_0(SqlServerStorage storage, DbConnection connection, KeyValuePair`2 ctx) in C:\projects\hangfire-525\src\Hangfire.SqlServer\SqlServerStorage.cs:line 335
   at Hangfire.SqlServer.SqlServerStorage.UseConnection[TContext,TResult](DbConnection dedicatedConnection, Func`4 func, TContext context) in C:\projects\hangfire-525\src\Hangfire.SqlServer\SqlServerStorage.cs:line 279
   at Hangfire.SqlServer.SqlServerStorage.UseTransaction[TContext,TResult](DbConnection dedicatedConnection, Func`5 func, TContext context, Nullable`1 isolationLevel) in C:\projects\hangfire-525\src\Hangfire.SqlServer\SqlServerStorage.cs:line 308
   at Hangfire.SqlServer.SqlServerStorage.UseTransaction[TContext](DbConnection dedicatedConnection, Action`4 action, TContext context) in C:\projects\hangfire-525\src\Hangfire.SqlServer\SqlServerStorage.cs:line 295
   at Hangfire.SqlServer.SqlServerWriteOnlyTransaction.Commit() in C:\projects\hangfire-525\src\Hangfire.SqlServer\SqlServerWriteOnlyTransaction.cs:line 68
   at Hangfire.RecurringJobManager.RemoveIfExists(String recurringJobId) in C:\projects\hangfire-525\src\Hangfire.Core\RecurringJobManager.cs:line 237
   at PowerShellUniversal.Automation.JobService.RemoveRecurringJob(String id) in D:\a\universal\universal\src\PowerShellUniversal.Automation\JobService.cs:line 622
   at PowerShellUniversal.Configuration.ScheduleService.UpdateAsync(ModelOperationContext`1 context) in D:\a\universal\universal\src\PowerShellUniversal.Configuration\Schedules.cs:line 90
   at UniversalAutomation.Services.ConfigurationScript`1.ReadAsync(SyncContext syncContext)

Invalid configuration: environments.ps1
Could not find a part of the path > ‘C:\ProgramData\UniversalAutomation\Repository\dashboards\PowerGUI\PowerGUI.ps1’.

at Microsoft.Win32.SafeHandles.SafeFileHandle.CreateFile(String fullPath, FileMode mode, FileAccess access, FileShare share, FileOptions options)
at Microsoft.Win32.SafeHandles.SafeFileHandle.Open(String fullPath, FileMode mode, FileAccess access, FileShare share, FileOptions options, Int64 preallocationSize, Nullable1 unixCreateMode) at System.IO.Strategies.OSFileStreamStrategy..ctor(String path, FileMode mode, FileAccess access, FileShare share, FileOptions options, Int64 preallocationSize, Nullable1 unixCreateMode)
at System.IO.File.AsyncStreamReader(String path, Encoding encoding)
at System.IO.File.InternalReadAllTextAsync(String path, Encoding encoding, CancellationToken cancellationToken)
at UniversalAutomation.Services.DashboardService.UpdateContent(ModelOperationContext1 context, Dashboard dashboard, String dashboardPath) in D:\a\universal\universal\src\Universal.Server\Services\Configuration\Dashboards.cs:line 171 at UniversalAutomation.Services.DashboardService.UpdateAsync(ModelOperationContext1 context) in D:\a\universal\universal\src\Universal.Server\Services\Configuration\Dashboards.cs:line 239
at PowerShellUniversal.Configuration.EnvironmentConfigService.RemoveEnvironment[T](ModelOperationContext1 context) in D:\a\universal\universal\src\PowerShellUniversal.Configuration\Environments.cs:line 171 at PowerShellUniversal.Configuration.EnvironmentConfigService.DeleteAsync(ModelOperationContext1 context) in D:\a\universal\universal\src\PowerShellUniversal.Configuration\Environments.cs:line 151
at UniversalAutomation.Services.ConfigurationScript`1.ReadAsync(SyncContext syncContext) in D:\a\universal\universal\src\PowerShellUniversal\ConfigurationScript.cs:line 364