The following bug has been logged on the website:
Bug reference: 13327
Logged by: Sergey Melekhin
Email address: cpro29a@gmail.com
PostgreSQL version: 9.3.6
Operating system: Ubuntu 14.04
Description:
I stumbled upon error, when multiple inserts or updates on table with gist
index on many int[] columns fails.
I got "stack depth limit exceded" on update, but when I started to write
this test case I did not manage to get to updates - I got error when trying
to populate table:
ERROR: failed to add item to index page in "test_gist_i"
CODE:
begin;
create table test_gist(id serial primary key, a1 int[],a2 int[], a3 int[],
a4 int[], a5 int[]);
create index test_gist_i on test_gist using gist (a1,a2,a3,a4,a5);
--Simple random array generator
create or replace function rnd_arr(p_len int) returns int[]
as $$
select array_agg(val)
from (select trunc(random()*1000.0)::int val
from generate_series(1,trunc(random()*p_len*1.0)::int+1)
) v;
$$ language sql;
--##THIS FAILS:
insert into test_gist(a1,a2,a3,a4,a5)
select rnd_arr(10),rnd_arr(10),rnd_arr(10),rnd_arr(10),rnd_arr(10)
from generate_series(1,100000);
;
--##WITH MESSAGE:
--ERROR: failed to add item to index page in "test_gist_i"
rollback;