From: | "Bossart, Nathan" <bossartn(at)amazon(dot)com> |
---|---|
To: | Michael Paquier <michael(dot)paquier(at)gmail(dot)com> |
Cc: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>, "pgsql-hackers(at)postgresql(dot)org" <pgsql-hackers(at)postgresql(dot)org>, Masahiko Sawada <sawada(dot)mshk(at)gmail(dot)com>, "David G(dot) Johnston" <david(dot)g(dot)johnston(at)gmail(dot)com>, Robert Haas <robertmhaas(at)gmail(dot)com> |
Subject: | Re: [Proposal] Allow users to specify multiple tables in VACUUM commands |
Date: | 2017-09-28 17:44:44 |
Message-ID: | 494DFEF9-CCEA-4B88-9EA9-8362334F47DE@amazon.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
On 9/28/17, 12:20 AM, "Michael Paquier" <michael(dot)paquier(at)gmail(dot)com> wrote:
> On Thu, Sep 28, 2017 at 1:20 AM, Bossart, Nathan <bossartn(at)amazon(dot)com> wrote:
>> On 9/26/17, 1:38 PM, "Bossart, Nathan" <bossartn(at)amazon(dot)com> wrote:
>>> On 9/25/17, 12:42 AM, "Michael Paquier" <michael(dot)paquier(at)gmail(dot)com> wrote:
>>>> + if (!IsAutoVacuumWorkerProcess())
>>>> + ereport(WARNING,
>>>> + (errmsg("skipping \"%s\" --- relation no longer exists",
>>>> + relation->relname)));
>>>> I like the use of WARNING here, but we could use as well a LOG to be
>>>> consistent when a lock obtention is skipped.
>>>
>>> It looks like the LOG statement is only emitted for autovacuum, so maybe
>>> we should keep this at WARNING for consistency with the permission checks
>>> below it.
>>
>> I've left this as-is for now. I considered emitting this statement as a
>> LOG for autovacuum, but I'm not sure there is terribly much value in
>> having autovacuum explain that it is skipping a relation because it was
>> concurrently dropped. Perhaps this is something we should emit at a
>> DEBUG level. What do you think?
>
> DEBUG would be fine as well for me. Now that your patch provides a
> RangeVar consistently for all code paths, the message could show up
> unconditionally.
Alright, I've added logging for autovacuum in v23. I ended up needing to
do a little restructuring to handle the case when the relation was skipped
because the lock could not be obtained. While doing so, I became
convinced that LOG was probably the right level for autovacuum logs.
Nathan
Attachment | Content-Type | Size |
---|---|---|
vacuum_multiple_tables_v23.patch | application/octet-stream | 30.9 KB |
From | Date | Subject | |
---|---|---|---|
Next Message | Tom Lane | 2017-09-28 18:21:12 | Re: 200 = 199 + 1? |
Previous Message | Tom Lane | 2017-09-28 17:11:34 | Re: Arrays of domains |