Kentico/xperience-by-kentico-kentico-migration-tool

Migration Fail

bbgun75 opened this issue · 1 comments

Trying to run the Migration Toolkit to convert a site from K13 to Xperience By Kentico. I believe I have everything setup correctly but I keep getting this error, any direction would be appreciated

10:10:51.814 fail: Migration.Toolkit.KXP.Api.KxpApiInitializer[0] Kxp api initialization failed!
10:10:51.939 fail: Migration.Toolkit.Core.Behaviors.RequestHandlingBehavior[0] Error occured CMS.DataEngine.LinqExpressionCannotBeExecutedException: The query provider failed to execute a query represented by a LINQ expression. ---> System.Exception: [DataConnection.HandleError]: Query: SELECT TOP 1 * FROM CMS_Class WHERE [ClassName] = @classname Caused exception: Invalid object name 'CMS_Class'. ---> Microsoft.Data.SqlClient.SqlException (0x80131904): Invalid object name 'CMS_Class'. at Microsoft.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection, Action1 wrapCloseInAction) at Microsoft.Data.SqlClient.SqlInternalConnection.OnError(SqlException exception, Boolean breakConnection, Action1 wrapCloseInAction) at Microsoft.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj, 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.SqlDataReader.TryConsumeMetaData() at Microsoft.Data.SqlClient.SqlDataReader.get_MetaData() 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, TaskCompletionSource1 completion, Int32 timeout, Task& task, Boolean& usedCache, Boolean asyncWrite, Boolean inRetry, String method) at Microsoft.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method) at Microsoft.Data.SqlClient.SqlCommand.ExecuteReader(CommandBehavior behavior) at Microsoft.Data.SqlClient.SqlCommand.ExecuteDbDataReader(CommandBehavior behavior) at System.Data.Common.DbDataAdapter.FillInternal(DataSet dataset, DataTable[] datatables, Int32 startRecord, Int32 maxRecords, String srcTable, IDbCommand command, CommandBehavior behavior) at System.Data.Common.DbDataAdapter.Fill(DataSet dataSet, Int32 startRecord, Int32 maxRecords, String srcTable, IDbCommand command, CommandBehavior behavior) at System.Data.Common.DbDataAdapter.Fill(DataSet dataSet) at CMS.DataEngine.AbstractDataConnection.ExecuteQuery(String queryText, QueryDataParameters queryParams, QueryTypeEnum queryType, Boolean requiresTransaction) ClientConnectionId:e838ad86-f221-4b27-bea4-83b0772b39ef Error Number:208,State:1,Class:16 --- End of inner exception stack trace --- at CMS.DataEngine.AbstractDataConnection.HandleError(String queryText, Exception ex) at CMS.DataEngine.AbstractDataConnection.ExecuteQuery(String queryText, QueryDataParameters queryParams, QueryTypeEnum queryType, Boolean requiresTransaction) at CMS.DataEngine.AbstractDataConnection.CMS.DataEngine.IDataConnection.ExecuteQuery(String queryText, QueryDataParameters queryParams, QueryTypeEnum queryType, Boolean requiresTransaction) at CMS.DataEngine.GeneralConnection.RunQuery(QueryParameters query) at CMS.DataEngine.GeneralConnection.<>c__DisplayClass27_0.<ExecuteQuery>b__0() at CMS.DataEngine.SqlExecutionHelper.ExecuteWithRetryCore[TResult](Func1 executionFunc, Int32 retryCount, Func2 exceptionRetryPredicate) at CMS.DataEngine.SqlExecutionHelper.ExecuteWithDeadlockRetryInternal[TResult](Func1 executionFunc, Int32 retryCount) at CMS.DataEngine.SqlExecutionHelper.ExecuteWithDeadlockRetry[TResult](Func1 executionFunc, Int32 retryCount) at CMS.DataEngine.GeneralConnection.ExecuteQuery(QueryParameters query) at CMS.DataEngine.GeneralConnection.ExecuteQuery(QueryParameters query, Int32& totalRecords) at CMS.DataEngine.DataQueryBase1.GetDataFromDBInternal() at CMS.DataEngine.DataQueryBase1.GetDataFromDB() at CMS.DataEngine.DataQueryBase1.GetData() at CMS.DataEngine.DataQueryBase1.Execute() at CMS.DataEngine.DataQueryBase1.get_Result() at CMS.DataEngine.DataQueryBase1.GetResults(IDataQuery query, Int32& totalRecords) at CMS.DataEngine.ObjectQueryBase2.GetResults(IDataQuery query, Int32& totalRecords) at CMS.DataEngine.DataQueryBase1.GetDataFromDB() at CMS.DataEngine.DataQueryBase1.GetData() at CMS.DataEngine.ObjectQueryBase2.GetData() at CMS.DataEngine.DataQueryBase1.Execute() at CMS.DataEngine.DataQueryBase1.get_Result() at CMS.DataEngine.DataClassInfoProviderBase1.GetInfoByColumn[T](String columnName, T value) at CMS.DataEngine.AbstractInfoProvider3.GetInfoByCodeName(String codeName, Boolean useHashtable) at CMS.DataEngine.DataClassInfoProviderBase1.GetDataClassInfo(String name) at CMS.DataEngine.DataClassInfoProvider.GetClassStructureInfoFromDB(String className) at CMS.DataEngine.ClassStructureInfo.GetClassInfo(String className) at CMS.DataEngine.ObjectTypeInfo.get_ClassStructureInfo() at CMS.DataEngine.ObjectQueryBase2.GetClassStructureInfo() at CMS.DataEngine.DataQueryBase1.GetDefaultSource() at CMS.DataEngine.DataQueryBase1.EnsureDefaultSource(DataQuerySettings settings) at CMS.DataEngine.DataQueryBase1.GetCompleteSettings(IDataQuery executingQuery) at CMS.DataEngine.ObjectQueryBase2.GetExecutingQuery(DataQuerySettings settings) at CMS.DataEngine.DataQueryBase1.GetReaderFromDB(CommandBehavior commandBehavior, Boolean newConnection) at CMS.DataEngine.DataQueryBase1.GetReader(CommandBehavior commandBehavior, Boolean newConnection) at CMS.DataEngine.DataQueryBase1.ExecuteReader(CommandBehavior commandBehavior, Boolean newConnection) at CMS.DataEngine.DataQueryBase1.GetEnumerableResult(CommandBehavior commandBehavior, Boolean newConnection)+MoveNext() at CMS.DataEngine.DataExtensions.As[InfoType](IEnumerable1 dataRecords, Func2 createObjectFunc) at CMS.DataEngine.ObjectQueryBase2.GetEnumerableTypedResult(CommandBehavior commandBehavior, Boolean newConnection) at CMS.DataEngine.ObjectQueryBase2.GetEnumerator() at CMS.DataEngine.EnumerableWrapper1.System.Collections.Generic.IEnumerable.GetEnumerator()+MoveNext() at System.Linq.Enumerable.TryGetFirst[TSource](IEnumerable1 source, Boolean& found) at lambda_method679(Closure) at System.Linq.EnumerableExecutor1.ExecuteBoxed() at CMS.DataEngine.CMSQueryProvider1.ExecuteInternal(Expression expression) --- End of inner exception stack trace --- at CMS.DataEngine.CMSQueryProvider1.ExecuteInternal(Expression expression) at CMS.DataEngine.CMSQueryProvider1.Execute(Expression expression) at CMS.DataEngine.CMSQueryProvider1.Execute[TResult](Expression expression) at CMS.DataEngine.AbstractInfoProvider3.GetInfoByColumn[T](String columnName, T value) at CMS.DataEngine.AbstractInfoProvider3.GetInfoByCodeName(String codeName, Boolean useHashtable) at CMS.DataEngine.AbstractInfoProvider2.Get(String name) at Migration.Toolkit.Core.Behaviors.XbKApiContextBehavior2.Handle(TRequest request, CancellationToken cancellationToken, RequestHandlerDelegate1 next) in C:\Users\BrianBrown\Source\Repos\xperience-migration-toolkit\Migration.Toolkit.Core\Behaviors\XbKApiContextBehavior.cs:line 36 at Migration.Toolkit.Core.Behaviors.CommandConstraintBehavior2.Handle(TRequest request, CancellationToken cancellationToken, RequestHandlerDelegate1 next) in C:\Users\BrianBrown\Source\Repos\xperience-migration-toolkit\Migration.Toolkit.Core\Behaviors\CommandConstraintBehavior.cs:line 54 at Migration.Toolkit.Core.Behaviors.RequestHandlingBehavior2.Handle(TRequest request, CancellationToken cancellationToken, RequestHandlerDelegate`1 next) in C:\Users\BrianBrown\Source\Repos\xperience-migration-toolkit\Migration.Toolkit.Core\Behaviors\RequestHandlingBehavior.cs:line 33
10:10:51.973 info: Migration.Toolkit.Core.Behaviors.RequestHandlingBehavior[0] Handled MigrateSitesCommand in elapsed: 00:00:07.9505443
Unhandled exception. CMS.DataEngine.LinqExpressionCannotBeExecutedException: The query provider failed to execute a query represented by a LINQ expression.
---> System.Exception:
[DataConnection.HandleError]:

Query:
SELECT TOP 1 *
FROM CMS_Class
WHERE [ClassName] = @classname

Caused exception:
Invalid object name 'CMS_Class'.

---> Microsoft.Data.SqlClient.SqlException (0x80131904): Invalid object name 'CMS_Class'.
at Microsoft.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection, Action1 wrapCloseInAction) at Microsoft.Data.SqlClient.SqlInternalConnection.OnError(SqlException exception, Boolean breakConnection, Action1 wrapCloseInAction)
at Microsoft.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj, 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.SqlDataReader.TryConsumeMetaData()
at Microsoft.Data.SqlClient.SqlDataReader.get_MetaData()
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, TaskCompletionSource1 completion, Int32 timeout, Task& task, Boolean& usedCache, Boolean asyncWrite, Boolean inRetry, String method) at Microsoft.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method) at Microsoft.Data.SqlClient.SqlCommand.ExecuteReader(CommandBehavior behavior) at Microsoft.Data.SqlClient.SqlCommand.ExecuteDbDataReader(CommandBehavior behavior) at System.Data.Common.DbDataAdapter.FillInternal(DataSet dataset, DataTable[] datatables, Int32 startRecord, Int32 maxRecords, String srcTable, IDbCommand command, CommandBehavior behavior) at System.Data.Common.DbDataAdapter.Fill(DataSet dataSet, Int32 startRecord, Int32 maxRecords, String srcTable, IDbCommand command, CommandBehavior behavior) at System.Data.Common.DbDataAdapter.Fill(DataSet dataSet) at CMS.DataEngine.AbstractDataConnection.ExecuteQuery(String queryText, QueryDataParameters queryParams, QueryTypeEnum queryType, Boolean requiresTransaction) ClientConnectionId:e838ad86-f221-4b27-bea4-83b0772b39ef Error Number:208,State:1,Class:16 --- End of inner exception stack trace --- at CMS.DataEngine.AbstractDataConnection.HandleError(String queryText, Exception ex) at CMS.DataEngine.AbstractDataConnection.ExecuteQuery(String queryText, QueryDataParameters queryParams, QueryTypeEnum queryType, Boolean requiresTransaction) at CMS.DataEngine.AbstractDataConnection.CMS.DataEngine.IDataConnection.ExecuteQuery(String queryText, QueryDataParameters queryParams, QueryTypeEnum queryType, Boolean requiresTransaction) at CMS.DataEngine.GeneralConnection.RunQuery(QueryParameters query) at CMS.DataEngine.GeneralConnection.<>c__DisplayClass27_0.<ExecuteQuery>b__0() at CMS.DataEngine.SqlExecutionHelper.ExecuteWithRetryCore[TResult](Func1 executionFunc, Int32 retryCount, Func2 exceptionRetryPredicate) at CMS.DataEngine.SqlExecutionHelper.ExecuteWithDeadlockRetryInternal[TResult](Func1 executionFunc, Int32 retryCount)
at CMS.DataEngine.SqlExecutionHelper.ExecuteWithDeadlockRetry[TResult](Func1 executionFunc, Int32 retryCount) at CMS.DataEngine.GeneralConnection.ExecuteQuery(QueryParameters query) at CMS.DataEngine.GeneralConnection.ExecuteQuery(QueryParameters query, Int32& totalRecords) at CMS.DataEngine.DataQueryBase1.GetDataFromDBInternal()
at CMS.DataEngine.DataQueryBase1.GetDataFromDB() at CMS.DataEngine.DataQueryBase1.GetData()
at CMS.DataEngine.DataQueryBase1.Execute() at CMS.DataEngine.DataQueryBase1.get_Result()
at CMS.DataEngine.DataQueryBase1.GetResults(IDataQuery query, Int32& totalRecords) at CMS.DataEngine.ObjectQueryBase2.GetResults(IDataQuery query, Int32& totalRecords)
at CMS.DataEngine.DataQueryBase1.GetDataFromDB() at CMS.DataEngine.DataQueryBase1.GetData()
at CMS.DataEngine.ObjectQueryBase2.GetData() at CMS.DataEngine.DataQueryBase1.Execute()
at CMS.DataEngine.DataQueryBase1.get_Result() at CMS.DataEngine.DataClassInfoProviderBase1.GetInfoByColumn[T](String columnName, T value)
at CMS.DataEngine.AbstractInfoProvider3.GetInfoByCodeName(String codeName, Boolean useHashtable) at CMS.DataEngine.DataClassInfoProviderBase1.GetDataClassInfo(String name)
at CMS.DataEngine.DataClassInfoProvider.GetClassStructureInfoFromDB(String className)
at CMS.DataEngine.ClassStructureInfo.GetClassInfo(String className)
at CMS.DataEngine.ObjectTypeInfo.get_ClassStructureInfo()
at CMS.DataEngine.ObjectQueryBase2.GetClassStructureInfo() at CMS.DataEngine.DataQueryBase1.GetDefaultSource()
at CMS.DataEngine.DataQueryBase1.EnsureDefaultSource(DataQuerySettings settings) at CMS.DataEngine.DataQueryBase1.GetCompleteSettings(IDataQuery executingQuery)
at CMS.DataEngine.ObjectQueryBase2.GetExecutingQuery(DataQuerySettings settings) at CMS.DataEngine.DataQueryBase1.GetReaderFromDB(CommandBehavior commandBehavior, Boolean newConnection)
at CMS.DataEngine.DataQueryBase1.GetReader(CommandBehavior commandBehavior, Boolean newConnection) at CMS.DataEngine.DataQueryBase1.ExecuteReader(CommandBehavior commandBehavior, Boolean newConnection)
at CMS.DataEngine.DataQueryBase1.GetEnumerableResult(CommandBehavior commandBehavior, Boolean newConnection)+MoveNext() at CMS.DataEngine.DataExtensions.As[InfoType](IEnumerable1 dataRecords, Func2 createObjectFunc) at CMS.DataEngine.ObjectQueryBase2.GetEnumerableTypedResult(CommandBehavior commandBehavior, Boolean newConnection)
at CMS.DataEngine.ObjectQueryBase2.GetEnumerator() at CMS.DataEngine.EnumerableWrapper1.System.Collections.Generic.IEnumerable.GetEnumerator()+MoveNext()
at System.Linq.Enumerable.TryGetFirst[TSource](IEnumerable1 source, Boolean& found) at lambda_method679(Closure) at System.Linq.EnumerableExecutor1.ExecuteBoxed()
at CMS.DataEngine.CMSQueryProvider1.ExecuteInternal(Expression expression) --- End of inner exception stack trace --- at CMS.DataEngine.CMSQueryProvider1.ExecuteInternal(Expression expression)
at CMS.DataEngine.CMSQueryProvider1.Execute(Expression expression) at CMS.DataEngine.CMSQueryProvider1.Execute[TResult](Expression expression)
at CMS.DataEngine.AbstractInfoProvider3.GetInfoByColumn[T](String columnName, T value) at CMS.DataEngine.AbstractInfoProvider3.GetInfoByCodeName(String codeName, Boolean useHashtable)
at CMS.DataEngine.AbstractInfoProvider2.Get(String name) at Migration.Toolkit.Core.Behaviors.XbKApiContextBehavior2.Handle(TRequest request, CancellationToken cancellationToken, RequestHandlerDelegate1 next) in C:\Users\BrianBrown\Source\Repos\xperience-migration-toolkit\Migration.Toolkit.Core\Behaviors\XbKApiContextBehavior.cs:line 36 at Migration.Toolkit.Core.Behaviors.CommandConstraintBehavior2.Handle(TRequest request, CancellationToken cancellationToken, RequestHandlerDelegate1 next) in C:\Users\BrianBrown\Source\Repos\xperience-migration-toolkit\Migration.Toolkit.Core\Behaviors\CommandConstraintBehavior.cs:line 54 at Migration.Toolkit.Core.Behaviors.RequestHandlingBehavior2.Handle(TRequest request, CancellationToken cancellationToken, RequestHandlerDelegate1 next) in C:\Users\BrianBrown\Source\Repos\xperience-migration-toolkit\Migration.Toolkit.Core\Behaviors\RequestHandlingBehavior.cs:line 33 at MediatR.Pipeline.RequestExceptionProcessorBehavior2.Handle(TRequest request, CancellationToken cancellationToken, RequestHandlerDelegate1 next) at MediatR.Pipeline.RequestExceptionProcessorBehavior2.Handle(TRequest request, CancellationToken cancellationToken, RequestHandlerDelegate1 next) at MediatR.Pipeline.RequestExceptionActionProcessorBehavior2.Handle(TRequest request, CancellationToken cancellationToken, RequestHandlerDelegate1 next) at MediatR.Pipeline.RequestExceptionActionProcessorBehavior2.Handle(TRequest request, CancellationToken cancellationToken, RequestHandlerDelegate1 next) at MediatR.Pipeline.RequestPostProcessorBehavior2.Handle(TRequest request, CancellationToken cancellationToken, RequestHandlerDelegate1 next) at MediatR.Pipeline.RequestPreProcessorBehavior2.Handle(TRequest request, CancellationToken cancellationToken, RequestHandlerDelegate1 next) at MediatR.Wrappers.RequestHandlerWrapperImpl2.Handle(Object request, CancellationToken cancellationToken, ServiceFactory serviceFactory)
at Program.

$(String[] args) in C:\Users\BrianBrown\Source\Repos\xperience-migration-toolkit\Migration.Toolkit.CLI\Program.cs:line 207
at Program.$(String[] args) in C:\Users\BrianBrown\Source\Repos\xperience-migration-toolkit\Migration.Toolkit.CLI\Program.cs:line 213
at Program.$(String[] args) in C:\Users\BrianBrown\Source\Repos\xperience-migration-toolkit\Migration.Toolkit.CLI\Program.cs:line 213
at Program.(String[] args)

I helped @bbgun75 understand that the "empty" target Xperience by Kentico database is not supposed to be a brand new SQL Server database, but instead needs to be a brand new Xperience by Kentico database, created using the kentico-xperience-dbmanager .NET CLI tool that is installed in a new Xperience by Kentico project.

The target database does, however, need to be empty of any custom content or data when beginning the migration.