Two questions about GIN on 8.2. There's not much documentation about GIN, but this should be possible:

  create table foo (values text[]);
  create index foo_values_index on foo using gin (text);

However, this then fails saying the operator "@" does not exist:

  select * from foo where values @ '{hello, world}'

Do I need to reference a specific opclass when creating the index? From the documentation I got the impression that GIN bundled operators for most built-in types.

Secondly, are GIN indexes immutable and (unlike Tsearch2) non-lossy and therefore useful with functional indexes? I would like to do this:

  create table bar (value text);
  create index bar_value_index on bar using gin (analyze(value));

where analyze() is a function of my own that tokenizes, stems and filters the text into a text[] array.

Alexander.

---------------------------(end of broadcast)---------------------------
TIP 2: Don't 'kill -9' the postmaster

Reply via email to