Three Regression Test Problems involving dates

Started by Duncan Kinderover 26 years ago2 messagesbugs
Jump to latest
#1Duncan Kinder
dckinder@mountain.net

Set forth below are three regression test failures encountered on RedHat
6.0. All involved differences between expected and actual dates. The
actual date is the date the test was run:

If PostgreSQL failed to compile on your computer or you found a bug that
is likely to be specific to one platform then please fill out this form
and e-mail it to pgsql-ports@postgresql.org.

To report any other bug, fill out the form below and e-mail it to
pgsql-bugs@postgresql.org.

If you not only found the problem but solved it and generated a patch
then e-mail it to pgsql-patches@postgresql.org instead. Please use the
command "diff -c" to generate the patch.

You may also enter a bug report at http://www.postgresql.org/ instead of
e-mail-ing this form.

============================================================================
POSTGRESQL BUG REPORT TEMPLATE
============================================================================

Your name : Duncan Kinder
Your email address : dckinder@mountain.net

System Configuration
---------------------
Architecture (example: Intel Pentium) : Intel Pentium

Operating System (example: Linux 2.0.26 ELF) : RedHat 6.0

PostgreSQL version (example: PostgreSQL-6.5.2): PostgreSQL-6.5.2

Compiler used (example: gcc 2.8.0) : ??? (RedHat 6.0 )

Please enter a FULL description of your problem:
------------------------------------------------
Regression test failures:

Failures: Float8 , Geometry, Random (regression.diffs is set forth
below)

*** expected/float8.out Sat Jan 23 19:12:59 1999
--- results/float8.out Mon Oct  4 09:29:27 1999
***************
*** 189,201 ****
  QUERY: SELECT '' AS bad, f.f1 * '1e200' from FLOAT8_TBL f;
  ERROR:  Bad float8 input format -- overflow
  QUERY: SELECT '' AS bad, f.f1 ^ '1e200' from FLOAT8_TBL f;
! ERROR:  pow() result is out of range
  QUERY: SELECT '' AS bad, (; (f.f1)) from FLOAT8_TBL f where f.f1 = '0.0' ;
  ERROR:  can't take log of zero
  QUERY: SELECT '' AS bad, (; (f.f1)) from FLOAT8_TBL f where f.f1 < '0.0' ;
  ERROR:  can't take log of a negative number
  QUERY: SELECT '' AS bad, : (f.f1) from FLOAT8_TBL f;
! ERROR:  exp() result is out of range
  QUERY: SELECT '' AS bad, f.f1 / '0.0' from FLOAT8_TBL f;
  ERROR:  float8div: divide by zero error
  QUERY: SELECT '' AS five, FLOAT8_TBL.*;
--- 189,217 ----
  QUERY: SELECT '' AS bad, f.f1 * '1e200' from FLOAT8_TBL f;
  ERROR:  Bad float8 input format -- overflow
  QUERY: SELECT '' AS bad, f.f1 ^ '1e200' from FLOAT8_TBL f;
! bad|?column?
! ---+--------
!    |0
!    |NaN
!    |NaN
!    |NaN
!    |NaN
! (5 rows)
!
  QUERY: SELECT '' AS bad, (; (f.f1)) from FLOAT8_TBL f where f.f1 = '0.0' ;
  ERROR:  can't take log of zero
  QUERY: SELECT '' AS bad, (; (f.f1)) from FLOAT8_TBL f where f.f1 < '0.0' ;
  ERROR:  can't take log of a negative number
  QUERY: SELECT '' AS bad, : (f.f1) from FLOAT8_TBL f;
! bad|            ?column?
! ---+--------------------
!    |                   1
!    |7.39912306090513e-16
!    |                   0
!    |                   0
!    |                   1
! (5 rows)
!
  QUERY: SELECT '' AS bad, f.f1 / '0.0' from FLOAT8_TBL f;
  ERROR:  float8div: divide by zero error
  QUERY: SELECT '' AS five, FLOAT8_TBL.*;

----------------------

*** expected/geometry.out Sun Dec 13 18:49:18 1998
--- results/geometry.out Mon Oct  4 09:29:31 1999
***************
*** 112,118 ****
        |(-5,-12)  |[(10,-10),(-3,-4)]
|(-1.60487804878049,-4.64390243902439)
        |(10,10)   |[(10,-10),(-3,-4)]
|(2.39024390243902,-6.48780487804878)
        |(0,0)
|[(-1000000,200),(300000,-40)]|(0.0028402365895872,15.384614860264)
!       |(-10,0)
|[(-1000000,200),(300000,-40)]|(-9.99715942258202,15.3864610140473)
        |(-3,4)
|[(-1000000,200),(300000,-40)]|(-2.99789812267519,15.3851688427303)
|(5.1,34.5)|[(-1000000,200),(300000,-40)]|(5.09647083221496,15.3836744976925
)
        |(-5,-12)
|[(-1000000,200),(300000,-40)]|(-4.99494420845634,15.3855375281616)
--- 112,118 ----
        |(-5,-12)  |[(10,-10),(-3,-4)]
|(-1.60487804878049,-4.64390243902439)
        |(10,10)   |[(10,-10),(-3,-4)]
|(2.39024390243902,-6.48780487804878)
        |(0,0)
|[(-1000000,200),(300000,-40)]|(0.0028402365895872,15.384614860264)
!       |(-10,0)
|[(-1000000,200),(300000,-40)]|(-9.99715942258202,15.3864610140472)
        |(-3,4)
|[(-1000000,200),(300000,-40)]|(-2.99789812267519,15.3851688427303)

|(5.1,34.5)|[(-1000000,200),(300000,-40)]|(5.09647083221496,15.3836744976925
)
|(-5,-12)
|[(-1000000,200),(300000,-40)]|(-4.99494420845634,15.3855375281616)
***************
*** 409,433 ****
QUERY: SELECT '' AS six, polygon(f1)
FROM CIRCLE_TBL;
six|polygon
! ---+----------------------------------------------------------------------
----------------------------------------------------------------------------
----------------------------------------------------------------------------
------------------------------------------------------
!
|((-3,0),(-2.59807621135332,1.5),(-1.5,2.59807621135332),(-1.83690953073357e
-16,3),(1.5,2.59807621135332),(2.59807621135332,1.5),(3,3.67381906146713e-16
),(2.59807621135332,-1.5),(1.5,-2.59807621135332),(5.5107285922007e-16,-3),(
-1.5,-2.59807621135332),(-2.59807621135332,-1.5))
!
|((-99,2),(-85.6025403784439,52),(-49,88.6025403784439),(0.999999999999994,1
02),(51,88.6025403784439),(87.6025403784439,52),(101,2.00000000000001),(87.6
025403784439,-48),(51,-84.6025403784438),(1.00000000000002,-98),(-49,-84.602
5403784439),(-85.6025403784438,-48))
!
|((-4,3),(-3.33012701892219,5.5),(-1.5,7.33012701892219),(1,8),(3.5,7.330127
01892219),(5.33012701892219,5.5),(6,3),(5.33012701892219,0.500000000000001),
(3.5,-1.33012701892219),(1,-2),(-1.5,-1.33012701892219),(-3.33012701892219,0
.499999999999998))
!
|((-2,2),(-1.59807621135332,3.5),(-0.5,4.59807621135332),(1,5),(2.5,4.598076
21135332),(3.59807621135332,3.5),(4,2),(3.59807621135332,0.500000000000001),
(2.5,-0.598076211353315),(1,-1),(-0.5,-0.598076211353316),(-1.59807621135332
,0.499999999999999))
!
|((90,200),(91.3397459621556,205),(95,208.660254037844),(100,210),(105,208.6
60254037844),(108.660254037844,205),(110,200),(108.660254037844,195),(105,19
1.339745962156),(100,190),(95,191.339745962156),(91.3397459621556,195))
!
|((0,0),(13.3974596215561,50),(50,86.6025403784439),(100,100),(150,86.602540
3784439),(186.602540378444,50),(200,1.22460635382238e-14),(186.602540378444,
-50),(150,-86.6025403784438),(100,-100),(50,-86.6025403784439),(13.397459621
5562,-50))
(6 rows)

QUERY: SELECT '' AS six, polygon(8, f1)
FROM CIRCLE_TBL;
six|polygon

! ---+----------------------------------------------------------------------
----------------------------------------------------------------------------
----------------------------------------------------------------------------
----------
!
|((-3,0),(-2.12132034355964,2.12132034355964),(-1.83690953073357e-16,3),(2.1
2132034355964,2.12132034355964),(3,3.67381906146713e-16),(2.12132034355964,-
2.12132034355964),(5.5107285922007e-16,-3),(-2.12132034355964,-2.12132034355
964))
!
|((-99,2),(-69.7106781186548,72.7106781186548),(0.999999999999994,102),(71.7
106781186547,72.7106781186548),(101,2.00000000000001),(71.7106781186548,-68.
7106781186547),(1.00000000000002,-98),(-69.7106781186547,-68.7106781186548))
!
|((-4,3),(-2.53553390593274,6.53553390593274),(1,8),(4.53553390593274,6.5355
3390593274),(6,3),(4.53553390593274,-0.535533905932737),(1,-2),(-2.535533905
93274,-0.535533905932738))
!
|((-2,2),(-1.12132034355964,4.12132034355964),(1,5),(3.12132034355964,4.1213
2034355964),(4,2),(3.12132034355964,-0.121320343559642),(1,-1),(-1.121320343
55964,-0.121320343559643))
!
|((90,200),(92.9289321881345,207.071067811865),(100,210),(107.071067811865,2
07.071067811865),(110,200),(107.071067811865,192.928932188135),(100,190),(92
.9289321881345,192.928932188135))
!
|((0,0),(29.2893218813452,70.7106781186548),(100,100),(170.710678118655,70.7
106781186548),(200,1.22460635382238e-14),(170.710678118655,-70.7106781186547
),(100,-100),(29.2893218813453,-70.7106781186548))
(6 rows)

  QUERY: SELECT '' AS six, circle(f1, 50.0)
--- 409,433 ----
  QUERY: SELECT '' AS six, polygon(f1)
     FROM CIRCLE_TBL;
  six|polygon

! ---+----------------------------------------------------------------------
----------------------------------------------------------------------------
----------------------------------------------------------------------------
----------------------------------------------------------------------------
----------------------------------------------------------------------------
-----
!
|((-3,0),(-2.59807621135076,1.50000000000442),(-1.49999999999116,2.598076211
35842),(1.53102359078377e-11,3),(1.50000000001768,2.59807621134311),(2.59807
621136607,1.4999999999779),(3,-3.06204718156754e-11),(2.59807621133545,-1.50
000000003094),(1.49999999996464,-2.59807621137373),(-4.59307077235131e-11,-3
),(-1.5000000000442,-2.5980762113278),(-2.59807621138138,-1.49999999995138))
!
|((-99,2),(-85.6025403783588,52.0000000001473),(-48.9999999997054,88.6025403
78614),(1.00000000051034,102),(51.0000000005893,88.6025403781036),(87.602540
3788692,51.9999999992634),(101,1.99999999897932),(87.6025403778485,-48.00000
00010313),(50.9999999988214,-84.6025403791243),(0.999999998468976,-98),(-49.
0000000014732,-84.6025403775933),(-85.6025403793795,-47.9999999983795))
!
|((-4,3),(-3.33012701891794,5.50000000000737),(-1.49999999998527,7.330127018
9307),(1.00000000002552,8),(3.50000000002946,7.33012701890518),(5.3301270189
4346,5.49999999996317),(6,2.99999999994897),(5.33012701889242,0.499999999948
437),(3.49999999994107,-1.33012701895622),(0.999999999923449,-2),(-1.5000000
0007366,-1.33012701887966),(-3.33012701896897,0.500000000081028))
!
|((-2,2),(-1.59807621135076,3.50000000000442),(-0.499999999991161,4.59807621
135842),(1.00000000001531,5),(2.50000000001768,4.59807621134311),(3.59807621
136607,3.4999999999779),(4,1.99999999996938),(3.59807621133545,0.49999999996
9062),(2.49999999996464,-0.59807621137373),(0.999999999954069,-1),(-0.500000
000044197,-0.598076211327799),(-1.59807621138138,0.500000000048617))
!
|((90,200),(91.3397459621641,205.000000000015),(95.0000000000295,208.6602540
37861),(100.000000000051,210),(105.000000000059,208.66025403781),(108.660254
037887,204.999999999926),(110,199.999999999898),(108.660254037785,194.999999
999897),(104.999999999882,191.339745962088),(99.9999999998469,190),(94.99999
99998527,191.339745962241),(91.3397459620621,195.000000000162))
!
|((0,0),(13.3974596216412,50.0000000001473),(50.0000000002946,86.60254037861
4),(100.00000000051,100),(150.000000000589,86.6025403781036),(186.6025403788
69,49.9999999992634),(200,-1.02068239385585e-09),(186.602540377848,-50.00000
00010313),(149.999999998821,-86.6025403791243),(99.999999998469,-100),(49.99
99999985268,-86.6025403775933),(13.3974596206205,-49.9999999983795))
(6 rows)

QUERY: SELECT '' AS six, polygon(8, f1)
FROM CIRCLE_TBL;
six|polygon
! ---+----------------------------------------------------------------------
----------------------------------------------------------------------------
----------------------------------------------------------------------------
-----------
!
|((-3,0),(-2.12132034355423,2.12132034356506),(1.53102359078377e-11,3),(2.12
132034357588,2.1213203435434),(3,-3.06204718156754e-11),(2.12132034353258,-2
.12132034358671),(-4.59307077235131e-11,-3),(-2.12132034359753,-2.1213203435
2175))
!
|((-99,2),(-69.7106781184743,72.7106781188352),(1.00000000051034,102),(71.71
0678119196,72.7106781181134),(101,1.99999999897932),(71.7106781177526,-68.71
06781195569),(0.999999998468976,-98),(-69.7106781199178,-68.7106781173917))
!
|((-4,3),(-2.53553390592372,6.53553390594176),(1.00000000002552,8),(4.535533
9059598,6.53553390590567),(6,2.99999999994897),(4.53553390588763,-0.53553390
5977846),(0.999999999923449,-2),(-2.53553390599589,-0.535533905869586))
!
|((-2,2),(-1.12132034355423,4.12132034356506),(1.00000000001531,5),(3.121320
34357588,4.1213203435434),(4,1.99999999996938),(3.12132034353258,-0.12132034
3586707),(0.999999999954069,-1),(-1.12132034359753,-0.121320343521752))
!
|((90,200),(92.9289321881526,207.071067811884),(100.000000000051,210),(107.0
7106781192,207.071067811811),(110,199.999999999898),(107.071067811775,192.92
8932188044),(99.9999999998469,190),(92.9289321880082,192.928932188261))
!
|((0,0),(29.2893218815257,70.7106781188352),(100.00000000051,100),(170.71067
8119196,70.7106781181134),(200,-1.02068239385585e-09),(170.710678117753,-70.
7106781195569),(99.999999998469,-100),(29.2893218800822,-70.7106781173917))
(6 rows)

QUERY: SELECT '' AS six, circle(f1, 50.0)

----------------------

*** expected/random.out Mon Aug 17 12:11:15 1998
--- results/random.out Mon Oct  4 09:31:08 1999
***************
*** 13,19 ****
    GROUP BY random HAVING count(random) > 1;
  random|count
  ------+-----
! (0 rows)
  QUERY: SELECT random FROM RANDOM_TBL
    WHERE random NOT BETWEEN 80 AND 120;
--- 13,20 ----
    GROUP BY random HAVING count(random) > 1;
  random|count
  ------+-----
!     89|    2
! (1 row)

QUERY: SELECT random FROM RANDOM_TBL
WHERE random NOT BETWEEN 80 AND 120;

----------------------

Please describe a way to repeat the problem. Please try to provide a
concise reproducible example, if at all possible:
----------------------------------------------------------------------

Compile and run the tests on stated platform.

If you know how this problem might be fixed, list the solution below:
---------------------------------------------------------------------

I have no solutions.

Regards,

Duncan C. Kinder
dckinder@mountain.net

#2Tom Lane
tgl@sss.pgh.pa.us
In reply to: Duncan Kinder (#1)
Re: [BUGS] Three Regression Test Problems involving dates

"Duncan Kinder" <dckinder@mountain.net> writes:

Set forth below are three regression test failures encountered on RedHat
6.0. All involved differences between expected and actual dates. The
actual date is the date the test was run:

I see no date problems there. Are you mistaking the diff headers for
data differences?

Anyway, the exp/pow problems are probably the result of a known
configuration glitch: if finite() is a function rather than a macro
on your machine, then 6.5.* doesn't do overflow testing correctly for
these two functions. The polygon diffs look like just the usual
cross-machine differences in floating-point roundoff error, and the
random diff is, well, random. (Run it again and it probably won't
fail.)

In short, nothing to worry about here.

regards, tom lane