Bug 1394048

Summary: LVM RAID: Ability to reduce the size of a RAID LV
Product: Red Hat Enterprise Linux 7 Reporter: Jonathan Earl Brassow <jbrassow>
Component: lvm2Assignee: Heinz Mauelshagen <heinzm>
lvm2 sub component: Mirroring and RAID QA Contact: cluster-qe <cluster-qe>
Status: CLOSED ERRATA Docs Contact: Steven J. Levine <slevine>
Severity: unspecified    
Priority: unspecified CC: agk, cmarthal, heinzm, jbrassow, msnitzer, prajnoha, prockai, rbednar, slevine, zkabelac
Version: 7.2Keywords: FutureFeature
Target Milestone: rc   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: lvm2-2.02.169-1.el7 Doc Type: Enhancement
Doc Text:
LVM supports reducing the size of a RAID logical volume As of Red Hat Enterprise Linux 7,4, you can use the "lvreduce" or "lvresize" command to reduce the size of a RAID logical volume.
Story Points: ---
Clone Of: Environment:
Last Closed: 2017-08-01 21:49:49 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 1385242, 1394039, 1411727    

Description Jonathan Earl Brassow 2016-11-10 21:54:18 UTC
Currently, it is not possible to reduce the size of a RAID 4/5/6 LV.  This bug is a feature request to add that ability.

Comment 2 Heinz Mauelshagen 2016-11-16 17:12:59 UTC
Prepared for review/integration as lvresize/lvreduce functionality on lvm2 upstream branch dev-lvmguy-raid-takeover-reshape-resize_work

Comment 4 Heinz Mauelshagen 2017-02-09 21:44:13 UTC
Upstream commit 55eaabd1183042b8e03b3a969eadf624623c4b62

Comment 9 Roman Bednář 2017-04-18 08:38:20 UTC
Verified with latest rpms, ability to reduce size of raid has been added. 
Tested with raid0, raid1, raid4, raid5, raid6 and raid10.

# lvs
  LV     VG            Attr       LSize   Pool Origin Data%  Meta%  Move Log Cpy%Sync Convert
  root   rhel_virt-145 -wi-ao----   6.70g                                                    
  swap   rhel_virt-145 -wi-ao---- 876.00m                                                    
  raid0  vg            rwi-a-r---   1.00g                                                    
  raid1  vg            rwi-a-r---   1.00g                                    100.00          
  raid10 vg            rwi-a-r---   1.00g                                    100.00          
  raid4  vg            rwi-a-r---   1.00g                                    100.00          
  raid5  vg            rwi-a-r---   1.00g                                    100.00          
  raid6  vg            rwi-a-r---   1.01g                                    100.00  
        
# for i in raid0 raid1 raid4 raid5 raid6 raid10; do lvreduce -L500M vg/$i --force;done
  WARNING: Reducing active logical volume to 500.00 MiB.
  THIS MAY DESTROY YOUR DATA (filesystem etc.)
  Size of logical volume vg/raid0 changed from 1.00 GiB (256 extents) to 500.00 MiB (125 extents).
  Logical volume vg/raid0 successfully resized.
  WARNING: Reducing active logical volume to 500.00 MiB.
  THIS MAY DESTROY YOUR DATA (filesystem etc.)
  Size of logical volume vg/raid1 changed from 1.00 GiB (256 extents) to 500.00 MiB (125 extents).
  Logical volume vg/raid1 successfully resized.
  WARNING: Reducing active logical volume to 500.00 MiB.
  THIS MAY DESTROY YOUR DATA (filesystem etc.)
  Size of logical volume vg/raid4 changed from 1.00 GiB (256 extents) to 500.00 MiB (125 extents).
  Logical volume vg/raid4 successfully resized.
  WARNING: Reducing active logical volume to 500.00 MiB.
  THIS MAY DESTROY YOUR DATA (filesystem etc.)
  Size of logical volume vg/raid5 changed from 1.00 GiB (256 extents) to 500.00 MiB (125 extents).
  Logical volume vg/raid5 successfully resized.
  WARNING: Reducing active logical volume to 500.00 MiB.
  THIS MAY DESTROY YOUR DATA (filesystem etc.)
  Size of logical volume vg/raid6 changed from 1.00 GiB (256 extents) to 500.00 MiB (125 extents).
  Logical volume vg/raid6 successfully resized.
  WARNING: Reducing active logical volume to 500.00 MiB.
  THIS MAY DESTROY YOUR DATA (filesystem etc.)
  Size of logical volume vg/raid10 changed from 1.00 GiB (256 extents) to 500.00 MiB (125 extents).
  Logical volume vg/raid10 successfully resized.

# lvs
  LV     VG            Attr       LSize   Pool Origin Data%  Meta%  Move Log Cpy%Sync Convert
  root   rhel_virt-145 -wi-ao----   6.70g                                                    
  swap   rhel_virt-145 -wi-ao---- 876.00m                                                    
  raid0  vg            rwi-a-r--- 504.00m                                                    
  raid1  vg            rwi-a-r--- 500.00m                                    100.00          
  raid10 vg            rwi-a-r--- 504.00m                                    100.00          
  raid4  vg            rwi-a-r--- 504.00m                                    100.00          
  raid5  vg            rwi-a-r--- 504.00m                                    100.00          
  raid6  vg            rwi-a-r--- 504.00m                                    100.00  


3.10.0-640.el7.x86_64

lvm2-2.02.169-3.el7    BUILT: Wed Mar 29 16:17:46 CEST 2017
lvm2-libs-2.02.169-3.el7    BUILT: Wed Mar 29 16:17:46 CEST 2017
lvm2-cluster-2.02.169-3.el7    BUILT: Wed Mar 29 16:17:46 CEST 2017
device-mapper-1.02.138-3.el7    BUILT: Wed Mar 29 16:17:46 CEST 2017
device-mapper-libs-1.02.138-3.el7    BUILT: Wed Mar 29 16:17:46 CEST 2017
device-mapper-event-1.02.138-3.el7    BUILT: Wed Mar 29 16:17:46 CEST 2017
device-mapper-event-libs-1.02.138-3.el7    BUILT: Wed Mar 29 16:17:46 CEST 2017
device-mapper-persistent-data-0.7.0-0.1.rc6.el7    BUILT: Mon Mar 27 17:15:46 CEST 2017
cmirror-2.02.169-3.el7    BUILT: Wed Mar 29 16:17:46 CEST 2017

Comment 10 Steven J. Levine 2017-04-19 19:52:02 UTC
jbrassow:

As per our IRC discussion, I have marked this BZ for inclusion in the 7.4 release notes and I have written up a description.  Can you check that over to be sure it's correct?

Steven

Comment 11 Jonathan Earl Brassow 2017-04-19 20:16:14 UTC
(In reply to Steven J. Levine from comment #10)
> jbrassow:
> 
> As per our IRC discussion, I have marked this BZ for inclusion in the 7.4
> release notes and I have written up a description.  Can you check that over
> to be sure it's correct?
> 
> Steven

yes, looks fine.  A user can reduce the size of a RAID LV with 'lvreduce' or 'lvresize'.

Comment 12 Steven J. Levine 2017-04-19 20:26:22 UTC
I added lvresize to the description for the release notes.

Comment 13 errata-xmlrpc 2017-08-01 21:49:49 UTC
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://access.redhat.com/errata/RHBA-2017:2222