Re: BUG #18984: Empty prepared statement from psql \parse triggers assert in PortalRunMulti
Tom Lane <tgl@sss.pgh.pa.us>
From: Tom Lane <tgl@sss.pgh.pa.us>
To: Aleksander Alekseev <aleksander@tigerdata.com>
Cc: pgsql-bugs@lists.postgresql.org, exclusion@gmail.com
Date: 2025-07-14T22:05:50Z
Lists: pgsql-bugs
Attachments
- wip2-avoid-failure-with-empty-prepared-query.patch (text/x-diff) patch
I wrote: > The attached quick draft (needs attention to comments) results in > regression=# \parse s > regression=# execute s; > EXECUTE > which matches the behavior of pre-v12 servers. Another way that's perhaps a bit less magical is to make ExecuteQuery substitute the right thing, as attached. I'm not entirely sure whether this leaves any other code paths that can reach that Assert; but on the other hand, if there are any, CMDTAG_EXECUTE is probably wrong for them. BTW, the reason why EXPLAIN EXECUTE isn't at risk is that it's going to return CMDTAG_EXPLAIN. regards, tom lane
Commits
Same data as JSON:
GET /api/v1/messages/:b64id/commits
the thread's linked commits as JSON, with link sources.
API reference →
-
Minor cosmetic tweaks
- e76221bd95f0 19 (unreleased) landed
-
Simplify coding in ProcessQuery
- a27c40bfe8ab 19 (unreleased) landed
-
Remove assertion from PortalRunMulti
- e0d3f3cfb6f2 18.0 landed
- c2720ac6010a 15.14 landed
- b9a89682846f 14.19 landed
- b8926a5b4bb8 19 (unreleased) landed
- 4871c1e9cb6e 16.10 landed
- 43cd85962755 13.22 landed
- 0c466f5e0b34 17.6 landed
-
Represent command completion tags as structs
- 2f9661311b83 13.0 cited