Re: Add support for AT LOCAL

Thomas Munro <thomas.munro@gmail.com>

From: Thomas Munro <thomas.munro@gmail.com>
To: Michael Paquier <michael@paquier.xyz>
Cc: Vik Fearing <vik@postgresfriends.org>, cary huang <hcary328@gmail.com>, pgsql-hackers@lists.postgresql.org
Date: 2023-10-15T21:16:47Z
Lists: pgsql-hackers
One of the AIX animals gave a strange result here:

https://buildfarm.postgresql.org/cgi-bin/show_log.pl?nm=hornet&dt=2023-10-15%2011%3A40%3A01

If you ignore the diffs due to change in column width, the interesting
change seems to be:

-  23:59:00-07    | 06:59:00+00    | 06:59:00+00    | 06:59:00+00
-  23:59:59.99-07 | 06:59:59.99+00 | 06:59:59.99+00 | 06:59:59.99+00
+  23:59:00-07    | 4294966103:4294967295:00+00 |
4294966103:4294967295:00+00 | 4294966103:4294967295:00+00
+  23:59:59.99-07 | 4294966103:00:00.01+00      |
4294966103:00:00.01+00      | 4294966103:00:00.01+00

But the other AIX animal 'sungazer' was OK with it.  They're both on
the same AIX7.1 host IIRC, both 64 bit builds, but the former is using
xlc and the latter gcc.  I don't immediately see what would cause that
underflow on that old compiler but not elsewhere.  I have a shell
there (cfarm111) if someone has an idea...



Commits

  1. Dodge a compiler bug affecting timetz_zone/timetz_izone.

  2. Back-patch test cases for timetz_zone/timetz_izone.

  3. Add regression test coverage for timetz_izone().

  4. Add support for AT LOCAL

  5. doc: Mention timezone(zone, time) in section for AT TIME ZONE

  6. Use HASH_BLOBS for xidhash.