linux-lvm.redhat.com archive mirror
 help / color / mirror / Atom feed
From: Jonathan E Brassow <jbrassow@redhat.com>
To: LVM general discussion and development <linux-lvm@redhat.com>
Subject: Re: [linux-lvm] Mirror resync direction
Date: Thu, 26 Oct 2006 16:14:34 -0500	[thread overview]
Message-ID: <67e61b34aeae92681a278b5d3bde28e0@redhat.com> (raw)
In-Reply-To: <20061026211738.008da405@nim.leo>

On Oct 26, 2006, at 3:17 PM, Paul LeoNerd Evans wrote:

> I'm running kernel 2.6.17 using the lvm2 package currently in debian
> testing (2.02.06-3). I use it to set up a VG containing two
> PVs, /dev/sda2 and /dev/sdb2. I create a mirror LV using corelog:
>
>   lvcreate --mirror 1 --corelog ...
>
> I create a filesystem on it, and populate it with files. I then try
> testing how it copes with drive failures, by simulating a replaced 
> disk.
>
> To do this, I zero out one of the sides using
>
>   dd if=/dev/zero of=/dev/sda2

This doesn't really reflect what would happen if you replaced a disk, I 
don't think.  With this, you are simply going around mirror's back to 
write data to a device which it controls.

In real life, I think you would have a disk failure (which would force 
you to run 'vgreduce --removemissing vg'), then you would insert a new 
block device, pvcreate/vgextend/lvconvert.

(When dmeventd is properly running, it should take care of the steps 
that are currently manual.)

> Having done that, I do the usual restore method
>
>   pvcreate --uuid 'whatever' /dev/sda2
>   vgcfgrestore vg
>   vgchange -a y
>
> And I note that it starts to resync the mirror. But it goes in the
> "wrong" direction - sda2's PV is the master, but that's been zeroed 
> out.
> sdb2's is the slave but contains the real data. The block copying goes 
> in
> the wrong direction here, copying the master's zeroes over the good 
> data
> in the slave.

Again, mirror has no idea that you did this.  The act of dd'ing to an 
underlying device is like dd'ing to a device under a file system - it 
doesn't know you are doing it and causes corruption.

> Is this a bug in the LVM2 tools, or the dm-mirror target, or what? Is 
> it
> perhaps a limitation of --corelog; in which case, how can I protect
> against that?
>

LVM2 mirroring is still a work in progress (trying to get the right 
pieces upstream).  Depending on the version of LVM2 and the kernel 
patches you have, it may not work.

The use of --corelog simply means that the mirror device will be 
resynchronized every time the device is activated.  The persistent log 
(disk log) tracks what resynchronization has been done and can avoid 
all complete resyncs.

  brassow

  parent reply	other threads:[~2006-10-26 21:11 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2006-10-26 20:17 [linux-lvm] Mirror resync direction Paul LeoNerd Evans
2006-10-26 20:27 ` Alasdair G Kergon
2006-10-26 20:30   ` Alasdair G Kergon
2006-10-26 21:10   ` Paul LeoNerd Evans
2006-11-01 17:43     ` Jonathan E Brassow
2006-10-26 22:08   ` Paul LeoNerd Evans
2006-10-26 21:14 ` Jonathan E Brassow [this message]
2006-10-26 21:16   ` Paul LeoNerd Evans
2006-10-26 21:45     ` Jonathan E Brassow

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=67e61b34aeae92681a278b5d3bde28e0@redhat.com \
    --to=jbrassow@redhat.com \
    --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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).