Joey,
> shared_buffers = 1000
> sort_mem = 1024
> effective_cache_size = 1000
effective_cache_size should be much higher, like 3/4 of your available RAM.
This is probably the essence of your planner problem; the planner thinks you
have no RAM.
> I see a similar speedup (and change in query plan) using "LIMIT 1
> OFFSET <anything besides 0>".
So what's your problem?
--
--Josh
Josh Berkus
Aglio Database Solutions
San Francisco