postgresql/src/backend
Tom Lane 3152bf722f Fix bugs with parsing signed hh:mm and hh:mm:ss fields in interval input.
DecodeInterval() failed to honor the "range" parameter (the special SQL
syntax for indicating which fields appear in the literal string) if the
time was signed.  This seems inappropriate, so make it work like the
not-signed case.  The inconsistency was introduced in my commit
f867339c01, which as noted in its log message
was only really focused on making SQL-compliant literals work per spec.
Including a sign here is not per spec, but if we're going to allow it
then it's reasonable to expect it to work like the not-signed case.

Also, remove bogus setting of tmask, which caused subsequent processing to
think that what had been given was a timezone and not an hh:mm(:ss) field,
thus confusing checks for redundant fields.  This seems to be an aboriginal
mistake in Lockhart's commit 2cf1642461.

Add regression test cases to illustrate the changed behaviors.

Back-patch as far as 8.4, where support for spec-compliant interval
literals was added.

Range problem reported and diagnosed by Amit Kapila, tmask problem by me.
2012-08-03 17:40:43 -04:00
..
access Improve underdocumented btree_xlog_delete_get_latestRemovedXid() code. 2012-08-03 15:41:18 -04:00
bootstrap Fix management of pendingOpsTable in auxiliary processes. 2012-07-18 15:28:10 -04:00
catalog Update information schema to SQL:2011 2012-07-23 22:32:56 +03:00
commands Fix longstanding crash-safety bug with newly-created-or-reset sequences. 2012-07-25 17:42:23 -04:00
executor Fix whole-row Var evaluation to cope with resjunk columns (again). 2012-07-20 13:10:58 -04:00
foreign Add GetForeignColumnOptions() to foreign.c, and add some documentation. 2012-03-07 18:20:58 -05:00
lib Update copyright notices for year 2012. 2012-01-01 18:01:58 -05:00
libpq Remove unreachable code 2012-07-16 22:15:03 +03:00
main Unify calling conventions for postgres/postmaster sub-main functions 2012-06-25 21:30:12 +03:00
nodes Fix WITH attached to a nested set operation (UNION/INTERSECT/EXCEPT). 2012-07-31 17:56:21 -04:00
optimizer Account for SRFs in targetlists in planner rowcount estimates. 2012-07-21 17:45:07 -04:00
parser Fix WITH attached to a nested set operation (UNION/INTERSECT/EXCEPT). 2012-07-31 17:56:21 -04:00
po Translation updates 2011-08-17 14:07:46 +03:00
port Remove misleading hints about reducing the System V request size. 2012-07-03 10:07:47 -04:00
postmaster Fix syslogger so that log_truncate_on_rotation works in the first rotation. 2012-07-31 14:36:54 -04:00
regex Prevent corner-case core dump in rfree(). 2012-07-15 13:27:54 -04:00
replication Fix management of pendingOpsTable in auxiliary processes. 2012-07-18 15:28:10 -04:00
rewrite Prevent CREATE TABLE LIKE/INHERITS from (mis) copying whole-row Vars. 2012-06-30 16:45:14 -04:00
snowball Update copyright notices for year 2012. 2012-01-01 18:01:58 -05:00
storage Only allow autovacuum to be auto-canceled by a directly blocked process. 2012-07-26 14:29:22 -04:00
tcop Make new event trigger facility actually do something. 2012-07-20 11:39:01 -04:00
tsearch Make new event trigger facility actually do something. 2012-07-20 11:39:01 -04:00
utils Fix bugs with parsing signed hh:mm and hh:mm:ss fields in interval input. 2012-08-03 17:40:43 -04:00
.gitignore Add gitignore for mingw/cygwin build outputs 2011-06-09 18:11:47 +02:00
common.mk Call check_keywords.pl in maintainer-check 2012-02-27 13:53:12 +02:00
Makefile Fix incorrect make maintainer-clean rule. 2012-04-07 18:16:50 -04:00
nls.mk Sort file list when creating gettext-files 2011-12-27 20:20:56 +02:00