Re: Refactoring: Use soft error reporting for *_opt_overflow functions of date/timestamp

Michael Paquier <michael@paquier.xyz>

From: Michael Paquier <michael@paquier.xyz>
To: Amul Sul <sulamul@gmail.com>
Cc: Amit Langote <amitlangote09@gmail.com>, PostgreSQL Hackers <pgsql-hackers@lists.postgresql.org>
Date: 2025-12-01T07:01:52Z
Lists: pgsql-hackers

Commits

Same data as JSON: GET /api/v1/messages/:b64id/commits the thread's linked commits as JSON, with link sources. API reference →
  1. Update some timestamp[tz] functions to use soft-error reporting

  2. Switch some date/timestamp functions to use the soft error reporting

  3. Switch some numeric-related functions to use soft error reporting

Attachments

On Fri, Nov 28, 2025 at 09:46:43AM +0530, Amul Sul wrote:
> I have attached patch 0002 that renames it. I also updated patch 0001
> to accommodate Amit's comment suggestions.

Thanks, applied this one after more tweaks.  Regarding 0002, just
doing a renaming makes me a bit uncomfortable after a second look.
Another way to look at the problem while being consistent would be to
convert date2timestamp_no_overflow() to use soft error reports,
requiring its caller in selfuncs.c to use an error context node.  I
cannot get really excited at the end just for the sake of the planner
stats.

There were two more functions that btree_gin.c is pointing at that
could to the switch: timestamp->timestamptz and its opposite.  This
also shaves some code, which is nice.  Please see the attached.
--
Michael