From mboxrd@z Thu Jan 1 00:00:00 1970 From: rmccabe@sourceware.org Date: 15 Jun 2007 15:30:42 -0000 Subject: [Cluster-devel] conga/ricci/modules/storage LV.cpp Message-ID: <20070615153042.12105.qmail@sourceware.org> List-Id: To: cluster-devel.redhat.com MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit CVSROOT: /cvs/cluster Module name: conga Branch: RHEL4 Changes by: rmccabe at sourceware.org 2007-06-15 15:30:42 Modified files: ricci/modules/storage: LV.cpp Log message: Do not destroy content on clustered-LVs when removing them from one node, as they may be in use by other cluster nodes. Patches: http://sourceware.org/cgi-bin/cvsweb.cgi/conga/ricci/modules/storage/LV.cpp.diff?cvsroot=cluster&only_with_tag=RHEL4&r1=1.7.2.1&r2=1.7.2.2 --- conga/ricci/modules/storage/LV.cpp 2007/03/05 20:22:36 1.7.2.1 +++ conga/ricci/modules/storage/LV.cpp 2007/06/15 15:30:41 1.7.2.2 @@ -246,12 +246,14 @@ LV::remove() { // if VG is marked as clustered, but cluster locking is not available, throw - if (_props.get("clustered").get_bool() && - !LVM::clustered_enabled()) - throw LVMClusterLockingError(); - - content->remove(); - LVM::lvremove(path()); + bool lv_clustered = _props.get("clustered").get_bool(); + if (lv_clustered && !LVM::clustered_enabled()) + throw LVMClusterLockingError(); + + /* Don't hose volumes that may be mounted elsewhere */ + if (!lv_clustered) + content->remove(); + LVM::lvremove(path()); }