[Linux-cluster] CMAN cluster event notification broken?
Patrick Caulfield
pcaulfie at redhat.com
Thu Aug 31 08:08:57 UTC 2006
Mikhail A Zelikov wrote:
> I have a 2-node cluster, and I wrote a simple program that registers for
> cluster events using:
> cman_start_notification and cman_start_recv_data. If a node dies (manual
> reboot/shutdown) then I receive CMAN_REASON_PORTCLOSED event and then NO
> CMAN_REASON_STATECHANGE (as I woudl expect). I receive
> CMAN_REASON_STATECHANGE once the node is booted again. If I do not
> register for data then I do not receive CMAN_REASON_PORTCLOSED as
> expected.
> Is the notification mechanism broken?
It used to be broken for the last node in the cluster. It should be fixed in U3.
> Mike
> P.S.
> It also looks like that the conditions in while loop in cman_dispatch
> might be incorrect if the intention was to continue forever as long as
> there no errors.
>
> while ( flags & CMAN_DISPATCH_ALL &&
> (len < 0 && errno == EAGAIN) );
>
> Should it be:
>
> while ( flags & CMAN_DISPATCH_ALL &&
> !(len < 0 && errno == EAGAIN) );
>
Err, yes you're right.
Thank you.
--
patrick
More information about the Linux-cluster
mailing list