[RFC] Use mutexes by default in db_open()

Amitay Isaacs amitay at gmail.com
Wed May 24 01:59:46 UTC 2017


On Sun, May 7, 2017 at 8:40 PM, Ralph Böhme via samba-technical <
samba-technical at lists.samba.org> wrote:

> On Sun, May 07, 2017 at 11:52:59AM +0200, Volker Lendecke wrote:
> > On Sun, May 07, 2017 at 08:23:40AM +0200, Ralph Böhme wrote:
> > > On Sat, May 06, 2017 at 02:15:27PM -0700, Jeremy Allison wrote:
> > > > On Mon, Apr 24, 2017 at 04:16:45PM +0200, Ralph Böhme via
> samba-technical wrote:
> > > > > Hi!
> > > > >
> > > > > Is there any reason not to use mutexes by default? Maybe for 4.7?
> > > >
> > > > Ping. Can you propose this as an official patch ?
> > >
> > > sure, but I'd like Volker, metze or Michael to ack this first.
> > >
> > > So... anyone?
> >
> > I don't see why we should not do this.
>
> ok, thanks for confirming!
>
> I'll add a whatsnew section and will resubmit the patchset once done.
>
> -slow
>
>
Will this also happen for clustered samba case?  In that case, CTDB should
also default to using mutexes.

Currently CTDB will attach with mutexes option only if
  - CTDB tunable TDBMutexEnabled is set to 1, and
  - Samba passes TDB_MUTEX_LOCKING flag to DB_ATTACH control

I would like to get rid of the need for clients to specify tdb_flags to
DB_ATTACH control.  As the tdb_flags are really determined by the database
model which is dictated by the attach control (DB_ATTACH or
DB_ATTACH_PERSISTENT).  I already have a set of patches that clean up tdb
flags calculation in CTDB and do not rely on tdb_flags being sent to attach
controls.

So when we change Samba to use mutexes by default, I prefer CTDB to use
mutexes by default also. This will mean changing the default value of the
tunable TDBMutexEnabled to 1.  Possibly deprecate the tunable.

Amitay.


More information about the samba-technical mailing list