aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorTom Lane <tgl@sss.pgh.pa.us>2001-02-24 22:42:45 +0000
committerTom Lane <tgl@sss.pgh.pa.us>2001-02-24 22:42:45 +0000
commit496ea7a87633a64ddab65b375e0be56fa60873cc (patch)
tree13d2f5498757d6a2f65d27a7caf4553e066c92d8 /src
parent3460181c3c571d690576c1d7621abfbd78861112 (diff)
downloadpostgresql-496ea7a87633a64ddab65b375e0be56fa60873cc.tar.gz
postgresql-496ea7a87633a64ddab65b375e0be56fa60873cc.zip
At least on HPUX, select with delay.tv_sec = 0 and delay.tv_usec = 1000000
does not lead to a one-second delay, but to an immediate EINVAL failure. This causes CHECKPOINT to crash with s_lock_stuck much too quickly :-(. Fix by breaking down the requested wait div/mod 1e6.
Diffstat (limited to 'src')
-rw-r--r--src/backend/storage/buffer/s_lock.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/src/backend/storage/buffer/s_lock.c b/src/backend/storage/buffer/s_lock.c
index ef70f45d887..6bb76c2cda8 100644
--- a/src/backend/storage/buffer/s_lock.c
+++ b/src/backend/storage/buffer/s_lock.c
@@ -8,7 +8,7 @@
*
*
* IDENTIFICATION
- * $Header: /cvsroot/pgsql/src/backend/storage/buffer/Attic/s_lock.c,v 1.33 2001/02/18 04:39:42 tgl Exp $
+ * $Header: /cvsroot/pgsql/src/backend/storage/buffer/Attic/s_lock.c,v 1.34 2001/02/24 22:42:45 tgl Exp $
*
*-------------------------------------------------------------------------
*/
@@ -91,8 +91,8 @@ s_lock_sleep(unsigned spins, int timeout, int microsec,
if (microsec > 0)
{
- delay.tv_sec = 0;
- delay.tv_usec = microsec;
+ delay.tv_sec = microsec / 1000000;
+ delay.tv_usec = microsec % 1000000;
}
else
{