Re: BUG #2917: spi_prepare doesn't accept typename aliases

Поиск
Список
Период
Сортировка
От Tom Lane
Тема Re: BUG #2917: spi_prepare doesn't accept typename aliases
Дата
Msg-id 24128.1169825468@sss.pgh.pa.us
обсуждение исходный текст
Ответ на Re: BUG #2917: spi_prepare doesn't accept typename aliases  (Andrew Dunstan <andrew@dunslane.net>)
Ответы Re: BUG #2917: spi_prepare doesn't accept typename aliases  (Jim Nasby <decibel@decibel.org>)
Список pgsql-hackers
Andrew Dunstan <andrew@dunslane.net> writes:
> see attached patch.  If this is OK I will apply it and also fix pltcl 
> and plpython similarly, mutatis mutandis.

Looks alright as far as it goes, but I'd suggest making one additional
cleanup while you're in there: get rid of the direct syscache access
altogether, instead using getTypeInputInfo().  The loop body should just
consist of three function calls: parseTypeString, getTypeInputInfo,
perm_fmgr_info.

If you wanted to be a bit more ambitious maybe you could change the fact
that this code is throwing away typmod, which means that declarations
like "varchar(32)" would fail to work as expected.  Perhaps it should be
fixed to save the typmods alongside the typioparams and then pass them
to InputFunctionCall instead of passing -1.  On the other hand, we don't
currently enforce typmod for any function input or result arguments, so
maybe it's consistent that spi_prepare arguments ignore typmods too.
Thoughts?
        regards, tom lane


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

Предыдущее
От: Gregory Stark
Дата:
Сообщение: Re: HAVING push-down
Следующее
От: "Simon Riggs"
Дата:
Сообщение: Re: HAVING push-down