From: | Pavel Stehule <pavel(dot)stehule(at)gmail(dot)com> |
---|---|
To: | Alvaro Herrera <alvherre(at)2ndquadrant(dot)com> |
Cc: | Craig Ringer <craig(at)2ndquadrant(dot)com>, PostgreSQL Hackers <pgsql-hackers(at)postgresql(dot)org> |
Subject: | Re: patch: function xmltable |
Date: | 2016-12-22 16:11:47 |
Message-ID: | CAFj8pRDf66UX6807z1QPvF8Af9LEunJ=JxVpF0PPFVMMm+ND5Q@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
2016-12-18 16:27 GMT+01:00 Pavel Stehule <pavel(dot)stehule(at)gmail(dot)com>:
>
>
> 2016-12-07 20:37 GMT+01:00 Pavel Stehule <pavel(dot)stehule(at)gmail(dot)com>:
>
>>
>>
>> 2016-12-07 18:34 GMT+01:00 Alvaro Herrera <alvherre(at)2ndquadrant(dot)com>:
>>
>>> Pavel Stehule wrote:
>>>
>>> > I fixed two issues.
>>> >
>>> > 2. there was reverse setting in NOT NULL flag
>>>
>>> Ah-hah, that was silly, thanks.
>>>
>>> > 1. there are not columns data when there are not any explicit column -
>>> fixed
>>>
>>> Hmm. Now that I see how this works, by having the GetValue "guess" what
>>> is going on and have a special case for it, I actually don't like it
>>> very much. It seems way too magical. I think we should do away with
>>> the "if column is NULL" case in GetValue, and instead inject a column
>>> during transformTableExpr if columns is NIL. This has implications on
>>> ExecInitExpr too, which currently checks for an empty column list -- it
>>> would no longer have to do so.
>>>
>>
>> I prefer this way against second described. The implementation should be
>> in table builder routines, not in executor.
>>
>> sending new update
>>
>
> new update - no functional changes, just unbreaking after last changes in
> master.
>
another update - lot of cleaning
Regards
Pavel
>
> Regards
>
> Pavel
>
>
>>
>> Regards
>>
>> Pavel
>>
>>
>>>
>>> Maybe this means we need an additional method, which would request "the
>>> expr that returns the whole row", so that transformExpr can work for
>>> XmlTable (which I think would be something like "./") and the future
>>> JsonTable stuff (I don't know how that one would work, but I assume it's
>>> not necessarily the same thing).
>>>
>>
>>
>>
>>
>>>
>>> --
>>> Álvaro Herrera https://www.2ndQuadrant.com/
>>> PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services
>>>
>>
>>
>
Attachment | Content-Type | Size |
---|---|---|
xmltable-25.patch | text/x-patch | 162.7 KB |
From | Date | Subject | |
---|---|---|---|
Next Message | Robert Haas | 2016-12-22 16:16:32 | Re: SET NOT NULL [NOT VALID / CONCURRENTLY]? |
Previous Message | Robert Haas | 2016-12-22 16:06:34 | Re: Hang in pldebugger after git commit : 98a64d0 |