[DRBD-user] [PATCH] dopd should notify when peer is dead (was "Refusing to be Primary while peer is not outdated" when peer is dead?)

Lars Ellenberg lars.ellenberg at linbit.com
Thu Feb 28 15:56:03 CET 2008

Note: "permalinks" may not be as permanent as we would like,
direct links of old sources may well be a few messages off.


On Wed, Feb 27, 2008 at 10:22:01PM +0100, Wolfram Schlich wrote:
> * Lars Ellenberg <lars.ellenberg at linbit.com> [2008-02-27 17:52]:
> > On Wed, Feb 27, 2008 at 05:00:48PM +0100, Brice Figureau wrote:
> > > I now have a better understanding of the issue I posted in drbd-user
> > > yesterday, which seems to be a bug in dopd/drbd-peer-updater, hence I'm
> > > posted this mail in the dev list.
> > > 
> > > Note that dopd works fine in the other failover scenario (the other node
> > > is still alive and can be contacted by other means).
> > 
> > thanks, our Rasto (who wrote the dopd and related things) is reviewing
> > this (and was working on it, anyways). so expect it to be commited to
> > heartbeat development this way or an other soonish.
> > [...]
> > thanks for that, they may have been pretty annoyed for us
> > committing semi-broken software to their project (again). :->
> 
> Hmm. I think I stumbled over exactly this problem when I was
> experimenting with the drbd OCF RA and did some failover tests.
> 
> This is a really nasty bug and renders the cluster kinda useless,
> because the failover node won't run the resources (that depend on
> drbd) when the active node dies. Is this assumption correct?
> 
> If yes, I should stop using that broken dopd ASAP... :>

if you use heartbeat 2.1.3, and it dopd does causes these "handler
broken, returned 20" kernel messages, then yes, you happen to use the
broken dopd, and should stop doing so until we release a (hot?)fix.

heartbeat 2.1.2 dopd is ok in this regard (but has other shortcomings).

one possible hotfix would be:
perl -i -pe 's{drbd-peer-outdater}{$&.sh}' drbd.conf
cat > /usr/lib/heartbeat/drbd-peer-outdater.sh <<___
#!/bin/sh
/usr/lib/heartbeat/drbd-peer-outdater "$@"
ex=$?
if [ $ex = 20 ]; then
	ex=5
fi
exit $ex
___


this is not strictly correct.
but it makes it work as good as it gets right now.

-- 
: Lars Ellenberg                           http://www.linbit.com :
: DRBD/HA support and consulting             sales at linbit.com :
: LINBIT Information Technologies GmbH      Tel +43-1-8178292-0  :
: Vivenotgasse 48, A-1120 Vienna/Europe     Fax +43-1-8178292-82 :
__
please use the "List-Reply" function of your email client.



More information about the drbd-user mailing list