force_parallel_mode = regress has a blind spot

Поиск
Список
Период
Сортировка
От Tom Lane
Тема force_parallel_mode = regress has a blind spot
Дата
Msg-id 18445.1576177309@sss.pgh.pa.us
обсуждение исходный текст
Ответы Re: force_parallel_mode = regress has a blind spot  (Tom Lane <tgl@sss.pgh.pa.us>)
Список pgsql-hackers
I have just found out the hard way (cf commits 22864f6e0, 776a2c887)
that if one uses EXPLAIN with both ANALYZE and VERBOSE selected,
the output is not the same between force_parallel_mode = off and
force_parallel_mode = regress.  This seems to me to be quite broken;
what's the point of force_parallel_mode = regress if it doesn't
produce the same output?

The reason there's a problem is that ExplainNode() will show
per-worker detail if both es->analyze and es->verbose are set,
even when the only reason there's a worker process is that
force_parallel_mode injected a supposedly-invisible Gather.

I don't see any way to fix this that doesn't involve some sort
of "action at a distance".  One could imagine hiding the per-worker
detail if we're underneath a Gather that has invisible set to
true, but it's not really clear to me that that would do the
right things in a plan with multiple Gather nodes.  Any thoughts
about that?

            regards, tom lane



В списке pgsql-hackers по дате отправления:

Предыдущее
От: Арсен Арутюнян
Дата:
Сообщение: Async_Notify
Следующее
От: Ibrar Ahmed
Дата:
Сообщение: Re: VACUUM memory management