All of lore.kernel.org
 help / color / mirror / Atom feed
From: Eric Ren <renzhengeek@gmail.com>
To: LVM general discussion and development <linux-lvm@redhat.com>,
	lvm-devel@redhat.com, thornber@redhat.com
Subject: Re: [linux-lvm] Aborting. LV mythinpool_tmeta is now incomplete
Date: Thu, 11 Apr 2019 18:01:30 +0800	[thread overview]
Message-ID: <CAKM4Aex11MbzzGrWE=aYF+KM+_o3cOrs6N2n_T5+tSpuu7J=5Q@mail.gmail.com> (raw)
In-Reply-To: <CAKM4AewbcVR1x0cK8hWLCRxb1BzDd-F+WeK6ObUmB35N1HTqOA@mail.gmail.com>

[-- Attachment #1: Type: text/plain, Size: 3902 bytes --]

Hi,

Another error message is:

" Failed to suspend thin snapshot origin ..."

which is in _lv_create_an_lv():

```
7829         } else if (lv_is_thin_volume(lv)) {
7830                 /* For snapshot, suspend active thin origin first */
7831                 if (origin_lv && lv_is_active(origin_lv) &&
lv_is_thin_volume(origin_lv)) {
7832                         if (!suspend_lv_origin(cmd, origin_lv)) {
7833                                 log_error("Failed to suspend thin
snapshot origin %s/%s.",
7834                                           origin_lv->vg->name,
origin_lv->name);
7835                                 goto revert_new_lv;
7836                         }
7837                         if (!resume_lv_origin(cmd, origin_lv)) { /*
deptree updates thin-pool */
7838                                 log_error("Failed to resume thin
snapshot origin %s/%s.",
7839                                           origin_lv->vg->name,
origin_lv->name);
7840                                 goto revert_new_lv;
7841                         }
7842                         /* At this point remove pool messages,
snapshot is active */
7843                         if (!update_pool_lv(pool_lv, 0)) {
7844                                 stack;
7845                                 goto revert_new_lv;
7846                         }
```

I don't understand why we need to suspend_lv_origin()
and resume_lv_origin() in line?

And, what reasons might cause this errors?

Regards,
Eric




On Thu, 11 Apr 2019 at 08:27, Eric Ren <renzhengeek@gmail.com> wrote:

> Hello list,
>
> Recently, we're exercising our container environment which uses lvm to
> manage thin LVs, meanwhile we found a very strange error to activate the
> thin LV:
>
> “Aborting.  LV mythinpool_tmeta is now incomplete and '--activationmode
> partial' was not specified.\n: exit status 5: unknown"
>
> centos 7.6
> # lvm version
>   LVM version:     2.02.180(2)-RHEL7 (2018-07-20)
>   Library version: 1.02.149-RHEL7 (2018-07-20)
>   Driver version:  4.35.0
>
> It has appeared several times, but can not be reproduced easily by simple
> steps, and it only errors at that moment, after it happens everything seems
> OK but only that activation failed.
>
> Looking at the code a bit. At first, I suspect the PV may disappear for
> some reason, but the VG sits on only one PV, the setup is simple, the
> environment is only for testing purposes, it seems unlikely the PV has
> problem at that moment and I don't see any problem message with the disk.
>
> ```
>
> 2513         /* FIXME Avoid repeating identical stat in dm_tree_node_add_target_area */
> 2514         for (s = start_area; s < areas; s++) {
> 2515                 if ((seg_type(seg, s) == AREA_PV &&
> 2516                      (!seg_pvseg(seg, s) || !seg_pv(seg, s) || !seg_dev(seg, s) ||
> 2517                        !(name = dev_name(seg_dev(seg, s))) || !*name ||
> 2518                        stat(name, &info) < 0 || !S_ISBLK(info.st_mode))) ||
> 2519                     (seg_type(seg, s) == AREA_LV && !seg_lv(seg, s))) {
> 2520                         if (!seg->lv->vg->cmd->partial_activation) {
> 2521                                 if (!seg->lv->vg->cmd->degraded_activation ||
> 2522                                     !lv_is_raid_type(seg->lv)) {
> 2523                                         log_error("Aborting.  LV %s is now incomplete "
> 2524                                                   "and '--activationmode partial' was not specified.",
> 2525                                                   display_lvname(seg->lv));
> 2526                                         return 0;
>
> ```
> So, does anyone see the same problem? Or any hints to hunt the root cause?
> Any suggestion would be welcome!
>
> Regards,
> Eric
>


-- 
- Eric Ren

[-- Attachment #2: Type: text/html, Size: 6504 bytes --]

WARNING: multiple messages have this Message-ID (diff)
From: Eric Ren <renzhengeek@gmail.com>
To: lvm-devel@redhat.com
Subject: Aborting. LV mythinpool_tmeta is now incomplete
Date: Thu, 11 Apr 2019 18:01:30 +0800	[thread overview]
Message-ID: <CAKM4Aex11MbzzGrWE=aYF+KM+_o3cOrs6N2n_T5+tSpuu7J=5Q@mail.gmail.com> (raw)
In-Reply-To: <CAKM4AewbcVR1x0cK8hWLCRxb1BzDd-F+WeK6ObUmB35N1HTqOA@mail.gmail.com>

Hi,

Another error message is:

" Failed to suspend thin snapshot origin ..."

which is in _lv_create_an_lv():

```
7829         } else if (lv_is_thin_volume(lv)) {
7830                 /* For snapshot, suspend active thin origin first */
7831                 if (origin_lv && lv_is_active(origin_lv) &&
lv_is_thin_volume(origin_lv)) {
7832                         if (!suspend_lv_origin(cmd, origin_lv)) {
7833                                 log_error("Failed to suspend thin
snapshot origin %s/%s.",
7834                                           origin_lv->vg->name,
origin_lv->name);
7835                                 goto revert_new_lv;
7836                         }
7837                         if (!resume_lv_origin(cmd, origin_lv)) { /*
deptree updates thin-pool */
7838                                 log_error("Failed to resume thin
snapshot origin %s/%s.",
7839                                           origin_lv->vg->name,
origin_lv->name);
7840                                 goto revert_new_lv;
7841                         }
7842                         /* At this point remove pool messages,
snapshot is active */
7843                         if (!update_pool_lv(pool_lv, 0)) {
7844                                 stack;
7845                                 goto revert_new_lv;
7846                         }
```

I don't understand why we need to suspend_lv_origin()
and resume_lv_origin() in line?

And, what reasons might cause this errors?

Regards,
Eric




On Thu, 11 Apr 2019 at 08:27, Eric Ren <renzhengeek@gmail.com> wrote:

> Hello list,
>
> Recently, we're exercising our container environment which uses lvm to
> manage thin LVs, meanwhile we found a very strange error to activate the
> thin LV:
>
> ?Aborting.  LV mythinpool_tmeta is now incomplete and '--activationmode
> partial' was not specified.\n: exit status 5: unknown"
>
> centos 7.6
> # lvm version
>   LVM version:     2.02.180(2)-RHEL7 (2018-07-20)
>   Library version: 1.02.149-RHEL7 (2018-07-20)
>   Driver version:  4.35.0
>
> It has appeared several times, but can not be reproduced easily by simple
> steps, and it only errors at that moment, after it happens everything seems
> OK but only that activation failed.
>
> Looking at the code a bit. At first, I suspect the PV may disappear for
> some reason, but the VG sits on only one PV, the setup is simple, the
> environment is only for testing purposes, it seems unlikely the PV has
> problem at that moment and I don't see any problem message with the disk.
>
> ```
>
> 2513         /* FIXME Avoid repeating identical stat in dm_tree_node_add_target_area */
> 2514         for (s = start_area; s < areas; s++) {
> 2515                 if ((seg_type(seg, s) == AREA_PV &&
> 2516                      (!seg_pvseg(seg, s) || !seg_pv(seg, s) || !seg_dev(seg, s) ||
> 2517                        !(name = dev_name(seg_dev(seg, s))) || !*name ||
> 2518                        stat(name, &info) < 0 || !S_ISBLK(info.st_mode))) ||
> 2519                     (seg_type(seg, s) == AREA_LV && !seg_lv(seg, s))) {
> 2520                         if (!seg->lv->vg->cmd->partial_activation) {
> 2521                                 if (!seg->lv->vg->cmd->degraded_activation ||
> 2522                                     !lv_is_raid_type(seg->lv)) {
> 2523                                         log_error("Aborting.  LV %s is now incomplete "
> 2524                                                   "and '--activationmode partial' was not specified.",
> 2525                                                   display_lvname(seg->lv));
> 2526                                         return 0;
>
> ```
> So, does anyone see the same problem? Or any hints to hunt the root cause?
> Any suggestion would be welcome!
>
> Regards,
> Eric
>


-- 
- Eric Ren
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://listman.redhat.com/archives/lvm-devel/attachments/20190411/0e3c37a9/attachment.htm>

  reply	other threads:[~2019-04-11 10:01 UTC|newest]

Thread overview: 28+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-04-11  0:27 [linux-lvm] Aborting. LV mythinpool_tmeta is now incomplete Eric Ren
2019-04-11  0:27 ` Eric Ren
2019-04-11 10:01 ` Eric Ren [this message]
2019-04-11 10:01   ` Eric Ren
2019-04-11 11:21   ` [linux-lvm] [lvm-devel] " Zdenek Kabelac
2019-04-11 11:21     ` Zdenek Kabelac
2019-04-11 11:03 ` [linux-lvm] " Zdenek Kabelac
2019-04-11 11:03   ` Zdenek Kabelac
2019-04-11 11:26   ` [linux-lvm] " Eric Ren
2019-04-11 11:26     ` Eric Ren
2019-04-11 11:32     ` [linux-lvm] " Zdenek Kabelac
2019-04-11 11:32       ` Zdenek Kabelac
2019-04-11 11:49       ` [linux-lvm] " Eric Ren
2019-04-11 11:49         ` Eric Ren
2019-04-11 12:12         ` [linux-lvm] " Zdenek Kabelac
2019-04-11 12:12           ` Zdenek Kabelac
2019-04-11 13:09           ` [linux-lvm] " Eric Ren
2019-04-11 13:09             ` Eric Ren
2019-04-11 13:13             ` [linux-lvm] " Zdenek Kabelac
2019-04-11 13:13               ` Zdenek Kabelac
     [not found]               ` <CAKM4Aez9H=GuRLK0EDJTwpb7j34tCu1aY4dS5_L4saDGERestg@mail.gmail.com>
2019-04-11 17:33                 ` [linux-lvm] " Eric Ren
2019-04-11 17:33                   ` Eric Ren
2019-04-12 10:05                   ` [linux-lvm] [lvm-devel] " Zdenek Kabelac
2019-04-12 10:05                     ` Zdenek Kabelac
2019-04-12 10:42                     ` [linux-lvm] [lvm-devel] " Eric Ren
2019-04-12 10:42                       ` Eric Ren
2019-04-12 13:44                       ` [linux-lvm] " Zdenek Kabelac
2019-04-12 13:44                         ` Zdenek Kabelac

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='CAKM4Aex11MbzzGrWE=aYF+KM+_o3cOrs6N2n_T5+tSpuu7J=5Q@mail.gmail.com' \
    --to=renzhengeek@gmail.com \
    --cc=linux-lvm@redhat.com \
    --cc=lvm-devel@redhat.com \
    --cc=thornber@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.