Year 2000 problems…

Last year our firm (AMIS) celebrated its 15th anniversary. This year Oracle celebrates its 30th year of its existence. In that reflective light, I remembered a nice “Easter egg” regarding the database software. A long time ago, I guess somewhere in 1997, 1998, I was working as a DBA consultant for a big Dutch banking cooperation. Preparing for the upcoming year 2000 in those days we tested a lot of applications and databases regarding the year 2000 problems (date formats regarding: YY, YYYY, RRRR…), etc…

An UNIX (AIX) system administrator of this banking cooperation accidentally did a reset to the default date/time of an AIX (version 3.2?) machine (RS/6000): 01-01-1970. I am not absolutely sure, but I think it was this date. He did this while I was starting an Oracle database (Oracle V. 7.3.x) and to my surprise I got an Oracle error from the database that said something in the lines of…”Sorry, but this date / time setting can’t be correct, because the Oracle Company didn’t exist in those days”.

The other day I tested some Operating System / Oracle database combinations, in the light of the anniversaries (and for some fun), regarding this phenomena to see if I could reproduce the message.

I am a little bit disappointed now, because I couldn’t.

Some of the lessons I learned…

  • RedHat 3.0 can’t be set to a date before a date with 010100001970 (01 January 0000 Hours 1970).
  • On SUSE 9.3 this is possible, strangely enough, it can’t be set to a date before 010100001902 (01 January 0000 Hours 1902).

Regarding the databases I checked on these systems:

  • One crashed with a segmentation fault regarding every setting before the year 2000 (an Service Request has been logged)
  • One (an Oracle Enterprise Edition database) returned an error with the message “ORA-01513: invalid current time returned by operating system” if the date was set to a year before the 2000

In short, those new versions of the Oracle databases are year 2000 compliant; they won’t start before this date (which on itself is also a kind of an “Easter egg”). I am wondering if phenomena is related to the year 2000 problems or not or just a new restriction of the database or the operating system. It is a shame though I can’t (yet) imitate the brilliant ORA message, which I thought, had a lot of humor in it…


Small addition

My college Alex Nuijten asked me if I also had done my small test on my Oracle 4.1 environment, which I still treasure. Besides the new versions I also did a small test on that environment, but because this environment with MSDOS 6.2 doesn’t want to reset it’s date before 1980, this isn’t a real problem for the 4.1 database.

This database has in it’s header when it starts: “Copyright (c) 1997, 1980, 1981, 1982” so my guess was that it at least could handle the 1980 year data (and probably 1979), three years after Oracle has been founded.