From mboxrd@z Thu Jan 1 00:00:00 1970 Date: Wed, 24 Apr 2019 13:05:57 -0500 From: David Teigland Message-ID: <20190424180557.GC3218@redhat.com> References: <3ec9acca2f8161282341f561c3c7c988@iki.fi> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <3ec9acca2f8161282341f561c3c7c988@iki.fi> Subject: Re: [linux-lvm] Internal error: Referenced LV pvmove0 not listed in VG Reply-To: LVM general discussion and development List-Id: LVM general discussion and development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , List-Id: Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: Anssi Hannula Cc: linux-lvm@redhat.com On Wed, Apr 24, 2019 at 08:10:11PM +0300, Anssi Hannula wrote: > Anssi Hannula kirjoitti 2019-04-24 02:06: > > Hi all, > > > > I'm getting the following error when trying to run a pvmove command: > > > > # pvmove -v /dev/md0:18122768-19076597 > > Cluster mirror log daemon not included in build. > > Archiving volume group "delta" metadata (seqno 72). > > Creating logical volume pvmove0 > > activation/volume_list configuration setting not defined: Checking > > only host tags for delta/home_r. > > Moving 167398 extents of logical volume delta/home_r. > > activation/volume_list configuration setting not defined: Checking > > only host tags for delta/data_r. > > Internal error: Referenced LV pvmove0 not listed in VG delta. > > > > This is with git master, but I see the same on 2.02.177. This old comment stands out as possibly related: /* FIXME Cope with non-contiguous => splitting existing segments */ https://sourceware.org/git/?p=lvm2.git;a=blob;f=tools/pvmove.c;h=c5e39292228393d6d2ce0a21018dba5b5c306da5;hb=HEAD#l342 It seems you're trying to pvmove a range that covers two segments, which I guess doesn't work (I don't know why it doesn't check for this to provide a better error.) If you pvmove segments separately it should avoid that limitation (your test works for me if I do "pvmove /dev/loop0:18122768-18909199" which avoids crossing a segment boundary.) > Here is a short reproducer: > > ------clip------ > #!/bin/sh > > set -ex > > mkdir -p lvmtestdir > mount -t tmpfs none lvmtestdir > cd lvmtestdir > > truncate --size=$((156275497728*512)) testimg1 > truncate --size=$((46883372928*512)) testimg2 > > dev1="$(losetup -f --show testimg1)" > dev2="$(losetup -f --show testimg2)" > > pvcreate "$dev1" > pvcreate "$dev2" > > vgcreate TESTVG "$dev1" "$dev2" > > lvcreate --name=lv0 -l $((1048576+167398)) TESTVG \ > "$dev1":0+655360 \ > "$dev1":17037866+393216 \ > "$dev1":18909200+167398 > lvcreate --name=lv1 -l $((16382506+1478118)) TESTVG \ > "$dev1":917504+16120362 \ > "$dev1":655360+262144 \ > "$dev1":17431082+1478118 > > # ERROR > pvmove -v "$dev1":18122768-19076597 || : > > # cleanup > vgremove --force TESTVG > losetup -d "$dev1" > losetup -d "$dev2" > cd .. > sleep 1 # lvmtestdir busy? > umount lvmtestdir > ------clip------ > > > -- > Anssi Hannula > > _______________________________________________ > linux-lvm mailing list > linux-lvm@redhat.com > https://www.redhat.com/mailman/listinfo/linux-lvm > read the LVM HOW-TO at http://tldp.org/HOWTO/LVM-HOWTO/