]> granicus.if.org Git - postgresql/commit
Disable transforms that replaced AT TIME ZONE with RelabelType.
authorTom Lane <tgl@sss.pgh.pa.us>
Wed, 18 Jan 2017 20:21:52 +0000 (15:21 -0500)
committerTom Lane <tgl@sss.pgh.pa.us>
Wed, 18 Jan 2017 20:22:07 +0000 (15:22 -0500)
commitc22ecc6562aac895f0f0529707d7bdb460fd2a49
tree322a0c455f701565e5df7f4ed5b9d6601d9bc98b
parente509e7f9e3c565043e1186f5a83122d71653d111
Disable transforms that replaced AT TIME ZONE with RelabelType.

These resulted in wrong answers if the relabeled argument could be matched
to an index column, as shown in bug #14504 from Evgeniy Kozlov.  We might
be able to resurrect these optimizations by adjusting the planner's
treatment of RelabelType, or by adjusting btree's rules for selecting
comparison functions, but either solution will take careful analysis
and does not sound like a fit candidate for backpatching.

I left the catalog infrastructure in place and just reduced the transform
functions to always-return-NULL.  This would be necessary anyway in the
back branches, and it doesn't seem important to be more invasive in HEAD.

Bug introduced by commit b8a18ad48.  Back-patch to 9.5 where that came in.

Report: https://postgr.es/m/20170118144828.1432.52823@wrigleys.postgresql.org
Discussion: https://postgr.es/m/18771.1484759439@sss.pgh.pa.us
src/backend/utils/adt/timestamp.c
src/test/regress/expected/timestamptz.out
src/test/regress/sql/timestamptz.sql