Re: Is there an upper limit on the size of an array if it is indexed? - Mailing list pgsql-sql

From Tom Lane
Subject Re: Is there an upper limit on the size of an array if it is indexed?
Date
Msg-id 9198.1393274395@sss.pgh.pa.us
Whole thread Raw
In response to Is there an upper limit on the size of an array if it is indexed?  (AlexK <alkuzo@gmail.com>)
Responses Re: Is there an upper limit on the size of an array if it is indexed?
List pgsql-sql
AlexK <alkuzo@gmail.com> writes:
> I have created a unique index on an array of integers, and it works for a
> small test case:

> create table i(id int not null primary key,
> v int[] not null unique );

> insert into i(id, v) values(1, ARRAY[1,2]);

> -- fails
> insert into i(id, v) values(2, ARRAY[1,2]);
> -- succeeds
> insert into i(id, v) values(2, ARRAY[2,1]);

> Is there an upper limit on the size of an array being indexed? I am
> currently considering arrays of 2K-3K integers.

PG btrees have an item size limit of a couple of KB, so I don't think
this is going to work well for you.

Some people have gotten around that by using a unique index on a hash
value.  If you use something like MD5, the odds of a false collision
are probably low enough to tolerate.
        regards, tom lane



pgsql-sql by date:

Previous
From: Rob Sargent
Date:
Subject: Re: Is there an upper limit on the size of an array if it is indexed?
Next
From: AlexK
Date:
Subject: Re: Is there an upper limit on the size of an array if it is indexed?