Event IDs 19050, 32022, 32032, 32056, 32315, 32546 and 33680 are logged when Hyper-V replication is in progress

This article describes event IDs 19050, 32022, 32032, 32056, 32315, 32546 and 33680 that occurs when you take backup of the disk on recovery host that has data related to replica VM.

Applies to:   Windows Server 2012 R2
Original KB number:   2889734

Symptoms

Windows Server 2012

When backing up a disk on Replica machine, Replication health goes to warning/critical and replication goes to Error state on primary server. Additionally, during the backup interval, the following events are logged in the Microsoft-Windows-Hyper-V-VMMS-Admin log:

On Primary machine:

Source: Microsoft-Windows-Hyper-V-VMMS
Event ID: 32315
Description: Hyper-V failed to replicate changes for virtual machine <VMname> (Virtual Machine ID <VMid>). Hyper-V will retry replication after 5 minute(s).

Source: Microsoft-Windows-Hyper-V-VMMS
Event ID:32022
Description: Hyper-V could not replicate changes for virtual machine <VMname>: The operation has been canceled (0x00002EF1). (Virtual Machine ID <VMid>

On Secondary machine:

Source: Microsoft-Windows-Hyper-V-VMMS
EventID: 32546
Description: <VMname> failed to perform the operation. The virtual machine is not in a valid state to perform the operation. (Virtual machine ID <VMid>)

Source: Microsoft-Windows-Hyper-V-VMMS
EventID: 19050
Description: <VMname> failed to perform the operation. The virtual machine is not in a valid state to perform the operation. (Virtual machine ID <VMid>)

Source:
EventID: 32056
Description: Hyper-V failed to apply replication logs for <VMname>: Operation aborted (0x80004004). (Virtual Machine ID <VMid>)

Windows Server 2012 R2

On Windows Server 2012 R2, the replication continues without any state change and replication health will be normal. However, the following events are logged on the Secondary server:

Source: Microsoft-Windows-Hyper-V-VMMS
EventID: 32546
Description: <VMname> failed to perform the operation. The virtual machine is not in a valid state to perform the operation. (Virtual machine ID <VMid>)

Source: Microsoft-Windows-Hyper-V-VMMS
EventID: 19050
Description: <VMname> failed to perform the operation. The virtual machine is not in a valid state to perform the operation. (Virtual machine ID <VMid>)

Source: Microsoft-Windows-Hyper-V-VMMS
EventID: 32032
Description: Hyper-V failed to complete apply for <VMname>: Operation aborted (0x80004004). (Virtual machine ID <VMid>)

Source: Microsoft-Windows-Hyper-V-VMMS
EventID: 33680
Description: Replication operation for virtual machine <VMname> failed. (Virtual machine ID <VMid>) (Primary server: 'primaryServer.contoso.com', Replica server: 'secondaryServer.contoso.com')

Cause

This happens when you take backup of the disk on recovery host that has data related to replica VM. Both backup and replication acquire modifying lock on VM to complete their operations. At any point only one process can operate on the VM.

For example, if a user starts backup, it acquires the lock on VM and doing so will make replication fail during the time back-up is going on. Depending on the number of cycles missed, replication health of the secondary machine changes to warning or critical and primary machine replication state goes to error state.

In Windows Server 2012 R2, Delta replication means only sending changes. Apply of change log is done asynchronously. This means that RPO of replica VM will be intact even when backup is going on. So you only see errors in event logs while replication health and state will be normal and replicating respectively.

Resolution

In Windows Server 2012, Replication automatically succeeds without any errors after back-up finishes. If back-up takes too long to complete, replication may go into Resync required mode. Check the replication health on the replica VM. If it says, "Resync Required", click on "Resync" on replica VM.

In Windows Server 2012 R2, replication continues normally. No explicit action is required from the user end. If user initiates Fail back after backup is complete, all the pending changes will be applied if user selects latest recovery point before Failover starts.

The following PowerShell command will show the latest time at which changes were applied on Recovery side in case of Windows Server 2012 R2:

measure-VMReplication | select Name,LReplTime