Re: Question about DROP TABLE
От | Michal Novotny |
---|---|
Тема | Re: Question about DROP TABLE |
Дата | |
Msg-id | 5694E9BF.1080206@trustport.com обсуждение исходный текст |
Ответ на | Re: Question about DROP TABLE (Andres Freund <andres@anarazel.de>) |
Список | pgsql-hackers |
Hi Andres, On 01/12/2016 12:37 PM, Andres Freund wrote: > Hi, > > On 2016-01-12 12:17:01 +0100, Michal Novotny wrote: >> thanks a lot for your reply. Unfortunately I've found out most it didn't >> really start DROP TABLE yet and it's locked on autovacuum running for >> the table and even if I kill the process it's autostarting again and again. > > Start the DROP TABLE and *then* cancel the autovacuum session. That > should work. By cancelling the autovacuum session you mean to run pg_cancel_backend(pid int) *after* running DROP TABLE ? > >> Is there any way how to do the DROP TABLE and bypass/disable autovacuum >> entirely? Please note the "autovacuum = off" is set in the config file >> (postgresql.conf). So should I set autovacuum to enable (on) and restart pgsql before doing DROP TABLE (and pg_cancel_backend() as mentioned above)? > > That actually is likely to have caused the problem. Every > autovacuum_freeze_max_age tables need to be vacuumed - otherwise the > data can't be interpreted correctly anymore at some point. That's called > 'anti-wraparound vacuum". It's started even if you disabled autovacuum, > to prevent database corruption. Ok, any recommendation how to set autovacuum_freeze_max_age? Thanks, Michal > > If you disable autovacuum, you really should start vacuums in some other > way. > > Greetings, > > Andres Freund >
В списке pgsql-hackers по дате отправления: