Re: Why does [auto-]vacuum delay not report a wait event?

From: Amit Kapila <amit(dot)kapila16(at)gmail(dot)com>
To: Andres Freund <andres(at)anarazel(dot)de>
Cc: pgsql-hackers <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: Why does [auto-]vacuum delay not report a wait event?
Date: 2020-03-20 11:31:57
Message-ID: CAA4eK1JhG-VUKeYRfAeAY56qGdG6O=i9zGo=85i-63gc7Fs83w@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On Fri, Mar 20, 2020 at 4:15 AM Andres Freund <andres(at)anarazel(dot)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

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Magnus Hagander 2020-03-20 11:54:31 Re: Why does [auto-]vacuum delay not report a wait event?
Previous Message Amit Kapila 2020-03-20 11:28:08 Re: error context for vacuum to include block number