Re: ERROR: table row type and query-specified row type do not match - Mailing list pgsql-general

From Tom Lane
Subject Re: ERROR: table row type and query-specified row type do not match
Date
Msg-id 29665.1188585421@sss.pgh.pa.us
Whole thread Raw
In response to Re: ERROR: table row type and query-specified row type do not match  (Patryk Kordylewski <pk@imos.net>)
List pgsql-general
Patryk Kordylewski <pk@imos.net> writes:
> I think i found the problem and made 2 sql files to reproduce it. The
> only difference between this 2 files is the order by-clause of the view...

> http://fooby.imosnet.de/order_by_working.txt
> http://fooby.imosnet.de/order_by_not_working.txt

Hmm, actually you don't even need the rule, any use of a whole-row Var
for that view will fail:

regression=# select v_baz from v_baz;
ERROR:  table row type and query-specified row type do not match
DETAIL:  Table row contains 3 attributes, but query expects 2.

The problem is that the ORDER BY on a value that's not part of the
output list generates a hidden "resjunk" column in the view, which
confuses ExecEvalVar.  I've applied a patch that will appear in 8.2.5.

            regards, tom lane

pgsql-general by date:

Previous
From: Madison Kelly
Date:
Subject: Re: Select question
Next
From: "Daniel Verite"
Date:
Subject: Re: computing and updating the size of a table with large objects