On Fri, Jul 13, 2018 at 2:22 PM, Heikki Linnakangas <hlinn...@iki.fi> wrote: > I just bumped into this comment, from commit 09529a70bb5, and I can't make > sense of it: > >> + /* >> + * We reach here if the index only scan is not parallel, >> or if we're >> + * executing a index only scan that was intended to be >> parallel >> + * serially. >> + */ > > > What was that intended to say?
There are two ways that you can reach that code. One is that you have the thing that shows up in EXPLAIN output as "Index-Only Scan". The other is that you have the thing that shows up in EXPLAIN output as "Parallel Index-Only Scan", but you didn't get any workers, so now you're falling back to running what was intended to be a parallel plan without parallelism i.e. serially. The comment is intended to alert you to the fact that an intended-as-parallel scan can end up here in corner cases where the plan doesn't end up being parallel. We've had some difficulty in consistently getting that case correct. If you decide to rephase the comment for clarity, note that there are three other near-copies of it cf. git grep -C4 'We reach here if' -- Robert Haas EnterpriseDB: http://www.enterprisedb.com The Enterprise PostgreSQL Company