Re: WITH NOT MATERIALIZED and DML CTEs

Поиск
Список
Период
Сортировка
От Elvis Pranskevichus
Тема Re: WITH NOT MATERIALIZED and DML CTEs
Дата
Msg-id 12389707.kYbJWkIkHK@hammer.magicstack.net
обсуждение исходный текст
Ответ на Re: WITH NOT MATERIALIZED and DML CTEs  (Tom Lane <tgl@sss.pgh.pa.us>)
Ответы Re: WITH NOT MATERIALIZED and DML CTEs  (Tom Lane <tgl@sss.pgh.pa.us>)
Список pgsql-hackers
On Monday, June 3, 2019 12:09:46 P.M. EDT Tom Lane wrote:
> > I understand why the rule exists in the first place, but I think
> > that an explicit opt-in signals the assumption of responsibility
> > and opens the possibility of using this in a well-defined
> > evaluation context, such as CASE WHEN.
> 
> TBH, if you think it's well-defined, you're wrong.

The documentation seems to strongly suggest otherwise:

"When it is essential to force evaluation order, a CASE construct (see 
Section 9.17) can be used. ... CASE construct used in this fashion will 
defeat optimization attempts"

Are there cases where this is not true outside of the documented 
exceptions (i.e. immutable early-eval and aggregates)?

                                 Elvis





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

Предыдущее
От: Tom Lane
Дата:
Сообщение: Re: WITH NOT MATERIALIZED and DML CTEs
Следующее
От: Tom Lane
Дата:
Сообщение: Re: WITH NOT MATERIALIZED and DML CTEs