On 12:55 Wed 16 Oct     , Michele Tartara wrote:
> On Wed, Oct 16, 2013 at 11:17 AM, Apollon Oikonomopoulos
> <[email protected]> wrote:
> > Luxid was not handled in start_master() and stop_master() at all. As a 
> > result,
> > during a master-failover, luxid would be left running on the old master and
> > would not start on the new master, leaving the cluster without management 
> > until
> > luxid was manually started.
> >
> > Signed-off-by: Apollon Oikonomopoulos <[email protected]>
> > ---
> >  daemons/daemon-util.in |    2 ++
> >  1 file changed, 2 insertions(+)
> >
> > diff --git a/daemons/daemon-util.in b/daemons/daemon-util.in
> > index 44c39a9..f1e5941 100644
> > --- a/daemons/daemon-util.in
> > +++ b/daemons/daemon-util.in
> > @@ -292,12 +292,14 @@ check_and_start() {
> >  start_master() {
> >    start ganeti-masterd
> >    start ganeti-rapi
> > +  _confd_enabled && start ganeti-luxid
> >  }
> >
> >  # Stops the master role
> >  stop_master() {
> >    stop ganeti-rapi
> >    stop ganeti-masterd
> > +  _confd_enabled && stop ganeti-luxid
> 
> Hi Apollon,
>  thanks for this patch.
> 
> I think, though, that both this line and the corresponding on in
> start_master() should not be conditional on _confd_enabled: confd is
> optional, but luxid is not, as you noticed (without luxid, some things
> don't work). And they used to be part of the same executable, but
> since 2.8 they are two different daemons, running in different places
> (only master for luxid, all the master candidates for confd).

Hi Michele,

I included _confd_enabled because it is still used throught daemon-util.  
In particular, the DAEMONS array is populated based on this check. Also, 
the code in start() causes a failure if luxid or confd are referred to 
but _confd_enabled returns false.

IOW, I know the daemons are mandatory, but then the whole _confd_enabled 
check should be removed from daemon-util, which is a different patch.  
Until then, the check is consistent with the rest of the code :-).

Apollon

Reply via email to