Subject: CMVC 2.3.1 and support for the Year 2000 Date last updated: 30-Aug-1999 File name: README.year2000.txt VM file name: CMVCY2K.TXT The most up to date version of this file can be found in our ftp site: ftp://ftp.software.ibm.com/ps/products/cmvc/README.year2000.txt The CMVC 2.3.1 version-release-modification provides support for the Year 2000 by using 4 digits instead of 2 to represent the year. CMVC 2.3.1.1 was branched out from CMVC 2.3.0.24. 1. Prerequisites for running CMVC 2.3.1 --------------------------------------- 1.1. Operating Systems ---------------------- CMVC uses the UNIX utility SCCS to provide the version control for the file changes. The original version of this utility is not ready with the Year 2000: a file created in 19xx cannot be checked out in 20xx, nor a new file can be created in 20xx. However, the UNIX utility SCCS was been fixed to be ready with the Year 2000 in the versions of the operating systems mentioned below and by applying the necessary patches provided by the appropriate software company. These SCCS patches are NOT provided by CMVC. We have successfully tested CMVC 2.3.1 by creating files in 1998 and then changing the system date to 2005 and then doing a checkout and a checkin. This means that only these versions of the operating systems that have the appropriate SCCS patches can be used with CMVC 2.3.1 before and after the Year 2000. For more details on the implementation changes and on the testing efforts, see the file: ftp://ftp.software.ibm.com/ps/products/cmvc/README.year2000.details.txt All versions of the operating systems supported by CMVC need fixes and patches in order to be Year 2000 Ready. Therefore, we recommend that you install all the patches for your operating system that are related to the Year 2000 readiness. See section 1.1 below for more details on how to get these patches. The list of REQUIRED SCCS related patches or PTFs are: * AIX 4.2.1, with PTF U454641, bos.adt.sccs 4.2.0.1 * AIX 4.3.1, with PTF U455474, bos.adt.sccs 4.3.1.0 * AIX 4.3.2: the base operating system already has the fix. - To verify if a PTF is installed, you can use the command: lslpp -l -a bos.adt.sccs * HP-UX 10.20, with patch PHCO_17075. The patch PHCO_17075 is needed to avoid problems with the year 1999. - To verify if this patch is installed, you can use the command: swlist -l product | grep PHCO_17075 Warning: For HP-UX you need these SCCS patches also for the year 1999 in order to checkin files into CMVC. * Solaris 2.5.1, with patch: 103801-07 or later. * Solaris 2.6: the base operating system already has the fix. - To verify if a patch is installed, you can use the command: showrev -p | grep 103801 Note about Solaris 2.6: according to Sun, no patches are required for SCCS. Even though we have not tested CMVC 2.3.1 on the following HP-UX systems, we want to provide as much information about the necessary patches for SCCS for Year 2000 readiness. This information was obtained from the URL for HP-UX shown in the next section. These patches are also needed for the year 1999. * HP-UX 10.01, PHCO_17073. * HP-UX 10.10, PHCO_17074. * HP-UX 11.00, PHCO_17076. CMVC 2.3.1 for AIX 3.2.5 and AIX 4.1.x is not officially supported, because these operating systems are now obsolete and not supported. However, for completeness, we are documenting the needed PTFs for SCCS to be Year 2000 ready: * AIX 4.1.5, with PTF U454321, bos.adt.sccs 4.1.5.1 * AIX 3.2.5: with PTF U447712, bosadt.obj.sccs, APARs IX55509, IX75948 As far as we know, the SCCS utility has not been fixed in the following operating systems and thus, CMVC 2.3.1 will not work correctly in or after the Year 2000: * Solaris 2.3, 2.4, 2.5.0 without the patches mentioned above. Finally, we have NOT tested CMVC 2.3.1 in the following platforms that are now obsolete and not supported, and thus, we cannot guarantee that the SCCS utility will properly work with the Year 2000: * SunOS 4.1.3 * HP-UX 9 1.1.1. List of URLs with Year 2000 ready information ---------------------------------------------------- All versions of the operating systems supported by CMVC need fixes and patches in order to be Year 2000 Ready. Of critical importance are the patches for the UNIX utility called "SCCS", because without these fixes, you will NOT be able to checkout files in the Year 2000! The following list of URLs indicate where you can get more information about the Year 2000 readiness status for operating systems supported by CMVC 2.3.1. This list is in HTML format, in that way you can copy and paste it into an HTML file and then use a web browser to visit those sites and get more information (including the actual fixes, in some cases). 1.2. Database Management Systems -------------------------------- CMVC does NOT exploit any kind of DATE file type provided by the Database Management System (DBMS), instead, all dates associated with objects in CMVC are stored as a single string that is NOT parsed by neither the CMVC server not the CMVC client. Please see the next section for more details on how to find out the Year 2000 readiness for the DBMSs used by CMVC 2.3.1. 1.2.1. List of URLs with Year 2000 ready information ---------------------------------------------------- The following list of URLs indicate where you can get more information about the Year 2000 readiness status for the DBMS supported by CMVC 2.3.1. This list is in HTML format, in that way you can copy and paste it into an HTML file and then use a web browser to visit those sites and get more information (including the actual fixes, in some cases). 2. Migrating to CMVC 2.3.1 (which supports the Year 2000) --------------------------------------------------------- NOTE: If the following steps are not taken in a family that was migrated from CMVC 2.3.0, then there will be a mix of years, the old ones will have only 2 digits and the new ones will have 4, which will cause sorting problems. To migrate a family that uses CMVC 2.3.0 or previous version, please follow these steps, which need to be done only once. 1) Stop the CMVC family and make a backup of it. 2) Migrate CMVC to 2.3.1: a) If migrating from CMVC 1.x, 2.1, or 2.2, then follow the procedure explained in the Appendix B of the CMVC Server 2.3 manual. Then continue with step: 3 b) If migrating from CMVC 2.3, then it is just necessary to install CMVC 2.3.1. If using DB2, you need to perform the "db2bind" utility for each family. Then continue with step: 3 3) Run dbSetDate. For each CMVC family to be migrated, login to the family account and run the 2.3.1 migration shell script in order to modify all the instances for the date in the database from "yy/mm/dd" to "yyyy/mm/dd": /usr/lpp/cmvc/install/dbSetDate Where is ORACLE7 (for ORACLE 7) INFORMIX (for Informix) DB2 (for DB2) SYBASE (for Sybase) Where is the name of your family Where is the name of a file to append the SQL output For example, to update the date for a "cmvctest" family that uses DB2 and to store the SQL output in the file "sql.out" do the following: /usr/lpp/cmvc/install/dbSetDate DB2 cmvctest sql.out 4) If using DB2, then you must issue the "db2bind" command, for example: db2bind cmvctest 5) Perform a quick sanity check for the migrated families; some tests that you can do are to verify the new format for the year (yyyy) are: *) List all users and verify the columns with dates. *) View one user and verify the dates. *) From a Open List (Filter) Users window, issue a query that lists all users created after a certain date, such as: addDate > '1997/01/01' *) List other CMVC objects such as defects, files, releases, components and verify the dates. *) Do a release extract using the -date flag. *) If possible, do a release link using the -date flag. You could create a dummy release just to do the link and then undo the links and delete the release. 6) In case that you have not done it before, add the new indexes to improve performance that were added in 2.3.0.18 and which are listed in the file: /usr/lpp/cmvc/doc/README.pubs Note: These indexes are created automatically only when a new family is created. END OF DOCUMENT