> Alright, committed with a little further hacking.
I did pull the latest code, and tried Test: ==== create table t1(t int); create index i1 on t1 using hash(t); insert into t1 select generate_series(1, 10000000);
postgres=# SELECT spares FROM hash_metapage_info(get_raw_page('i1', 0)); spares ---------------------------------------------------------------------------- {0,0,0,1,9,17,33,65,-127,1,1,0,1,-1,-1,-4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}
spares are showing negative numbers; I think the wrong type has been chosen, seems it is rounding at 127, spares are defined as following uint32 hashm_spares[HASH_MAX_SPLITPOINTS]; /* spare pages before each splitpoint */