A Modest Proposal for Preventing the Event loops of Samba DCs From Being a Burthen to Their Implementers or Users, and for Making Them Beneficial to the Publick

Stefan (metze) Metzmacher metze at samba.org
Thu Apr 17 06:49:46 MDT 2014


Hi Simo,

>> It does make ldb less 'async' as far as the caller is concerned, but we
>> simply don't use ldb in an async way in Samba.  (It is very unfortunate
>> we carry the great complexity and risk of an async ldb without any
>> significant use). 
>>
>> I have this under a private autobuild, and I would appreciate your
>> thoughts. 
> 
> I do not really see the point of a separate event context honestly.
> All you need is clearly some locking, so that a new toplevel ldb
> operation can only be started from within the transaction, while any
> other is received but not scheduled until a previous transaction is
> finished.
> Blocking for long periods on heavy I/O in an async server will provide
> terrible outcomes.

We're only doing local tdb operations during a transaction, so I think
it's really good to use a separate event context and do everything isolated
without any side effects.

All locking hacks will result in deadlocks.

metze


More information about the samba-technical mailing list