From: David Teigland <teigland@redhat.com>
To: Anssi Hannula <anssi.hannula@iki.fi>
Cc: linux-lvm@redhat.com
Subject: Re: [linux-lvm] Internal error: Referenced LV pvmove0 not listed in VG
Date: Wed, 24 Apr 2019 13:05:57 -0500 [thread overview]
Message-ID: <20190424180557.GC3218@redhat.com> (raw)
In-Reply-To: <3ec9acca2f8161282341f561c3c7c988@iki.fi>
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/
next prev parent reply other threads:[~2019-04-24 18:05 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-04-23 23:06 [linux-lvm] Internal error: Referenced LV pvmove0 not listed in VG Anssi Hannula
2019-04-24 17:10 ` Anssi Hannula
2019-04-24 18:05 ` David Teigland [this message]
2019-04-24 18:41 ` Anssi Hannula
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20190424180557.GC3218@redhat.com \
--to=teigland@redhat.com \
--cc=anssi.hannula@iki.fi \
--cc=linux-lvm@redhat.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.