From: | Alvaro Herrera <alvherre(at)2ndquadrant(dot)com> |
---|---|
To: | Stephen Frost <sfrost(at)snowman(dot)net> |
Cc: | Peter Eisentraut <peter(dot)eisentraut(at)2ndquadrant(dot)com>, Sergei Kornilov <sk(at)zsrv(dot)org>, Michael Paquier <michael(dot)paquier(at)gmail(dot)com>, Andreas Karlsson <andreas(at)proxel(dot)se>, PostgreSQL mailing lists <pgsql-hackers(at)postgresql(dot)org>, Craig Ringer <craig(at)2ndquadrant(dot)com> |
Subject: | Re: [HACKERS] REINDEX CONCURRENTLY 2.0 |
Date: | 2018-12-31 21:16:50 |
Message-ID: | 201812312116.pavh6ts5qeum@alvherre.pgsql |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
On 2018-Dec-14, Stephen Frost wrote:
> > My vote goes to put the keyword inside of and exclusively in the
> > parenthesized option list.
>
> I disagree with the idea of exclusively having concurrently be in the
> parentheses. 'explain buffers' is a much less frequently used option
> (though that might, in part, be because it's a bit annoying to write out
> explain (analyze, buffers) select...; I wonder if we could have a way to
> say "if I'm running analyze, I always want buffers"...),
I'm skeptical. I think EXPLAIN ANALYZE is more common because it has
more than one decade of advantage compared to the more detailed option
list. Yes, it's also easier, but IMO it's a brain thing (muscle
memory), not a fingers thing.
> but concurrently reindexing a table (or index..) is going to almost
> certainly be extremely common, perhaps even more common than *not*
> reindexing concurrently.
Well, users can use the reindexdb utility and save some keystrokes.
Anyway we don't typically add redundant ways to express the same things.
Where we have them, it's just because the old way was there before, and
we added the extensible way later. Adding two in the first appearance
of a new feature seems absurd to me.
After looking at the proposed grammar again today and in danger of
repeating myself, IMO allowing the concurrency keyword to appear outside
the parens would be a mistake. Valid commands:
REINDEX (VERBOSE, CONCURRENTLY) TABLE foo;
REINDEX (CONCURRENTLY) INDEX bar;
--
Álvaro Herrera https://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services
From | Date | Subject | |
---|---|---|---|
Next Message | Andrew Gierth | 2018-12-31 21:35:57 | Re: [HACKERS] REINDEX CONCURRENTLY 2.0 |
Previous Message | Alvaro Herrera | 2018-12-31 19:36:35 | Re: Unified logging system for command-line programs |