Re: update, truncate and vacuum
От | Dave Dutcher |
---|---|
Тема | Re: update, truncate and vacuum |
Дата | |
Msg-id | 073e01c7cfd8$b0d9d560$2e00a8c0@tridecap.com обсуждение исходный текст |
Ответ на | update, truncate and vacuum (Scott Feldstein <scott.feldstein@hyperic.com>) |
Список | pgsql-performance |
> From: Scott Feldstein > Subject: [PERFORM] update, truncate and vacuum > > Hi, > I have a couple questions about how update, truncate and > vacuum would work together. > > 1) If I update a table foo (id int, value numeric (20, 6)) > with update foo set value = 100 where id = 1 > > Would a vacuum be necessary after this type of operation > since the updated value is a numeric? (as opposed to a sql > type where its size could potentially change i.e varchar) Yes a vacuum is still necessary. The type doesn't really matter. Postgres effectively does a delete and insert on all updates. > 2) After several updates/deletes to a table, if I truncate > it, would it be necessary to run vacuum in order to reclaim the space? No a vacuum is not necessary after a truncate because the whole data file is deleted once a truncate commits. There aren't any dead rows because there aren't any rows. Dave
В списке pgsql-performance по дате отправления: