Scott Marlowe <scott.marlowe@ihs.com> writes:
> And reclaimed the space. Is that the official way, short of dropping and
> recreating an index to reclaim its space? Is there a plan to make vacuum
> reclaim unused space in indexes?
Yes, and yes, but don't hold your breath on the latter part --- that
TODO item has been around for awhile. And it's gotten harder now that
we have lazy VACUUM; that means we need to be able to condense indexes
concurrently with other index operations.
AFAIK there's not a big problem with index growth if the range of index
keys remains reasonably static. The problem comes in if you have a
range of values that keeps growing (eg, you are indexing a SERIAL or
timestamp column). The right end of the btree keeps growing, but
there's no mechanism to collapse out no-longer-used space at the left
end.
regards, tom lane