Migration tool Roles error

Magnus Rahl
Member since: 2008
 

When trying to migrate a site I get the following error. I have queried tblSID and at least there are no duplicates in user/role names. What could be the problem? 

 

[2009-03-05 13:54:58][Information] Migrating Roles...

[2009-03-05 13:54:58][Error] Migration terminated with error:

[2009-03-05 13:54:58][Error] System.Data.SqlClient.SqlException: Violation of PRIMARY KEY constraint 'PK__#76EBA2E9__77DFC722'. Cannot insert duplicate key in object 'dbo.@tbUsers'.

Cannot insert duplicate key row in object 'dbo.aspnet_Users' with unique index 'aspnet_Users_Index'.

Violation of PRIMARY KEY constraint 'PK__#76EBA2E9__77DFC722'. Cannot insert duplicate key in object 'dbo.@tbUsers'.

The statement has been terminated.

The statement has been terminated.

The statement has been terminated.

at System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection)

at System.Data.SqlClient.SqlInternalConnection.OnError(SqlException exception, Boolean breakConnection)

at System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj)

at System.Data.SqlClient.TdsParser.Run(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj)

at System.Data.SqlClient.SqlDataReader.ConsumeMetaData()

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)

at System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method, DbAsyncResult result)

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.ExecuteReader(CommandBehavior behavior)

at System.Web.Security.SqlRoleProvider.AddUsersToRolesCore(SqlConnection conn, String usernames, String roleNames)

at System.Web.Security.SqlRoleProvider.AddUsersToRoles(String[] usernames, String[] roleNames)

at System.Web.Security.Roles.AddUsersToRole(String[] usernames, String roleName)

at EPiServer.Migration.UserAndGroupHandler.CreateRole(MigrateRoleEventArgs roleArg)

at EPiServer.Migration.UserAndGroupHandler.MigrateRoles()

at EPiServer.Migration.MigrationWorkflow.MigrateRoles(Object sender, EventArgs e)

#28370 Mar 05, 2009 14:03
  • Magnus Rahl
    Member since: 2008
     
    It turns out there was actually two duplicate users. One had a domain prefix which was dropped by the migration tool (selectable) but the other one was more subtile because it differed in the case of one letter, which then caused a conflict because the provider model uses case-insensitive usernames.
    #28420 Mar 06, 2009 10:19
  • Magnus Rahl
    Member since: 2008
     
    I ran into a new issue with profile properties: http://world.episerver.com/Forum/Pages/Thread.aspx?id=28421
    #28422 Mar 06, 2009 10:25