pgsql: Fix some incorrect parsing of time with time zone strings

From: Michael Paquier <michael(at)paquier(dot)xyz>
To: pgsql-committers(at)lists(dot)postgresql(dot)org
Subject: pgsql: Fix some incorrect parsing of time with time zone strings
Date: 2019-08-07 09:19:16
Message-ID: E1hvI6G-0008Qg-Gq@gemulon.postgresql.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-committers

Fix some incorrect parsing of time with time zone strings

When parsing a timetz string with a dynamic timezone abbreviation or a
timezone not specified, it was possible to generate incorrect timestamps
based on a date which uses some non-initialized variables if the input
string did not specify fully a date to parse. This is already checked
when a full timezone spec is included in the input string, but the two
other cases mentioned above missed the same checks.

This gets fixed by generating an error as this input is invalid, or in
short when a date is not fully specified.

Valgrind was complaining about this problem.

Bug: #15910
Author: Alexander Lakhin
Discussion: https://postgr.es/m/15910-2eba5106b9aa0c61@postgresql.org
Backpatch-through: 9.4

Branch
------
REL9_4_STABLE

Details
-------
https://git.postgresql.org/pg/commitdiff/1f7943698182cb368974596251dce334171ea354

Modified Files
--------------
src/backend/utils/adt/datetime.c | 6 ++++++
src/test/regress/expected/timetz.out | 10 ++++++++++
src/test/regress/sql/timetz.sql | 5 +++++
3 files changed, 21 insertions(+)

Browse pgsql-committers by date

  From Date Subject
Next Message Heikki Linnakangas 2019-08-07 10:01:06 pgsql: Fix predicate-locking of HOT updated rows.
Previous Message Michael Paquier 2019-08-07 01:33:36 pgsql: Adjust tuple data lookup logic in multi-insert logical decoding