Re: [GENERAL] Casting - Mailing list pgsql-hackers

From Tom Lane
Subject Re: [GENERAL] Casting
Date
Msg-id 26651.1049811939@sss.pgh.pa.us
Whole thread Raw
Responses Re: [GENERAL] Casting  ("Nigel J. Andrews" <nandrews@investsystems.co.uk>)
List pgsql-hackers
"Nigel J. Andrews" <nandrews@investsystems.co.uk> writes:
> When I use my cast I get:
> mydb=> select cast('truE'::text as boolean);
> WARNING:  Error occurred while executing PL/pgSQL function text_to_bool
> WARNING:  line 4 at select into variables
> ERROR:  CopyQuerySnapshot: no snapshot has been set

Hmm.  The problem here is that parse_coerce.c thinks it can apply
eval_const_expressions() to simplify the CAST; but in the general case
that doesn't work because the query snapshot may not be set yet.
Had we left the expression to be folded at plan time everything would
be okay.

I dislike removing the optimization altogether, but maybe we don't
have much choice.  Anyone see another way around it?
        regards, tom lane



pgsql-hackers by date:

Previous
From: Patrick Welche
Date:
Subject: win32 broke unix
Next
From: Jan Wieck
Date:
Subject: Re: Complex database for testing, U.S. Census Tiger/UA