Re: "ERROR: Query-specified return tuple and actual function

Поиск
Список
Период
Сортировка
От Tom Lane
Тема Re: "ERROR: Query-specified return tuple and actual function
Дата
Msg-id 4689.1042487545@sss.pgh.pa.us
обсуждение исходный текст
Ответ на Re: "ERROR: Query-specified return tuple and actual function  (Joe Conway <mail@joeconway.com>)
Ответы Re: "ERROR: Query-specified return tuple and actual function  (Adam Buraczewski <adamb@polbox.pl>)
Список pgsql-bugs
Joe Conway <mail@joeconway.com> writes:
> Andrzej Kosmala wrote:
>> PostgreSQL 7.3 on Linux
>> After dropping column functions return error message: "ERROR:
>> Query-specified return tuple and actual function return tuple do not match"

> Hmmm, looks like nodeFunctionscan.c:tupledesc_mismatch needs to be
> taught about attisdropped. I'll submit a patch this evening if no one
> else gets to it first.

Actually, I believe I deliberately left it like that because I was
concerned about what would happen in this scenario.  I don't think that
changing tupledesc_mismatch to ignore attisdropped columns will make
things work nicely.  If a function is expecting to return (a,b,c) and
then you drop b from the table that defines its return type, is the
function likely to magically return (a,c)?  I doubt it.  Letting the
code get past the mismatch check is likely to result in core dumps.

I had toyed with the notion of forbidding column drop (and maybe column
add too, not sure) whenever a table's rowtype appears as a function
argument or result type; but I'm not sure that's sufficient to protect
against problems ...

            regards, tom lane

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

Предыдущее
От: Josh Berkus
Дата:
Сообщение: Re: Bug #871: FW: How to solve the problem
Следующее
От: Joe Conway
Дата:
Сообщение: Re: "ERROR: Query-specified return tuple and actual function