]> granicus.if.org Git - postgresql/commit
Assert that WaitLatch's timeout is not more than INT_MAX milliseconds.
authorTom Lane <tgl@sss.pgh.pa.us>
Sun, 18 Nov 2012 20:39:51 +0000 (15:39 -0500)
committerTom Lane <tgl@sss.pgh.pa.us>
Sun, 18 Nov 2012 20:39:51 +0000 (15:39 -0500)
commit14ddff44c22cb358775d5aad6953f0ce0fdb64cf
treefa336b01ed9170ddbeff676151a372e6b9cb6280
parent6b6633ad6cf663c81b5e0bc0c40709bf9d8d0299
Assert that WaitLatch's timeout is not more than INT_MAX milliseconds.

The behavior with larger values is unspecified by the Single Unix Spec.
It appears that BSD-derived kernels report EINVAL, although Linux does not.
If waiting for longer intervals is desired, the calling code has to do
something to limit the delay; we can't portably fix it here since "long"
may not be any wider than "int" in the first place.

Part of response to bug #7670, though this change doesn't fix that
(in fact, it converts the problem from an ERROR into an Assert failure).
No back-patch since it's just an assertion addition.
src/backend/port/unix_latch.c
src/backend/port/win32_latch.c