[Bug 1020436] Re: Cannot read superblock after FC multipath failover
Steve Fisher
stefan.nicolaivic at gmail.com
Fri Jul 27 07:16:44 UTC 2012
The root cause was in fact the lvm.conf filter, but explicitly not for
the reason you'd think.
The issue is that if I added "a|.*|" into regex array, it was ignoring
my 'sd[b-z]', loop and ram exclusions, both singly and in combination.
It seems to be an obscure issue with the use of square brackets inside
the regex in certain ways.
Eg if I use the line:
filter = [ "a|.*|", "r|.*|" ]
or
filter = [ "a|.*|", "r|loop|" ]
Then this filters _everything_ in the first example, or just loop
devices respectively... just as you would expect.
However as soon as I use something like:
filter = [ "a|.*|", "r|loop[0-9]|" ]
Then I don't get any filtering at all... except that defining _only_ the
removal filters, per:
filter = [ "r|loop[0-9]+|" ]
.. and other filters of that ilk DO work as expected -- so long as I
remove the "accept-all" regex.
I'm not sure if this parsing behaviour is intended -- it could be to do
with the way the array is encapsulated.
Even this line works as expected:
filter = [ "a|.*|", "r|sd.[b-z]|" ]
-- Possibly since placing the the match-any-single-character (".") in
there changes the behaviour.
The filter currently in use works as expected and looks like:
filter = [ "r|sd[b-z]|", "r|ram[0-9]+|", "r|loop[0-9]+|", ]
After update-initramfs and reboot, I can successfully disable paths, and
the failover works perfectly.
Your insight is much appreciated, I would never have expected
/dev/mapper/mpath0 to become aliased to a single disk target.
I suspect that what has actually happened is that things were working
perfectly for a time, but then broke upon a reboot of the server.
Ie, due to the lack of filtering, LVM jumbled the detected volumes at
boot time (due to the way /dev is traversed) such that mpath0 was
actually pointing at a fixed location eg /dev/sdb rather than being
multipathed as expected.
--
You received this bug notification because you are a member of Ubuntu
Server Team, which is subscribed to multipath-tools in Ubuntu.
https://bugs.launchpad.net/bugs/1020436
Title:
Cannot read superblock after FC multipath failover
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/multipath-tools/+bug/1020436/+subscriptions
More information about the Ubuntu-server-bugs
mailing list