[Openais] [PATCH] Adjustments to quorum service

Steven Dake sdake at redhat.com
Fri Nov 7 14:05:18 PST 2008


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.

Regards
-steve


On Fri, 2008-11-07 at 13:24 +0000, Christine Caulfield wrote:
> Christine Caulfield wrote:
> > In the light of comments I've made some changes to the quorum service.
> > 
> > 1. It now loads it's provider module. using the key
> >  quorum.provider: name
> > 2. Removed the internal API and added it to corosync_api_v1
> > 3. It also loads its 'alter-ego' module that provides the library
> > service so it doesn't need to be added to corosync.conf - simply
> > specifying 'vsftype: quorum' will now work.
> > 
> > Also attached, though not as part of the patch, is an example simple
> > quorum service provider that changes quorum based on the quorum.quorate
> > objdb variable. This can be toggled with corosync-objctl to test the
> > features.
> 
> Hi Steve, I know you've been busy, but I held off submitting this until
> I'd had feedback from you. Do you have any comments ?
> 
> Here's an updated patch but it's functionally identical to the previous one.
> 
> _______________________________________________
> Openais mailing list
> Openais at lists.linux-foundation.org
> https://lists.linux-foundation.org/mailman/listinfo/openais



More information about the Openais mailing list