Forcing GiST index to be used
I have a custom datatype (the PostGIS geometry type), which I have
indexed using a GiST index.
The problem is, its difficult to get PostgreSQL to actually use the GiST
index. The only way I can get it to be used is by 'set enable_seqscan =
off', which seems a bit cheezy. What am I missing? Do I have to make
some sort of amcostestimate() function or something?
thanks,
dave
Dave Blasby <dblasby@refractions.net> writes:
I have a custom datatype (the PostGIS geometry type), which I have
indexed using a GiST index.
The problem is, its difficult to get PostgreSQL to actually use the GiST
index. The only way I can get it to be used is by 'set enable_seqscan =
off', which seems a bit cheezy. What am I missing? Do I have to make
some sort of amcostestimate() function or something?
What sort of selectivity estimator (oprrest entry) do you have attached
to the indexable operator? If there's no estimator, the default
selectivity is something like 0.5 --- way too high to cause an index to
be used.
regards, tom lane