Chris Browne <cbbrowne@xxxxxxx> writes: > alvherre@xxxxxxxxxxxxxx (Alvaro Herrera) writes: >> Even a database-wide vacuum does not take locks on more than one table. >> The table locks are acquired and released one by one, as the operation >> proceeds. > Has that changed recently? I have always seen "vacuumdb" or SQL > "VACUUM" (without table specifications) running as one long > transaction which doesn't release the locks that it is granted until > the end of the transaction. You sure? It's not supposed to, and watching a database-wide vacuum with "select * from pg_locks" doesn't look to me like it ever has locks on more than one table (plus the table's indexes and toast table). regards, tom lane