Re: Using Expanded Objects other than Arrays from plpgsql
Tom Lane <tgl@sss.pgh.pa.us>
From: Tom Lane <tgl@sss.pgh.pa.us>
To: Andrey Borodin <x4mmm@yandex-team.ru>
Cc: Pavel Borisov <pashkin.elfe@gmail.com>,
Michel Pelletier <pelletier.michel@gmail.com>,
Pavel Stehule <pavel.stehule@gmail.com>,
pgsql-hackers@lists.postgresql.org
Date: 2025-02-03T18:48:56Z
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 →
-
Allow extension functions to participate in in-place updates.
- c366d2bdba7c 18.0 landed
-
Implement new optimization rule for updates of expanded variables.
- 6c7251db0ce1 18.0 landed
-
Detect whether plpgsql assignment targets are "local" variables.
- 36fb9ef269a0 18.0 landed
-
Preliminary refactoring of plpgsql expression construction.
- a654af21ae52 18.0 landed
-
Refactor pl_funcs.c to provide a usage-independent tree walker.
- 6a7283dd2f1c 18.0 landed
-
Generalize plpgsql's heuristic for importing expanded objects.
- 534d0ea6c2b9 18.0 landed
I wrote: > Admittedly this is all moot unless some other extension starts > using EEOP_PARAM_CALLBACK, and I didn't find any evidence of that > using Debian Code Search. But I don't want to think of > EEOP_PARAM_CALLBACK as being specifically tied to PL/pgSQL. However ... given that I failed to find any outside users today, I'm warming to the idea of "void *paramarg[2]". That does look less random than two separate fields. There are probably not any extensions that would need to change their code, and even if there are, we impose bigger API breaks than this one in every major release. So I'm willing to do that if it satisfies your concern. regards, tom lane