array exclusion constraint - Mailing list pgsql-hackers

From Philip Taylor
Subject array exclusion constraint
Date
Msg-id 1353175540.79593.YahooMailNeo@web160102.mail.bf1.yahoo.com
Whole thread Raw
Responses Re: array exclusion constraint
List pgsql-hackers
CREATE TABLE foo (
   x CHAR(32) PRIMARY KEY,
   y CHAR(32) NOT NULL,
   EXCLUDE USING gist ((ARRAY[x, y]) WITH &&)
);

ERROR:  data type character[] has no default operator class for access method "gist"
HINT:  You must specify an operator class for the index or define a default operator class for the data type.

Neither gist nor gin work. You can do that with integers using the intarray extension module.
Could you please suggest me a clean way to achieve the same result (using the char data type, not integers)?
Probably I could create a specific operator class or some other workaround, but the intarray implementation looks a bit complex.
Someone so kind to point me in the right direction?

Of course the following produces the same error:

CREATE TABLE bar (
   x VARCHAR[] NOT NULL,
   EXCLUDE USING gist (x WITH &&)
);

pgsql-hackers by date:

Previous
From: "Karl O. Pinc"
Date:
Subject: Re: Add big fat caution to pg_restore docs regards partial db restores
Next
From: Noah Misch
Date:
Subject: Re: foreign key locks