Serj <fenix@am.ring.ru> writes:
> [ system not using an index when it should ]
Two questions:
1. Did you do a "vacuum analyze" after making the indexes?
Without that, the optimizer may be choosing a sequential scan
because it doesn't know how big the tables are.
2. What postgres version are you using?
There are some bugs in the current cvs sources that affect whether
indexes get used --- look at the ongoing threads in the hackers list.
Maybe you've found another manifestation of that problem. But if
you're using 6.3.2 then it's something different...
regards, tom lane