> On the other hand, if I do a count(*) on '^ric', his takes consequently
> around 1:30 mins, no matter how often I run it. This returns 7866.
>
> A search on count(*) of '^lling' and '^tones' takes around 2.5 secs after
> running it several times.
Since postgres will still read the data row (even for this count(*)) I would guess,
that this is a data distribution problem. Maybe you could cluster your data ?
Maybe the '^rol' rows stick pretty much together, whilst the '^ric' rows
are evenly distributed on all datapages. Of course there would be room
for improvement if postgresql would not read the data pages, which are not needed
for any query that only selects columns that are part of the index.
Andreas