Re: Fix overflow hazard in timestamp_pl_interval

Tom Lane <tgl@sss.pgh.pa.us>

From: Tom Lane <tgl@sss.pgh.pa.us>
To: Joseph Koshakow <koshy44@gmail.com>
Cc: PostgreSQL Hackers <pgsql-hackers@lists.postgresql.org>
Date: 2024-04-28T17:45:16Z
Lists: pgsql-hackers
Joseph Koshakow <koshy44@gmail.com> writes:
>> Attached is a patch that fixes some overflow/underflow hazards in
>> `timestamp_pl_interval`. The microseconds overflow could produce
>> incorrect result. The month overflow would generally still result in an
>> error from the timestamp month field being too low, but it's still
>> better to catch it early.

Yeah.  I had earlier concluded that we couldn't overflow here without
triggering the range checks in tm2timestamp, but clearly that was
too optimistic.

>> I couldn't find any existing timestamp plus interval tests so I stuck
>> a new tests in `timestamp.sql`. If there's a better place, then
>> please let me know.

They're in horology.sql, so I moved the tests there and pushed it.
Thanks for the report!

			regards, tom lane



Commits

  1. Detect more overflows in timestamp[tz]_pl_interval.