pgsql: Track spinlock delay in microsecond granularity. - Mailing list pgsql-committers

From Heikki Linnakangas
Subject pgsql: Track spinlock delay in microsecond granularity.
Date
Msg-id E1UsVG9-0004s8-Vm@gemulon.postgresql.org
Whole thread Raw
List pgsql-committers
Track spinlock delay in microsecond granularity.

On many platforms the OS will round the sleep time to millisecond
resolution, but there is no reason for us to pre-emptively round the
argument to pg_usleep.

When the delay was measured in milliseconds and started from 1 ms, it
sometimes took many attempts until the logic that increases the delay by
multiplying with a random value between 1 and 2 actually managed to bump it
from 1 ms to 2 ms. That lead to a sequence of 1 ms waits until the delay
started to increase. This wasn't really a problem but it looked odd if you
observed the waits. There is no measurable difference in performance, but
it's more readable this way.

Jeff Janes

Branch
------
master

Details
-------
http://git.postgresql.org/pg/commitdiff/9e0bc7c1e84d7fffb93130f2b7d079a0853329ed

Modified Files
--------------
src/backend/storage/lmgr/s_lock.c |   17 ++++++-----------
1 file changed, 6 insertions(+), 11 deletions(-)


pgsql-committers by date:

Previous
From: pgsql@postgresql.org
Date:
Subject: pgsql: Tag refs/tags/REL9_3_BETA2 was created
Next
From: Robert Haas
Date:
Subject: pgsql: Define Trap and TrapMacro even in non-cassert builds.