On 20/07/06, Reini Urban <[EMAIL PROTECTED]> wrote:


Thanks,
Which postgresql version?

The version is cvs HEAD.

Can we have a regular cygwin error report please mailed to cygwin at
cygwin.com please. See http://cygwin.com/problems.html (cygcheck -s -v
-r > cygcheck.out)

Looks like a strtod() newlib feature, but I haven't inspected closely.
http://sources.redhat.com/ml/newlib/2006/msg00020.html

BTW: HAVE_LONG_LONG_INT_64 is defined, so INT64_IS_BUSTED is defined also.

Does it look the same on redhat fedora?
Our buildfarm doesn't have these issues,  this runs gcc-3.3.3 and gcc-3.4.4

I'm not sure about fedora, but on NetBSD 3.0rc5 , postgresql 8.1.3  I
can see the
same behaviour:

am=# select version();
                                         version
--------------------------------------------------------------------------------------------
PostgreSQL 8.1.3 on i386--netbsdelf, compiled by GCC gcc (GCC) 3.3.3
(NetBSD nb3 20040520)
(1 row)

am=# SELECT '-10e400'::float8;
ERROR:  "-10e400" is out of range for type double precision


The problem I see is that float8in() in
src/backend/utils/adt/float.c checks only for "-Infinity" and not "-inf"
as returned by newlib:
   pg_strncasecmp(num, "-Infinity", 9) == 0

Can you test this?
Sure .

$ gcc test-strtod.c; ./a
double: -inf, errno: 34, tail: '', isinf: 1, fabs: inf, inf>max: 1

Yes,   I'm getting the same output (both on cygwin and netbsd 3.0rc5):

$ ./test-strtod.exe
double: -inf, errno: 34, tail: '', isinf: 1, fabs: inf,inf>max: 1



Cheers,
Adrian Maier

---------------------------(end of broadcast)---------------------------
TIP 9: In versions below 8.0, the planner will ignore your desire to
      choose an index scan if your joining column's datatypes do not
      match

Reply via email to