FCNTL on Solaris

Jeremy Allison jra at samba.org
Mon Apr 22 07:17:18 GMT 2002


On Mon, Apr 22, 2002 at 10:07:18PM +1000, David Schwarz wrote:
> >On Thu, Apr 18, 2002 at 11:40:13AM +1000, Wade Turland wrote:
> >
> >>> Tridge found the (already noted) related bug on our system and conceded it
> >>> was a design flaw. Apparently each new smbd process that starts, does a
> >>> quick traversal of the tdb databases to clean out any stale entries, and on
> >>> Solaris, these are taking too long. Now when the client times out, it makes
> >>> another attempt, but the first attempt is still running so it bogs the
> >>> system down quickly. This was first found in the UK in 2.2.2 with
> >>> connections.tdb.
> >>> 
> >>> It sounds like Mark has our problem, with byte-range locking (brlock.tdb).
> >>> If you try the latest CVS it should be fixed.
> >>> 
> >>> Andrew said he would look at all the others too and fix them. Andy, maybe
> >>> you can help with printing.tdb otherwise keep checking the CVS.
> >
> >
> >Ok - discussed this with Andrew last night. It seems that this is only
> >a problem on Solaris. Solaris seems to have *serious* issues with fcntl
> >locks with multiple processes contending for locks. No other system we
> >run on seems to have this problem (they have their own problems :-).
> >
> >Dave CB - can you investigate this within Sun please. This is a *critical*
> >part of Samba, we may have to look into a solaris-specific workaround and
> >this would be bad.
> >
> >Jeremy.
> >
> 
> I just found this, it may be a solution,
> its from the page
> http://www.geocrawler.com/archives/3/417/2001/5/0/5866251/

Hmmm. That means moving to semaphores on Solaris. The problem
with sysV semaphores is they are persistent and don't get
removed when the process dies (unless you use SEM_UNDO on
every call.... nasty).

Jeremy.




More information about the samba-technical mailing list