Re: [HACKERS] patch: function xmltable

Поиск
Список
Период
Сортировка
От Andres Freund
Тема Re: [HACKERS] patch: function xmltable
Дата
Msg-id 20170124223744.moyzln5vifjbkl7s@alap3.anarazel.de
обсуждение исходный текст
Ответ на Re: [HACKERS] patch: function xmltable  (Alvaro Herrera <alvherre@2ndquadrant.com>)
Ответы Re: [HACKERS] patch: function xmltable  (Alvaro Herrera <alvherre@2ndquadrant.com>)
Список pgsql-hackers
Hi,

On 2017-01-24 17:38:49 -0300, Alvaro Herrera wrote:
> +static Datum ExecEvalTableExpr(TableExprState *tstate, ExprContext *econtext,
> +                  bool *isnull);
> +static Datum ExecEvalTableExprFast(TableExprState *exprstate, ExprContext *econtext,
> +                      bool *isNull);
> +static Datum tabexprFetchRow(TableExprState *tstate, ExprContext *econtext,
> +                bool *isNull);
> +static void tabexprInitialize(TableExprState *tstate, ExprContext *econtext,
> +                  Datum doc);
> +static void ShutdownTableExpr(Datum arg);

To me this (and a lot of the other code) hints quite strongly that
expression evalution is the wrong approach to implementing this.  What
you're essentially doing is building a vulcano style scan node.  Even if
we can this, we shouldn't double down on the bad decision to have these
magic expressions that return multiple rows.  There's historical reason
for tSRFs, but we shouldn't add more weirdness like this.

Andres



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

Предыдущее
От: Nikita Glukhov
Дата:
Сообщение: Re: [HACKERS] PATCH: recursive json_populate_record()
Следующее
От: Alvaro Herrera
Дата:
Сообщение: Re: [HACKERS] patch: function xmltable