Oleg Bartunov <oleg(at)sai(dot)msu(dot)su> writes:
> Day ago we run 'vacuum verbose analyze;' and now we're observing
> strange output (see below). We see many repeated passes through the
> table 'usno' and all indices (2).
Nothing strange about it: that's how vacuum deals with large tables.
You can reduce the number of passes over the indexes by increasing
maintenance_work_mem (aka vacuum_mem). It looks like you have that
set to 16MB, which is enough to hold about 2.79M 6-byte CTIDs. When
that fills up, we have to go and clean out the corresponding index
entries before we resume scanning the heap.
It is a bit odd that nothing is getting deleted from "ipix_ind" ...
is that a partial index?
regards, tom lane