On Mon, Oct 05, 2009 at 09:16:02AM -0500, Ryan O'Hara wrote: > On Mon, Oct 05, 2009 at 03:49:42PM +0200, Jerome Flesch wrote: > > Hello, > > Hi, Jerome. > > > I'm still stress-testing Corosync/Openais (trunk) on FreeBSD, and I've > > found out a tiny bug: > > > > On peer A, my test program calls: > > - saClmInitialize() > > - saClmClusterTrack(SA_TRACK_CURRENT | SA_TRACK_CHANGES) > > - saClmFinalize() > > - (does various tests with CPG ..) > > Next, when I shut down/kill Corosync on peer B, Corosync on peer A > > segfaults.
Node A segfaults, correct? See below. > Can you provide the exact test program? I'd like to see all the > details of each API call. Are you using a test program from the > openais tree or did you write your own. > > > When my test program calls saClmClusterTrackStop() before saClmFinalize, > > Corosync doesn't crash on peer B. From that and the stacktrace > > (joined below) OK. I re-read this email and I am a bit confused. Here you can it crashed on node B. Above you said node A segfaults. Can you clarify? > > I guess it tries to signal the change in the cluster to a program that is > > not > > connected anymore (-> missing disconnection notification to CLM ?). I also > > guess it means that Corosync will segfault if the client itself crashes. > > I'm guessing that a callback is sent to node A. If I understand, you > are enabling tracking on group A, correct? If CLM is anything like MSG > service (and I think it is with respect to how tracking works), > enabling tracking will generate callbacks on membership changes *to > the node that enabled tracking. Sorry. I was trying to write a reply while in a meeting and I forgot to finish this thought. If a callback is being sent to node A after it has already called finalize, I believe it should be a no-op. I think it would be better if tracking callbacks weren't sent at all if the node that enabled tracking calls Finalize, but how CLM handles these things is an implementation detail that I will look into. _______________________________________________ Openais mailing list [email protected] https://lists.linux-foundation.org/mailman/listinfo/openais
