Solved

Is RCS / CVS Y2K compliant?

Posted on 1998-06-23
6
422 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
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
6 Comments
 
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
VIDEO: THE CONCERTO CLOUD FOR HEALTHCARE

Modern healthcare requires a modern cloud. View this brief video to understand how the Concerto Cloud for Healthcare can help your organization.

 
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

Get 15 Days FREE Full-Featured Trial

Benefit from a mission critical IT monitoring with Monitis Premium or get it FREE for your entry level monitoring needs.
-Over 200,000 users
-More than 300,000 websites monitored
-Used in 197 countries
-Recommended by 98% of users

Question has a verified solution.

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

In tuning file systems on the Solaris Operating System, changing some parameters of a file system usually destroys the data on it. For instance, changing the cache segment block size in the volume of a T3 requires that you delete the existing volu…
FreeBSD on EC2 FreeBSD (https://www.freebsd.org) is a robust Unix-like operating system that has been around for many years. FreeBSD is available on Amazon EC2 through Amazon Machine Images (AMIs) provided by FreeBSD developer and security office…
This video shows how to set up a shell script to accept a positional parameter when called, pass that to a SQL script, accept the output from the statement back and then manipulate it in the Shell.
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.
Suggested Courses

624 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