[PATCH] CTDB protocol and client fixes
Volker Lendecke
Volker.Lendecke at SerNet.DE
Tue Nov 24 11:17:22 UTC 2015
On Tue, Nov 24, 2015 at 09:53:56PM +1100, Martin Schwenke wrote:
> On Tue, 24 Nov 2015 10:21:44 +0100, Volker Lendecke
> <Volker.Lendecke at SerNet.DE> wrote:
>
> > On Tue, Nov 24, 2015 at 07:53:43PM +1100, Martin Schwenke wrote:
> > > * Disallow nested event loops at compile time by not passing an
> > > event context around. Then you need to create temporary event
> > > contexts, do repeated set-up and tear-down and, depending on whose
> > > eyes you are looking with, you end up with more complexity.
> > >
> > > * Do the setup once, use generic packet processing under the hood and
> > > let tevent's run-time nesting detection catch the nesting if someone
> > > writes bad code.
> >
> > For generic file server code it will take Metze and Jeremy
> > to convince me that nested event loops are a requirement now
> > again. I know that my mental capabilities are just too
> > limited to debug them, sorry. Maybe I should have gotten my
> > PhD in algebraic topology before I start coding Samba.
>
> Either way, there can be no nested event loops. In the 2nd case, if
> tevent detects nesting it will cause an abort, so it is regarded as a
> programming error.
Serious comment this time: We need to make sure at compile
time that this can't happen. Runtime is not enough.
We have so many problems with proper "run-down" of complex
structures that only appear under certain load scenarios
that I am absolutely convinced that relying on runtime for
this kind of subtlety is just a no-go.
Volker
--
SerNet GmbH, Bahnhofsallee 1b, 37081 Göttingen
phone: +49-551-370000-0, fax: +49-551-370000-9
AG Göttingen, HRB 2816, GF: Dr. Johannes Loxen
http://www.sernet.de, mailto:kontakt at sernet.de
More information about the samba-technical
mailing list