Jim C. Nasby wrote:
> Couldn't vacuum just eliminate tuples marked dead? Heck, don't we do
> that anyway right now?
You mean _index_ tuples marked dead? Sure, no problem there.
> Granted, you'd want to periodically ensure that you scan the entire
> index, but that shouldn't be horribly hard to set up.
Well, it seems to be. A vacuum can't evaluate index expressions because
it's not in a real transaction.
The DBA could set up a cron job to do "SELECT * FROM foo WHERE bar > 0"
etc. with enable_seqscan=false? That would work, but we can't depend on
an additional administrative task like. And we might as well just
disable the optimization that's causing us problems.
--
Heikki Linnakangas
EnterpriseDB http://www.enterprisedb.com