0X0000170D

Cluster config already committed error 0X0000170D fix

Server & Cloud Intermediate 👁 0 views 📅 May 26, 2026

This error shows up when a cluster config change hits a hung transaction. You need to abort the pending commit, then retry.

You're trying to add a disk, change a quorum setting, or modify a cluster role in Failover Cluster Manager. You click OK. Then you get hit with error 0X0000170D: "The cluster configuration action has already been committed." This usually happens after a previous change didn't finish cleanly — maybe someone closed the wizard early, or a PowerShell script timed out mid-commit. The cluster registry thinks there's still a transaction open, and it refuses to start a new one until that stale one is cleared.

Why this happens

The cluster configuration uses a transaction-based write system. Every change — adding a node, changing a network setting, creating a resource — goes through a begin-commit process. If the commit step finishes but the cleanup step doesn't (or if the session disconnects mid-way), the cluster thinks a transaction is still pending. It won't let you start another one until you explicitly abort the stale one.

The real fix isn't rebooting the cluster or restarting the service. That sometimes works if the cluster service wasn't properly shut down, but in most cases the transaction is stuck in memory and a restart won't clear it. You have to manually abort it.

The fix: abort the pending transaction

  1. Open PowerShell as Administrator on a node that can reach the cluster. Doesn't have to be the owner node — any node works.
  2. Run this command to see if there's a hung transaction:
    Get-ClusterResource | Where-Object { $_.State -eq 'Pending' }
    If nothing shows up, the transaction might not be on a resource. Try this broader check:
    Get-Cluster | Select-Object *Pending*
  3. Now, abort the pending transaction. The safest way is using the Cluster PowerShell module's internal cmdlet:
    Stop-ClusterGroup -Name "Cluster Group" -IgnoreLocked
    Wait 10 seconds. You should see the group state change to Offline, then Online again.
  4. If that doesn't do it, you need to clear the transaction directly. Run:
    Clear-ClusterNode -Node <YourNodeName>
    Replace <YourNodeName> with the actual node you're on. This clears the local node's view of any stuck transactions. After that, run:
    Start-ClusterResource -Name "Cluster Name"
    This forces the cluster name resource to come back up, which often flushes the stale transaction.
  5. Now try your original change again. Open Failover Cluster Manager, make the change you were trying to do. It should go through this time.

If the fix still fails

If you still get error 0X0000170D after aborting, the transaction might be stuck on a specific resource that's in an inconsistent state. Check the cluster log for the exact resource ID:

Get-ClusterLog -Destination C:\Temp

Open the generated log file. Look for lines containing "Commit" or "AlreadyCommitted". You'll see something like "Resource Name: SQL Server (Instance1) - AlreadyCommitted". That tells you which resource is holding the lock.

Once you know the resource, try forcing it offline then back online:

Stop-ClusterResource -Name "SQL Server (Instance1)" -Wait 30
Start-ClusterResource -Name "SQL Server (Instance1)"

Then retry the original change.

If you're still stuck after all this, the cluster database itself might be corrupt. That's rare — I've seen it maybe three times in ten years. In that case, you'll need to evict the node, clear its cluster configuration, and re-add it using the "Add Node" wizard. But try the abort route first. Nine times out of ten, that's all you need.

Was this solution helpful?