dbTalk Databases Forums  

Re: [BUGS] SOLARIS 9 ULTRASPARC BUILD

mailing.database.pgsql-bugs mailing.database.pgsql-bugs


Discuss Re: [BUGS] SOLARIS 9 ULTRASPARC BUILD in the mailing.database.pgsql-bugs forum.



Reply
 
Thread Tools Display Modes
  #1  
Old   
Tom Lane
 
Posts: n/a

Default Re: [BUGS] SOLARIS 9 ULTRASPARC BUILD - 08-10-2004 , 05:58 PM






andrea.martano (AT) lighthousetc (DOT) net writes:
Quote:
attached are the regression.out and regression.diffs files from make check on a
Ultra 2 dual 300MHz CPU running Solaris 9 OS.
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.

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()?

regards, tom lane

---------------------------(end of broadcast)---------------------------
TIP 2: you can get off all lists at once with the unregister command
(send "unregister YourEmailAddressHere" to majordomo (AT) postgresql (DOT) org)


Reply With Quote
  #2  
Old   
Michael Fuhr
 
Posts: n/a

Default Re: [BUGS] SOLARIS 9 ULTRASPARC BUILD - 08-10-2004 , 08:40 PM






On Tue, Aug 10, 2004 at 03:23:33PM -0400, Tom Lane wrote:
Quote:
andrea.martano (AT) lighthousetc (DOT) net writes:
attached are the regression.out and regression.diffs files from make check on a
Ultra 2 dual 300MHz CPU running Solaris 9 OS.

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.

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()?
strtod() on Solaris has long returned the wrong endptr when parsing
"infinity". Somebody asked about it in comp.unix.solaris in 1995
and I asked again this morning:

http://groups.google.com/groups?&thr...ensional .com

The response indicates that it's a bug fixed in Solaris 10
but probably not released as a patch in earlier versions.

Here's what I get when I run the above commands using a recently
CVS'ed 8.0.0beta1 on Solaris 9. Interestingly, it works the first
time but not afterwards, perhaps due to the bogus endptr pointing
to memory that's initially zeroed but that gets filled before
subsequent queries.

test=> \set VERBOSITY verbose
test=> SELECT 'infinity'::float4;
float4
----------
Infinity
(1 row)

test=> SELECT 'infinity'::float4;
ERROR: 22P02: invalid input syntax for type real: "infinity"
LOCATION: float4in, float.c:330

--
Michael Fuhr
http://www.fuhr.org/~mfuhr/

---------------------------(end of broadcast)---------------------------
TIP 3: if posting/reading through Usenet, please send an appropriate
subscribe-nomail command to majordomo (AT) postgresql (DOT) org so that your
message can get through to the mailing list cleanly


Reply With Quote
Reply




Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off



Powered by vBulletin Version 3.5.3
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.