8.0.0 make check fails on Solaris 9 (sparc)

Поиск
Список
Период
Сортировка
От Tamas Vincze
Тема 8.0.0 make check fails on Solaris 9 (sparc)
Дата
Msg-id 41F9119E.1080904@neb.com
обсуждение исходный текст
Ответы Re: 8.0.0 make check fails on Solaris 9 (sparc)  (Michael Fuhr <mike@fuhr.org>)
Список pgsql-bugs
Hi,

I see test failures in float4, float8 and misc.

Both float4 and float8 fail on the tests involving NaN and Infinity.
Here's the verbose output of the failed statements:

template1=# SELECT 'NaN'::float4;
ERROR:  22003: type "real" value out of range: overflow
LOCATION:  CheckFloat4Val, float.c:219

template1=# SELECT 'Infinity'::float4 / 'Infinity'::float4;
ERROR:  22003: type "real" value out of range: overflow
LOCATION:  CheckFloat4Val, float.c:219

template1=# SELECT 'nan'::float4 / 'nan'::float4;
ERROR:  22003: type "real" value out of range: overflow
LOCATION:  CheckFloat4Val, float.c:219

template1=# SELECT 'NaN'::float8;
ERROR:  22003: type "double precision" value out of range: overflow
LOCATION:  CheckFloat8Val, float.c:238

template1=# SELECT 'Infinity'::float8 / 'Infinity'::float8;
ERROR:  22003: type "double precision" value out of range: overflow
LOCATION:  CheckFloat8Val, float.c:238

template1=# SELECT 'nan'::float8 / 'nan'::float8;
ERROR:  22003: type "double precision" value out of range: overflow
LOCATION:  CheckFloat8Val, float.c:238

The misc test fails on the "COPY BINARY" test, all floating point
values get corrupted. The resulting binary file results/stud_emp.data
is attached.

Let me know if you need more information.

Regards,
Tamas
parallel group (13 tests): (in groups of 10)  text varchar int2 int8 int4 oid float4 name char boolean float8 bit
numeric
     boolean              ... ok
     char                 ... ok
     name                 ... ok
     varchar              ... ok
     text                 ... ok
     int2                 ... ok
     int4                 ... ok
     int8                 ... ok
     oid                  ... ok
     float4               ... FAILED
     float8               ... FAILED
     bit                  ... ok
     numeric              ... ok
test strings              ... ok
test numerology           ... ok
parallel group (20 tests): (in groups of 10)  lseg box path time circle timestamp date timetz point polygon comments
abstimetinterval interval reltime inet timestamptz type_sanity oidjoins opr_sanity 
     point                ... ok
     lseg                 ... ok
     box                  ... ok
     path                 ... ok
     polygon              ... ok
     circle               ... ok
     date                 ... ok
     time                 ... ok
     timetz               ... ok
     timestamp            ... ok
     timestamptz          ... ok
     interval             ... ok
     abstime              ... ok
     reltime              ... ok
     tinterval            ... ok
     inet                 ... ok
     comments             ... ok
     oidjoins             ... ok
     type_sanity          ... ok
     opr_sanity           ... ok
test geometry             ... ok
test horology             ... ok
test insert               ... ok
test create_function_1    ... ok
test create_type          ... ok
test create_table         ... ok
test create_function_2    ... ok
test copy                 ... ok
parallel group (7 tests):  create_aggregate create_operator vacuum create_misc triggers constraints inherit
     constraints          ... ok
     triggers             ... ok
     create_misc          ... ok
     create_aggregate     ... ok
     create_operator      ... ok
     inherit              ... ok
     vacuum               ... ok
parallel group (2 tests):  create_view create_index
     create_index         ... ok
     create_view          ... ok
test sanity_check         ... ok
test errors               ... ok
test select               ... ok
parallel group (18 tests): (in groups of 10)  select_into select_distinct select_distinct_on select_having union
aggregatescase subselect select_implicit join random hash_index btree_index portals update namespace arrays
transactions
     select_into          ... ok
     select_distinct      ... ok
     select_distinct_on   ... ok
     select_implicit      ... ok
     select_having        ... ok
     subselect            ... ok
     union                ... ok
     case                 ... ok
     join                 ... ok
     aggregates           ... ok
     transactions         ... ok
     random               ... ok
     portals              ... ok
     arrays               ... ok
     btree_index          ... ok
     hash_index           ... ok
     update               ... ok
     namespace            ... ok
test privileges           ... ok
test misc                 ... FAILED
parallel group (5 tests):  portals_p2 select_views cluster rules foreign_key
     select_views         ... ok
     portals_p2           ... ok
     rules                ... ok
     foreign_key          ... ok
     cluster              ... ok
parallel group (14 tests): (in groups of 10)  limit conversion prepare temp without_oid truncate copy2 rangefuncs
domainplpgsql polymorphism sequence rowtypes alter_table 
     limit                ... ok
     plpgsql              ... ok
     copy2                ... ok
     temp                 ... ok
     domain               ... ok
     rangefuncs           ... ok
     prepare              ... ok
     without_oid          ... ok
     conversion           ... ok
     truncate             ... ok
     alter_table          ... ok
     sequence             ... ok
     polymorphism         ... ok
     rowtypes             ... ok
test stats                ... ok
test tablespace           ... ok
*** ./expected/float4.out    Thu Mar 11 19:25:40 2004
--- ./results/float4.out    Wed Jan 26 15:21:06 2005
***************
*** 33,55 ****
  ERROR:  invalid input syntax for type real: "123            5"
  -- special inputs
  SELECT 'NaN'::float4;
!  float4
! --------
!     NaN
! (1 row)
!
  SELECT 'nan'::float4;
!  float4
! --------
!     NaN
! (1 row)
!
  SELECT '   NAN  '::float4;
!  float4
! --------
!     NaN
! (1 row)
!
  SELECT 'infinity'::float4;
    float4
  ----------
--- 33,43 ----
  ERROR:  invalid input syntax for type real: "123            5"
  -- special inputs
  SELECT 'NaN'::float4;
! ERROR:  type "real" value out of range: overflow
  SELECT 'nan'::float4;
! ERROR:  type "real" value out of range: overflow
  SELECT '   NAN  '::float4;
! ERROR:  type "real" value out of range: overflow
  SELECT 'infinity'::float4;
    float4
  ----------
***************
*** 72,88 ****
  SELECT 'Infinity'::float4 + 100.0;
  ERROR:  type "double precision" value out of range: overflow
  SELECT 'Infinity'::float4 / 'Infinity'::float4;
!  ?column?
! ----------
!       NaN
! (1 row)
!
  SELECT 'nan'::float4 / 'nan'::float4;
!  ?column?
! ----------
!       NaN
! (1 row)
!
  SELECT '' AS five, FLOAT4_TBL.*;
   five |     f1
  ------+-------------
--- 60,68 ----
  SELECT 'Infinity'::float4 + 100.0;
  ERROR:  type "double precision" value out of range: overflow
  SELECT 'Infinity'::float4 / 'Infinity'::float4;
! ERROR:  type "real" value out of range: overflow
  SELECT 'nan'::float4 / 'nan'::float4;
! ERROR:  type "real" value out of range: overflow
  SELECT '' AS five, FLOAT4_TBL.*;
   five |     f1
  ------+-------------

======================================================================

*** ./expected/float8.out    Fri Apr 23 16:32:20 2004
--- ./results/float8.out    Wed Jan 26 15:21:07 2005
***************
*** 33,55 ****
  ERROR:  invalid input syntax for type double precision: "123           5"
  -- special inputs
  SELECT 'NaN'::float8;
!  float8
! --------
!     NaN
! (1 row)
!
  SELECT 'nan'::float8;
!  float8
! --------
!     NaN
! (1 row)
!
  SELECT '   NAN  '::float8;
!  float8
! --------
!     NaN
! (1 row)
!
  SELECT 'infinity'::float8;
    float8
  ----------
--- 33,43 ----
  ERROR:  invalid input syntax for type double precision: "123           5"
  -- special inputs
  SELECT 'NaN'::float8;
! ERROR:  type "double precision" value out of range: overflow
  SELECT 'nan'::float8;
! ERROR:  type "double precision" value out of range: overflow
  SELECT '   NAN  '::float8;
! ERROR:  type "double precision" value out of range: overflow
  SELECT 'infinity'::float8;
    float8
  ----------
***************
*** 72,88 ****
  SELECT 'Infinity'::float8 + 100.0;
  ERROR:  type "double precision" value out of range: overflow
  SELECT 'Infinity'::float8 / 'Infinity'::float8;
!  ?column?
! ----------
!       NaN
! (1 row)
!
  SELECT 'nan'::float8 / 'nan'::float8;
!  ?column?
! ----------
!       NaN
! (1 row)
!
  SELECT '' AS five, FLOAT8_TBL.*;
   five |          f1
  ------+----------------------
--- 60,68 ----
  SELECT 'Infinity'::float8 + 100.0;
  ERROR:  type "double precision" value out of range: overflow
  SELECT 'Infinity'::float8 / 'Infinity'::float8;
! ERROR:  type "double precision" value out of range: overflow
  SELECT 'nan'::float8 / 'nan'::float8;
! ERROR:  type "double precision" value out of range: overflow
  SELECT '' AS five, FLOAT8_TBL.*;
   five |          f1
  ------+----------------------

======================================================================

*** ./expected/misc.out    Wed Jan 26 15:11:29 2005
--- ./results/misc.out    Wed Jan 26 15:21:44 2005
***************
*** 63,72 ****
  COPY BINARY stud_emp FROM '/export/home/vincze/src/postgresql-8.0.0/src/test/regress/results/stud_emp.data';
  SELECT * FROM stud_emp;
   name  | age |  location  | salary | manager | gpa | percent
! -------+-----+------------+--------+---------+-----+---------
!  jeff  |  23 | (8,7.7)    |    600 | sharon  | 3.5 |
!  cim   |  30 | (10.5,4.7) |    400 |         | 3.4 |
!  linda |  19 | (0.9,6.1)  |    100 |         | 2.9 |
  (3 rows)

  -- COPY aggtest FROM stdin;
--- 63,72 ----
  COPY BINARY stud_emp FROM '/export/home/vincze/src/postgresql-8.0.0/src/test/regress/results/stud_emp.data';
  SELECT * FROM stud_emp;
   name  | age |                   location                    | salary | manager |          gpa          | percent
! -------+-----+-----------------------------------------------+--------+---------+-----------------------+---------
!  jeff  |  23 | (0,0)                                         |    600 | sharon  |                     0 |
!  cim   |  30 | (0,0)                                         |    400 |         |                     0 |
!  linda |  19 | (8.48798316386109e-312,8.48798316386109e-312) |    100 |         | 8.48798316386109e-312 |
  (3 rows)

  -- COPY aggtest FROM stdin;

======================================================================


Вложения

В списке pgsql-bugs по дате отправления:

Предыдущее
От: Tom Lane
Дата:
Сообщение: Re: Inconsistent behavior with TIMESTAMP WITHOUT and epoch
Следующее
От: Josh Berkus
Дата:
Сообщение: Re: Inconsistent behavior with TIMESTAMP WITHOUT and epoch