Problem description
VMware backup jobs fail for one or more configured virtual machines during scheduled or manual backup operations. The backup fails during block analysis when querying changed disk sectors, resulting in job failure or an unexpected fallback to full disk scanning.This issue typically occurs after manual snapshot manipulation, storage migration (Storage vMotion), disk geometry changes, or an unexpected host shutdown/crash while CBT tracking is active.
Cause
VMware Changed Block Tracking (CBT) utilizes .ctk files on the datastore to track blocks modified since the last backup baseline. The error is caused by:
Snapshot Chain Discrepancy: Unconsolidated or orphaned VMware snapshots disrupting the sequential change ID chain between the Druva backup index and VMware vSphere.
Metadata Mismatch Following Storage Migration: Storage vMotion, cloning, or attaching/detaching
.vmdkdisks modified the VM disk metadata without updating the CBT tracking state.CTK File Corruption: An ungraceful host shutdown, sudden power loss, or storage path interruption corrupted the virtual machine's
-ctk.vmdkfiles.
Traceback
[2023-05-22 12:05:12,410] [ERROR] Failed to fetch changed blocks for disk scsi0:0. Error: VMware error: 'Nonmatching change UUID'. [2023-05-22 12:05:12,415] [ERROR] CBT tracking sequence mismatch between Druva backup index and vSphere QueryChangedDiskAreas API. [2023-05-22 12:05:13,102] [ERROR] Backup job failed for VM '<VM_Name>'. Error: Nonmatching change UUID.
Resolution
To resolve this issue, consolidate any outstanding snapshots and reset VMware Changed Block Tracking (CBT) on the affected virtual machine.
Prerequisites:
Open the vSphere Client and inspect the affected VM.
If snapshots exist, right-click the VM, select Snapshots > Consolidate (or delete/merge manual snapshots via Manage Snapshots).
Schedule a brief maintenance window to power off the virtual machine.
Step 1: Disable CBT on the Target VM
Open the vSphere Web Client.
Right-click the virtual machine and click Power Off.
Right-click the virtual machine, click the Snapshot and navigate to Snapshot Manager. Ensure there are no active snapshots. If there are snapshots present, consolidate them to commit the changes. For more information, see Consolidating/Committing snapshots in ESXi.
Right-click the virtual machine and click Edit Settings.
Click the Options tab, select the Advanced section and then click Configuration Parameters.
Disable CBT for the virtual machine by setting the
ctkEnabledvalue tofalse.Disable CBT for the individual virtual disks attached to the virtual machine by setting the
scsix:x.ctkEnabledvalue for each attached virtual disk tofalse.
Where scsix:x is SCSI controller and SCSI device ID of your virtual disk.
Step 2: Remove Corrupted CTK Files from the Datastore
Go to Storage, right-click the datastore hosting the virtual machine, and select Browse Files.
Open the VM's working folder.
Locate all files ending with
-ctk.vmdk.Delete the
-ctk.vmdkfiles. (Do not delete standard.vmdkbase disks or descriptor files).
Step 3: Re-enable CBT and Run Baseline Backup
Power on the virtual machine.
If Auto-enable CBT is selected in your Druva VMware Backup Policy:
No manual edit in vSphere is needed; Druva automatically turns CBT on during the next backup.
If CBT must be enabled manually:
Repeat Step 1 while the VM is powered off, changing
ctkEnabledand disk-specificscsiX:X.ctkEnabledparameters toTRUE, then power the VM back on.
Log in to the Druva Management Console.
Navigate to Protect > VMware > Configured VMs.
Select the virtual machine and click Backup Now.
Druva will run a full-block scan to establish a fresh, healthy CBT baseline. Subsequent backups will resume normal incremental tracking.
Verification
Log in to the Druva Management Console and navigate to Jobs > VMware.
Verify that the manual backup job status displays Successful.
In the job details pane, verify that block-level analysis completes without
Nonmatching change UUIDor CBT-related errors.Check the datastore browser in vSphere to ensure new, healthy
-ctk.vmdkfiles have been automatically regenerated in the VM directory.
