linux-lvm.redhat.com archive mirror
 help / color / mirror / Atom feed
From: Zdenek Kabelac <zkabelac@redhat.com>
To: Takahiro Yasui <tyasui@redhat.com>
Cc: linux-lvm@redhat.com
Subject: Re: [linux-lvm] Why does every lvm command insist on touching every pv?
Date: Fri, 18 Jun 2010 16:27:55 +0200	[thread overview]
Message-ID: <4C1B826B.1010200@redhat.com> (raw)
In-Reply-To: <4C1A28DE.4040605@redhat.com>

Dne 17.6.2010 15:53, Takahiro Yasui napsal(a):
> On 06/17/10 04:23, Zdenek Kabelac wrote:
>> Dne 16.6.2010 21:27, Takahiro Yasui napsal(a):
>>> On 06/16/10 05:30, Zdenek Kabelac wrote:
>>>> Dne 16.6.2010 02:34, Phillip Susi napsal(a):
>>>>> On 06/15/2010 04:41 PM, Takahiro Yasui wrote:
>>> ...
>>>>> What if I don't want ANY devices to be scanned every time an lvm command
>>>>> is run?  Shouldn't they be scanned once when udev first detects they
>>>>> have been attached, and no more?  I thought removing /dev from the scan=
>>>>> line would do that, but it didn't.
>>>>>
> ...
>>> It is helpful if udev can handle this issue, but I'm wondering how it can
>>> do it.
>>
>> I'm not working on this part, but AFAIK, once we could start 'trust' udev, we
>> can keep persistent cache aware of any changes that might have happened to
>> devices listed in metadata. Implementation details are still 'moving topic'.
>>
>> Obviously you can not skip write/update access to metadata areas, but it
>> should be possible to avoid scanning for 'read-only' data access.
> 
> Thank you for your explanation. Yes, I agree that it is possible to avoid
> scanning for 'read-only' data access, but I also believe it is possible for
> 'write' adata access.


With current LVM logic - you can't proceed with usage of LVM metadata unless
they are properly committed to PVs.  i.e. there is no chance you could use
partially stored metadata to just some cached devices. Either you update all
metadata or you fail - there is nothing between these 2 states.

> 
>> Also there is another thing in progress - metadata-balance code - where you
>> essentially do not need to read/write metadata from/to every PV in VG - but
>> just on reasonable safe amount of them - i.e. 5 from 100 of PVs - the rest of
>> them is marked invisible (different from pvcreate --metadatasize 0)
> 
> AFAIK, metadata-balance feature would reduce the number of disk accesses,
> but I believe that the goal is to access PVs related to the VG which lvm
> command is going to manipulate. Introducing metadata cache feature on disk
> or a kind of daemon managing all metadatas, or using /etc/lvm/backup could
> be solution.
> 
> I hope we could continue discussing this topic on lvm-devel?

Sure. Daemon is also planned, but for reduction of write access metadata
balancing should greatly help.  Another step here could be to parallelize all
disk operations on different devices. Also udev handling has some perfomance
optimalization still.

With properly working udev we shouldn't need to do any device scanning as we
will have all 'interesting' devices stored in some cache storage - it could be
file, daemon, udev DB entry....

Zdenek

  reply	other threads:[~2010-06-18 14:27 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-06-15 15:23 [linux-lvm] Why does every lvm command insist on touching every pv? Phillip Susi
2010-06-15 16:47 ` Alasdair G Kergon
2010-06-15 17:46   ` Phillip Susi
2010-06-15 19:17     ` Takahiro Yasui
2010-06-15 20:24       ` Phillip Susi
2010-06-15 20:41         ` Takahiro Yasui
2010-06-16  0:34           ` Phillip Susi
2010-06-16  9:30             ` Zdenek Kabelac
2010-06-16 19:27               ` Takahiro Yasui
2010-06-17  8:23                 ` Zdenek Kabelac
2010-06-17 13:53                   ` Takahiro Yasui
2010-06-18 14:27                     ` Zdenek Kabelac [this message]
2010-06-18 14:50                       ` Takahiro Yasui
2010-06-18 15:52                         ` Alasdair G Kergon
2010-06-18 17:10                           ` Takahiro Yasui
2010-06-18 18:55                             ` Takahiro Yasui
2010-06-16 14:52             ` Takahiro Yasui

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=4C1B826B.1010200@redhat.com \
    --to=zkabelac@redhat.com \
    --cc=linux-lvm@redhat.com \
    --cc=tyasui@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).