[linux-lvm] pvmove --abort

Zdenek Kabelac zkabelac at redhat.com
Mon Jan 27 18:29:30 UTC 2020


Dne 27. 01. 20 v 17:38 Stuart D Gathman napsal(a):
> On Mon, 27 Jan 2020, Matthias Leopold wrote:
> 
>> I consciously used "pvmove --abort" for the first time now and I'm 
>> astonished it doesn't behave like described in the man page. No matter if 
>> I've used "--atomic" for the original command, when I interrupt the process 
>> with "pvmove --abort" lvm always completely rolls back my copy operation. I 
>> would expect that if I don't use "--atomic" then "--abort" will result in 
>> "segments that have been moved will remain on the destination PV, while 
>> unmoved segments will remain on the source PV" (from man page). Am I missing 
>> something?
> 
> I'm not an LVM guru, but I think I got this one!  pvmove effectively
> creates a mirror on the destination, and begins syncing the mirror.
> Any writes to the LV go to *both* the source and destination.
> When you abort, it simply discards the partially synced mirror.
> When the sync is complete, it discards the source leg of the mirror
> instead.
>


Yep - lvm2 does not look at mirrored percentage to estimate and recalculate
'probably' moved portion of some LVs to other 'devices'.

Either full mirror is 'completed' or the whole 'mirroring' is simply discarded.

Option --atomic is then about having finished ALL mirrors - aka whole thing is 
either finished or canceled.

Unfortunately resolving some sort of 'partial' abort (aka keep 'mirrored' 
data) is pretty complex task and such operation is so infrequently used that 
I'm not expecting implantation any time soon if ever...


Zdenek




More information about the linux-lvm mailing list