diff options
author | Tom Lane <tgl@sss.pgh.pa.us> | 2011-04-21 19:28:36 -0400 |
---|---|---|
committer | Tom Lane <tgl@sss.pgh.pa.us> | 2011-04-21 19:28:36 -0400 |
commit | 92647fc4b9cd7406afb2ee240a20082ba6097177 (patch) | |
tree | 89f9d11a70770e94ac5c77277212214ac2da6ea3 /src | |
parent | a0e8df527ec24e8dba98f295c0e2ab6ccf3e5d2c (diff) | |
download | postgresql-92647fc4b9cd7406afb2ee240a20082ba6097177.tar.gz postgresql-92647fc4b9cd7406afb2ee240a20082ba6097177.zip |
Avoid possible divide-by-zero in gincostestimate.
Per report from Jeff Janes.
Diffstat (limited to 'src')
-rw-r--r-- | src/backend/utils/adt/selfuncs.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/src/backend/utils/adt/selfuncs.c b/src/backend/utils/adt/selfuncs.c index 4d800f8a007..fa8cecafcbe 100644 --- a/src/backend/utils/adt/selfuncs.c +++ b/src/backend/utils/adt/selfuncs.c @@ -6458,6 +6458,10 @@ gincostestimate(PG_FUNCTION_ARGS) numDataPages = Min(numDataPages, numPages - numEntryPages); } + /* In an empty index, numEntries could be zero. Avoid divide-by-zero */ + if (numEntries < 1) + numEntries = 1; + /* * Include predicate in selectivityQuals (should match * genericcostestimate) |