FIX: DBCC CLONEDATABASE is unsuccessful if the source database has an object originally created in SQL Server 2000

Applies to: SQL Server 2014 EnterpriseSQL Server 2016 DeveloperSQL Server 2016 Enterprise

Symptoms


When you run the DBCC CLONEDATABASE command in an instance of Microsoft SQL Server 2014 or 2016, the DBCC CLONEDATABASE command may be unsuccessful. Additionally, you receive the following error message if the database has an object that was originally created in SQL Server 2000:

Database cloning for 'DB_Name' has started with target as 'Clone_DB_Name'.
Msg 2601, Level 14, State 1, LineNumber
Cannot insert duplicate key row in object 'sys.sysschobjs' with unique index 'clst'. The duplicate key value is key_value.

Cause


This issue occurs because of a key collision between the default service broker objects in the destination and the user objects in the source.

Resolution


This issue is fixed in the following cumulative updates for SQL Server:

Cumulative Update 3 for SQL Server 2016 SP1

Cumulative Update 5 for SQL Server 2014 Service Pack 2

Note This fix checks the collision and drop service broker objects as needed to prevent this issue.

Status


Microsoft has confirmed that this is a problem in the Microsoft products that are listed in the "Applies to" section.

References


Learn about the terminology Microsoft uses to describe software updates.