Re: References to parameters by name are lost in INSERT INTO ... SELECT .... statements in case of routines with the SQL-standard function body

Поиск
Список
Период
Сортировка
От Tom Lane
Тема Re: References to parameters by name are lost in INSERT INTO ... SELECT .... statements in case of routines with the SQL-standard function body
Дата
Msg-id 2520161.1637166827@sss.pgh.pa.us
обсуждение исходный текст
Ответ на Re: References to parameters by name are lost in INSERT INTO ... SELECT .... statements in case of routines with the SQL-standard function body  (Masahiko Sawada <sawada.mshk@gmail.com>)
Список pgsql-bugs
Masahiko Sawada <sawada.mshk@gmail.com> writes:
> On Wed, Nov 17, 2021 at 6:52 AM Tom Lane <tgl@sss.pgh.pa.us> wrote:
>> Yeah, it's weird that the same parameter is printed two different ways.
>> I dug into it and found out that we're losing the "context->namespace"
>> list when recursing into the sub-SELECT from get_insert_query_def.
>> The fix is trivial (attached).  The other places where get_query_def is
>> invoked quasi-recursively all pass down the parent namespace list already.
>> The fact that this one is out of step is a very ancient oversight (it's
>> at least old enough to vote, according to some quick git archaeology).
>> But as far as I can see, it didn't have any visible consequences until
>> commit e717a9a18 taught get_parameter() to pay attention to the last
>> entry of the list.  So I'm inclined not to change it before v14.

> Agreed. I've confirmed by the attached test that the patch fixes this issue.

Pushed, thanks for writing the test case.

            regards, tom lane



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

Предыдущее
От: PG Bug reporting form
Дата:
Сообщение: BUG #17290: Error Installation
Следующее
От: James Johnston
Дата:
Сообщение: Extensions, policies, and pg_dump don't work together and result in duplicate policies