[Openais] [PATCH] Adjustments to quorum service

Christine Caulfield ccaulfie at redhat.com
Tue Nov 11 09:17:53 PST 2008


Steven Dake wrote:
> Chrissie,
> 
> Ok so here are comments:
> 
> logsys.c has merged changes for fixing the wthread code.  I will merge
> those separately.
> 
> There are many cases of the 2nd line not using 1 tab but instead using
> several tabs and spaces.  Example: quorum.h:39
> 
> I'd like to see the vsf quorum layer more separated from the sync layer
> (work for later).  For example, I'd like sync to register a callback
> with the coroapi when quorum is obtained and act accordingly.  I suppose
> this can be part of the 0.94 version's work of reworking the
> synchronization system.
> 
> I'd like to see a callback that we can register in the coroapi for
> quorum changes rather then only polling a function.  I think both are
> probably necessary.
> 
> The way I had always seen this being implemented is an exec/quorum.c
> file which is responsible for loading the virtual synchrony quorum
> filters based upon config options.  A quorum_init would be called from
> main.c instead of sync in this case.  The VSF filters would then work
> based upon majority voting, the ykd algo, qdisk, or whatever else.  The
> sync system would register a callback with the coroapi to know when it
> could safely synchronize a cluster.  The library api's service engine
> would register a callback in the same way to notify users or to provide
> polled information.
> 
> The patch looks suitable to merge minus the whitespace and logsys
> changes.  I would like us to keep cooking the implementation if you are
> not opposed though.


OK this should address those issues, apart from possibly the whitespace
ones!

quorum is now an optional loadable module (though I've put it into the
defaults in services.c) and can load another module to do the quorum
work (eg YKD which I've made more compliant too). All the quorum code
has been removed from sync.c. quorum.c is simple a shim later for the
coroapi, the main module is in vsf_quorum.c

There are coroapi calls to query quorate status and also to get
notifications when it changes.

I've included the testquorum.lcrso module in this patch because I think
it's really helpful for testing, feel free to veto it though I'm not
THAT attached to it!

Chrissie
-------------- next part --------------
A non-text attachment was scrubbed...
Name: quorum-udpate3.patch
Type: text/x-patch
Size: 40919 bytes
Desc: not available
Url : http://lists.linux-foundation.org/pipermail/openais/attachments/20081111/449ba20d/attachment-0001.bin 


More information about the Openais mailing list