"Midge Brown" <
midgems@xxxxxxxxxxxxx>
writes:
> I'm having a problem with a query on our production server,
but not on a laptop running a similar postgres version with a recent backup
copy of the same table. I tried reindexing the table on the production server,
but it didn't make any difference. Other queries on the same table are plenty
fast.
Reindexing won't help that. The problem is a bad
statistical estimate;
it thinks there are about 700 rows with applies2 =
256, when there's
really only one. That means the "fast" plan is a
lot faster than the
planner gives it credit for, and conversely the "slow"
plan is a lot
slower than the planner is expecting. Their estimated
costs end up
nearly the same, which makes it a bit of a chance matter which
one is
picked --- but the true costs are a lot different. So you need
to fix
that rowcount estimate. Raising the stats target for the table
might
help.
regards, tom lane
--