From: | Luca Ferrari <fluca1978(at)gmail(dot)com> |
---|---|
To: | pgsql-general <pgsql-general(at)lists(dot)postgresql(dot)org> |
Subject: | autovacuum worker started without a worker entry |
Date: | 2021-08-05 06:07:54 |
Message-ID: | CAKoxK+67xau=WE53RPUXDeVZ9OwzOLbad2DrjEe2wYfjW23Ftw@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-general |
Hi all,
I occasionally see the message "WARNING: autovacuum worker started
without a worker entry" in the logs.
From what I can see here
<https://github.com/postgres/postgres/blob/master/src/backend/postmaster/autovacuum.c#L1678>,
the launcher forked a worker and in the meantime the launcher decided
the worker is no more useful. If that is right, I'm guessing why the
worker should not be useful anymore: since a single worker could work
on a table, the only reason I can find is that someone run manually
vacuum within that database/table.
Moreover, I've a question about emergency autovacuum (wraparound).
Since autovacuum workers are started by postmaster on a signal
received by the autovacuum launcher, and since with autovacuum = off
the latter is not running, how does the postmaster decide to start and
emergency autovacuum?
I only found what seems to me a normal autovacuum start at
<https://github.com/postgres/postgres/blob/master/src/backend/postmaster/postmaster.c#L5263>.
Thanks,
Luca
From | Date | Subject | |
---|---|---|---|
Next Message | Avi Weinberg | 2021-08-05 07:22:31 | Logical Replication - Different Primary Key on Source Table and Destination Table |
Previous Message | David G. Johnston | 2021-08-05 05:22:54 | Re: Using functions in regexp replace captures |