RE: Assuming that TAS() will succeed the first time is verboten - Mailing list pgsql-hackers

From Mikheev, Vadim
Subject RE: Assuming that TAS() will succeed the first time is verboten
Date
Msg-id 8F4C99C66D04D4118F580090272A7A234D321F@sectorbase1.sectorbase.com
Whole thread Raw
Responses Re: Assuming that TAS() will succeed the first time is verboten
List pgsql-hackers
> > The code is based on some odd assumptions.  A select() with 0 delay 
> > returns immediately unless there is an interrupt during its 
> > (very short!) time in kernel space.
> 
> Yeah, I've wondered whether the 0 entries in s_spincycle[] 
> shouldn't be 1.  The code author evidently expected select()
> to at least yield the processor even with delay 0, but the select()
> man pages I have handy say that it will "return immediately" when delay
> is 0.

I've run some tests with 5 instead of 0 and afair performance was worse,
so we should carefully test !0 values. Actually, one slocks are held
longer than anothers - probably we should use different delays...

Vadim


pgsql-hackers by date:

Previous
From: Michael J Schout
Date:
Subject: Re: Upper limit on number of buffers?
Next
From: Bruce Momjian
Date:
Subject: Re: About PQsetClientEncoding(),"SET NAMES",and "SET CLIENT_ENCODING"