pathat(at)comcast(dot)net (Patrick Hatcher) writes:
> Curious: Why would a DELETE FROM tablename work while a pg_dump is
> occurring but a TRUNCATE tablename will stay in a lock state until the
> pg_dump is complete?
DELETE FROM merely has to mark all the tuples as dead, which requires
no control over the table as a whole.
TRUNCATE essentially reinitializes the table as empty, which does need
a (if brief) lock on the table.
Yeah, you can't TRUNCATE while the dump is running...
--
"cbbrowne","@","ca.afilias.info"
<http://dev6.int.libertyrms.com/>
Christopher Browne
(416) 673-4124 (land)