Adjust timestamp regression tests to prevent two low-probability failure
authorTom Lane <tgl@sss.pgh.pa.us>
Sun, 25 May 2008 21:51:11 +0000 (21:51 +0000)
committerTom Lane <tgl@sss.pgh.pa.us>
Sun, 25 May 2008 21:51:11 +0000 (21:51 +0000)
commitb62159bfe508b57a0f49157167b16e49d7a5c580
tree13dfe3229bea08ca7aa6b835337a32b0d44a02cf
parentf52c35ae0eae46cc969af6b5e07180b4dacf507a
Adjust timestamp regression tests to prevent two low-probability failure
cases.  Recent buildfarm experience shows that it is sometimes possible
to execute several SQL commands in less time than the granularity of
Windows' not-very-high-resolution gettimeofday(), leading to a failure
because the tests expect the value of now() to change and it doesn't.
Also, it was recognized some time ago that the same area of the tests
could fail if local midnight passes between the insertion and the checking
of the values for 'yesterday', 'tomorrow', etc.  Clean all this up per
ideas from myself and Greg Stark.

There remains a window for failure if the transaction block is entered
exactly at local midnight (so that 'now' and 'today' have the same value),
but that seems low-probability enough to live with.

Since the point of this change is mostly to eliminate buildfarm noise,
back-patch to all versions we are still actively testing.
src/test/regress/expected/timestamp.out
src/test/regress/expected/timestamptz.out
src/test/regress/sql/timestamp.sql
src/test/regress/sql/timestamptz.sql