Обсуждение: pgsql: Use WaitLatch, not pg_usleep, for delaying in pg_sleep().

Поиск
Список
Период
Сортировка

pgsql: Use WaitLatch, not pg_usleep, for delaying in pg_sleep().

От
Tom Lane
Дата:
Use WaitLatch, not pg_usleep, for delaying in pg_sleep().

This avoids platform-dependent behavior wherein pg_sleep() might fail to be
interrupted by statement timeout, query cancel, SIGTERM, etc.  Also, since
there's no reason to wake up once a second any more, we can reduce the
power consumption of a sleeping backend a tad.

Back-patch to 9.3, since use of SA_RESTART for SIGALRM makes this a bigger
issue than it used to be.

Branch
------
REL9_3_STABLE

Details
-------
http://git.postgresql.org/pg/commitdiff/c38b64c2959662298f23ad5d86246009e7853b75

Modified Files
--------------
src/backend/utils/adt/misc.c |   27 +++++++++++++++++----------
1 file changed, 17 insertions(+), 10 deletions(-)