]> git.ipfire.org Git - thirdparty/postgresql.git/commit
oauth: Track total call count during a client flow
authorJacob Champion <jchampion@postgresql.org>
Fri, 8 Aug 2025 15:44:56 +0000 (08:44 -0700)
committerJacob Champion <jchampion@postgresql.org>
Fri, 8 Aug 2025 15:44:56 +0000 (08:44 -0700)
commit3e311664e4974ea0eef708d54256aacbb0239c95
tree0daf121fc121264131f6952233d8b674216eed2b
parent1749a12f0d2005ba23236089f0a32e6c6c1533f0
oauth: Track total call count during a client flow

Tracking down the bugs that led to the addition of comb_multiplexer()
and drain_timer_events() was difficult, because an inefficient flow is
not visibly different from one that is working properly. To help
maintainers notice when something has gone wrong, track the number of
calls into the flow as part of debug mode, and print the total when the
flow finishes.

A new test makes sure the total count is less than 100. (We expect
something on the order of 10.) This isn't foolproof, but it is able to
catch several regressions in the logic of the prior two commits, and
future work to add TLS support to the oauth_validator test server should
strengthen it as well.

Backpatch-through: 18
Discussion: https://postgr.es/m/CAOYmi+nDZxJHaWj9_jRSyf8uMToCADAmOfJEggsKW-kY7aUwHA@mail.gmail.com
src/interfaces/libpq-oauth/oauth-curl.c
src/test/modules/oauth_validator/t/001_server.pl