[linux-lvm] LVM cachepool inconsistency after power event

Ming Hung Tsai mtsai at redhat.com
Tue Oct 5 16:56:52 UTC 2021


On Tue, Oct 5, 2021 at 11:54 PM Zdenek Kabelac <zkabelac at redhat.com> wrote:
>
> Dne 05. 10. 21 v 13:34 Krzysztof Chojnowski napsal(a):
> > $ sudo cache_check /dev/mapper/vg0-wdata_cachepool_cpool_cmeta
> > examining superblock
> > examining mapping array
> >    missing mappings [1, 0]:
> >      missing blocks
> > examining hint array
> >    missing mappings [1, 0]:
> >      missing blocks
> > examining discard bitset
>
> Hello Krzystof
>
> You need to repair your cache-pool metadata.
>
> But before continuing with advices - what is the version of kernel lvm2 & your
> device-mapper-persistent-data package (aka  'cache_check -V)
>
> Component activation allows activation of your _cmeta LV - but only in
> read-only mode - so repair must go into a new LV.
>
> Since cache_check reported  '1' exist code (as an error) - your metadata do
> require a fix.
>
> lvconvert --repair should be able to handle this case - although likely
> without 'smart' placement' of fixed metadata (pvmove needed after metadata fix)
>
> You can allocated your new metadata and easily cache_repair them.
>
>
> Regards
>
> Zdenek


I think it's a case that the superblock was not committed before the
power outage, that's why the error message shows zero in the third
line. Some fields or unwritten blocks might be lost.

cache_repair might not handle this case perfectly. If possible, you
could upload the "original" metadata somewhere for me to take a look,
by dd it into a binary file.

The "original" metadata should be named vg0/tpg1-wdata_meta0 or
something suffixed with "_meta0" since you've run lvconvert.

Also, as Zdenek mentioned, please help provide the LVM, dmpd, and
kernel versions.


Ming-Hung Tsai




More information about the linux-lvm mailing list