I’ve hit this same message Caused by: org.postgresql.util.PSQLException: ERROR: right sibling of GIN page is of different type in a couple of contexts and I’m starting to get worried. I’ve rebuilt the index, but will that help? Is there a way to see what the ‘different type’ is? Is it caught/clean-up by vacuum analyse or some such?
I’ve had good results using “<@" and “@>” and believe I've defended the use of an array, but I can’t loose three days worth of simulations to this dang wrong sibling. select version(); — will use production release of 10 next week. version ------------------------------------------------------------------------------------------------------------ PostgreSQL 10beta3 on x86_64-pc-linux-gnu, compiled by gcc (GCC) 4.8.5 20150623 (Red Hat 4.8.5-11), 64-bit The only gin index I have is in this table definition: \d sui.probandset Table "sui.probandset" Column | Type | Modifiers -------------+------------------+----------- id | uuid | not null name | text | probands | uuid[] | not null meioses | integer | min_kincoef | double precision | max_kincoef | double precision | people_id | uuid | not null Indexes: "probandset_pkey" PRIMARY KEY, btree (id) "probandsetunique" gin (probands) Check constraints: "sortedset" CHECK (issorteduuids(probands)) Foreign-key constraints: "probandset_people_id_fkey" FOREIGN KEY (people_id) REFERENCES base.people(id) Referenced by: TABLE "sui.probandset_group_member" CONSTRAINT "probandset_group_member_member_id_fkey" FOREIGN KEY (member_id) REFERENCES sui.probandset(id) TABLE "sui.segment" CONSTRAINT "segment_probandset_id_fkey" FOREIGN KEY (probandset_id) REFERENCES sui.probandset(id) and I um, er, enabled gin on uuid by copying from a thread in this list, as follows: create operator class _uuid_ops default for type _uuid using gin as operator 1 &&(anyarray, anyarray) ,operator 2 @>(anyarray, anyarray) ,operator 3 <@(anyarray, anyarray) ,operator 4 =(anyarray, anyarray) ,function 1 uuid_cmp(uuid, uuid) ,function 2 ginarrayextract(anyarray, internal, internal) ,function 3 ginqueryarrayextract(anyarray, internal, smallint, internal, internal, internal, internal) ,function 4 ginarrayconsistent(internal, smallint, anyarray, integer, internal, internal, internal, internal) ,storage uuid;