Daniel Kalchev <[EMAIL PROTECTED]> writes:
> ... Thus we should 'free' the index 
> pages with one VACUUM run, instead of two.

Bear in mind that the only thing that deletes index entries is ... VACUUM.
Thus what we're really discussing is whether VACUUM should delete an
index page at the same time it deletes the last entry thereon, or in a
separate pass over the index.  This is a minor implementation detail,
not something the user will really notice in terms of having to run
VACUUM multiple times to get the same effect.

Also, it will definitely take two VACUUM runs (minimum) before a
formerly-live page can enter FSM.  Once the page is marked dead (in one
run) we still need to wait for the drain interval before we can give it
to FSM (in a later run).  This is more or less analogous to the fact
that VACUUM can't remove recently-deleted heap tuples, even though they
are committed dead.  You have to wait till there's no one left that
might want to access that tuple (or index page).

                        regards, tom lane

---------------------------(end of broadcast)---------------------------
TIP 5: Have you checked our extensive FAQ?


Reply via email to