Take the 2-minute tour ×
Stack Overflow is a question and answer site for professional and enthusiast programmers. It's 100% free.

i am trying to create gin index on bigint column and getting an error (PostgreSQL 9.1.9 / Debian 7).

CREATE TABLE test (id bigint CONSTRAINT test_pkey PRIMARY KEY, field bigint);

CREATE INDEX idx_test_field ON test using GIN(field);

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

Is there no default support for int8 gin,gist indexes ?

share|improve this question
1  
Why do you want to build gin or gist indexes on bigint? Those indexes are for specialized data structures such as geometries, intarray etc.. A simple B-tree index supports >,<,= which is basically all the functionality you need for BIGINTS. –  Alexandros May 30 '14 at 7:43

1 Answer 1

up vote 7 down vote accepted

There's generally no reason to create a GiST or GIN index on a primitive type.

If you do require this - say, if you want a composite index that includes both some primitive types and some more complex GiST / GIN-only index types - then you will want the btree_gist or btree_gin modules, as appropriate.

CREATE EXTENSION btree_gin;
share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.