pgsql: Fix ndistinct estimates with system attributes - Mailing list pgsql-committers

From Tomas Vondra
Subject pgsql: Fix ndistinct estimates with system attributes
Date
Msg-id E1lPuV5-0002PE-7S@gemulon.postgresql.org
Whole thread Raw
List pgsql-committers
Fix ndistinct estimates with system attributes

When estimating the number of groups using extended statistics, the code
was discarding information about system attributes. This led to strange
situation that

    SELECT 1 FROM t GROUP BY ctid;

could have produced higher estimate (equal to pg_class.reltuples) than

    SELECT 1 FROM t GROUP BY a, b, ctid;

with extended statistics on (a,b). Fixed by retaining information about
the system attribute.

Backpatch all the way to 10, where extended statistics were introduced.

Author: Tomas Vondra
Backpatch-through: 10

Branch
------
REL_10_STABLE

Details
-------
https://git.postgresql.org/pg/commitdiff/e5eb40eed470ef98e50787ccefe6d32674437be4

Modified Files
--------------
src/backend/utils/adt/selfuncs.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)


pgsql-committers by date:

Previous
From: Tomas Vondra
Date:
Subject: pgsql: Fix ndistinct estimates with system attributes
Next
From: Tomas Vondra
Date:
Subject: pgsql: Reduce duration of stats_ext regression tests