Bug 2077163 - if vdo_pool_autoextend_threshold is off, VDO creation should warn user like thin pool creation does
Summary: if vdo_pool_autoextend_threshold is off, VDO creation should warn user like t...
Keywords:
Status: NEW
Alias: None
Product: Red Hat Enterprise Linux 8
Classification: Red Hat
Component: lvm2
Version: 8.6
Hardware: x86_64
OS: Linux
unspecified
low
Target Milestone: rc
: ---
Assignee: Zdenek Kabelac
QA Contact: cluster-qe
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2022-04-20 19:23 UTC by Corey Marthaler
Modified: 2023-08-10 15:41 UTC (History)
6 users (show)

Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed:
Type: Bug
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
Red Hat Issue Tracker RHELPLAN-119445 0 None None None 2022-04-20 19:39:22 UTC

Description Corey Marthaler 2022-04-20 19:23:45 UTC
Description of problem:
This is really two bugs:
1. If vdo_pool_autoextend_threshold is turned off, then shouldn't VDO creation warn the user like thin pool creation does?

2. Should all lvcreates after a turned off thin_pool_autoextend_threshold thin pool create continue to warn the user?



# Create VDO FIRST, shouldn't there be a "protection against vdo pools running out of space" warning, like with thinpool?
[root@hayes-01 ~]# lvcreate --yes --type vdo -n vdovirt -L 10G -V 50G test
    The VDO volume can address 6 GB in 3 data slabs, each 2 GB.
    It can grow to address at most 16 TB of physical storage in 8192 slabs.
    If a larger maximum size might be needed, use bigger slabs.
  Logical volume "vdovirt" created.

# Create Thinpool/virt SECOND, note the warning for "protection against thin pools running out of space"
[root@hayes-01 ~]# lvcreate -V 50G -L 10G -T test/pool -n thinvirt
  Thin pool volume with chunk size 64.00 KiB can address at most <15.88 TiB of data.
  WARNING: Sum of all thin volume sizes (50.00 GiB) exceeds the size of thin pool test/pool (10.00 GiB).
  WARNING: You have not turned on protection against thin pools running out of space.
  WARNING: Set activation/thin_pool_autoextend_threshold below 100 to trigger automatic extension of thin pools before they get full.
  Logical volume "thinvirt" created.

[root@hayes-01 ~]# lvs -a -o +devices,seg_type
  LV              VG   Attr       LSize  Pool   Origin Data%  Meta%  Move Log Cpy%Sync Convert Devices         Type     
  [lvol0_pmspare] test ewi------- 12.00m                                                       /dev/sdd1(2560) linear   
  pool            test twi-aotz-- 10.00g               0.00   10.64                            pool_tdata(0)   thin-pool
  [pool_tdata]    test Twi-ao---- 10.00g                                                       /dev/sdd1(2563) linear   
  [pool_tmeta]    test ewi-ao---- 12.00m                                                       /dev/sdi1(0)    linear   
  thinvirt        test Vwi-a-tz-- 50.00g pool          0.00                                                    thin     
  vdovirt         test vwi-a-v--- 50.00g vpool0        0.00                                    vpool0(0)       vdo      
  vpool0          test dwi------- 10.00g               40.04                                   vpool0_vdata(0) vdo-pool 
  [vpool0_vdata]  test Dwi-ao---- 10.00g                                                       /dev/sdd1(0)    linear   



[root@hayes-01 ~]# vgremove -f test
  Logical volume "thinvirt" successfully removed.
  Logical volume "pool" successfully removed.
  Logical volume "vdovirt" successfully removed.
  Volume group "test" successfully removed



# Create Thinpool/virt FIRST, note the warning for "protection against thin pools running out of space"
[root@hayes-01 ~]# lvcreate -V 50G -L 10G -T test/pool -n thinvirt
  Thin pool volume with chunk size 64.00 KiB can address at most <15.88 TiB of data.
  WARNING: Sum of all thin volume sizes (50.00 GiB) exceeds the size of thin pool test/pool (10.00 GiB).
  WARNING: You have not turned on protection against thin pools running out of space.
  WARNING: Set activation/thin_pool_autoextend_threshold below 100 to trigger automatic extension of thin pools before they get full.
  Logical volume "thinvirt" created.

# Actually any lv creation from now on will warn about that prior thinpool threshold not being turned on
[root@hayes-01 ~]# lvcreate -L100M test
  WARNING: Sum of all thin volume sizes (50.00 GiB) exceeds the size of thin pools (10.00 GiB).
  WARNING: You have not turned on protection against thin pools running out of space.
  WARNING: Set activation/thin_pool_autoextend_threshold below 100 to trigger automatic extension of thin pools before they get full.
  Logical volume "lvol1" created.

# Create VDO THIRD, so now we see multiple thinpool warnings, but not one relevant to the vdo threshold not being on
[root@hayes-01 ~]# lvcreate --yes --type vdo -n vdovirt -L 10G -V 50G test
  WARNING: Sum of all thin volume sizes (50.00 GiB) exceeds the size of thin pools (10.00 GiB).
  WARNING: You have not turned on protection against thin pools running out of space.
  WARNING: Set activation/thin_pool_autoextend_threshold below 100 to trigger automatic extension of thin pools before they get full.
  Wiping vdo signature on /dev/test/vpool0.
    The VDO volume can address 6 GB in 3 data slabs, each 2 GB.
    It can grow to address at most 16 TB of physical storage in 8192 slabs.
    If a larger maximum size might be needed, use bigger slabs.
  WARNING: Sum of all thin volume sizes (50.00 GiB) exceeds the size of thin pools (10.00 GiB).
  WARNING: You have not turned on protection against thin pools running out of space.
  WARNING: Set activation/thin_pool_autoextend_threshold below 100 to trigger automatic extension of thin pools before they get full.
  Logical volume "vdovirt" created.


[root@hayes-01 ~]# lvs -a -o +devices,segtype
  LV              VG   Attr       LSize   Pool   Origin Data%  Meta%  Move Log Cpy%Sync Convert Devices         Type     
  [lvol0_pmspare] test ewi-------  12.00m                                                       /dev/sdd1(0)    linear   
  lvol1           test -wi-a----- 100.00m                                                       /dev/sdd1(5123) linear   
  pool            test twi-aotz--  10.00g               0.00   10.64                            pool_tdata(0)   thin-pool
  [pool_tdata]    test Twi-ao----  10.00g                                                       /dev/sdd1(3)    linear   
  [pool_tmeta]    test ewi-ao----  12.00m                                                       /dev/sdi1(0)    linear   
  thinvirt        test Vwi-a-tz--  50.00g pool          0.00                                                    thin     
  vdovirt         test vwi-a-v---  50.00g vpool0        0.00                                    vpool0(0)       vdo      
  vpool0          test dwi-------  10.00g               40.04                                   vpool0_vdata(0) vdo-pool 
  [vpool0_vdata]  test Dwi-ao----  10.00g                                                       /dev/sdd1(2563) linear   




Version-Release number of selected component (if applicable):
kernel-4.18.0-372.5.1.el8    BUILT: Mon Mar 28 10:29:22 CDT 2022
lvm2-2.03.14-3.el8    BUILT: Tue Jan  4 14:54:16 CST 2022
lvm2-libs-2.03.14-3.el8    BUILT: Tue Jan  4 14:54:16 CST 2022


Note You need to log in before you can comment on or make changes to this bug.