postgresql/src/include/access
Amit Kapila ac27c74def Fix the overrun in hash index metapage for smaller block sizes.
The commit 620b49a1 changed the value of HASH_MAX_BITMAPS with the intent
to allow many non-unique values in hash indexes without worrying to reach
the limit of the number of overflow pages.  At that time, this didn't
occur to us that it can overrun the block for smaller block sizes.

Choose the value of HASH_MAX_BITMAPS based on BLCKSZ such that it gives
the same answer as now for the cases where the overrun doesn't occur, and
some other sufficiently-value for the cases where an overrun currently
does occur.  This allows us not to change the behavior in any case that
currently works, so there's really no reason for a HASH_VERSION bump.

Author: Dilip Kumar
Reviewed-by: Amit Kapila
Backpatch-through: 10
Discussion: https://postgr.es/m/CAA4eK1LtF4VmU4mx_+i72ff1MdNZ8XaJMGkt2HV8+uSWcn8t4A@mail.gmail.com
2018-09-06 09:27:19 +05:30
..
amapi.h Support index INCLUDE in the AM properties interface. 2018-04-08 06:02:05 +01:00
amvalidate.h Update copyright for 2018 2018-01-02 23:30:12 -05:00
attnum.h Update copyright for 2018 2018-01-02 23:30:12 -05:00
brin.h Update copyright for 2018 2018-01-02 23:30:12 -05:00
brin_internal.h Update copyright for 2018 2018-01-02 23:30:12 -05:00
brin_page.h Update copyright for 2018 2018-01-02 23:30:12 -05:00
brin_pageops.h Improve FSM management for BRIN indexes. 2018-04-04 14:26:04 -04:00
brin_revmap.h Update copyright for 2018 2018-01-02 23:30:12 -05:00
brin_tuple.h Update copyright for 2018 2018-01-02 23:30:12 -05:00
brin_xlog.h Update copyright for 2018 2018-01-02 23:30:12 -05:00
bufmask.h Update copyright for 2018 2018-01-02 23:30:12 -05:00
clog.h Update copyright for 2018 2018-01-02 23:30:12 -05:00
commit_ts.h Update copyright for 2018 2018-01-02 23:30:12 -05:00
genam.h Update copyright for 2018 2018-01-02 23:30:12 -05:00
generic_xlog.h Update copyright for 2018 2018-01-02 23:30:12 -05:00
gin.h Use stdbool.h if suitable 2018-03-22 20:42:25 -04:00
gin_private.h Re-think predicate locking on GIN indexes. 2018-05-04 11:27:50 +03:00
ginblock.h Update copyright for 2018 2018-01-02 23:30:12 -05:00
ginxlog.h Update copyright for 2018 2018-01-02 23:30:12 -05:00
gist.h Update copyright for 2018 2018-01-02 23:30:12 -05:00
gist_private.h Update copyright for 2018 2018-01-02 23:30:12 -05:00
gistscan.h Update copyright for 2018 2018-01-02 23:30:12 -05:00
gistxlog.h Update copyright for 2018 2018-01-02 23:30:12 -05:00
hash.h Fix the overrun in hash index metapage for smaller block sizes. 2018-09-06 09:27:19 +05:30
hash_xlog.h Update copyright for 2018 2018-01-02 23:30:12 -05:00
heapam.h Revert MERGE patch 2018-04-12 11:22:56 +01:00
heapam_xlog.h Post-feature-freeze pgindent run. 2018-04-26 14:47:16 -04:00
hio.h Update copyright for 2018 2018-01-02 23:30:12 -05:00
htup.h Add FIELDNO_* macro designating offset into structs required for JIT. 2018-03-22 14:45:59 -07:00
htup_details.h Improve representation of 'moved partitions' indicator on deleted tuples. 2018-05-01 13:30:12 -07:00
itup.h Adjust INCLUDE index truncation comments and code. 2018-04-19 08:45:58 +03:00
multixact.h Update copyright for 2018 2018-01-02 23:30:12 -05:00
nbtree.h Move _bt_upgrademetapage() into critical section. 2018-05-30 19:45:39 +03:00
nbtxlog.h Fix datatype for number of heap tuples during last cleanup 2018-04-19 11:28:03 +03:00
parallel.h Support parallel btree index builds. 2018-02-02 13:32:44 -05:00
printsimple.h Update copyright for 2018 2018-01-02 23:30:12 -05:00
printtup.h Update copyright for 2018 2018-01-02 23:30:12 -05:00
reloptions.h Post-feature-freeze pgindent run. 2018-04-26 14:47:16 -04:00
relscan.h Post-feature-freeze pgindent run. 2018-04-26 14:47:16 -04:00
rewriteheap.h Comment fix for rewriteheap.h. 2018-08-25 09:17:14 -07:00
rmgr.h Phase 2 of pgindent updates. 2017-06-21 15:19:25 -04:00
rmgrlist.h Update copyright for 2018 2018-01-02 23:30:12 -05:00
sdir.h Update copyright for 2018 2018-01-02 23:30:12 -05:00
session.h Update copyright for 2018 2018-01-02 23:30:12 -05:00
skey.h Update copyright for 2018 2018-01-02 23:30:12 -05:00
slru.h Update copyright for 2018 2018-01-02 23:30:12 -05:00
spgist.h Update copyright for 2018 2018-01-02 23:30:12 -05:00
spgist_private.h Post-feature-freeze pgindent run. 2018-04-26 14:47:16 -04:00
spgxlog.h Update copyright for 2018 2018-01-02 23:30:12 -05:00
stratnum.h Add prefix operator for TEXT type. 2018-04-03 19:46:45 +03:00
subtrans.h Update copyright for 2018 2018-01-02 23:30:12 -05:00
sysattr.h Update copyright for 2018 2018-01-02 23:30:12 -05:00
timeline.h Update copyright for 2018 2018-01-02 23:30:12 -05:00
transam.h Update copyright for 2018 2018-01-02 23:30:12 -05:00
tsmapi.h Update copyright for 2018 2018-01-02 23:30:12 -05:00
tupconvert.h Update copyright for 2018 2018-01-02 23:30:12 -05:00
tupdesc.h Fast ALTER TABLE ADD COLUMN with a non-NULL default 2018-03-28 10:43:52 +10:30
tupdesc_details.h Cosmetic improvements for faster column addition. 2018-06-27 08:16:13 +05:30
tupmacs.h Update copyright for 2018 2018-01-02 23:30:12 -05:00
tuptoaster.h Update copyright for 2018 2018-01-02 23:30:12 -05:00
twophase.h Post-feature-freeze pgindent run. 2018-04-26 14:47:16 -04:00
twophase_rmgr.h Update copyright for 2018 2018-01-02 23:30:12 -05:00
valid.h Update copyright for 2018 2018-01-02 23:30:12 -05:00
visibilitymap.h Update copyright for 2018 2018-01-02 23:30:12 -05:00
xact.h Post-feature-freeze pgindent run. 2018-04-26 14:47:16 -04:00
xlog.h Revert "Allow on-line enabling and disabling of data checksums" 2018-04-09 19:03:42 +02:00
xlog_internal.h Flip argument order in XLogSegNoOffsetToRecPtr 2018-07-09 14:33:38 -04:00
xlogdefs.h Update copyright for 2018 2018-01-02 23:30:12 -05:00
xloginsert.h Update copyright for 2018 2018-01-02 23:30:12 -05:00
xlogreader.h pgindent run prior to branching 2018-06-30 12:25:49 -04:00
xlogrecord.h Update copyright for 2018 2018-01-02 23:30:12 -05:00
xlogutils.h Update copyright for 2018 2018-01-02 23:30:12 -05:00