VACUUM FULL не сжимает индексы.Фактически, индексы могут быть в худшей форме после выполнения VACUUM FULL.После VACUUM FULL вы должны переиндексировать таблицу.
Однако VACUUM FULL + REINDEX довольно медленный.Вы можете добиться того же эффекта от сжатия таблицы и индексов с помощью команды CLUSTER, которая занимает небольшую часть времени.Он имеет дополнительное преимущество, заключающееся в том, что он будет упорядочивать вашу таблицу на основе индекса, который вы выбрали для CLUSTER.Это может улучшить производительность запросов.Недостатки CLUSTER по сравнению с VACUUM FULL + REINDEX в том, что он требует примерно вдвое больше дискового пространства во время работы.Кроме того, будьте очень осторожны с этой командой, если вы используете версию старше 8.3.Это не безопасно для MVCC, и вы можете потерять данные.
Кроме того, вы можете выполнить оператор no-op ALTER TABLE ... ALTER COLUMN, чтобы избавиться от таблицы и индекса, это самое быстрое решение.
Наконец, любой вопрос VACUUM FULL должен также касаться того, зачем вам это нужно?Это почти всегда вызвано неправильной пылесосом.Вы должны запустить автоочистку и настроить ее так, чтобы вам никогда не приходилось запускать VACUUM FULL.