1
0
mirror of https://github.com/postgres/postgres.git synced 2025-11-18 02:02:55 +03:00

Remove the query_id_squash_values GUC

Commit 62d712ecfd introduced the capability to calculate the same
queryId for queries with different lengths of constants in a list for an
IN clause.  This behavior was originally enabled with a GUC
query_id_squash_values.  After a discussion about the value of such a
GUC, it was decided to back out of the use of a GUC and make the
squashing behavior the only available option.

Author: Sami Imseih <samimseih@gmail.com>
Discussion: https://postgr.es/m/Z-LZyygkkNyA8-kR@msg.df7cb.de
Discussion: https://postgr.es/m/CA+q6zcVTK-3C-8NWV1oY2NZrvtnMCDqnyYYyk1T7WMUG65MeOQ@mail.gmail.com
This commit is contained in:
Álvaro Herrera
2025-03-27 13:33:37 +01:00
parent 5d5f415816
commit 9fbd53dea5
10 changed files with 8 additions and 104 deletions

View File

@@ -46,9 +46,6 @@
/* GUC parameters */
int compute_query_id = COMPUTE_QUERY_ID_AUTO;
/* Whether to merge constants in a list when computing query_id */
bool query_id_squash_values = false;
/*
* True when compute_query_id is ON or AUTO, and a module requests them.
*
@@ -472,7 +469,7 @@ IsSquashableConstList(List *elements, Node **firstExpr, Node **lastExpr)
* If squashing is disabled, or the list is too short, we don't try to
* squash it.
*/
if (!query_id_squash_values || list_length(elements) < 2)
if (list_length(elements) < 2)
return false;
foreach(temp, elements)
@@ -520,13 +517,10 @@ do { \
#include "queryjumblefuncs.funcs.c"
/*
* When query_id_squash_values is enabled, we jumble lists of constant
* elements as one individual item regardless of how many elements are
* in the list. This means different queries jumble to the same query_id,
* if the only difference is the number of elements in the list.
*
* If query_id_squash_values is disabled or the list is not "simple
* enough", we jumble each element normally.
* We jumble lists of constant elements as one individual item regardless
* of how many elements are in the list. This means different queries
* jumble to the same query_id, if the only difference is the number of
* elements in the list.
*/
static void
_jumbleElements(JumbleState *jstate, List *elements)