Re: oauth integer overflow

Jacob Champion <jacob.champion@enterprisedb.com>

From: Jacob Champion <jacob.champion@enterprisedb.com>
To: Daniel Gustafsson <daniel@yesql.se>
Cc: Andres Freund <andres@anarazel.de>, PostgreSQL Hackers <pgsql-hackers@postgresql.org>
Date: 2026-06-05T19:06:27Z
Lists: pgsql-hackers

Attachments

On Thu, Apr 23, 2026 at 11:31 AM Jacob Champion
<jacob.champion@enterprisedb.com> wrote:
> Attached. The static_assert for the millisecond calculation is the
> only part I don't really like, but doing an overflow check on a
> calculation that can't overflow int64 is even more verbose/wasteful.

I was preparing to commit this for beta1 last week, and I realized
that I've changed my tune. With all the recent backports of overflow
checks, I think I need to be reaching for them by default, especially
in a non-performance-critical path.

v2 rewrites that part with a checked multiplication, which removes any
need for a static_assert complication.

On Tue, Apr 28, 2026 at 4:18 AM Daniel Gustafsson <daniel@yesql.se> wrote:
> When teading "disabled timer" I interpret that as a timer which is 0 and has no
> interval (which might be due to not being a native speaker), but what it
> actually describes is an interval which (in practice) never ends.  Perhaps it
> could be phrased more like "for most people is going to be equivalent to a
> never ending interval".

This has been completely rewritten now; see what you think.

Thanks!
--Jacob