How to fix Error 6613 on Windows Server 2025 / Windows 11

Troubleshooting Guide: SQL Server Error 6613 — “Specified value ‘%ls’ already exists”

Why This Error Happens

Error 6613 typically occurs when SQL Server attempts to create or register an object (such as a trace event, Extended Events session, Service Broker route, or metadata entry) using a name or identifier that is already present in the internal system catalog. This often results from duplicate deployment scripts being run more than once, leftover metadata from an incomplete uninstall/rollback, or synchronization conflicts when restoring a database that references objects already existing on the target instance. In some cases, corrupted or stale system catalog views can also cause SQL Server to falsely report a duplicate when the original object’s cleanup process failed silently.

Step-by-Step Resolution Guide

Step 1: Identify the Conflicting Object Name

  • Capture the exact value reported in place of %ls in the SQL Server error log located at C:\Program Files\Microsoft SQL Server\MSSQL17.MSSQLSERVER\MSSQL\Log\ERRORLOG.
  • Run the following query to search for the duplicate across common system catalogs:
SELECT * FROM sys.objects WHERE name = 'ConflictingValueHere';
SELECT * FROM sys.traces WHERE path LIKE '%ConflictingValueHere%';
SELECT * FROM sys.server_event_sessions WHERE name = 'ConflictingValueHere';
  • Note whether the conflict is in Extended Events, Service Broker, or a standard database object (table, constraint, trigger).

Step 2: Remove or Rename the Duplicate Entry

  • If the object is a leftover Extended Events session, drop it manually:
DROP EVENT SESSION [ConflictingValueHere] ON SERVER;
  • If the conflict is tied to a Service Broker route or queue, use:
DROP ROUTE [ConflictingValueHere];
  • For duplicate constraints or indexes, rename the existing object instead of dropping it if it is actively in use:
EXEC sp_rename 'Schema.OldConstraintName', 'NewConstraintName', 'OBJECT';

Step 3: Clear Cached Metadata and Restart Services

  • Open Services.msc on Windows Server 2025 / Windows 11 and restart the SQL Server (MSSQLSERVER) service to flush any cached metadata handles.
  • Alternatively, run DBCC FREESYSTEMCACHE('ALL'); from SSMS to clear stale plan and metadata cache without a full restart.
  • Re-run the script or operation that originally triggered Error 6613 to confirm the duplicate value no longer exists.

Step 4: Check for Duplicate Deployment Scripts

  • Review any DevOps/CI-CD pipeline (Azure DevOps, Jenkins, etc.) that may be re-executing CREATE statements without an IF NOT EXISTS guard.
  • Update deployment scripts to include conditional checks, for example:
IF NOT EXISTS (SELECT * FROM sys.objects WHERE name = 'ConflictingValueHere')
BEGIN
    -- CREATE statement here
END

Alternative or Verification Steps

  • Verify the fix by re-running the original failing transaction or deployment script and confirming Error 6613 no longer appears in the SQL Server Error Log or Windows Event Viewer (Application log, Source: MSSQLSERVER).
  • If the error persists after cleanup, restart the SQL Server instance in single-user mode (sqlservr.exe -m) and run DBCC CHECKDB to rule out system catalog corruption as the underlying cause.