From 3e6eb0dd0a0982c61420a0d18d3e485bd2c2819c Mon Sep 17 00:00:00 2001 From: Heikki Linnakangas Date: Thu, 30 Aug 2012 20:27:19 +0300 Subject: [PATCH] Fix division by zero in the new range type histogram creation. Report and analysis by Matthias. --- src/backend/utils/adt/rangetypes_typanalyze.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/backend/utils/adt/rangetypes_typanalyze.c b/src/backend/utils/adt/rangetypes_typanalyze.c index e276ad8e18..5f346834e7 100644 --- a/src/backend/utils/adt/rangetypes_typanalyze.c +++ b/src/backend/utils/adt/rangetypes_typanalyze.c @@ -158,7 +158,10 @@ compute_range_stats(VacAttrStats *stats, AnalyzeAttrFetchFunc fetchfunc, /* Must copy the target values into anl_context */ old_cxt = MemoryContextSwitchTo(stats->anl_context); - if (non_empty_cnt > 0) + /* + * Generate a histogram slot entry if there are at least two values. + */ + if (non_empty_cnt >= 2) { /* Sort bound values */ qsort_arg(lowers, non_empty_cnt, sizeof(RangeBound),