Troubleshooting Guide: SQL Server Error 5584 — FILESTREAM Configuration Conflict
Why This Error Happens
Error 5584 occurs when two or more sessions attempt to run sp_filestream_configure concurrently, causing SQL Server to lock the configuration process to prevent corruption of FILESTREAM settings. This is common when automated deployment scripts, configuration management tools (like DSC or Ansible), and manual DBA interventions overlap on the same instance. It can also surface if a previous sp_filestream_configure call did not terminate cleanly, leaving a stale session reference that blocks new configuration attempts.
Step-by-Step Resolution Guide
Step 1: Identify Active Sessions Running the Procedure
- Open SQL Server Management Studio (SSMS) and connect to the affected instance.
- Run the following query to find blocking sessions:
SELECT session_id, status, command, blocking_session_id, wait_type
FROM sys.dm_exec_requests
WHERE command LIKE '%FILESTREAM%';
- Note the
session_idandblocking_session_idvalues for any long-running or orphaned sessions.
Step 2: Terminate the Conflicting Session
- If a stale or orphaned session is found, terminate it safely:
KILL <session_id>;
- Confirm no other deployment scripts or configuration tools (e.g., PowerShell DSC resources, SCCM tasks) are scheduled to run
sp_filestream_configuresimultaneously. - Wait 10–15 seconds to allow SQL Server to release internal locks.
Step 3: Verify FILESTREAM Service-Level Settings
- Open SQL Server Configuration Manager (search “SQL Server Configuration Manager” in Windows 11/Server 2025 Start menu).
- Navigate to SQL Server Services → right-click your instance → Properties → FILESTREAM tab.
- Ensure “Enable FILESTREAM for Transact-SQL access” is checked and matches the level you intend to set via
sp_filestream_configure.
Step 4: Re-run the Configuration Procedure
- Execute the procedure again in a single, isolated session:
EXEC sp_filestream_configure @enable_level = 3;
- Avoid running this command from multiple query windows or automation jobs at the same time.
- Restart the SQL Server service if the setting still doesn’t apply:
Restart-Service -Name 'MSSQLSERVER' -Force
Alternative or Verification Steps
- Verify the fix by querying current FILESTREAM configuration:
SELECT SERVERPROPERTY('FilestreamConfiguredLevel'), SERVERPROPERTY('FilestreamEffectiveLevel');— both values should match your intended setting. - If the error persists, check Windows Event Viewer (Applications and Services Logs > MSSQLSERVER) for correlating Event IDs around the same timestamp, which may reveal a deeper permissions or service account issue requiring an SQL Server restart in single-user mode.