Bug 151322

Summary: rc.sysinit incorrectly activates clustered LVs locally
Product: Red Hat Enterprise Linux 4 Reporter: Alasdair Kergon <agk>
Component: lvm2Assignee: Alasdair Kergon <agk>
Status: CLOSED ERRATA QA Contact:
Severity: medium Docs Contact:
Priority: medium    
Version: 4.0CC: ccaulfie, kanderso
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: RHBA-2005-192 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2005-03-23 15:23:35 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 144795    

Description Alasdair Kergon 2005-03-16 22:43:36 UTC
rc.sysinit runs vgchange -ay --ignorelockingfailure
which attempts to activate all visible LVs.

It should only be activating LVs required for local filesystems such as /usr or
swap.

Clustered logical volumes then get activated later by the clvmd init script.

Comment 1 Alasdair Kergon 2005-03-16 22:55:53 UTC
Follows on from:

  [Bug 151172] Updating kernel on node with lvm root vols renders machine unbootable

That one stops you booting; this one means the wrong volume groups might be
activated on the wrong machines.
e.g. if you activated an LV exclusively on one node, this bug means another node
would pay no regard to that during the boot sequence and happily mount it
concurrently.

This bug has no impact if every VG is meant to be activated on every node, or if
the configuration is completely determined by the tagging & config files -
you're just activating the LVs too soon, and when clvmd comes along it'll go and
get the locks that should have been got earlier.



Comment 2 Alasdair Kergon 2005-03-16 22:59:59 UTC
I'm investigating fixing this by adding a 'clustered' flag and ensuring that the
initscripts ignore LVs that inherit this flag.

Comment 3 Alasdair Kergon 2005-03-22 17:34:24 UTC
Flag added in 2.01.08:

- VGs that are meant to be clustered have a 'CLUSTERED' flag added to them.
- vgcreate adds the flag automatically if you're using clustered locking,
otherwise it doesn't.
- Flag can be changed with vgchange -c.
- vgchange -ay --ignorelockingfailure (used by the initscripts and the new
mkinitrd) now ignores LVs with the CLUSTERED flag set.


Comment 4 Tim Powers 2005-06-09 12:30:01 UTC
An advisory has been issued which should help the problem
described in this bug report. This report is therefore being
closed with a resolution of ERRATA. For more information
on the solution and/or where to find the updated files,
please follow the link below. You may reopen this bug report
if the solution does not work for you.

http://rhn.redhat.com/errata/RHBA-2005-192.html