diff options
author | Alasdair Kergon <agk@redhat.com> | 2006-09-02 01:18:17 +0000 |
---|---|---|
committer | Alasdair Kergon <agk@redhat.com> | 2006-09-02 01:18:17 +0000 |
commit | dc4d7417f743ea0766aa9b200aa861ef003400bb (patch) | |
tree | 0379970e84f2089f5ed9d4649b9333d9c611675e /tools/vgmerge.c | |
parent | a45da5f6768e36535340982e1185e9ab234d9d7a (diff) | |
download | lvm2-dc4d7417f743ea0766aa9b200aa861ef003400bb.tar.gz lvm2-dc4d7417f743ea0766aa9b200aa861ef003400bb.tar.xz lvm2-dc4d7417f743ea0766aa9b200aa861ef003400bb.zip |
When using local file locking, skip clustered VGs.
Add fallback_to_clustered_locking and fallback_to_local_locking parameters.
Diffstat (limited to 'tools/vgmerge.c')
-rw-r--r-- | tools/vgmerge.c | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/tools/vgmerge.c b/tools/vgmerge.c index 73b7fa81..761ef883 100644 --- a/tools/vgmerge.c +++ b/tools/vgmerge.c @@ -41,6 +41,13 @@ static int _vgmerge_single(struct cmd_context *cmd, const char *vg_name_to, return ECMD_FAILED; } + if ((vg_to->status & CLUSTERED) && !locking_is_clustered() && + !lockingfailed()) { + log_error("Skipping clustered volume group %s", vg_name_to); + unlock_vg(cmd, vg_name_to); + return ECMD_FAILED; + } + if (vg_to->status & EXPORTED_VG) { log_error("Volume group \"%s\" is exported", vg_to->name); unlock_vg(cmd, vg_name_to); @@ -66,6 +73,12 @@ static int _vgmerge_single(struct cmd_context *cmd, const char *vg_name_to, goto error; } + if ((vg_from->status & CLUSTERED) && !locking_is_clustered() && + !lockingfailed()) { + log_error("Skipping clustered volume group %s", vg_name_from); + goto error; + } + if (vg_from->status & EXPORTED_VG) { log_error("Volume group \"%s\" is exported", vg_from->name); goto error; |