OK, one more issue report. I originally thought it's a bug in my patch
adding parallel builds for GIN indexes, but it turns out it happens even
with serial builds on master ...
If I build any GIN index, and then do gin_index_parent_check() on it, I
get this error:
create index jsonb_hash on messages using gin (msg_headers jsonb_path_ops);
select gin_index_parent_check('jsonb_hash');
ERROR: index "jsonb_hash" has wrong tuple order, block 43932, offset 328
I did try investigating usinng pageinspect - the page seems to be the
right-most in the tree, judging by rightlink = InvalidBlockNumber:
test=# select gin_page_opaque_info(get_raw_page('jsonb_hash', 43932));
gin_page_opaque_info
----------------------
(4294967295,0,{})
(1 row)
But gin_leafpage_items() apparently only works with compressed leaf
pages, so I'm not sure what's in the page. In any case, the index seems
to be working fine, so it seems like a bug in this patch.
regards
--
Tomas Vondra
EnterpriseDB: http://www.enterprisedb.com
The Enterprise PostgreSQL Company