> From: Scott Feldstein > Subject: 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 ---------------------------(end of broadcast)--------------------------- TIP 3: Have you checked our extensive FAQ? http://www.postgresql.org/docs/faq