Hide Forgot
Created attachment 928953 [details] -vvvv of the lvconvert Description of problem: I started seeing this when I lowered the size of the meta device to only 4M but had a pool device of 10G. If the meta device is say 400M, or the pool device is only 1G, i wont see this issue. [root@host-050 ~]# lvs -a -o +devices LV VG Attr LSize Pool Origin Data% Devices POOL snapper_thinp -wi-a----- 10.00g /dev/sdb1(1) meta snapper_thinp -wi-a----- 4.00m /dev/sdb1(0) [root@host-050 ~]# lvconvert --thinpool snapper_thinp/POOL --poolmetadata meta --yes WARNING: Converting logical volume snapper_thinp/POOL and snapper_thinp/meta to pool's data and metadata volumes. THIS WILL DESTROY CONTENT OF LOGICAL VOLUME (filesystem etc.) Logical volume "lvol0" created device-mapper: reload ioctl on failed: Invalid argument Failed to activate pool logical volume snapper_thinp/POOL. I tried the version before this (.109-1) and the bug exists there as well. Version-Release number of selected component (if applicable): 2.6.32-495.el6.x86_64 lvm2-2.02.109-2.el6 BUILT: Tue Aug 19 09:32:25 CDT 2014 lvm2-libs-2.02.109-2.el6 BUILT: Tue Aug 19 09:32:25 CDT 2014 lvm2-cluster-2.02.109-2.el6 BUILT: Tue Aug 19 09:32:25 CDT 2014 udev-147-2.57.el6 BUILT: Thu Jul 24 08:48:47 CDT 2014 device-mapper-1.02.88-2.el6 BUILT: Tue Aug 19 09:32:25 CDT 2014 device-mapper-libs-1.02.88-2.el6 BUILT: Tue Aug 19 09:32:25 CDT 2014 device-mapper-event-1.02.88-2.el6 BUILT: Tue Aug 19 09:32:25 CDT 2014 device-mapper-event-libs-1.02.88-2.el6 BUILT: Tue Aug 19 09:32:25 CDT 2014 device-mapper-persistent-data-0.3.2-1.el6 BUILT: Fri Apr 4 08:43:06 CDT 2014 cmirror-2.02.109-2.el6 BUILT: Tue Aug 19 09:32:25 CDT 2014
The code was missing rounding to 64kb when chunk size was estimated. Code in 2.02.113 catches the problem before metadata are written. With this upstream patch: https://www.redhat.com/archives/lvm-devel/2014-November/msg00199.html missed rounding is fixed: # lvcreate -L10G --poolmetadatasize 4M -T vg/pool1 Logical volume "pool1" created. # lvs -o+chunk_size LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert Chunk pool1 vg twi-a-tz-- 10,00g 0,00 1,17 192,00k
[root@tardis-02 ~]# lvcreate -L 4M -n meta vg Logical volume "meta" created. [root@tardis-02 ~]# lvcreate -L 10G -n pool vg Logical volume "pool" created. [root@tardis-02 ~]# lvconvert --thinpool vg/pool --poolmetadata meta --yes WARNING: Converting logical volume vg/pool and vg/meta to pool's data and metadata volumes. THIS WILL DESTROY CONTENT OF LOGICAL VOLUME (filesystem etc.) Converted vg/pool to thin pool. [root@tardis-02 ~]# lvs -a LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert [lvol0_pmspare] vg ewi------- 4.00m pool vg twi-a-tz-- 10.00g 0.00 1.17 [pool_tdata] vg Twi-ao---- 10.00g [pool_tmeta] vg ewi-ao---- 4.00m lv_home vg_tardis02 -wi-ao---- 224.88g lv_root vg_tardis02 -wi-ao---- 50.00g lv_swap vg_tardis02 -wi-ao---- 4.00g The test/issue mentioned in the opening comment passes with lvm2-2.02.118-2.el6.x86_64 marking as VERIFIED
Since the problem described in this bug report should be resolved in a recent advisory, it has been closed with a resolution of ERRATA. For information on the advisory, and where to find the updated files, follow the link below. If the solution does not work for you, open a new bug report. https://rhn.redhat.com/errata/RHBA-2015-1411.html