This seems quite bizarre: ' -INFINiTY ' works but 'infinity' does not? Please try in psql
\set VERBOSITY verbose SELECT 'infinity'::float4;
and send along the output.
It's even a little more bizarre: When I start a fresh psql session, SELECT 'infinity'::float4 just works. Then I \i sql/float4.sql, and after that template1=# \set VERBOSITY verbose template1=# SELECT 'infinity'::float4; ERROR: 22P02: invalid input syntax for type real: "infinity" LOCATION: float4in, float.c:330
The infinity is broken ;-) after SELECT 'NaN'::float4;
BTW: Infinity works again after SELECT ' -INFINiTY '::float4;
My best guess about it is that strtod() is actively broken on your platform, and is recognizing the "infinity" input but returning an incorrect endptr. I seem to recall that we've heard of such bugs before. Can you check for any updates from Sun that might affect strtod()?
Nothing found yet. But searching the web for "solaris strtod" yields, that solaris strtod might behave in a special way...
Regards, Martin
---------------------------(end of broadcast)--------------------------- TIP 8: explain analyze is your friend