From: | Julien Rouhaud <rjuju123(at)gmail(dot)com> |
---|---|
To: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
Cc: | Sami Imseih <samimseih(at)gmail(dot)com>, Michael Paquier <michael(at)paquier(dot)xyz>, Christoph Berg <myon(at)debian(dot)org>, PostgreSQL Hackers <pgsql-hackers(at)lists(dot)postgresql(dot)org>, ma lz <ma100(at)hotmail(dot)com> |
Subject: | Re: query_id: jumble names of temp tables for better pg_stat_statement UX |
Date: | 2025-03-25 05:09:07 |
Message-ID: | Z-I6c1Bbuo3uJWvw@jrouhaud |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-general pgsql-hackers |
Hi,
On Tue, Mar 25, 2025 at 12:32:05AM -0400, Tom Lane wrote:
>
> I'm not opining one way or the other on whether squashing an IN list
> is desirable. My point is that a GUC is a poor way to make --- or
> really, avoid making --- such decisions. The reasons we took away
> from previous experiments with semantics-determing GUCs were:
>
> 1. The scope of effect of a GUC is seldom what you want for such
> things. There are going to be some queries in which you want behavior
> A, and some in which you want behavior B, and in the worst case you
> want different behaviors in different parts of the same query. It's
> really painful to make that happen.
>
> 2. Tools that are not entitled to set the value of the GUC are forced
> to be prepared to cope with any setting. That can be anywhere from
> painful to impossible.
Didn't that ship already sailed in pg14 when we allowed generating custom
query_id?
Now:
> For the specific context of controlling how query jumbling happens,
> there's still another problem: the actual statement-merging behavior of
> pg_stat_statements will depend on the totality of settings of the GUC
> across the entire system. It's not very clear to me what will happen
> if different sessions use different settings, much less if people
> change the setting intra-session; but I bet a lot of people will find
> it surprising. 62d712ecf did no one any favors by marking that GUC
> USERSET rather than something that would prevail system-wide.
One of the requirement for the custom query_id was that you shouldn't be
allowed to change the algorithm dynamically, at least not unless a superuser
agrees to maybe break everything, which is why compute_query_id is marked as
PGC_SUSET. I think that the same reasoning should apply here and if the GUC is
kept it should be at least at that level.
From | Date | Subject | |
---|---|---|---|
Next Message | Tom Lane | 2025-03-25 05:17:22 | Re: query_id: jumble names of temp tables for better pg_stat_statement UX |
Previous Message | Siraj G | 2025-03-25 04:36:22 | Re: size of attributes table is too big |
From | Date | Subject | |
---|---|---|---|
Next Message | Tom Lane | 2025-03-25 05:17:22 | Re: query_id: jumble names of temp tables for better pg_stat_statement UX |
Previous Message | Shubham Khanna | 2025-03-25 05:07:44 | Re: Enhance 'pg_createsubscriber' to retrieve databases automatically when no database is provided. |