TRUNCATE
moet shared_buffers
doorspoelen voor de tabel die wordt afgekapt, en het moet het oude bestand ontkoppelen, wat traag kan zijn op bestandssystemen met langzame verwijdering zoals ext3
.
1,5 uur is echter behoorlijk extreem, omdat we het meestal hoogstens over seconden hebben. Het is zeer waarschijnlijk dat u andere sessies heeft met vergrendelingen op de tafel die de TRUNCATE
verhinderen uit te gaan. Zie pg_catalog.pg_locks
en pg_catalog.pg_stat_activity
.
Het PostgreSQL-wikiartikel over vergrendelingsbewaking zou nuttig moeten zijn.
Zie ook:Postgresql-afbreeksnelheid