I've built and run the regression tests on PostgreSQL7.3 beta 2 on
SGI Irix and found the following suspicious compiler error message:

gmake[4]: Entering directory `/pg/postgresql-7.3b2/src/backend/utils/hash'
cc -64 -g -woff 1164,1171,1185,1195,1552 -I../../../../src/include -I/stf/sys64/include -I/stf/sys64/include/readline -U_NO_XOPEN4  -c dynahash.c -o dynahash.o
cc-1184 cc: WARNING File = dynahash.c, Line = 543
  "=" is used where where "==" may have been intended.

  		Assert(currBucket && !(saveState.currBucket = NULL));
  		^

Looks like a bug to me.

All the regression tests pass except for tests involving Savings Time
which are off by one hour. --Bob

+-----------------------------+------------------------------------+
| Robert E. Bruccoleri, Ph.D. | email: bruc@acm.org                |
| P.O. Box 314                | URL:   http://www.congen.com/~bruc |
| Pennington, NJ 08534        |                                    |
+-----------------------------+------------------------------------+

Thu, 31 Oct 2002 10:35:11 -0500 (EST)
"Robert E. Bruccoleri" <bruc@stone.congenomics.com>
Test of PG7.3.2b2 on SGI Irix
"Robert E. Bruccoleri" <bruc@stone.congenomics.com> writes:
> gmake[4]: Entering directory `/pg/postgresql-7.3b2/src/backend/utils/hash'
> cc -64 -g -woff 1164,1171,1185,1195,1552 -I../../../../src/include -I/stf/sys64/include -I/stf/sys64/include/readline -U_NO_XOPEN4  -c dynahash.c -o dynahash.o
> cc-1184 cc: WARNING File = dynahash.c, Line = 543
>   "=" is used where where "==" may have been intended.

>   		Assert(currBucket && !(saveState.currBucket = NULL));
>   		^

> Looks like a bug to me.

No, the code is correct, although no doubt too clever by half :-(

> All the regression tests pass except for tests involving Savings Time
> which are off by one hour. --Bob

Details?  If you ran it today then the DST-boundary problems shouldn't
be there anymore.

			regards, tom lane

Thu, 31 Oct 2002 12:04:41 -0500
Tom Lane <tgl@sss.pgh.pa.us>
Re: Test of PG7.3.2b2 on SGI Irix 
Dear Tom,
> 
> 
> "Robert E. Bruccoleri" <bruc@stone.congenomics.com> writes:
> > gmake[4]: Entering directory `/pg/postgresql-7.3b2/src/backend/utils/hash'
> > cc -64 -g -woff 1164,1171,1185,1195,1552 -I../../../../src/include -I/stf/sys64/include -I/stf/sys64/include/readline -U_NO_XOPEN4  -c dynahash.c -o dynahash.o
> > cc-1184 cc: WARNING File = dynahash.c, Line = 543
> >   "=" is used where where "==" may have been intended.
> 
> >   		Assert(currBucket && !(saveState.currBucket = NULL));
> >   		^
> 
> > Looks like a bug to me.
> 
> No, the code is correct, although no doubt too clever by half :-(

How can it be correct? If the assertion checking is turned off, then
saveState.currBucket will not be changed, but if assertion checking is
on, it will be set to NULL. The only way that it would make no
difference would be if the saveState.currBucket were NULL to begin
with, but then, why make the assignment?

> 
> > All the regression tests pass except for tests involving Savings Time
> > which are off by one hour. --Bob
> 
> Details?  If you ran it today then the DST-boundary problems shouldn't
> be there anymore.

Here are the diffs:

*** abstime.out	Thu Oct 31 13:18:04 2002
--- ../expected/abstime.out	Wed Nov 21 13:27:25 2001
***************
*** 44,50 ****
         | Wed Dec 31 16:00:00 1969 PST
         | infinity
         | -infinity
!        | Sat May 10 22:59:12 1947 PST
         | invalid
  (7 rows)
  
--- 44,50 ----
         | Wed Dec 31 16:00:00 1969 PST
         | infinity
         | -infinity
!        | Sat May 10 23:59:12 1947 PST
         | invalid
  (7 rows)
  
***************
*** 56,62 ****
       | Mon May 01 00:30:30 1995 PDT
       | Wed Dec 31 16:00:00 1969 PST
       | -infinity
!      | Sat May 10 22:59:12 1947 PST
  (5 rows)
  
  SELECT '' AS six, ABSTIME_TBL.*
--- 56,62 ----
       | Mon May 01 00:30:30 1995 PDT
       | Wed Dec 31 16:00:00 1969 PST
       | -infinity
!      | Sat May 10 23:59:12 1947 PST
  (5 rows)
  
  SELECT '' AS six, ABSTIME_TBL.*
***************
*** 67,73 ****
       | Mon May 01 00:30:30 1995 PDT
       | Wed Dec 31 16:00:00 1969 PST
       | infinity
!      | Sat May 10 22:59:12 1947 PST
       | invalid
  (6 rows)
  
--- 67,73 ----
       | Mon May 01 00:30:30 1995 PDT
       | Wed Dec 31 16:00:00 1969 PST
       | infinity
!      | Sat May 10 23:59:12 1947 PST
       | invalid
  (6 rows)
  
***************
*** 89,95 ****
  -------+------------------------------
         | Wed Dec 31 16:00:00 1969 PST
         | -infinity
!        | Sat May 10 22:59:12 1947 PST
  (3 rows)
  
  SELECT '' AS four, ABSTIME_TBL.*
--- 89,95 ----
  -------+------------------------------
         | Wed Dec 31 16:00:00 1969 PST
         | -infinity
!        | Sat May 10 23:59:12 1947 PST
  (3 rows)
  
  SELECT '' AS four, ABSTIME_TBL.*
***************
*** 99,105 ****
        | Sun Jan 14 03:14:21 1973 PST
        | Wed Dec 31 16:00:00 1969 PST
        | -infinity
!       | Sat May 10 22:59:12 1947 PST
  (4 rows)
  
  SELECT '' AS four, ABSTIME_TBL.*
--- 99,105 ----
        | Sun Jan 14 03:14:21 1973 PST
        | Wed Dec 31 16:00:00 1969 PST
        | -infinity
!       | Sat May 10 23:59:12 1947 PST
  (4 rows)
  
  SELECT '' AS four, ABSTIME_TBL.*
***************
*** 121,127 ****
    ORDER BY abstime;
   four |           abstime            | year | month | day | hour | minute | second 
  ------+------------------------------+------+-------+-----+------+--------+--------
!       | Sat May 10 22:59:12 1947 PST | 1947 |     5 |  10 |   22 |     59 |     12
        | Wed Dec 31 16:00:00 1969 PST | 1969 |    12 |  31 |   16 |      0 |      0
        | Sun Jan 14 03:14:21 1973 PST | 1973 |     1 |  14 |    3 |     14 |     21
        | Mon May 01 00:30:30 1995 PDT | 1995 |     5 |   1 |    0 |     30 |     30
--- 121,127 ----
    ORDER BY abstime;
   four |           abstime            | year | month | day | hour | minute | second 
  ------+------------------------------+------+-------+-----+------+--------+--------
!       | Sat May 10 23:59:12 1947 PST | 1947 |     5 |  10 |   23 |     59 |     12
        | Wed Dec 31 16:00:00 1969 PST | 1969 |    12 |  31 |   16 |      0 |      0
        | Sun Jan 14 03:14:21 1973 PST | 1973 |     1 |  14 |    3 |     14 |     21
        | Mon May 01 00:30:30 1995 PDT | 1995 |     5 |   1 |    0 |     30 |     30

*** horology.out	Thu Oct 31 13:18:19 2002
--- ../expected/horology.out	Wed Sep 18 17:35:25 2002
***************
*** 1741,1750 ****
       | Wed Mar 15 13:14:02 2000 PST | @ 34 years                    | Tue Mar 15 13:14:02 1966 PST
       | Sun Dec 31 17:32:01 2000 PST | @ 34 years                    | Sat Dec 31 17:32:01 1966 PST
       | Mon Jan 01 17:32:01 2001 PST | @ 34 years                    | Sun Jan 01 17:32:01 1967 PST
!      | Sat Sep 22 18:19:20 2001 PDT | @ 34 years                    | Fri Sep 22 17:19:20 1967 PST
!      | Thu Jan 01 00:00:00 1970 PST | @ 5 mons 12 hours             | Thu Jul 31 11:00:00 1969 PST
!      | Thu Jan 01 00:00:00 1970 PST | @ 5 mons                      | Thu Jul 31 23:00:00 1969 PST
!      | Thu Jan 01 00:00:00 1970 PST | @ 3 mons                      | Tue Sep 30 23:00:00 1969 PST
       | Thu Jan 01 00:00:00 1970 PST | @ 10 days                     | Mon Dec 22 00:00:00 1969 PST
       | Thu Jan 01 00:00:00 1970 PST | @ 1 day 2 hours 3 mins 4 secs | Tue Dec 30 21:56:56 1969 PST
       | Thu Jan 01 00:00:00 1970 PST | @ 5 hours                     | Wed Dec 31 19:00:00 1969 PST
--- 1741,1750 ----
       | Wed Mar 15 13:14:02 2000 PST | @ 34 years                    | Tue Mar 15 13:14:02 1966 PST
       | Sun Dec 31 17:32:01 2000 PST | @ 34 years                    | Sat Dec 31 17:32:01 1966 PST
       | Mon Jan 01 17:32:01 2001 PST | @ 34 years                    | Sun Jan 01 17:32:01 1967 PST
!      | Sat Sep 22 18:19:20 2001 PDT | @ 34 years                    | Fri Sep 22 18:19:20 1967 PDT
!      | Thu Jan 01 00:00:00 1970 PST | @ 5 mons 12 hours             | Thu Jul 31 12:00:00 1969 PDT
!      | Thu Jan 01 00:00:00 1970 PST | @ 5 mons                      | Fri Aug 01 00:00:00 1969 PDT
!      | Thu Jan 01 00:00:00 1970 PST | @ 3 mons                      | Wed Oct 01 00:00:00 1969 PDT
       | Thu Jan 01 00:00:00 1970 PST | @ 10 days                     | Mon Dec 22 00:00:00 1969 PST
       | Thu Jan 01 00:00:00 1970 PST | @ 1 day 2 hours 3 mins 4 secs | Tue Dec 30 21:56:56 1969 PST
       | Thu Jan 01 00:00:00 1970 PST | @ 5 hours                     | Wed Dec 31 19:00:00 1969 PST
***************
*** 2183,2193 ****
     ORDER BY abstime, reltime;
   ten |           abstime            |    reltime    
  -----+------------------------------+---------------
!      | Sat May 10 22:59:12 1947 PST | @ 14 secs ago
!      | Sat May 10 22:59:12 1947 PST | @ 1 min
!      | Sat May 10 22:59:12 1947 PST | @ 5 hours
!      | Sat May 10 22:59:12 1947 PST | @ 10 days
!      | Sat May 10 22:59:12 1947 PST | @ 3 mons
       | Wed Dec 31 16:00:00 1969 PST | @ 14 secs ago
       | Wed Dec 31 16:00:00 1969 PST | @ 1 min
       | Wed Dec 31 16:00:00 1969 PST | @ 5 hours
--- 2183,2193 ----
     ORDER BY abstime, reltime;
   ten |           abstime            |    reltime    
  -----+------------------------------+---------------
!      | Sat May 10 23:59:12 1947 PST | @ 14 secs ago
!      | Sat May 10 23:59:12 1947 PST | @ 1 min
!      | Sat May 10 23:59:12 1947 PST | @ 5 hours
!      | Sat May 10 23:59:12 1947 PST | @ 10 days
!      | Sat May 10 23:59:12 1947 PST | @ 3 mons
       | Wed Dec 31 16:00:00 1969 PST | @ 14 secs ago
       | Wed Dec 31 16:00:00 1969 PST | @ 1 min
       | Wed Dec 31 16:00:00 1969 PST | @ 5 hours
***************
*** 2205,2211 ****
  -------+------------------------------
         | Sun Jan 14 03:14:21 1973 PST
         | Wed Dec 31 16:00:00 1969 PST
!        | Sat May 10 22:59:12 1947 PST
  (3 rows)
  
  SELECT '' AS three, ABSTIME_TBL.*
--- 2205,2211 ----
  -------+------------------------------
         | Sun Jan 14 03:14:21 1973 PST
         | Wed Dec 31 16:00:00 1969 PST
!        | Sat May 10 23:59:12 1947 PST
  (3 rows)
  
  SELECT '' AS three, ABSTIME_TBL.*
***************
*** 2215,2221 ****
  -------+------------------------------
         | Sun Jan 14 03:14:21 1973 PST
         | Wed Dec 31 16:00:00 1969 PST
!        | Sat May 10 22:59:12 1947 PST
  (3 rows)
  
  SELECT '' AS three, ABSTIME_TBL.*
--- 2215,2221 ----
  -------+------------------------------
         | Sun Jan 14 03:14:21 1973 PST
         | Wed Dec 31 16:00:00 1969 PST
!        | Sat May 10 23:59:12 1947 PST
  (3 rows)
  
  SELECT '' AS three, ABSTIME_TBL.*
***************
*** 2225,2231 ****
  -------+------------------------------
         | Sun Jan 14 03:14:21 1973 PST
         | Wed Dec 31 16:00:00 1969 PST
!        | Sat May 10 22:59:12 1947 PST
  (3 rows)
  
  SELECT '' AS three, ABSTIME_TBL.*
--- 2225,2231 ----
  -------+------------------------------
         | Sun Jan 14 03:14:21 1973 PST
         | Wed Dec 31 16:00:00 1969 PST
!        | Sat May 10 23:59:12 1947 PST
  (3 rows)
  
  SELECT '' AS three, ABSTIME_TBL.*
***************
*** 2235,2241 ****
  -------+------------------------------
         | Sun Jan 14 03:14:21 1973 PST
         | Wed Dec 31 16:00:00 1969 PST
!        | Sat May 10 22:59:12 1947 PST
  (3 rows)
  
  --
--- 2235,2241 ----
  -------+------------------------------
         | Sun Jan 14 03:14:21 1973 PST
         | Wed Dec 31 16:00:00 1969 PST
!        | Sat May 10 23:59:12 1947 PST
  (3 rows)
  
  --
***************
*** 2294,2300 ****
    ORDER BY date, abstime;
   four |           abstime            |    date    
  ------+------------------------------+------------
!       | Sat May 10 22:59:12 1947 PST | 05-10-1947
        | Wed Dec 31 16:00:00 1969 PST | 12-31-1969
        | Sun Jan 14 03:14:21 1973 PST | 01-14-1973
        | Mon May 01 00:30:30 1995 PDT | 05-01-1995
--- 2294,2300 ----
    ORDER BY date, abstime;
   four |           abstime            |    date    
  ------+------------------------------+------------
!       | Sat May 10 23:59:12 1947 PST | 05-10-1947
        | Wed Dec 31 16:00:00 1969 PST | 12-31-1969
        | Sun Jan 14 03:14:21 1973 PST | 01-14-1973
        | Mon May 01 00:30:30 1995 PDT | 05-01-1995
***************
*** 2427,2433 ****
         | Wed Dec 31 16:00:00 1969 PST
         | infinity
         | -infinity
!        | Sat May 10 22:59:12 1947 PST
         | invalid
  (7 rows)
  
--- 2427,2433 ----
         | Wed Dec 31 16:00:00 1969 PST
         | infinity
         | -infinity
!        | Sat May 10 23:59:12 1947 PST
         | invalid
  (7 rows)
  
***************
*** 2509,2515 ****
         | 1969-12-31 16:00:00-08
         | infinity
         | -infinity
!        | 1947-05-10 22:59:12-08
         | invalid
  (7 rows)
  
--- 2509,2515 ----
         | 1969-12-31 16:00:00-08
         | infinity
         | -infinity
!        | 1947-05-10 23:59:12-08
         | invalid
  (7 rows)
  
***************
*** 2597,2603 ****
         | 12/31/1969 16:00:00 PST
         | infinity
         | -infinity
!        | 05/10/1947 22:59:12 PST
         | invalid
  (7 rows)
  
--- 2597,2603 ----
         | 12/31/1969 16:00:00 PST
         | infinity
         | -infinity
!        | 05/10/1947 23:59:12 PST
         | invalid
  (7 rows)
  
***************
*** 2693,2699 ****
         | Wed 31 Dec 16:00:00 1969 PST
         | infinity
         | -infinity
!        | Sat 10 May 22:59:12 1947 PST
         | invalid
  (7 rows)
  
--- 2693,2699 ----
         | Wed 31 Dec 16:00:00 1969 PST
         | infinity
         | -infinity
!        | Sat 10 May 23:59:12 1947 PST
         | invalid
  (7 rows)
  
***************
*** 2782,2788 ****
         | 1969-12-31 16:00:00-08
         | infinity
         | -infinity
!        | 1947-05-10 22:59:12-08
         | invalid
  (7 rows)
  
--- 2782,2788 ----
         | 1969-12-31 16:00:00-08
         | infinity
         | -infinity
!        | 1947-05-10 23:59:12-08
         | invalid
  (7 rows)
  
***************
*** 2871,2877 ****
         | 31/12/1969 16:00:00 PST
         | infinity
         | -infinity
!        | 10/05/1947 22:59:12 PST
         | invalid
  (7 rows)
  
--- 2871,2877 ----
         | 31/12/1969 16:00:00 PST
         | infinity
         | -infinity
!        | 10/05/1947 23:59:12 PST
         | invalid
  (7 rows)
  
*** tinterval.out	Thu Oct 31 13:18:04 2002
--- ../expected/tinterval.out	Fri Sep 28 03:59:53 2001
***************
*** 26,32 ****
   five |                               f1                                
  ------+-----------------------------------------------------------------
        | ["-infinity" "infinity"]
!       | ["Sat May 10 22:59:12 1947 PST" "Sun Jan 14 03:14:21 1973 PST"]
        | ["Sun Sep 04 23:59:12 1983 PDT" "Tue Oct 04 23:59:12 1983 PDT"]
        | ["Wed Dec 31 16:00:00 1969 PST" "Mon May 01 00:30:30 1995 PDT"]
        | ["Thu Feb 15 12:15:03 1990 PST" "Sun Sep 23 11:12:13 2001 PDT"]
--- 26,32 ----
   five |                               f1                                
  ------+-----------------------------------------------------------------
        | ["-infinity" "infinity"]
!       | ["Sat May 10 23:59:12 1947 PST" "Sun Jan 14 03:14:21 1973 PST"]
        | ["Sun Sep 04 23:59:12 1983 PDT" "Tue Oct 04 23:59:12 1983 PDT"]
        | ["Wed Dec 31 16:00:00 1969 PST" "Mon May 01 00:30:30 1995 PDT"]
        | ["Thu Feb 15 12:15:03 1990 PST" "Sun Sep 23 11:12:13 2001 PDT"]
***************
*** 47,53 ****
     WHERE t.f1 #<> '@ 1 months';
   three |                               f1                                
  -------+-----------------------------------------------------------------
!        | ["Sat May 10 22:59:12 1947 PST" "Sun Jan 14 03:14:21 1973 PST"]
         | ["Wed Dec 31 16:00:00 1969 PST" "Mon May 01 00:30:30 1995 PDT"]
         | ["Thu Feb 15 12:15:03 1990 PST" "Sun Sep 23 11:12:13 2001 PDT"]
  (3 rows)
--- 47,53 ----
     WHERE t.f1 #<> '@ 1 months';
   three |                               f1                                
  -------+-----------------------------------------------------------------
!        | ["Sat May 10 23:59:12 1947 PST" "Sun Jan 14 03:14:21 1973 PST"]
         | ["Wed Dec 31 16:00:00 1969 PST" "Mon May 01 00:30:30 1995 PDT"]
         | ["Thu Feb 15 12:15:03 1990 PST" "Sun Sep 23 11:12:13 2001 PDT"]
  (3 rows)
***************
*** 75,81 ****
     WHERE t.f1 #> '@ 1 year';
   three |                               f1                                
  -------+-----------------------------------------------------------------
!        | ["Sat May 10 22:59:12 1947 PST" "Sun Jan 14 03:14:21 1973 PST"]
         | ["Wed Dec 31 16:00:00 1969 PST" "Mon May 01 00:30:30 1995 PDT"]
         | ["Thu Feb 15 12:15:03 1990 PST" "Sun Sep 23 11:12:13 2001 PDT"]
  (3 rows)
--- 75,81 ----
     WHERE t.f1 #> '@ 1 year';
   three |                               f1                                
  -------+-----------------------------------------------------------------
!        | ["Sat May 10 23:59:12 1947 PST" "Sun Jan 14 03:14:21 1973 PST"]
         | ["Wed Dec 31 16:00:00 1969 PST" "Mon May 01 00:30:30 1995 PDT"]
         | ["Thu Feb 15 12:15:03 1990 PST" "Sun Sep 23 11:12:13 2001 PDT"]
  (3 rows)
***************
*** 86,92 ****
     WHERE t.f1 #>= '@ 3 years';
   three |                               f1                                
  -------+-----------------------------------------------------------------
!        | ["Sat May 10 22:59:12 1947 PST" "Sun Jan 14 03:14:21 1973 PST"]
         | ["Wed Dec 31 16:00:00 1969 PST" "Mon May 01 00:30:30 1995 PDT"]
         | ["Thu Feb 15 12:15:03 1990 PST" "Sun Sep 23 11:12:13 2001 PDT"]
  (3 rows)
--- 86,92 ----
     WHERE t.f1 #>= '@ 3 years';
   three |                               f1                                
  -------+-----------------------------------------------------------------
!        | ["Sat May 10 23:59:12 1947 PST" "Sun Jan 14 03:14:21 1973 PST"]
         | ["Wed Dec 31 16:00:00 1969 PST" "Mon May 01 00:30:30 1995 PDT"]
         | ["Thu Feb 15 12:15:03 1990 PST" "Sun Sep 23 11:12:13 2001 PDT"]
  (3 rows)
***************
*** 115,121 ****
        | ["Sun Sep 04 23:59:12 1983 PDT" "Tue Oct 04 23:59:12 1983 PDT"] | ["Sun Sep 04 23:59:12 1983 PDT" "Tue Oct 04 23:59:12 1983 PDT"]
        | ["Thu Feb 15 12:15:03 1990 PST" "Sun Sep 23 11:12:13 2001 PDT"] | ["Thu Feb 15 12:15:03 1990 PST" "Sun Sep 23 11:12:13 2001 PDT"]
        | ["Wed Dec 31 16:00:00 1969 PST" "Mon May 01 00:30:30 1995 PDT"] | ["Wed Dec 31 16:00:00 1969 PST" "Mon May 01 00:30:30 1995 PDT"]
!       | ["Sat May 10 22:59:12 1947 PST" "Sun Jan 14 03:14:21 1973 PST"] | ["Sat May 10 22:59:12 1947 PST" "Sun Jan 14 03:14:21 1973 PST"]
  (5 rows)
  
  SELECT '' AS fourteen, t1.f1 AS interval1, t2.f1 AS interval2
--- 115,121 ----
        | ["Sun Sep 04 23:59:12 1983 PDT" "Tue Oct 04 23:59:12 1983 PDT"] | ["Sun Sep 04 23:59:12 1983 PDT" "Tue Oct 04 23:59:12 1983 PDT"]
        | ["Thu Feb 15 12:15:03 1990 PST" "Sun Sep 23 11:12:13 2001 PDT"] | ["Thu Feb 15 12:15:03 1990 PST" "Sun Sep 23 11:12:13 2001 PDT"]
        | ["Wed Dec 31 16:00:00 1969 PST" "Mon May 01 00:30:30 1995 PDT"] | ["Wed Dec 31 16:00:00 1969 PST" "Mon May 01 00:30:30 1995 PDT"]
!       | ["Sat May 10 23:59:12 1947 PST" "Sun Jan 14 03:14:21 1973 PST"] | ["Sat May 10 23:59:12 1947 PST" "Sun Jan 14 03:14:21 1973 PST"]
  (5 rows)
  
  SELECT '' AS fourteen, t1.f1 AS interval1, t2.f1 AS interval2
***************
*** 127,133 ****
            | ["-infinity" "infinity"]                                        | ["Sun Sep 04 23:59:12 1983 PDT" "Tue Oct 04 23:59:12 1983 PDT"]
            | ["-infinity" "infinity"]                                        | ["Thu Feb 15 12:15:03 1990 PST" "Sun Sep 23 11:12:13 2001 PDT"]
            | ["-infinity" "infinity"]                                        | ["Wed Dec 31 16:00:00 1969 PST" "Mon May 01 00:30:30 1995 PDT"]
!           | ["-infinity" "infinity"]                                        | ["Sat May 10 22:59:12 1947 PST" "Sun Jan 14 03:14:21 1973 PST"]
            | ["Sun Sep 04 23:59:12 1983 PDT" "Tue Oct 04 23:59:12 1983 PDT"] | ["-infinity" "infinity"]
            | ["Sun Sep 04 23:59:12 1983 PDT" "Tue Oct 04 23:59:12 1983 PDT"] | ["Wed Dec 31 16:00:00 1969 PST" "Mon May 01 00:30:30 1995 PDT"]
            | ["Thu Feb 15 12:15:03 1990 PST" "Sun Sep 23 11:12:13 2001 PDT"] | ["-infinity" "infinity"]
--- 127,133 ----
            | ["-infinity" "infinity"]                                        | ["Sun Sep 04 23:59:12 1983 PDT" "Tue Oct 04 23:59:12 1983 PDT"]
            | ["-infinity" "infinity"]                                        | ["Thu Feb 15 12:15:03 1990 PST" "Sun Sep 23 11:12:13 2001 PDT"]
            | ["-infinity" "infinity"]                                        | ["Wed Dec 31 16:00:00 1969 PST" "Mon May 01 00:30:30 1995 PDT"]
!           | ["-infinity" "infinity"]                                        | ["Sat May 10 23:59:12 1947 PST" "Sun Jan 14 03:14:21 1973 PST"]
            | ["Sun Sep 04 23:59:12 1983 PDT" "Tue Oct 04 23:59:12 1983 PDT"] | ["-infinity" "infinity"]
            | ["Sun Sep 04 23:59:12 1983 PDT" "Tue Oct 04 23:59:12 1983 PDT"] | ["Wed Dec 31 16:00:00 1969 PST" "Mon May 01 00:30:30 1995 PDT"]
            | ["Thu Feb 15 12:15:03 1990 PST" "Sun Sep 23 11:12:13 2001 PDT"] | ["-infinity" "infinity"]
***************
*** 135,143 ****
            | ["Wed Dec 31 16:00:00 1969 PST" "Mon May 01 00:30:30 1995 PDT"] | ["-infinity" "infinity"]
            | ["Wed Dec 31 16:00:00 1969 PST" "Mon May 01 00:30:30 1995 PDT"] | ["Sun Sep 04 23:59:12 1983 PDT" "Tue Oct 04 23:59:12 1983 PDT"]
            | ["Wed Dec 31 16:00:00 1969 PST" "Mon May 01 00:30:30 1995 PDT"] | ["Thu Feb 15 12:15:03 1990 PST" "Sun Sep 23 11:12:13 2001 PDT"]
!           | ["Wed Dec 31 16:00:00 1969 PST" "Mon May 01 00:30:30 1995 PDT"] | ["Sat May 10 22:59:12 1947 PST" "Sun Jan 14 03:14:21 1973 PST"]
!           | ["Sat May 10 22:59:12 1947 PST" "Sun Jan 14 03:14:21 1973 PST"] | ["-infinity" "infinity"]
!           | ["Sat May 10 22:59:12 1947 PST" "Sun Jan 14 03:14:21 1973 PST"] | ["Wed Dec 31 16:00:00 1969 PST" "Mon May 01 00:30:30 1995 PDT"]
  (14 rows)
  
  -- contains
--- 135,143 ----
            | ["Wed Dec 31 16:00:00 1969 PST" "Mon May 01 00:30:30 1995 PDT"] | ["-infinity" "infinity"]
            | ["Wed Dec 31 16:00:00 1969 PST" "Mon May 01 00:30:30 1995 PDT"] | ["Sun Sep 04 23:59:12 1983 PDT" "Tue Oct 04 23:59:12 1983 PDT"]
            | ["Wed Dec 31 16:00:00 1969 PST" "Mon May 01 00:30:30 1995 PDT"] | ["Thu Feb 15 12:15:03 1990 PST" "Sun Sep 23 11:12:13 2001 PDT"]
!           | ["Wed Dec 31 16:00:00 1969 PST" "Mon May 01 00:30:30 1995 PDT"] | ["Sat May 10 23:59:12 1947 PST" "Sun Jan 14 03:14:21 1973 PST"]
!           | ["Sat May 10 23:59:12 1947 PST" "Sun Jan 14 03:14:21 1973 PST"] | ["-infinity" "infinity"]
!           | ["Sat May 10 23:59:12 1947 PST" "Sun Jan 14 03:14:21 1973 PST"] | ["Wed Dec 31 16:00:00 1969 PST" "Mon May 01 00:30:30 1995 PDT"]
  (14 rows)
  
  -- contains
***************
*** 150,156 ****
  ------+-----------------------------------------------------------------
        | ["Sun Sep 04 23:59:12 1983 PDT" "Tue Oct 04 23:59:12 1983 PDT"]
        | ["Thu Feb 15 12:15:03 1990 PST" "Sun Sep 23 11:12:13 2001 PDT"]
!       | ["Sat May 10 22:59:12 1947 PST" "Sun Jan 14 03:14:21 1973 PST"]
  (3 rows)
  
  -- make time interval
--- 150,156 ----
  ------+-----------------------------------------------------------------
        | ["Sun Sep 04 23:59:12 1983 PDT" "Tue Oct 04 23:59:12 1983 PDT"]
        | ["Thu Feb 15 12:15:03 1990 PST" "Sun Sep 23 11:12:13 2001 PDT"]
!       | ["Sat May 10 23:59:12 1947 PST" "Sun Jan 14 03:14:21 1973 PST"]
  (3 rows)
  
  -- make time interval


+-----------------------------+------------------------------------+
| Robert E. Bruccoleri, Ph.D. | email: bruc@acm.org                |
| P.O. Box 314                | URL:   http://www.congen.com/~bruc |
| Pennington, NJ 08534        |                                    |
+-----------------------------+------------------------------------+

Thu, 31 Oct 2002 14:44:42 -0500 (EST)
"Robert E. Bruccoleri" <bruc@stone.congenomics.com>
Re: Test of PG7.3.2b2 on SGI Irix
"Robert E. Bruccoleri" <bruc@stone.congenomics.com> writes:
>> No, the code is correct, although no doubt too clever by half :-(

> How can it be correct? If the assertion checking is turned off, then
> saveState.currBucket will not be changed, but if assertion checking is
> on, it will be set to NULL. The only way that it would make no
> difference would be if the saveState.currBucket were NULL to begin
> with, but then, why make the assignment?

If assertion checking is off (and the code is otherwise correct) then
there's no need to reset saveState.currBucket to NULL, or so at least
I interpret the author's intent.  Notice that an == test would be
completely redundant with the first part of the Assert, since the
local currBucket was just assigned from saveState.currBucket.  What
is really being accomplished here is equivalent to
		Assert(currBucket);
#ifdef USE_ASSERT_CHECKING
		saveState.currBucket = NULL;
#endif

However, it's a tad silly to confuse readers this much in order to save
one lousy store instruction, so I'm inclined to change it to
		Assert(currBucket);
		saveState.currBucket = NULL;
IIRC, you're not the first to look at that code and think it's wrong.


>>> All the regression tests pass except for tests involving Savings Time
>>> which are off by one hour. --Bob
>> 
>> Details?  If you ran it today then the DST-boundary problems shouldn't
>> be there anymore.

> Here are the diffs:

It looks like your files match the solaris-1947 variants; would you
confirm that?  If so, please send a patch with a resultmap addition
that matches your platform.  There is already an entry

horology/.*-irix6=horology-no-DST-before-1970

but it looks like that's not triggering on your system.

			regards, tom lane

Thu, 31 Oct 2002 16:50:02 -0500
Tom Lane <tgl@sss.pgh.pa.us>
Re: Test of PG7.3.2b2 on SGI Irix 
Dear Tom,

> >>> All the regression tests pass except for tests involving Savings Time
> >>> which are off by one hour. --Bob
> >> 
> >> Details?  If you ran it today then the DST-boundary problems shouldn't
> >> be there anymore.
> 
> > Here are the diffs:
> 
> It looks like your files match the solaris-1947 variants; would you
> confirm that?  If so, please send a patch with a resultmap addition
> that matches your platform.  There is already an entry
> 
> horology/.*-irix6=horology-no-DST-before-1970
> 
> but it looks like that's not triggering on your system.

It's not the same as the solaris-1947 variants. I compared all three
horology files in the expected directory -- none match.  There is no
such irix6 file in the distribution.

Please let me know what else you'd like me to do WRT to this
diff. --Bob

+-----------------------------+------------------------------------+
| Robert E. Bruccoleri, Ph.D. | email: bruc@acm.org                |
| P.O. Box 314                | URL:   http://www.congen.com/~bruc |
| Pennington, NJ 08534        |                                    |
+-----------------------------+------------------------------------+

Tue, 5 Nov 2002 19:11:31 -0500 (EST)
"Robert E. Bruccoleri" <bruc@stone.congenomics.com>
Re: Test of PG7.3.2b2 on SGI Irix