Tom writes: > Okay, we are in agreement that the code in 4.8 will not change. The remaining > task is to change the comments in lvm.conf so that they are not misleading. The current text is: ============== # In the event of a failure, the specified policy will be used to # determine what happens: # # "remove" - Simply remove the faulty device and run without it. If # the log device fails, the mirror would convert to using # an in-memory log. This means the mirror will not # remember its sync status across crashes/reboots and # the entire mirror will be re-synced. If a # mirror image fails, the mirror will convert to a # non-mirrored device if there is only one remaining good # copy. # # "allocate" - Remove the faulty device and try to allocate space on # a new device to be a replacement for the failed device. # Using this policy for the log is fast and maintains the # ability to remember sync state through crashes/reboots. # Using this policy for a mirror device is slow, as it # requires the mirror to resynchronize the devices, but it # will preserve the mirror characteristic of the device. # This policy acts like "remove" if no suitable device and # space can be allocated for the replacement. # Currently this is not implemented properly and behaves # similarly to: # # "allocate_anywhere" - Operates like "allocate", but it does not # require that the new space being allocated be on a # device is not part of the mirror. For a log device # failure, this could mean that the log is allocated on # the same device as a mirror device. For a mirror # device, this could mean that the mirror device is # allocated on the same device as another mirror device. # This policy would not be wise for mirror devices # because it would break the redundant nature of the # mirror. This policy acts like "remove" if no suitable # device and space can be allocated for the replacement. mirror_log_fault_policy = "allocate" mirror_device_fault_policy = "remove" } ================== We propose to change: # This policy acts like "remove" if no suitable device and # space can be allocated for the replacement. - # Currently this is not implemented properly and behaves - # similarly to: + # Currently (version 2.02.NN) this is not implemented properly + # and behaves in an identical way to "remove" above. # # "allocate_anywhere" - Operates like "allocate", but it does not # require that the new space being allocated be on a Nick: is this enough?
Fixed in lvm2-2.02.42-5.el4
Thanks for working on to fix this. (In reply to comment #3) > We propose to change: > > # This policy acts like "remove" if no suitable device and > # space can be allocated for the replacement. > - # Currently this is not implemented properly and behaves > - # similarly to: > + # Currently (version 2.02.NN) this is not implemented properly > + # and behaves in an identical way to "remove" above. > # > # "allocate_anywhere" - Operates like "allocate", but it does not > # require that the new space being allocated be on a > > Nick: is this enough? I think either the same note be added also in "allocate_anywhere" section or the note be added in the general part of the mirror policy description (i.e. in the first paragraph of the comment block). Also, given that the old config file may likely live after updates, it might be better to add such description in 'lvm.conf(5)' man page rather than just in the default lvm.conf.
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 therefore 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-2009-0967.html