Re: New "single-call SRF" APIs are very confusingly named
Melanie Plageman <melanieplageman@gmail.com>
From: Melanie Plageman <melanieplageman@gmail.com>
To: Michael Paquier <michael@paquier.xyz>
Cc: Andres Freund <andres@anarazel.de>, pgsql-hackers@postgresql.org, Michael Paquier <michael.paquier@gmail.com>, Tom Lane <tgl@sss.pgh.pa.us>
Date: 2022-10-16T20:22:41Z
Lists: pgsql-hackers
On Fri, Oct 14, 2022 at 7:41 PM Michael Paquier <michael@paquier.xyz> wrote:
> On Fri, Oct 14, 2022 at 05:09:46PM -0400, Melanie Plageman wrote:
> > To summarize, I am in support of renaming SetSingleFuncCall() ->
> > InitMaterializedSRF() and SRF_SINGLE_USE_EXPECTED ->
> > MAT_SRF_USE_EXPECTED_TUPLE_DESC (or just DESC) as suggested elsewhere in
> > this thread. And I think we should eventually consider renaming the
> > multi* function names and consider if ExprSingleResult is a good name.
>
> As already mentioned, these have been around for years, so the impact
> would be bigger.
That makes sense.
> Attached is a patch for HEAD and REL_15_STABLE to
> switch this stuff with new names, with what's needed for ABI
> compatibility. My plan would be to keep the compatibility parts only
> in 15, and drop them from HEAD.
>
- * SetSingleFuncCall
+ * Compatibility function for v15.
+ */
+void
+SetSingleFuncCall(FunctionCallInfo fcinfo, bits32 flags)
+{
+ InitMaterializedSRF(fcinfo, flags);
+}
+
Any reason not to use a macro?
- Melanie
Commits
-
Remove compatibility declarations for InitMaterializedSRF()
- eddc128beac0 16.0 landed
-
Rename SetSingleFuncCall() to InitMaterializedSRF()
- f2f7e509e6a9 15.1 landed
- a19e5cee635d 16.0 landed
-
Create routine able to set single-call SRFs for Materialize mode
- 9e98583898c3 15.0 cited