Solved

Is RCS / CVS Y2K compliant?

Posted on 1998-06-23
6
398 Views
Last Modified: 2010-04-21
My underlying OS (SVR4) is Y2K compliant but I was wondering whether RCS and CVS was capable of storing and manipulating dates beyond 1999?

Has anyone actually tested this?
Iis there anything like a site that could provide an "official" answer to this question (eg. support@gnu.com)?:
0
Comment
Question by:firefox032697
6 Comments
 
LVL 51

Expert Comment

by:ahoffmann
ID: 2008153
0
 
LVL 2

Expert Comment

by:richrussell
ID: 2008154
In general most unix applications that have been rewritten several times (RCS certainly has), will use the unix time C library. This is a 32 bit counter from 1/1/1970 in seconds. So it will wrap round in 2038.

However, anything compiled using very recent libraries (ie last year or so), will probably be using a 64 bit counter. This will expire in about 500,000,000,000 - the Earth is set to be swalled up by the Sun in about 20,000,000. So no need to worry there!

I know this doesn't answer the question, but it's interesting all the same...
0
 
LVL 51

Expert Comment

by:ahoffmann
ID: 2008155
RCS and SCCS store dates in the form  yy/mm/dd, so they are not Y2k complient.
AFAIK, SCCS uses 1969 as base (not 1970) and therefore is y2k complient 'till 2068.
0
The Eight Noble Truths of Backup and Recovery

How can IT departments tackle the challenges of a Big Data world? This white paper provides a roadmap to success and helps companies ensure that all their data is safe and secure, no matter if it resides on-premise with physical or virtual machines or in the cloud.

 
LVL 4

Expert Comment

by:jos010697
ID: 2008156
I just checked GNU's implementation of RCS and they explicitely mention
that:

'Y' contains just the last two digits of the year for years from 1900 through
1999, and all the digits of years thereafter.  Dates use the Gregorian calendar;
times use UTC.

This makes me feel quite confident the (at least GNU's) RCS is Y2K 'safe' ...

kind regards,

Jos aka jos@and.nl

0
 
LVL 51

Expert Comment

by:ahoffmann
ID: 2008157
jos, it couldn't be Y2K safe if it just uses 2 digits per year.
Example:
  have a file with deltas made
    01-jan-1999, 31-dec-1999,
    01-jan-2000, 01-jan-2099, 02-jan-2099, 31-dec-2099
then use:
    co -d"1999-01-01" file
    co -d"2099-01-01" file
to get it back.
I never tested this, but I expect that you get deltas from 01-jan-1999 and newer for both co commands.
0
 
LVL 2

Accepted Solution

by:
JYoungman earned 50 total points
ID: 2008158
RCS 5.x is y2k compliant.   For backward compatibility with (very) old versions it uses 2-digit dates until the end of 1999.   After that it uses 4 digits.    

CVS 1.9 itself is not y2k compliant, but there are updates to it (numbered 1.9.x) which are definitely y2k compliant.

It is *possible* for SCCS to be y2k compiant, as ahoffmann stated, but most installed versions of unix have a non-compliant version.    All the Unix vendors offer a compliant version currently though -- you would need to pay for it.  
0

Featured Post

3 Use Cases for Connected Systems

Our Dev teams are like yours. They’re continually cranking out code for new features/bugs fixes, testing, deploying, testing some more, responding to production monitoring events and more. It’s complex. So, we thought you’d like to see what’s working for us.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Attention: This article will no longer be maintained. If you have any questions, please feel free to mail me. jgh@FreeBSD.org Please see http://www.freebsd.org/doc/en_US.ISO8859-1/articles/freebsd-update-server/ for the updated article. It is avail…
When you do backups in the Solaris Operating System, the file system must be inactive. Otherwise, the output may be inconsistent. A file system is inactive when it's unmounted or it's write-locked by the operating system. Although the fssnap utility…
Learn how to navigate the file tree with the shell. Use pwd to print the current working directory: Use ls to list a directory's contents: Use cd to change to a new directory: Use wildcards instead of typing out long directory names: Use ../ to move…
In a previous video, we went over how to export a DynamoDB table into Amazon S3.  In this video, we show how to load the export from S3 into a DynamoDB table.

809 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question