Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / vacuum / 3 сообщений из 3, страница 1 из 1
12.11.2006, 23:02
    #34122400
tier.ru
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
vacuum
Господа, поясните, кто знает точно...
Вышел у меня спор, а доказать свою правоту не могу.
Из документации ясно, что обыный (не FULL) VACUUM отмечает место в файлах как свободное, но физически не освобождает его для ОС. Вопрос такой, используется ли это место (помеченное как свободное) сразу, или только тогда, когда перестает хватать места в ФС.
Вот текст из документации:
There are two variants of the VACUUM command. The first form, known as "lazy vacuum" or just VACUUM, marks expired data in tables and indexes for future reuse; it does not attempt to reclaim the space used by this expired data unless the space is at the end of the table and an exclusive table lock can be easily obtained. Unused space at the start or middle of the file does not result in the file being shortened and space returned to the operating system. This variant of VACUUM can be run concurrently with normal database operations.

Мой оппонент считает, что слово, выделенное жирым, в данном контексте означает "использовать повторно", т.е., место в файлах, помеченное как свободное, не может быть использовано, а файлы могут только расти в размере.
Я же считаю, что это слово в данном контексте значит - "освободить для файловой системы".
Кто из нас прав?

Спасибо.
...
Рейтинг: 0 / 0
13.11.2006, 09:49
    #34122839
st_serg
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
vacuum
marks expired data in tables and indexes for future reuse; it does not attempt to reclaim the space used by this expired data unless the space is at the end of the table and an exclusive table lock can be easily obtained.

помечает удаленные данные в индексах и таблицах с целью повторного их использования в будущем. Помеченные таким образом данные, если они не находятся в конце таблицы и exclusive table lock может быть получена легко, операционной системе не возвращаются.

гдето так )

имхо ты прав.
...
Рейтинг: 0 / 0
13.11.2006, 11:03
    #34123095
Funny_Falcon
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
vacuum
Смысловой перевод:
Если место, помеченное как свободное, находится в конце файла и можно взять exclusive лок на таблицу, то место возвращается операционной системе.
Иначе место не будет возвращено ОС, а будет использоваться самим PostgreSQL (marks expired data in tables and indexes for future use).
По опыту - таблица, подверженная регулярному VACUUM сильно не растёт.
...
Рейтинг: 0 / 0
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / vacuum / 3 сообщений из 3, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]