Re: [HACKERS] autovacuum does not start in HEAD
От | ITAGAKI Takahiro |
---|---|
Тема | Re: [HACKERS] autovacuum does not start in HEAD |
Дата | |
Msg-id | 20070426102316.654D.ITAGAKI.TAKAHIRO@oss.ntt.co.jp обсуждение исходный текст |
Ответы |
Re: [HACKERS] autovacuum does not start in HEAD
Re: [HACKERS] autovacuum does not start in HEAD Re: [HACKERS] autovacuum does not start in HEAD |
Список | pgsql-patches |
I wrote: > I found that autovacuum launcher does not launch any workers in HEAD. The attached autovacuum-fix.patch could fix the problem. I changed to use 'greater or equal' instead of 'greater' at the decision of next autovacuum target. The point was in the resolution of timer; There is a platform that timer has only a resolution of milliseconds. We initialize adl_next_worker with current_time in rebuild_database_list(), but we could use again the same value in do_start_worker(), because there is no measurable difference in those low-resolution-platforms. Another attached patch, autovacuum-debug.patch, is just for printf-debug. I got the following logs without fix -- autovacuum never works. # SELECT oid, datname FROM pg_database ORDER BY oid; oid | datname -------+----------- 1 | template1 11494 | template0 11495 | postgres 16384 | bench (4 rows) # pgbench bench -s1 -c1 -t100000 [with configurations of autovacuum_naptime = 10s and log_min_messages = debug1] LOG: do_start_worker skip : 230863399.250000, 230863399.250000, 230863409.250000 LOG: rebuild_database_list: db=11495, time=230863404.250000 LOG: rebuild_database_list: db=16384, time=230863409.250000 DEBUG: autovacuum: processing database "bench" LOG: do_start_worker skip : 230863404.250000, 230863404.250000, 230863414.250000 LOG: do_start_worker skip : 230863404.250000, 230863409.250000, 230863414.250000 LOG: rebuild_database_list: db=11495, time=230863409.250000 LOG: rebuild_database_list: db=16384, time=230863414.250000 LOG: do_start_worker skip : 230863409.250000, 230863409.250000, 230863419.250000 LOG: do_start_worker skip : 230863409.250000, 230863414.250000, 230863419.250000 LOG: rebuild_database_list: db=11495, time=230863414.250000 LOG: rebuild_database_list: db=16384, time=230863419.250000 ... (no autovacuum activities forever) Regards, --- ITAGAKI Takahiro NTT Open Source Software Center
Вложения
В списке pgsql-patches по дате отправления: