Discussion:
[linux-lvm] mirror volume split
Anatoly Pugachev
2015-10-08 09:17:16 UTC
Permalink
Hello!

Trying to split one of mirror volumes :

# lvs
LV VG Attr LSize Pool Origin Data% Meta%
Move Log Cpy%Sync Convert
gatewayVol vg1 rwi-aor---
8.00g 100.00

# lvconvert --splitmirrors 1 -n split1 vg1/gatewayVol
# lvs
LV VG Attr LSize Pool Origin Data% Meta%
Move Log Cpy%Sync Convert
gatewayVol vg1 -wi-ao---- 8.00g
split1 vg1 -wi-a----- 8.00g

converting original volume back to mirror configuration, leaving split1
volume intact:

# lvconvert -m1 vg1/gatewayVol
device-mapper: create ioctl on vg1-gatewayVol_rimage_1 failed: Device or
resource busy
Failed to lock logical volume vg1/gatewayVol.

# lvs
LV VG Attr LSize Pool Origin Data% Meta%
Move Log Cpy%Sync Convert
gatewayVol vg1 -wi-ao---- 8.00g
gatewayVol_rimage_1 vg1 -wi------- 8.00g
gatewayVol_rmeta_0 vg1 -wi-a----- 4.00m
gatewayVol_rmeta_1 vg1 -wi-a----- 4.00m
split1 vg1 -wi-a----- 8.00g

So, what I should do now? What is rimage* and rmeta* ? How do I get rid of
them, preserving data on gatewayVol and split1 volumes?

Thanks.

PS: opensuse 13.2

# lvm version
LVM version: 2.02.114(2) (2014-11-28)
Library version: 1.03.01 (2014-11-28)
Driver version: 4.27.0
Anatoly Pugachev
2015-10-08 09:53:14 UTC
Permalink
to reply myself,

probably bug in md raid1 implementation of lvm2, since it's quite a new
code in 2014 lvm2.

Fixed with help from irc #lvm, thanks to kabi :

ithaqua:/mnt # lvremove vg1/split1
Do you really want to remove active logical volume split1? [y/n]: y
Logical volume "split1" successfully removed
ithaqua:/mnt # lvremove vg1/gatewayVol_rmeta_1
Do you really want to remove active logical volume gatewayVol_rmeta_1?
[y/n]: y
Logical volume "gatewayVol_rmeta_1" successfully removed
ithaqua:/mnt # lvremove vg1/gatewayVol_rmeta_0
Do you really want to remove active logical volume gatewayVol_rmeta_0?
[y/n]: y
Logical volume "gatewayVol_rmeta_0" successfully removed
ithaqua:/mnt # lvremove vg1/gatewayVol_rimage_1
Logical volume "gatewayVol_rimage_1" successfully removed

ithaqua:/mnt # lvconvert -m1 vg1/gatewayVol
device-mapper: create ioctl on vg1-gatewayVol_rimage_0 failed: Device or
resource busy
Failed to lock logical volume vg1/gatewayVol.

ithaqua:/mnt # lvs
LV VG Attr LSize Pool Origin Data% Meta%
Move Log Cpy%Sync Convert
gatewayVol vg1 -wi-ao----
8.00g
gatewayVol_rimage_1 vg1 -wi-------
8.00g
gatewayVol_rmeta_0 vg1 -wi-a-----
4.00m
gatewayVol_rmeta_1 vg1 -wi------- 4.00m


ithaqua:/mnt # lvremove vg1/gatewayVol_rmeta_1
Do you really want to remove active logical volume gatewayVol_rmeta_1?
[y/n]: y
Logical volume "gatewayVol_rmeta_1" successfully removed
ithaqua:/mnt # lvremove vg1/gatewayVol_rmeta_0
Do you really want to remove active logical volume gatewayVol_rmeta_0?
[y/n]: y
Logical volume "gatewayVol_rmeta_0" successfully removed
ithaqua:/mnt # lvremove vg1/gatewayVol_rimage_1
Logical volume "gatewayVol_rimage_1" successfully removed

ithaqua:/mnt # lvs
LV VG Attr LSize Pool Origin Data% Meta%
Move Log Cpy%Sync Convert
gatewayVol vg1 -wi-ao---- 8.00g

ithaqua:/mnt # dmsetup table | grep gate
vg1-gatewayVol_rimage_0: 0 16777216 linear 8:5 714926080
vg1-gatewayVol: 0 16777216 linear 8:5 714926080

ithaqua:/mnt # dmsetup info -c | grep gate
vg1-gatewayVol_rimage_0 254 52 L--w 0 1 0
LVM-BynKRpbJnegQy2RbeN9sxON1zKghQ7Fw2Q4aqEReJHtPNxXFyPyaXz040c5y3ZWA
vg1-gatewayVol 254 55 L--w 1 1 0
LVM-BynKRpbJnegQy2RbeN9sxON1zKghQ7FwMYUKRXvsN40JWStnPz6PSjxrlg0QxmCb

ithaqua:/mnt # dmsetup ls --tree
vg1-gatewayVol_rimage_0 (254:52)
L- (8:5)
vg1-gatewayVol (254:55)
L- (8:5)

ithaqua:/mnt # dmsetup remove vg1-gatewayVol_rimage_0
ithaqua:/mnt # dmsetup info -c | grep gate
vg1-gatewayVol 254 55 L--w 1 1 0
LVM-BynKRpbJnegQy2RbeN9sxON1zKghQ7FwMYUKRXvsN40JWStnPz6PSjxrlg0QxmCb
ithaqua:/mnt # dmsetup table | grep gate
vg1-gatewayVol: 0 16777216 linear 8:5 714926080


ithaqua:/mnt # lvconvert -m1 vg1/gatewayVol
ithaqua:/mnt # lvs -a | grep gate
LV VG Attr LSize Pool Origin Data% Meta%
Move Log Cpy%Sync Convert
gatewayVol vg1 rwi-aor---
8.00g 10.84
[gatewayVol_rimage_0] vg1 Iwi-aor---
8.00g
[gatewayVol_rimage_1] vg1 Iwi-aor---
8.00g
[gatewayVol_rmeta_0] vg1 ewi-aor---
4.00m
[gatewayVol_rmeta_1] vg1 ewi-aor--- 4.00m
Post by Anatoly Pugachev
Hello!
# lvs
LV VG Attr LSize Pool Origin Data% Meta%
Move Log Cpy%Sync Convert
gatewayVol vg1 rwi-aor---
8.00g 100.00
# lvconvert --splitmirrors 1 -n split1 vg1/gatewayVol
# lvs
LV VG Attr LSize Pool Origin Data% Meta%
Move Log Cpy%Sync Convert
gatewayVol vg1 -wi-ao---- 8.00g
split1 vg1 -wi-a----- 8.00g
converting original volume back to mirror configuration, leaving split1
# lvconvert -m1 vg1/gatewayVol
device-mapper: create ioctl on vg1-gatewayVol_rimage_1 failed: Device or
resource busy
Failed to lock logical volume vg1/gatewayVol.
# lvs
LV VG Attr LSize Pool Origin Data% Meta%
Move Log Cpy%Sync Convert
gatewayVol vg1 -wi-ao---- 8.00g
gatewayVol_rimage_1 vg1 -wi------- 8.00g
gatewayVol_rmeta_0 vg1 -wi-a----- 4.00m
gatewayVol_rmeta_1 vg1 -wi-a----- 4.00m
split1 vg1 -wi-a----- 8.00g
So, what I should do now? What is rimage* and rmeta* ? How do I get rid of
them, preserving data on gatewayVol and split1 volumes?
Thanks.
PS: opensuse 13.2
# lvm version
LVM version: 2.02.114(2) (2014-11-28)
Library version: 1.03.01 (2014-11-28)
Driver version: 4.27.0
Anatoly Pugachev
2015-10-08 10:21:42 UTC
Permalink
13:01 < kabi_> looking into WHATS new - 2.02.116 fixes raid1
--splitmirror
13:05 < kabi_> (and got broken in 2.02.112 - so your 114 release is
affected)

PS: there's updated package at
http://download.opensuse.org/repositories/systemsmanagement/openSUSE_13.2/x86_64/
with lvm2 2.02.120 version. Use at your own risk, since messing with
device-mapper and lvm2 can easily break something (like booting of server).
Post by Anatoly Pugachev
to reply myself,
probably bug in md raid1 implementation of lvm2, since it's quite a new
code in 2014 lvm2.
ithaqua:/mnt # lvremove vg1/split1
Do you really want to remove active logical volume split1? [y/n]: y
Logical volume "split1" successfully removed
ithaqua:/mnt # lvremove vg1/gatewayVol_rmeta_1
Do you really want to remove active logical volume gatewayVol_rmeta_1?
[y/n]: y
Logical volume "gatewayVol_rmeta_1" successfully removed
ithaqua:/mnt # lvremove vg1/gatewayVol_rmeta_0
Do you really want to remove active logical volume gatewayVol_rmeta_0?
[y/n]: y
Logical volume "gatewayVol_rmeta_0" successfully removed
ithaqua:/mnt # lvremove vg1/gatewayVol_rimage_1
Logical volume "gatewayVol_rimage_1" successfully removed
ithaqua:/mnt # lvconvert -m1 vg1/gatewayVol
device-mapper: create ioctl on vg1-gatewayVol_rimage_0 failed: Device or
resource busy
Failed to lock logical volume vg1/gatewayVol.
ithaqua:/mnt # lvs
LV VG Attr LSize Pool Origin Data% Meta%
Move Log Cpy%Sync Convert
gatewayVol vg1 -wi-ao----
8.00g
gatewayVol_rimage_1 vg1 -wi-------
8.00g
gatewayVol_rmeta_0 vg1 -wi-a-----
4.00m
gatewayVol_rmeta_1 vg1 -wi------- 4.00m
ithaqua:/mnt # lvremove vg1/gatewayVol_rmeta_1
Do you really want to remove active logical volume gatewayVol_rmeta_1?
[y/n]: y
Logical volume "gatewayVol_rmeta_1" successfully removed
ithaqua:/mnt # lvremove vg1/gatewayVol_rmeta_0
Do you really want to remove active logical volume gatewayVol_rmeta_0?
[y/n]: y
Logical volume "gatewayVol_rmeta_0" successfully removed
ithaqua:/mnt # lvremove vg1/gatewayVol_rimage_1
Logical volume "gatewayVol_rimage_1" successfully removed
ithaqua:/mnt # lvs
LV VG Attr LSize Pool Origin Data% Meta%
Move Log Cpy%Sync Convert
gatewayVol vg1 -wi-ao---- 8.00g
ithaqua:/mnt # dmsetup table | grep gate
vg1-gatewayVol_rimage_0: 0 16777216 linear 8:5 714926080
vg1-gatewayVol: 0 16777216 linear 8:5 714926080
ithaqua:/mnt # dmsetup info -c | grep gate
vg1-gatewayVol_rimage_0 254 52 L--w 0 1 0
LVM-BynKRpbJnegQy2RbeN9sxON1zKghQ7Fw2Q4aqEReJHtPNxXFyPyaXz040c5y3ZWA
vg1-gatewayVol 254 55 L--w 1 1 0
LVM-BynKRpbJnegQy2RbeN9sxON1zKghQ7FwMYUKRXvsN40JWStnPz6PSjxrlg0QxmCb
ithaqua:/mnt # dmsetup ls --tree
vg1-gatewayVol_rimage_0 (254:52)
L- (8:5)
vg1-gatewayVol (254:55)
L- (8:5)
ithaqua:/mnt # dmsetup remove vg1-gatewayVol_rimage_0
ithaqua:/mnt # dmsetup info -c | grep gate
vg1-gatewayVol 254 55 L--w 1 1 0
LVM-BynKRpbJnegQy2RbeN9sxON1zKghQ7FwMYUKRXvsN40JWStnPz6PSjxrlg0QxmCb
ithaqua:/mnt # dmsetup table | grep gate
vg1-gatewayVol: 0 16777216 linear 8:5 714926080
ithaqua:/mnt # lvconvert -m1 vg1/gatewayVol
ithaqua:/mnt # lvs -a | grep gate
LV VG Attr LSize Pool Origin Data% Meta%
Move Log Cpy%Sync Convert
gatewayVol vg1 rwi-aor---
8.00g 10.84
[gatewayVol_rimage_0] vg1 Iwi-aor---
8.00g
[gatewayVol_rimage_1] vg1 Iwi-aor---
8.00g
[gatewayVol_rmeta_0] vg1 ewi-aor---
4.00m
[gatewayVol_rmeta_1] vg1 ewi-aor--- 4.00m
Post by Anatoly Pugachev
Hello!
# lvs
LV VG Attr LSize Pool Origin Data% Meta%
Move Log Cpy%Sync Convert
gatewayVol vg1 rwi-aor---
8.00g 100.00
# lvconvert --splitmirrors 1 -n split1 vg1/gatewayVol
# lvs
LV VG Attr LSize Pool Origin Data% Meta%
Move Log Cpy%Sync Convert
gatewayVol vg1 -wi-ao---- 8.00g
split1 vg1 -wi-a----- 8.00g
converting original volume back to mirror configuration, leaving split1
# lvconvert -m1 vg1/gatewayVol
device-mapper: create ioctl on vg1-gatewayVol_rimage_1 failed: Device
or resource busy
Failed to lock logical volume vg1/gatewayVol.
# lvs
LV VG Attr LSize Pool Origin Data% Meta%
Move Log Cpy%Sync Convert
gatewayVol vg1 -wi-ao---- 8.00g
gatewayVol_rimage_1 vg1 -wi------- 8.00g
gatewayVol_rmeta_0 vg1 -wi-a----- 4.00m
gatewayVol_rmeta_1 vg1 -wi-a----- 4.00m
split1 vg1 -wi-a----- 8.00g
So, what I should do now? What is rimage* and rmeta* ? How do I get rid
of them, preserving data on gatewayVol and split1 volumes?
Thanks.
PS: opensuse 13.2
# lvm version
LVM version: 2.02.114(2) (2014-11-28)
Library version: 1.03.01 (2014-11-28)
Driver version: 4.27.0
Continue reading on narkive:
Loading...