Re: index file bloating still in 7.4 ?

Tom Lane <tgl@sss.pgh.pa.us>

From: Tom Lane <tgl@sss.pgh.pa.us>
To: Seum-Lim Gan <slgan@lucent.com>
Cc: josh@agliodbs.com, pgsql-performance@postgresql.org
Date: 2003-10-20T21:42:52Z
Lists: pgsql-performance
Seum-Lim Gan <slgan@lucent.com> writes:
> [ successive outputs from VACUUM ANALYZE ]

FWIW, I don't think your problem is really index bloat at all, it's
more like too-many-dead-rows bloat.  Note that the number of "dead row
versions" is climbing steadily from run to run:

> DETAIL:  101802 dead row versions cannot be removed yet.

> DETAIL:  110900 dead row versions cannot be removed yet.

> DETAIL:  753064 dead row versions cannot be removed yet.

> DETAIL:  765328 dead row versions cannot be removed yet.

It's hardly the index's fault that it's growing, when it has to keep
track of an ever-increasing number of rows.

The real question is what you're doing that requires the system to keep
hold of these dead rows instead of recycling them.  I suspect you have
a client process somewhere that is holding an open transaction for a
long time ... probably not doing anything, just sitting there with an
unclosed BEGIN ...

			regards, tom lane