autovacuum does not start in HEAD
От | ITAGAKI Takahiro |
---|---|
Тема | autovacuum does not start in HEAD |
Дата | |
Msg-id | 20070425164613.70BB.ITAGAKI.TAKAHIRO@oss.ntt.co.jp обсуждение исходный текст |
Ответы |
Re: autovacuum does not start in HEAD
Re: autovacuum does not start in HEAD |
Список | pgsql-hackers |
I found that autovacuum launcher does not launch any workers in HEAD. AFAICS, we track the time to be vaccumed of each database in the following way: 1. In rebuild_database_list(), we initialize avl_dbase->adl_next_worker with (current_time + autovacuum_naptime / nDBs). 2. In do_start_worker(), we skip database entries that adl_next_worker is between current_time and current_time + autovacuum_naptime. 3. If there is no jobs in do_start_worker(), we call rebuild_database_list() to rebuild database entries. The point is we use the same range (current_time and current_time + autovacuum_naptime) at 1 and 2. We set adl_next_worker with values in the range, and drop all of them at 2 because their values are in the range. And if there is no database to vacuum, we re-initilaize database list at 3, then we repeat the cycle. Or am I missing something? Regards, --- ITAGAKI Takahiro NTT Open Source Software Center
В списке pgsql-hackers по дате отправления: