On Fri, Mar 20, 2020 at 4:15 AM Andres Freund <andres@anarazel.de> wrote:
>
> Hi,
>
> I was looking at [1], wanting to suggest a query to monitor what
> autovacuum is mostly waiting on. Partially to figure out whether it's
> mostly autovacuum cost limiting.
>
> But uh, unfortunately the vacuum delay code just sleeps without setting
> a wait event:
>
> void
> vacuum_delay_point(void)
> {
> ...
> /* Nap if appropriate */
> if (msec > 0)
> {
> if (msec > VacuumCostDelay * 4)
> msec = VacuumCostDelay * 4;
>
> pg_usleep((long) (msec * 1000));
>
>
> Seems like it should instead use a new wait event in the PG_WAIT_TIMEOUT
> class?
>
+1. I think it will be quite helpful.
--
With Regards,
Amit Kapila.
EnterpriseDB: http://www.enterprisedb.com