diff --git a/src/backend/utils/adt/selfuncs.c b/src/backend/utils/adt/selfuncs.c index b2c57e87a5..30751fc8ac 100644 --- a/src/backend/utils/adt/selfuncs.c +++ b/src/backend/utils/adt/selfuncs.c @@ -3541,7 +3541,10 @@ estimate_hash_bucketsize(PlannerInfo *root, Node *hashkey, double nbuckets) * selectivity of rel's restriction clauses that mention the target Var. */ if (vardata.rel) + { ndistinct *= vardata.rel->rows / vardata.rel->tuples; + ndistinct = clamp_row_est(ndistinct); + } /* * Initial estimate of bucketsize fraction is 1/nbuckets as long as the