[PATCH] TDB traverse lock changes for massive AD DC perf improvement

Ralph Böhme slow at samba.org
Fri Apr 7 07:48:03 UTC 2017


On Fri, Apr 07, 2017 at 08:33:44AM +0200, Volker Lendecke wrote:
> On Fri, Apr 07, 2017 at 08:23:59AM +0200, Ralph Böhme wrote:
> > On Fri, Apr 07, 2017 at 08:18:14AM +0200, Volker Lendecke via samba-technical wrote:
> > > On Fri, Apr 07, 2017 at 05:28:02PM +1200, Douglas Bagnall via samba-technical wrote:
> > > > I had a go at it. Attached.
> > > > 
> > > > cheers,
> > > > 
> > > > Douglas
> > > 
> > > Thanks, looks interesting! Attached find a version with a bit of
> > > logging beyond strace. Unsurprisingly works fine on debian jessie. Now
> > > lets find someone with a Solaris box :-)
> > 
> > Is this the expected output?
> > 
> > ---8<---
> > slow at login [login]:~ > ssh unstable10x 
> > Last login: Fri Apr  7 08:22:49 2017 from login.bo.opencs
> > Sun Microsystems Inc.   SunOS 5.10      Generic January 2005
> > slow at unstable10x [global]:~ > gcc -o fcntl_deadlock fcntl_deadlock.c 
> > slow at unstable10x [global]:~ > ./fcntl_deadlock 
> > usage: ./fcntl_deadlock <filename>
> > slow at unstable10x [global]:~ > ./fcntl_deadlock fcntl_deadlock
> > process 1 lock ofs=0 len=2: Resource temporarily unavailable
> 
> I guess you need a separate file, not the executable itself :-)

d'oh, sorry!

So:

---8<---
slow at unstable10x [global]:~ > touch foo
slow at unstable10x [global]:~ > ./fcntl_deadlock foo
process 1 took read lock on range 0,2
process 2 took read lock on range 0,1
process 1 starts upgrade on range 0,2
process 2 got read lock on 1,1
process 2 released read lock on 0,2
process 1 got read upgrade done
process 2 has got to the end
process 1 has got to the end
---8<---

Cheerio!
-slow



More information about the samba-technical mailing list