Re: BUG #14941: Vacuum crashes
Nathan Bossart <bossartn@amazon.com>
From: "Bossart, Nathan" <bossartn@amazon.com>
To: Robert Haas <robertmhaas@gmail.com>
Cc: Tomas Vondra <tomas.vondra@2ndquadrant.com>,
"lyes.amd@gmail.com" <lyes.amd@gmail.com>,
"pgsql-hackers@postgresql.org" <pgsql-hackers@postgresql.org>,
"pgsql-bugs@postgresql.org" <pgsql-bugs@postgresql.org>
Date: 2017-12-01T21:16:30Z
Lists: pgsql-bugs, pgsql-hackers
On 12/1/17, 3:04 PM, "Robert Haas" <robertmhaas@gmail.com> wrote: > On Fri, Dec 1, 2017 at 1:53 PM, Bossart, Nathan <bossartn@amazon.com> wrote: >> There is already an internal flag called VACOPT_NOWAIT that gives >> autovacuum this ability in certain cases (introduced in the aforementioned >> commit), and I recently brought up this potential use-case as >> justification for a patch [0]. I'd be happy to submit a patch for >> providing VACOPT_NOWAIT to users if others think it's something we should >> do. > > Seems entirely reasonable to me, provided that we only update the > extensible-options syntax: > > VACUUM [ ( option [, ...] ) ] [ table_and_columns [, ...] ] > > I don't want to add any more options to the older syntax: > > VACUUM [ FULL ] [ FREEZE ] [ VERBOSE ] [ ANALYZE ] [ table_and_columns [, ...] ] Right. This seems like the right path forward to me, as the VACUUM documentation states that the unparenthesized syntax is deprecated, and the DISABLE_PAGE_SKIPPING option was not added to the old syntax, either. > I am slightly confused as to how we got on to this topic since the > subject is "Vacuum crashes", but perhaps Lyes was simply speaking > imprecisely. I'm hoping Lyes chimes in soon to clarify if I am interpreting the original report incorrectly. Nathan
Commits
-
Add option SKIP_LOCKED to VACUUM and ANALYZE
- 803b1301e8c9 12.0 landed
-
Rename VACOPT_NOWAIT to VACOPT_SKIP_LOCKED
- edc6b41bd4a8 12.0 landed
-
Add parenthesized options syntax for ANALYZE.
- 854dd8cff523 11.0 landed
-
Don't allow VACUUM VERBOSE ANALYZE VERBOSE.
- 921059bd66c7 11.0 landed
-
Fix inadequate locking during get_rel_oids().
- 19de0ab23ccb 11.0 cited
-
Avoid having autovacuum workers wait for relation locks.
- 32896c40ca76 9.1.0 cited