Agreed. Although given that you can cast text to unknown, and NULL to text, it's not intuitively clear why this would have to fail absent replanning. However, knowing nothing about Postgres internals, I'm happy to take your word for it! Thanks again.
Ken
On Sun, Nov 17, 2013 at 7:59 PM, Tom Lane <tgl@xxxxxxxxxxxxx> wrote:
Ken Tanzer <ken.tanzer@xxxxxxxxx> writes:Ah. Fixing that so all the variants produce the same (explicit) type
> But thinking about it some more, the function runs one of 5 possible
> queries. 4 of them select NULL as comment (no cast), while the fifth (and
> the one that caused this error) selects 'a string'.
should take care of this.
Ideally it wouldn't, but it's not clear what it'd cost to fix it.
> I assume this will go away if I change my lazy query and cast my NULLs, but
> still wonder if this is something that should be expected to fail?
If we just silently replanned when the query output types changed,
then this type of situation would work but would carry a large hidden
performance penalty. That's not too appetizing either.
regards, tom lane
AGENCY Software
A data system that puts you in control
100% Free Software
(253) 245-3801
learn more about AGENCY or
follow the discussion.