Re: [PATCH] OAuth: fix performance bug with stuck multiplexer events
Jacob Champion <jacob.champion@enterprisedb.com>
From: Jacob Champion <jacob.champion@enterprisedb.com>
To: Dagfinn Ilmari Mannsåker <ilmari@ilmari.org>
Cc: Thomas Munro <thomas.munro@gmail.com>, PostgreSQL Hackers <pgsql-hackers@lists.postgresql.org>,
Daniel Gustafsson <daniel@yesql.se>, Peter Eisentraut <peter@eisentraut.org>
Date: 2025-08-08T21:31:49Z
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 →
-
oauth: Always link with -lm for floor()
- e76738e59790 18.0 landed
- 52ecd05aeef8 19 (unreleased) landed
-
oauth: Add unit tests for multiplexer handling
- 4e1e417330d4 19 (unreleased) landed
- 1443b6c0eaa2 19 (unreleased) landed
-
oauth: Ensure unused socket registrations are removed
- 16b0c48583a5 18.0 landed
- 3d9c03429a82 19 (unreleased) landed
-
oauth: Remove expired timers from the multiplexer
- e507e08acf63 18.0 landed
- 1749a12f0d20 19 (unreleased) landed
-
oauth: Remove stale events from the kqueue multiplexer
- ff181d1f876f 18.0 landed
- ff5b0824b3b0 19 (unreleased) landed
-
oauth: Track total call count during a client flow
- 41aac1483a6c 18.0 landed
- 3e311664e497 19 (unreleased) landed
On Fri, Aug 8, 2025 at 2:16 PM Dagfinn Ilmari Mannsåker <ilmari@ilmari.org> wrote: > That's because encode_json has a prototype[1], which changes how the > argument list is parsed: no longer just as a flat list of values like a > normal function. Specifically, it has a prototype of '$', which means > it only takes one argument, which is evaluated in scalar context. So > the first example is a syntax error, but in the second example the > parenthesised expression is the single argument. Becuse it's in scalar > context, the comma is actually the scalar comma operator, not the list > element separator, so the return value is the right-hand side of the > comma (just like in C), not the length of the would-be list. ron-swanson-throws-away-computer.gif Well, thank you for the explanation. I'll make that change. --Jacob