libvirtError: Timed out during operation: cannot acquire state change lock (held by monitor=remoteDispatchDomainMigratePerform3Params)
Blake Anderson
gnarliprime at gmail.com
Fri Feb 28 17:33:55 UTC 2020
Hey Peter,
Thanks for the advice. It looks like neither of these methods worked.
virsh block job —abort $domain $disk returned
error: Timed out during operation: cannot acquire state change lock (held by monitor=remoteDispatchDomainMigratePerform3Params)
I checked virsh domjobinfo $domain prior to attempted the domjobabort and it just lists
Job type: Cancelled
The domjobabort returned no output.
Do you have any ideas of how to clear the lock short of restarting the qemu process?
> On Feb 27, 2020, at 11:49 PM, Peter Krempa <pkrempa at redhat.com> wrote:
>
> On Thu, Feb 27, 2020 at 18:28:44 -0700, Blake Anderson wrote:
>>
>> Hi everyone,
>> I have a question that you may be able to help me with. I had a live block migration of a qemu-kvm guest fail (initiated via nova), in which the guest remained running on the source, but if I try to re-initiate the live migration it returns libvirtError: Timed out during operation: cannot acquire state change lock (held by monitor=remoteDispatchDomainMigratePerform3Params). Looking at blockjob --info I see there is a block copy that has been stuck at 23 % for a few hours now. Is it safe to issue a —abort to the blockjob without impacting the vm and will that resolve the lock?
>
> The domain job lock is held by the whole migration API not just the
> blockjob. Aborting the blockjob or the migration thus should have the
> same results after everything cleans up since the failed blockjob should
> trigger abort of the whole migration anyways. So either of these should
> do the trick:
>
> virsh blockjob --abort $VM $DISK
>
> virsh domjobabort $VM
>
> Aborting a migration is safe, everything should just continue running at
> the source.
>
More information about the libvirt-users
mailing list