Gurjeet Singh wrote:
On Tue, Sep 30, 2008 at 4:49 PM, Heikki Linnakangas <
[EMAIL PROTECTED]> wrote:
Gurjeet Singh wrote:
On Tue, Sep 30, 2008 at 3:09 PM, Heikki Linnakangas <
[EMAIL PROTECTED]> wrote:
That's normal. VACUUM FULL creates new index pointers for the tuples it
moves, which can lead to a bigger index. If it bothers, REINDEX will pack
the indexes tighter again.
That explains it... and yes, REINDEX did bring the index size back to
normal.
Would it make sense to mention this in docs of VACUUM FULL? Either at
http://www.postgresql.org/docs/8.3/static/routine-vacuuming.html
or at
http://www.postgresql.org/docs/8.3/static/sql-vacuum.html
Yeah, maybe. Want to suggest a wording?
VACUUM FULL may cause a noticeable increase in size of the indexes of the
tables that are vacuumed; this is because the VACUUM operation makes new
entries in the index for the tuples/rows that have just been moved.
OR
VACUUM FULL may cause a noticeable increase in size of the indexes, that are
on the tables being vacuumed; this is because the VACUUM operation makes
new entries in the index for the tuples/rows that have just been moved.
Followed By:
An appropriate REINDEX command (REINDEX database|table|index ) can reduce
the size of such indexes.
I think it makes sense to put this on both the above mentioned URLs.
Looking closer, we do already have this in the 8.4devel version of the docs:
http://developer.postgresql.org/pgdocs/postgres/routine-vacuuming.html#VACUUM-BASICS
"... Another disadvantage of VACUUM FULL is that while it reduces table
size, it does not reduce index size proportionally; in fact it can make
indexes larger."
and in the next section:
"... Also, moving a row requires transiently making duplicate index
entries for it (the entry pointing to its new location must be made
before the old entry can be removed); so moving a lot of rows this way
causes severe index bloat. "
--
Heikki Linnakangas
EnterpriseDB http://www.enterprisedb.com
--
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers