U4-3846 - 6.x cannot upgrade directly to 7.0.1

Created by Per Ploug 12 Dec 2013, 13:45:53 Updated by Shannon Deminick 13 Dec 2013, 03:47:55

Upgrading 6.1.6 to 7.0.1 fails. During the database upgrades, the database connection will timeout.

I suspect this is caused by the RemoveCachedRecycleMediaXml upgrade for 7.0.1 and 6.2

the following is logged:

SQL SERVER: 2013-12-12 14:16:01,750 [7] INFO Umbraco.Core.DatabaseContext - [Thread 11] Database configuration failed with the following error and stack trace: Timeout expired. The timeout period elapsed prior to completion of the operation or the server is not responding. at System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection, Action1 wrapCloseInAction) at System.Data.SqlClient.SqlInternalConnection.OnError(SqlException exception, Boolean breakConnection, Action1 wrapCloseInAction) at System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj, Boolean callerHasConnectionLock, Boolean asyncClose) at System.Data.SqlClient.TdsParser.TryRun(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj, Boolean& dataReady) at System.Data.SqlClient.SqlDataReader.TryConsumeMetaData() at System.Data.SqlClient.SqlDataReader.get_MetaData() at System.Data.SqlClient.SqlCommand.FinishExecuteReader(SqlDataReader ds, RunBehavior runBehavior, String resetOptionsString) at System.Data.SqlClient.SqlCommand.RunExecuteReaderTds(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, Boolean async, Int32 timeout, Task& task, Boolean asyncWrite) at System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method, TaskCompletionSource1 completion, Int32 timeout, Task& task, Boolean asyncWrite) at System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method) at System.Data.SqlClient.SqlCommand.ExecuteReader(CommandBehavior behavior, String method) at System.Data.SqlClient.SqlCommand.ExecuteDbDataReader(CommandBehavior behavior) at System.Data.Common.DbCommand.ExecuteReader(CommandBehavior behavior) at StackExchange.Profiling.Data.ProfiledDbCommand.ExecuteDbDataReader(CommandBehavior behavior) at System.Data.Common.DbCommand.System.Data.IDbCommand.ExecuteReader() at Umbraco.Core.Persistence.PetaPocoCommandExtensions.<>c__DisplayClass4.<ExecuteReaderWithRetry>b__3() in c:\Umbraco-CMS\src\Umbraco.Core\Persistence\PetaPocoCommandExtensions.cs:line 125 at Umbraco.Core.Persistence.FaultHandling.RetryPolicy.ExecuteAction[TResult](Func1 func) in c:\Umbraco-CMS\src\Umbraco.Core\Persistence\FaultHandling\RetryPolicy.cs:line 172 at Umbraco.Core.Persistence.PetaPocoCommandExtensions.ExecuteReaderWithRetry(IDbCommand command, RetryPolicy cmdRetryPolicy, RetryPolicy conRetryPolicy) in c:\Umbraco-CMS\src\Umbraco.Core\Persistence\PetaPocoCommandExtensions.cs:line 110 at Umbraco.Core.Persistence.PetaPocoCommandExtensions.ExecuteReaderWithRetry(IDbCommand command, RetryPolicy retryPolicy) in c:\Umbraco-CMS\src\Umbraco.Core\Persistence\PetaPocoCommandExtensions.cs:line 93 at Umbraco.Core.Persistence.PetaPocoCommandExtensions.ExecuteReaderWithRetry(IDbCommand command) in c:\Umbraco-CMS\src\Umbraco.Core\Persistence\PetaPocoCommandExtensions.cs:line 80 at Umbraco.Core.Persistence.Database.d__1c1.MoveNext() in c:\Umbraco-CMS\src\Umbraco.Core\Persistence\PetaPoco.cs:line 1087 at System.Collections.Generic.List1..ctor(IEnumerable1 collection) at System.Linq.Enumerable.ToList[TSource](IEnumerable1 source) at Umbraco.Core.Persistence.Database.Fetch[T1,T2,T3](Sql sql) in c:\Umbraco-CMS\src\Umbraco.Core\Persistence\PetaPoco.cs:line 836 at Umbraco.Core.Persistence.Repositories.MediaRepository.d__b.MoveNext() in c:\Umbraco-CMS\src\Umbraco.Core\Persistence\Repositories\MediaRepository.cs:line 100 at Umbraco.Core.Services.MediaService.RebuildXmlStructures(Int32[] contentTypeIds) in c:\Umbraco-CMS\src\Umbraco.Core\Services\MediaService.cs:line 873 at Umbraco.Core.Persistence.Migrations.Upgrades.TargetVersionSixTwoZero.RemoveCachedRecycleMediaXml.b__0(Database database) in c:\Umbraco-CMS\src\Umbraco.Core\Persistence\Migrations\Upgrades\TargetVersionSixTwoZero\RemoveCachedRecycleMediaXml.cs:line 21 at Umbraco.Core.Persistence.Migrations.Syntax.Execute.Expressions.ExecuteCodeStatementExpression.Process(Database database) in c:\Umbraco-CMS\src\Umbraco.Core\Persistence\Migrations\Syntax\Execute\Expressions\ExecuteCodeStatementExpression.cs:line 21 at Umbraco.Core.Persistence.Migrations.MigrationRunner.Execute(Database database, DatabaseProviders databaseProvider, Boolean isUpgrade) in c:\Umbraco-CMS\src\Umbraco.Core\Persistence\Migrations\MigrationRunner.cs:line 79 at Umbraco.Core.Persistence.Migrations.MigrationRunner.Execute(Database database, Boolean isUpgrade) in c:\Umbraco-CMS\src\Umbraco.Core\Persistence\Migrations\MigrationRunner.cs:line 34 at Umbraco.Core.DatabaseContext.CreateDatabaseSchemaAndDataOrUpgrade() in c:\Umbraco-CMS\src\Umbraco.Core\DatabaseContext.cs:line 500

SQL CE: 2013-12-12 13:22:14,214 [10] INFO Umbraco.Core.DatabaseContext - [Thread 11] Database configuration failed with the following error and stack trace: SQL Server Compact timed out waiting for a lock. The default lock time is 2000ms for devices and 5000ms for desktops. The default lock timeout can be increased in the connection string using the ssce: default lock timeout property. [ Session id = 2,Thread id = 5368,Process id = 7692,Table name = cmsContentVersion,Conflict type = s lock (x blocks),Resource = DDL ] at System.Data.SqlServerCe.SqlCeCommand.ProcessResults(Int32 hr) at System.Data.SqlServerCe.SqlCeCommand.CompileQueryPlan() at System.Data.SqlServerCe.SqlCeCommand.ExecuteCommand(CommandBehavior behavior, String method, ResultSetOptions options) at System.Data.SqlServerCe.SqlCeCommand.ExecuteDbDataReader(CommandBehavior behavior) at System.Data.Common.DbCommand.ExecuteReader(CommandBehavior behavior) at StackExchange.Profiling.Data.ProfiledDbCommand.ExecuteDbDataReader(CommandBehavior behavior) at System.Data.Common.DbCommand.System.Data.IDbCommand.ExecuteReader() at Umbraco.Core.Persistence.PetaPocoCommandExtensions.<>c__DisplayClass4.b__3() in c:\Umbraco-CMS\src\Umbraco.Core\Persistence\PetaPocoCommandExtensions.cs:line 125 at Umbraco.Core.Persistence.FaultHandling.RetryPolicy.ExecuteAction[TResult](Func1 func) in c:\Umbraco-CMS\src\Umbraco.Core\Persistence\FaultHandling\RetryPolicy.cs:line 172 at Umbraco.Core.Persistence.PetaPocoCommandExtensions.ExecuteReaderWithRetry(IDbCommand command, RetryPolicy cmdRetryPolicy, RetryPolicy conRetryPolicy) in c:\Umbraco-CMS\src\Umbraco.Core\Persistence\PetaPocoCommandExtensions.cs:line 110 at Umbraco.Core.Persistence.PetaPocoCommandExtensions.ExecuteReaderWithRetry(IDbCommand command, RetryPolicy retryPolicy) in c:\Umbraco-CMS\src\Umbraco.Core\Persistence\PetaPocoCommandExtensions.cs:line 93 at Umbraco.Core.Persistence.PetaPocoCommandExtensions.ExecuteReaderWithRetry(IDbCommand command) in c:\Umbraco-CMS\src\Umbraco.Core\Persistence\PetaPocoCommandExtensions.cs:line 80 at Umbraco.Core.Persistence.Database.<Query>d__1c1.MoveNext() in c:\Umbraco-CMS\src\Umbraco.Core\Persistence\PetaPoco.cs:line 1087 at System.Collections.Generic.List1..ctor(IEnumerable1 collection) at System.Linq.Enumerable.ToList[TSource](IEnumerable`1 source) at Umbraco.Core.Persistence.Database.Fetch[T1,T2,T3](Sql sql) in c:\Umbraco-CMS\src\Umbraco.Core\Persistence\PetaPoco.cs:line 836 at Umbraco.Core.Persistence.Repositories.MediaRepository.d__b.MoveNext() in c:\Umbraco-CMS\src\Umbraco.Core\Persistence\Repositories\MediaRepository.cs:line 100 at Umbraco.Core.Services.MediaService.RebuildXmlStructures(Int32[] contentTypeIds) in c:\Umbraco-CMS\src\Umbraco.Core\Services\MediaService.cs:line 873 at Umbraco.Core.Persistence.Migrations.Upgrades.TargetVersionSixTwoZero.RemoveCachedRecycleMediaXml.b__0(Database database) in c:\Umbraco-CMS\src\Umbraco.Core\Persistence\Migrations\Upgrades\TargetVersionSixTwoZero\RemoveCachedRecycleMediaXml.cs:line 21 at Umbraco.Core.Persistence.Migrations.Syntax.Execute.Expressions.ExecuteCodeStatementExpression.Process(Database database) in c:\Umbraco-CMS\src\Umbraco.Core\Persistence\Migrations\Syntax\Execute\Expressions\ExecuteCodeStatementExpression.cs:line 21 at Umbraco.Core.Persistence.Migrations.MigrationRunner.Execute(Database database, DatabaseProviders databaseProvider, Boolean isUpgrade) in c:\Umbraco-CMS\src\Umbraco.Core\Persistence\Migrations\MigrationRunner.cs:line 79 at Umbraco.Core.Persistence.Migrations.MigrationRunner.Execute(Database database, Boolean isUpgrade) in c:\Umbraco-CMS\src\Umbraco.Core\Persistence\Migrations\MigrationRunner.cs:line 34 at Umbraco.Core.DatabaseContext.CreateDatabaseSchemaAndDataOrUpgrade() in c:\Umbraco-CMS\src\Umbraco.Core\DatabaseContext.cs:line 500

Comments

Shannon Deminick 13 Dec 2013, 03:47:55

All fixed up. People will need to replace the /install folder for the upgrade as well (but i think that is part of the standard upgrade procedure), might be worth making a note of that in any case.


Priority: Show-stopper

Type: Bug

State: Fixed

Assignee: Shannon Deminick

Difficulty: Normal

Category:

Backwards Compatible: True

Fix Submitted:

Affected versions: 7.0.1

Due in version: 7.0.1

Sprint:

Story Points:

Cycle: