[lvm-devel] [PATCH 00/22] Replicator 100707

Zdenek Kabelac zkabelac at redhat.com
Wed Jul 7 12:34:34 UTC 2010


This patchset enhances lvm with replicator metadata construction.
It 'should not' influence other commands.

Use case example:

# build remote devices
vgcreate vg_ny /dev/loop1
vgcreate vg_paris /dev/loop2

lvcreate -L10M -n L1 vg_ny
lvcreate -L10M -n L1 vg_paris
lvcreate -L20M -n L2 vg_ny
lvcreate -L20M -n L2 vg_paris

# build local replicator
vgcreate my /dev/loop0
lvcreate --replicator rep -L20M my

lvcreate --site Berlin --replicator my/rep
lvcreate --site NY --remotevg vg_ny --replicator my/rep
lvcreate --site Paris --remotevg vg_paris --replicator my/rep

lvcreate --replicatordev -L10M -n L1 --replicator my/rep
lvcreate --replicatordev -L20M -n L2 --replicator my/rep

lvcreate --replicator rep -L20M my || exit 1
lvcreate --replicatordev -L10M -n L1 --replicator my/rep

lvremove my/L1

Note: after removing 'L1'  LV  'L1_rimage' and '_slog' devices
are left in VG Ideally user should use  own 'VG'
and for removal just run:

vgremove my

lvchange --site Berlin --replicator my/rep  -ay
== lvchange --site Berlin my/L1  -ay
== lvchange --site Berlin my/rep  -ay


Zdenek Kabelac (22):
  Add units to passed parameters data & timeout     Use size
  Allow the user to not specify a size when creating snapshot.
  Skip check missing rem.VGs for non-activate locks
  Replicator: check for active replicator
  Replicator: add reserved names
  Replicator: man page update for lvm
  Replicator: add _replicator_in_sync
  Replicator: add report for replicator targets
  Replicator: improve detection of replicator-dev
  Replicator: new defaults
  Replicator: metadata update
  Replicator: replicator_manip changes
  Replicator: replicator.c changes
  Replicator: add new command option read functions
  Replicator: new args
  Replicator: read site_params
  Replicator: lv_manip - create replicator
  Replicator: lvcreate implementation
  Replicator: man page update for lvcreate
  Replicator: lvchange implementation
  Replicator: man page update for lvchange
  Replicator: lvremove implementation

 lib/config/defaults.h            |    9 +
 lib/locking/locking.h            |    2 +-
 lib/metadata/lv_manip.c          |  126 ++++-
 lib/metadata/merge.c             |   18 +-
 lib/metadata/metadata-exported.h |   59 ++-
 lib/metadata/replicator_manip.c  | 1211 +++++++++++++++++++++++++++++++-------
 lib/misc/lvm-globals.c           |   11 +
 lib/misc/lvm-globals.h           |    2 +
 lib/misc/lvm-string.c            |   18 +
 lib/replicator/replicator.c      |  178 ++----
 lib/report/columns.h             |    2 +
 lib/report/report.c              |   32 +
 libdm/libdm-deptree.c            |    4 +-
 man/lvchange.8.in                |   31 +
 man/lvcreate.8.in                |   76 +++
 man/lvm.8.in                     |    3 +-
 tools/args.h                     |   10 +
 tools/commands.h                 |   18 +-
 tools/lvchange.c                 |  195 ++++++-
 tools/lvcreate.c                 |  137 +++++-
 tools/lvmcmdline.c               |   24 +
 tools/lvremove.c                 |   19 +-
 tools/toollib.c                  |  111 ++++
 tools/toollib.h                  |    3 +
 tools/tools.h                    |    2 +
 tools/vgchange.c                 |    2 +-
 26 files changed, 1942 insertions(+), 361 deletions(-)




More information about the lvm-devel mailing list