Re: [Proposal] Allow users to specify multiple tables in VACUUM commands
Michael Paquier <michael.paquier@gmail.com>
From: Michael Paquier <michael.paquier@gmail.com>
To: "Bossart, Nathan" <bossartn@amazon.com>
Cc: Tom Lane <tgl@sss.pgh.pa.us>, "pgsql-hackers@postgresql.org" <pgsql-hackers@postgresql.org>,
Masahiko Sawada <sawada.mshk@gmail.com>, "David G. Johnston" <david.g.johnston@gmail.com>,
Robert Haas <robertmhaas@gmail.com>
Date: 2017-09-29T01:09:11Z
Lists: pgsql-hackers
On Fri, Sep 29, 2017 at 2:44 AM, Bossart, Nathan <bossartn@amazon.com> wrote:
> 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.
+ if (IsAutoVacuumWorkerProcess() && params->log_min_duration >= 0)
+ elevel = LOG;
+ else if (!IsAutoVacuumWorkerProcess())
+ elevel = WARNING;
+ else
+ elevel = 0;
OK, of course let's not change the existing log levels. This could be
always tuned later on depending on feedback from others. I can see
that guc.c also uses elevel == 0 for some logic, so we could rely on
that as you do.
@@ -116,6 +116,9 @@ analyze_rel(Oid relid, RangeVar *relation, int options,
int elevel;
AcquireSampleRowsFunc acquirefunc = NULL;
BlockNumber relpages = 0;
+ bool rel_lock;
+
+ Assert(relation != NULL);
I can see that this is new in your patch. Definitely adapted.
In short, I am switching it back to "ready for committer". We may want
the locking issues when building the relation list to be settled
first.
--
Michael
Commits
-
Allow multiple tables to be specified in one VACUUM or ANALYZE command.
- 11d8d72c27a6 11.0 landed
-
Give a better error for duplicate entries in VACUUM/ANALYZE column list.
- ea31541f5648 9.6.6 landed
- e56facd8b300 9.2.24 landed
- b572b435ca67 9.4.15 landed
- a2b1eb23496e 10.0 landed
- a09d8be7ddaf 9.3.20 landed
- 71480501057f 11.0 landed
- 122289a66b92 9.5.10 landed
-
Reject ANALYZE commands during VACUUM FULL or another ANALYZE.
- e415b469b33b 9.5.0 cited