Re: queryId constant squashing does not support prepared statements

From: Álvaro Herrera <alvherre(at)kurilemu(dot)de>
To: Sami Imseih <samimseih(at)gmail(dot)com>
Cc: Michael Paquier <michael(at)paquier(dot)xyz>, Dmitry Dolgov <9erthalion6(at)gmail(dot)com>, Junwang Zhao <zhjwpku(at)gmail(dot)com>, PostgreSQL Hackers <pgsql-hackers(at)lists(dot)postgresql(dot)org>
Subject: Re: queryId constant squashing does not support prepared statements
Date: 2025-06-09 10:44:59
Message-ID: 202506091044.hj6p54uzytq7@alvherre.pgsql
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Hello,

I've spent a bunch of time looking at this series and here's my take on
the second one. (The testing patch is unchanged from Sami's). The
third patch (for PARAM_EXTERNs) should be a mostly trivial rebase on top
of these two.

I realized that the whole in_expr production in gram.y is pointless, and
the whole private struct that was added was unnecessary. A much simpler
solution is to remove in_expr, expand its use in a_expr to the two
possibilities, and with that we can remove the need for a new struct.

I also added a recursive call in IsSquashableExpression to itself. The
check for stack depth can be done without throwing an error. I tested
this by adding stack bloat in that function. I also renamed it to
IsSquashableConstant. This changes one of the tests, because a cast
sequence like 42::int::bigint::int is considered squashable.

Other than that, the changes are cosmetic.

Barring objections, I'll push this soon, then look at rebasing 0003 on
top, which I expect to be an easy job.

--
Álvaro Herrera PostgreSQL Developer — https://www.EnterpriseDB.com/

Attachment Content-Type Size
v9-0001-Enhanced-query-jumbling-squashing-tests.patch text/x-diff 41.1 KB
v9-0002-Fix-Normalization-for-squashed-query-texts.patch text/x-diff 29.0 KB

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Ashutosh Bapat 2025-06-09 10:50:39 Re: Add enable_groupagg GUC parameter to control GroupAggregate usage
Previous Message Antonin Houska 2025-06-09 10:35:57 Re: why there is not VACUUM FULL CONCURRENTLY?