All of lore.kernel.org
 help / color / mirror / Atom feed
From: Zdenek Kabelac <zkabelac@redhat.com>
To: lvm-devel@redhat.com
Subject: [PATCH 05/23] Replicator: suspend/deactivate replicator
Date: Thu, 06 May 2010 12:22:55 +0200	[thread overview]
Message-ID: <4BE2987F.5080305@redhat.com> (raw)
In-Reply-To: <20100506101420.GP27027@agk-dp.fab.redhat.com>

Dne 6.5.2010 12:14, Alasdair G Kergon napsal(a):
> On Thu, May 06, 2010 at 10:34:47AM +0200, Zdenek Kabelac wrote:
>> With the Replicator we have the logic, which has the use case for both
>> variants (and no other target so far needed this) - thus we need to
>> distinguish between them somehow.
>>
>>      master replicator node     (replicator0)
>>            replicator-dev node  (lv1)
>>            replicator-dev node  (lv2)
>>
>> We may want to either 'remove/suspend' the whole replicator - or just one leg.
>> Thus cutting the leg without suspending master node is valid and supported
>> operation here. So to differentiate between cutting leg or replicator the
>> parent suspend flag is used. That way we may atomically freeze the whole
>> replicator and avoid damage in the ordering of rlogged data.
>  
> Elsewhere we issue the suspend at the top part of the tree that we wish to 
> suspend.  So distinguish the two cases by suspend(replicator0) vs suspend(lv1).
> 
> So I'm still not seeing the complete picture/problem here.

IMHO that would mean, that every tool which would need to suspend LV1 would
need to know that it must build first the tree for replicator and make this as
a two stage function.

i.e. mirror over replicator  - I'm not saying it's supported feature at this
moment, but from the logic how the dm_tree operates this 'one-pass' solution
seems to be a more complex solution.

Of course it could be probably overwritten to use multiple trees generated for
each leg separately after the main part of replicator is suspend - but it
looks far more complicated compared with this bool suspend_priority flag.

Zdenek



  reply	other threads:[~2010-05-06 10:22 UTC|newest]

Thread overview: 38+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-04-28 12:27 [PATCH 00/23] Replicator 100428 Zdenek Kabelac
2010-04-28 12:27 ` [PATCH 01/23] Return ECMD_FAILED for break Zdenek Kabelac
2010-05-06  1:10   ` Alasdair G Kergon
2010-05-06  8:13     ` Zdenek Kabelac
2010-04-28 12:27 ` [PATCH 02/23] Add dm_list_splice() for list join Zdenek Kabelac
2010-05-06  1:11   ` Alasdair G Kergon
2010-04-28 12:27 ` [PATCH 03/23] API change for args of process_each_lv_in_vg() Zdenek Kabelac
2010-05-06  1:39   ` Alasdair G Kergon
2010-05-06  8:14     ` Zdenek Kabelac
2010-04-28 12:27 ` [PATCH 04/23] Replicator: libdm support Zdenek Kabelac
2010-04-28 12:27 ` [PATCH 05/23] Replicator: suspend/deactivate replicator Zdenek Kabelac
2010-05-06  1:45   ` Alasdair G Kergon
2010-05-06  8:22     ` Zdenek Kabelac
2010-05-06  1:55   ` Alasdair G Kergon
2010-05-06  8:34     ` Zdenek Kabelac
2010-05-06 10:14       ` Alasdair G Kergon
2010-05-06 10:22         ` Zdenek Kabelac [this message]
2010-04-28 12:27 ` [PATCH 06/23] Replicator: lvm2 support Zdenek Kabelac
2010-04-28 12:27   ` Zdenek Kabelac
2010-04-28 12:57     ` Zdenek Kabelac
2010-04-28 12:27 ` [PATCH 07/23] Replicator: check replicator segment Zdenek Kabelac
2010-04-28 12:34 ` [PATCH 08/23] Replicator: extend _lv_each_dependency() rep. deps Zdenek Kabelac
2010-04-28 12:34 ` [PATCH 09/23] Replicator: extend volume_group with list of VGs Zdenek Kabelac
2010-04-28 12:34 ` [PATCH 10/23] Replicator: add sorted cmd_vg list Zdenek Kabelac
2010-04-28 12:34 ` [PATCH 11/23] Replicator: add find_replicator_vgs Zdenek Kabelac
2010-04-28 12:34 ` [PATCH 12/23] Replicator: add read and release VGs for rsites Zdenek Kabelac
2010-04-28 12:34 ` [PATCH 13/23] Replicator: use cmd_vg list for _process_one_vg() Zdenek Kabelac
2010-04-28 12:34 ` [PATCH 14/23] Replicator: use cmd_vg for process_each_lv_in_vg() Zdenek Kabelac
2010-04-28 12:57   ` Zdenek Kabelac
2010-04-28 12:34 ` [PATCH 15/23] Replicator: lock_vol() finds missing VGs Zdenek Kabelac
2010-04-28 12:36 ` [PATCH 16/23] Replicator: activate checks for missing vgs Zdenek Kabelac
2010-04-28 12:36 ` [PATCH 17/23] Replicator: update _create_partial_dtree() Zdenek Kabelac
2010-04-28 12:36 ` [PATCH 18/23] Replicator: vg with cmd_missing_vgs does not print Zdenek Kabelac
2010-04-28 12:36 ` [PATCH 19/23] Replicator: add replicator to dtree Zdenek Kabelac
2010-04-28 12:36 ` [PATCH 20/23] Replicator: do not remove of replicators' LVs Zdenek Kabelac
2010-04-28 12:37 ` [PATCH 21/23] Replicator: activate change for vgchange Zdenek Kabelac
2010-04-28 12:37   ` Zdenek Kabelac
2010-04-28 12:57     ` Zdenek Kabelac
2010-04-28 12:37 ` [PATCH 22/23] Replicator: add new options for replicator Zdenek Kabelac
2010-04-28 12:37 ` [PATCH 23/23] Replicator: man pages for lvcreate, lvchange 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=4BE2987F.5080305@redhat.com \
    --to=zkabelac@redhat.com \
    --cc=lvm-devel@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.