CMVC FREQUENTLY ASKED QUESTIONS: FAMILY ADMINISTRATION AND CONFIGURATION Document Number TR 29.xxxx Angel Rivera, Lee Perlov, Clifford Meyers CMVC/TeamConnection Development IBM Software Solutions Research Triangle Park, North Carolina Copyright (C) 1997 IBM Corp. All rights reserved. ii CMVC FAQ: administration ABSTRACT This technical report +--- UPDATE ----------------------------------------------------+ | | +---------------------------------------------------------------+ ITIRC KEYWORDS o CMVC o family configuration o family administration ABSTRACT iii iv CMVC FAQ: administration ABOUT THE AUTHORS ANGEL RIVERA Mr. Rivera is an Advisory Software Engineer and team lead for the development of CMVC 2.3. He joined IBM in 1989 and since then has worked in the development and support of library systems. Mr. Rivera has an M.S. in Electrical Engineering from The Univer- sity of Texas at Austin, and B.S. in Electronic Systems Engi- neering from the Instituto Tecnologico y de Estudios Superiores de Monterrey, Mexico. LEE PERLOV Mr. Perlov is a Staff Software Engineer in the TeamConnection/CMVC development group. He started working for IBM in 1985 in Gaithersburg, Md, working in the Federal Systems Division on various projects for the United States intelligence community. He then moved to RTP to work on library development and support. Mr. Perlov received a B.S.Acc degree in Accounting from the Uni- versity of Florida in 1983. He also completed two years of grad- uate work in the Department of Computer Science at the University of Florida. CLIFFORD MEYERS Mr. Meyers is an advisory programmer and the technical team lead for ISSC Distributed Configuration Management Services. He joined IBM in 1985 as support for AIX/370 and AIX/ESA before accepting his current assignment in 1993. The ISSC organization in RTP provides consulting and support ser- vices for over 7,000 internal and external customers. Cliff was also involved in the development of the original Motif GUI for CMVC and all of the tools in the appendices of this docu- ment. +--- CLIFF, PLEASE UPDATE. -------------------------------------+ | | +---------------------------------------------------------------+ ABOUT THE AUTHORS v vi CMVC FAQ: administration CONTENTS ABSTRACT . . . . . . . . . . . . . . . . . . . . . . . . . III ITIRC KEYWORDS . . . . . . . . . . . . . . . . . . . . . iii ABOUT THE AUTHORS . . . . . . . . . . . . . . . . . . . . . . V Angel Rivera . . . . . . . . . . . . . . . . . . . . . . . v Lee Perlov . . . . . . . . . . . . . . . . . . . . . . . . v Clifford Meyers . . . . . . . . . . . . . . . . . . . . . . v 1.0 INTRODUCTION . . . . . . . . . . . . . . . . . . . . . . 1 1.1 Acknowledgements . . . . . . . . . . . . . . . . . . . 1 2.0 MISCELLANEOUS TOPICS WHEN HANDLING A CMVC FAMILY . . . . 3 2.1 Strange error messages caused by using wrong message catalog . . . . . . . . . . . . . . . . . . . . . . . . . . 3 2.2 Are CMVC and TeamConnection compatible between each other? . . . . . . . . . . . . . . . . . . . . . . . . . . 4 2.3 Details on use of CMVC_BINARY_THRESHOLD . . . . . . . 4 2.4 Is CMVC going to work with the Year 2000? . . . . . . 4 2.5 How to overcome 2 GB limit in size for a CMVC file system? . . . . . . . . . . . . . . . . . . . . . . . . . . 5 2.6 Hints on possible performance problems in CMVC . . . . 6 2.7 Rationale behind restriction on type names in config.ld 7 2.8 Use /usr/bin instead of /bin/ksh or /bin/sh . . . . . 8 3.0 ID=.ROUTINE ADMINISTRATIVE PROCESSES . . . . . . . . . 9 3.1 Bring CMVC server up/down during system reboot/shutdown 9 3.2 How to do an automatic startup and shutdown of the cmvc daemons? . . . . . . . . . . . . . . . . . . . . . . 11 3.3 What is the best way to backup CMVC? . . . . . . . . 12 3.4 Cleaning files left behind in /tmp on the CMVC server 13 3.5 How to identify and remove destroyed files from the vc tree . . . . . . . . . . . . . . . . . . . . . . . . . . 14 3.6 How could I finding the names of the users who are using CMVC now? . . . . . . . . . . . . . . . . . . . . . 15 4.0 MINOR TOOLS: MONITOR, AGE, RESETAGE, VCPATH . . . . . 17 4.1 How could I see what each CMVC server daemon is doing? 17 4.2 What problems can be encountered using the Activity Monitor? . . . . . . . . . . . . . . . . . . . . . . . . 18 4.3 Why the age value of my defects and features is always 0? . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 4.4 Why is the age value of my defects and features incorrect? . . . . . . . . . . . . . . . . . . . . . . . 19 4.5 What problems can be encountered using the age script? . . . . . . . . . . . . . . . . . . . . . . . . . 20 4.6 What problems can be encountered using the resetAge program? . . . . . . . . . . . . . . . . . . . . . . . . 21 4.7 How to use the aging tools as cron jobs? . . . . . . 21 4.8 How can I find a CMVC file in the family's vc tree? 22 Contents vii 4.9 What problems can be encountered when using the vcPath tool? . . . . . . . . . . . . . . . . . . . . . . . . . . 23 viii CMVC FAQ: administration 1.0 INTRODUCTION +--- UPDATE ----------------------------------------------------+ | | +---------------------------------------------------------------+ This technical report covers the following topics: o Miscellaneous topics when handling a CMVC family o Routine administrative processes o Minor tools: monitor, age, resetAge, vcPath 1.1 ACKNOWLEDGEMENTS Many of the questions and answers that are compiled in this tech- nical report were obtained from the CMVC forum in the IBMPC con- ferencing disk, and from the CMVC6000 forum in the IBMUNIX conferencing disk. We want to thank the main participants in these electronic forums for their support! +--- ADD WARNINGS (FROM TRCMFINST) -----------------------------+ | | +---------------------------------------------------------------+ Introduction 1 2 CMVC FAQ: administration 2.0 MISCELLANEOUS TOPICS WHEN HANDLING A CMVC FAMILY 2.1 STRANGE ERROR MESSAGES CAUSED BY USING WRONG MESSAGE CATALOG QUESTION: Strange error messages caused by using wrong message catalog ANSWER: If your family is experiencing strange error messages, they are likely to be the result of an incompatibility between the message catalogs and the executables for CMVC. This could happen if you have an older version of CMVC installed in your computer and the NLSPATH variable is pointing to the older one. We provide messages catalogs only for the locale En_US (default in AIX 3) and NOT for en_US (default in AIX 4). Thus, if you are using AIX 4, then the message catalogs were installed in /usr/lib/nls/msg/En_US as cmvc.cat (for server and line commands) and cmvcui.cat and cmvchelp.cat (for the GUI). However, the problem might be that the NLSPATH variable points simply to /usr/lib/nls/%L/%N and that the LANG variable is en_US and not En_US. Here you have these choices to overcome the problem: o Change the LANG variable from en_US to En_US, logoff and login again to refresh the environment. o Add to the beginning of the NLSPATH the following: NLSPATH=/usr/lib/nls/msg/En_US/%N:$NLSPATH o If any of the above fixes the problem, then you may need to reinstall the product to ensure that you are using the correct message catalog. o Ensure that both the CMVC client and CMVC server code that are installed in the same host are at the same level. Miscellaneous topics when handling a CMVC family 3 2.2 ARE CMVC AND TEAMCONNECTION COMPATIBLE BETWEEN EACH OTHER? QUESTION: Are CMVC and TeamConnection compatible between each other? ANSWER: Although TeamConnection is the successor product to CMVC and there is a lot of common functionatility between these products, there is NO compatibility between CMVC and TeamConnection. That is, a CMVC client cannot work with a TeamConnection server, nor a TeamConnection client can work with a CMVC server. TeamConnection provides migration tools to help migrate a CMVC family to TeamConnection. 2.3 DETAILS ON USE OF CMVC_BINARY_THRESHOLD QUESTION: Details on use of CMVC_BINARY_THRESHOLD ANSWER: The CMVC_BINARY_THRESHOLD environment variable may be set in the family account. The purpose of this variable is to avoid unnec- essary processing when computing differences between versions of binary files. +--- ADD THE DETAILS HERE --------------------------------------+ | | | For more details see appendix A of the document | | /usr/lpp/cmvc/doc/README.fix.db.sccs.sync.problems | | | +---------------------------------------------------------------+ 2.4 IS CMVC GOING TO WORK WITH THE YEAR 2000? QUESTION: Is CMVC going to work with the Year 2000? ANSWER: CMVC V1 and V2 store dates with only two digits for the year. Thus, the sorting of objects by date may give incorrect results, because the year "1997" is represented as "97" but the year "2000" is represented as "00". 4 CMVC FAQ: administration CMVC does not manipulate in any way the year information and relies on the underline database for the sorting. Besides this known fact, there are no other functional problems with CMVC for the Year 2000. 2.5 HOW TO OVERCOME 2 GB LIMIT IN SIZE FOR A CMVC FILE SYSTEM? QUESTION: How to overcome 2 GB limit in size for a CMVC file system? ANSWER: CMVC families often store gigabytes of user data. There is usually a problem with file system limits and the content of the vc directory when file system limits are reached. The recom- mended solution is to: 1. Make a complete backup of your CMVC family and database. 2. Create new filesystems that will hold a portion of the content of the vc directory of the family. 3. Select directories that will be moved to the new filesystems in order to balance the data contained in each filesystem: For example, $HOME/vc/0/0 could be one file system and $HOME/vc/0/1 could be the second. Some important notes to consider are: o Your selection depends heavily on the size of the files being checked in and the frequency that files are changed (particularly large files). o Make sure the new directory permissions match the VC directory. o While it is possible to use an NFS mounted filesystem, this is NOT recommended. o In many environments, NFS has proven to be too unreliable or slow for use with CMVC internally stored data. Gener- ally, your data in CMVC is too important to take that chance. o Running out of space in the VC directory structure can cause files to be stored incorrectly. It is important to try to avoid this issue. Miscellaneous topics when handling a CMVC family 5 +--- USE THE NEW TR FOR VC -----------------------------+ | | | If you do run out of space, see the "Fixing SCCS/Db | | out-of-sync problems in CMVC" document to verify that | | your SCCS archives are stored correctly. | | | +-------------------------------------------------------+ o In AIX 4 the 2 GB filesystem size limit has been extended significantly. Therefore, you can wait significantly longer before addressing the space issue. 4. For the directory you have selected, issue the following com- mands to link the directory to the new filesystem. In the following example, the contents of the vc/0/2 direc- tory structure is moved to a new filesystem, then the direc- tory is changed to point to the new file system. cp -pR ${HOME}/vc/0/2 /newfilesystem rm -rf ${HOME}/vc/0/2 ln -s /newfilesystem ${HOME}/vc/0/2 On the "cp" command, the "-R" option provides recursive copy and the "-p" preserves the file's attributes (that is, create date, permissions, etc.). These flags vary by operating system. 2.6 HINTS ON POSSIBLE PERFORMANCE PROBLEMS IN CMVC QUESTION: Hints on possible performance problems in CMVC ANSWER: There are several possibilities for the performance degration of CMVC, in order of likehood are: o You might be using the CMVC line commands that invoke NetLS and the NetLS server may need to be cleaned up. For more information see the technical report +--- ANGEL TO COMPLETE -------------------------------------+ | | | "CMVC FAQ: NetLS" | | | | What to do when the performance seems to degrade over | | time? | | | +-----------------------------------------------------------+ 6 CMVC FAQ: administration o You might not be using the latest database indexes that have shown to improve performance. If your family was created prior to CMVC 2.3.0.14, then you may need to add important indexes to the database. For more information, see -- Heading 'INDEXES' unknown --. After you add the indexes, you may need to do a reorganizaiton of the database in order to update the statis- tics used by these indexes. For more information on DB2, see -- Heading 'REORG' unknown -- o If neither NetLS nor the database indexes are the problem, then you might have performance problems with the host itself; you can use the UNIX utility "vmstat" to find out more about the performance. +--- ANGEL -------------------------------------------------+ | | | Review/update | | | +-----------------------------------------------------------+ For more information see the following section in this docu- ment: Document: /usr/lpp/cmvc/doc/README.fix.release.extract.problems Section: Using vmstat to find performance problems 2.7 RATIONALE BEHIND RESTRICTION ON TYPE NAMES IN CONFIG.LD QUESTION: Rationale behind restriction on type names in config.ld ANSWER: The CMVC Server manual specifies that in the config.ld, a type name cannot be a substring (from the beginning of a string) of another type name; however, the manual does not explain the rationale behind this restriction. The rationale is that CMVC users can abbreviate the type name when using line commands, and thus, a type name cannot be an abbreviation of another type name. For example, the symptom string "incorrect_i/o" can be abbreviated to "incor" in the line command, and thus, another type name cannot start with incor". Miscellaneous topics when handling a CMVC family 7 2.8 USE /USR/BIN INSTEAD OF /BIN/KSH OR /BIN/SH QUESTION: Use /usr/bin instead of /bin/ksh or /bin/sh ANSWER: Because AIX 4.1, HP-UX 10, and Solaris use the new location for ksh or sh (which is /usr/bin), all the samples and related code in CMVC in 2.3.0.21 have been changed from the obsolete /bin location. If you use AIX 3.2.5, HP-UX 9 or SunOS, and if you do not have /usr/bin, then it is recommended that the superuser should create a link to the new location: ln -s /bin /usr/bin 8 CMVC FAQ: administration 3.0 ID=.ROUTINE ADMINISTRATIVE PROCESSES 3.1 BRING CMVC SERVER UP/DOWN DURING SYSTEM REBOOT/SHUTDOWN QUESTION: Bring CMVC server up/down during system reboot/shutdown ANSWER: +--- CLIFF -----------------------------------------------------+ | | | Let's check your tools | | | +---------------------------------------------------------------+ o How do I bring the notifyd up when system reboot? Add the following to the bottom of your /etc/inittab: notify1:2:wait:/bin/su - tutfam1 -c "notifyd" o How do I bring the cmvcd up when system reboot? Add the following to the bottom of your /etc/inittab: cmvcd01:2:wait:/bin/su - root -c "/backup/start.tutfam1" Where /backup/start., such as "start.tutfam1" is as follows: - For CMVC with Oracle: #!/usr/bin/ksh export ORACLE_PASS=mypasswd export ORACLE_DBA=system/manager export ORACLE_HOME=/usr/oracle export ORACLE_SID=SID export CMVC_HOME=/usr/lpp/cmvc export CMVC_FAMILY=tutfam1@case2@1610 export CMVC_VCTYPE=sccs export CMVC_VCBIN=/usr/bin $CMVC_HOME/bin/cmvcd tutfam1 1 - For CMVC with DB2: id=.Routine administrative processes 9 #!/usr/bin/ksh # assuming the db2 instance that CMVC family uses is db2 export DB2INSTANCE=db2 export DB2_PASS=cmvcFamilyLoginPasswd export DB2_HOME=/u/db2 export DB2_DBPATH=/u/tutfam1/db2space export CMVC_HOME=/usr/lpp/cmvc export CMVC_FAMILY=tutfam1@case2@1610 export CMVC_VCTYPE=sccs export CMVC_VCBIN=/usr/bin $CMVC_HOME/bin/cmvcd tutfam1 1 o How do I bring cmvcd/notifyd down during system shutdown? Add the following to the top of your /etc/shutdown: su - tutfam1 -c "/usr/lpp/cmvc/samples/stopCMVC tutfam1" #WHA 03/29/92 o How to bring ORACLE up during system reboot? AAdd the followin into your /etc/inittab just before the entries that bring up notifyd and cmvcd: oracle1:2:wait:/bin/su - oracle -c "/usr/oracle/bin/dbstart" In addition, you must edit /etc/oratab and change the last field to Y for your $ORACLE_SID, specified in the first field. o How to bring ORACLE down during system shutdown? Add the following into your /etc/shutdown just after the entry that brings notifyd and cmvcd down: su - oracle -c "/usr/oracle/bin/dbshut" #WHA 03/29/92 o How to bring INFORMIX up during system reboot? Add the following into your /etc/inittab just before the entries that bring up notifyd and cmvcd: infx001:2:wait:/bin/su - informix -c "/usr/informix/bin/tbinit" o How to bring INFORMIX down during system shutdown? Add the following into your /etc/shutdown just after the entry that brings notifyd and cmvcd down: su - informix -c "/usr/informix/bin/tbmode -ky" #WHA 03/29/92 o How to bring SYBASE up during system reboot? Add the following into your /etc/inittab just before the entries that bring up notifyd and cmvcd: 10 CMVC FAQ: administration syb001:2:wait:/bin/su - sybase -c "cd /usr/sybase/install; startserver" o How to bring SYBASE down during system shutdown? Add the following into your /etc/shutdown just after the entry that brings notifyd and cmvcd down: /usr/sybase/bin/isql -Usa -Psybase </dev/null # Notes: Disregard the # character at the beginning (this is a comment) # The age script in the toro family will be executed at 5:30 am daily # # Needed environment variables (example for Informix) # ---------------------------- # You will need to add here the environment variables such as: PATH=$PATH:/usr/informix/bin export PATH For an example of how to automatically do a backup of a CMVC family, please take a look at the file /usr/lpp/cmvc/samples/backupCMVC 3.3 WHAT IS THE BEST WAY TO BACKUP CMVC? QUESTION: What is the best way to backup CMVC? ANSWER: +--- CLIFF -----------------------------------------------------+ | | | Refer to your tools? | | | +---------------------------------------------------------------+ We recommend to our users to do a daily backup, usually during off-peak ours (in our site is done between 1:00am and 4:00am, every day). The process that we recommend is shown below; this process allows the database to be synchronized with the CMVC family userid files. 1. Use stopCMVC (in the cmvc/samples directory) to stop the cmvc daemons. 2. Use the facilities provided by the database, and make a backup of the database for the CMVC family. Store the database backup file inside the CMVC family. 3. If using PVCS, use the facilities provided by PVCS to make a backup of the file system with the change history for the files. 12 CMVC FAQ: administration Store the PVCS backup file inside the CMVC family. 4. Do a complete backup of the entire CMVC family account, which should include: o The backup file for the database. o The backup file for PVCS (if used). o The *.ld files. o The contents of the changeField directory. o The contents of the bin directory. o The contents of the vc directory (which contains the change history) for the files. 5. We do not recommend to do partial backups (for example, to backup only the database today, and only the file system tomorrow) because the database and the file system MUST be synchronized. 3.4 CLEANING FILES LEFT BEHIND IN /TMP ON THE CMVC SERVER QUESTION: There are many files and directories in /tmp on the CMVC server that appear to be left around for no reason. The files look like: FaWAYdcAAF (as an example) The directories look like: cmvcD51AYdcAAE, and inside the directories are files like: ECTAYdcAAB All the files look like source files, and I think these are placed there during the extract process. If this is the case, why are not they being cleaned up after the extract is completed? If this is working as designed, what is the recommended method- ology for the family administrator? To run a cron job once a week that cleans them up? ANSWER: We had fixed several problems in 2.3.x in which a file was left in /tmp and it was not deleted by CMVC (as it should). We think that with 2.3.0.21 refresh we have fixed the situations that caused the biggest number of the orphan files. We know that we have not fixed all the possibles instances that cause this orphan file in /tmp, but we hope that only in rare occassions you will see the orphan files. In the meantime, you can add the following into a cron job to delete these temp files. This has to be done when the daemons are down (such as during the daily night backup) to avoid id=.Routine administrative processes 13 deleting a valid temporary file that CMVC is using for a current transaction. +--- CHECK WITH CLIFF ------------------------------------------+ | | | This information comes as a courtesy from our CMVC adminis- | | trators in ISSC at RTP: | | | | # assumption that family variable is set | | ls -lt /tmp | | | awk ' | | { if ($3 == family) | | { | | printf ("rm -rf /tmp/%s\n", $9) | | } | | }' family=${family} | | | while read record | | do | | eval ${record} | | done | | | +---------------------------------------------------------------+ 3.5 HOW TO IDENTIFY AND REMOVE DESTROYED FILES FROM THE VC TREE QUESTION: I would like to identify and remove the destroyed files from the vc tree in order to recover file system space. ANSWER: Please refer to the new Technical Report called "CMVC frequently asked questions: version control and database synchronization issues." The above TR supersedes the following one "CMVC fixing DB and SCCS sync problems" which is located in the /usr/lpp/cmvc/doc as README.fix.db.sccs.sync.problems and it is also available from our home page and ftp sites. There is a section on how to recover the file space that is being used by destroyed files. 14 CMVC FAQ: administration 3.6 HOW COULD I FINDING THE NAMES OF THE USERS WHO ARE USING CMVC NOW? QUESTION: How could I finding the names of the users who are using CMVC now? ANSWER: o As the CMVC family owner execute: "monitor 1" This gives you all the activities for the cmvc daemons, including a process id, the action, the user id, the query. o As the CMVC family owner look at the bottom of the file audit/log which contains a record of every single action per- formed by any o f the CMVC daemons. The entries are similar to the ones shown in the monitor tool. id=.Routine administrative processes 15 16 CMVC FAQ: administration 4.0 MINOR TOOLS: MONITOR, AGE, RESETAGE, VCPATH 4.1 HOW COULD I SEE WHAT EACH CMVC SERVER DAEMON IS DOING? QUESTION: How could I see what each CMVC server daemon is doing? ANSWER: The CMVC Activity Monitor provides a way of determining whether the CMVC server daemon processes (cmvcd) are servicing requests. If requests are being serviced, then summary information about the nature of the request and the originator of the request is displayed. The CMVC Activity Monitor can also be used for debugging CMVC problems. o This tool is found in /usr/lpp/cmvc/bin/monitor on the CMVC server. o It is intended for family administrator's use only. o Each server process (cmvcd) and the Activity Monitor tool attaches to the same shared memory segment where each server process occupies a slot: - The first slot is reserved for recording statistics. - Server processes use their slot to record information about which user they are performing work for and the nature of the work. - The information is recorded when the server process begins servicing a request and it is cleared when the client/server connection is closed. - The information that is recorded for each transaction is not configurable. o By setting a refreshInterval, the activity for a family can be monitored for as long as desired. - A short refresh interval (such as 1 second) is recom- mended so that most of the activity is visible. The refresh interval is a numeric value in seconds. - Invoking the monitor with a refreshInterval = 0 will give a one-time snapshot of each server process and will then exit. - There are no side-effects of leaving the monitor running for long periods of time. - The activity monitor can be left running even when the server daemons are not running. Minor tools: monitor, age, resetAge, vcPath 17 When the daemons are eventually invoked and fully ini- tialized, the monitor will start to display their infor- mation. o The Activity Monitor can also be used as a debugging aide: - To determine if (and which) user request has hung. Before declaring that a request has hung, watch the activity monitor for a while. Most commands complete very quickly (1-2 seconds) but some require additional processing time (such as FileLink, LevelCommit, ReleaseExtract, LevelExtract). - Verify that the CMVC family is available (the server daemon processes will show whether they are active or not). If users are experiencing a connection problem with the server, then it could be because the server processes are not active or it could be because all server processes are currently servicing requests. - You can recycle a specific server daemon by finding from the output of the activity monitor the processId of the desired daemon and then do: kill -1 processId 4.2 WHAT PROBLEMS CAN BE ENCOUNTERED USING THE ACTIVITY MONITOR? QUESTION: What problems can be encountered using the Activity Monitor? ANSWER: Some situations that may cause problems with this tool are: o The program is not being invoked from the CMVC family's account. o The refreshInterval or the width parameters are incorrect. o The width parameter is less than 17 and no information is being displayed for server daemon processes that are ser- vicing requests 18 CMVC FAQ: administration 4.3 WHY THE AGE VALUE OF MY DEFECTS AND FEATURES IS ALWAYS 0? QUESTION: Why the age value of my defects and features is always 0? ANSWER: The following tools are provided for CMVC family administrators so that defects and features can be 'aged': o The age script The age script: - This script is found in /usr/lpp/cmvc/bin on the CMVC server. - The family administrator can customize the script so that defects and features in certain states participate in the aging process. - The default states for aging are: open, working, size, design and review. - The aging process is accomplished by incrementing the current value of a defect or feature's age by 1. - It is recommended that a cron job is established so that the defects and features are daily updated o The resetAge program - This program is found in /usr/lpp/cmvc/bin on the CMVC server. - The family administrator cannot customize the program. Defects and features in the open, working, design, size and review states will participate in the aging process if this program is used. - The aging process is based on the difference between the current date and the date the defect or feature was opened and a weekend factor. - This program can be used as a substitute for the age script described above or in combination with the age script. If neither of these tools are used, the ages of defects and fea- tures will remain at 0. These tools are documented in the Ongoing Maintenance section of the IBM AIX CMVC/6000 Administration and Installation guide. 4.4 WHY IS THE AGE VALUE OF MY DEFECTS AND FEATURES INCORRECT? QUESTION: Why is the age value of my defects and features incorrect? ANSWER: Minor tools: monitor, age, resetAge, vcPath 19 The aging tools may have been used for a period of time and then abandoned or the server may have been rebooted and the previous cron entry that would run nightly to age the defects and features is no longer present. Use the resetAge program to reset the age to a correct value and then continue using your daily aging mechanism. 4.5 WHAT PROBLEMS CAN BE ENCOUNTERED USING THE AGE SCRIPT? QUESTION: What problems can be encountered using the age script? ANSWER: Some possible situations that cause problems with the age acript are: o The script may not be invoked from the CMVC family's account. o The script does not have execute permission. o An incorrect family name was specified. o An incorrect database connection password was specified. The connection password is that value assigned to the envi- ronment variable ORACLE_PASS, DB2_PASS, SYBASE_PASS, INFORMIX_PASS. It is the password that the database uses to verify that the user attempting to connect to the database is authorized to do so. This is the same password as the one for the CMVC family account. o The family account does not have the sqlplus (for ORACLE) or isql (for Informix) database utilities in its PATH. - sqlplus is found in /home/oracle/bin - isql is found in /usr/informix/bin o The age script is being invoked via cron and the environment is not configured correctly. o The family administrator modified the age script and this is causing database problems. 20 CMVC FAQ: administration 4.6 WHAT PROBLEMS CAN BE ENCOUNTERED USING THE RESETAGE PROGRAM? QUESTION: What problems can be encountered using the resetAge program? ANSWER: Some possible situations that cause problems with the age acript are: o The date/time setting on the CMVC server is not correct. o The program is not being invoked from the CMVC family's account. o The program does not have execute permission. o The CMVC_FAMILY environment variable is set incorrectly. o An incorrect database connection password was specified. The connection password is that value assigned to the envi- ronment variable ORACLE_PASS, DB2_PASS, SYBASE_PASS, INFORMIX_PASS. It is the password that the database uses to verify that the user attempting to connect to the database is authorized to do so. This is the same password as the one for the CMVC family account. o The resetAge program is being invoked via cron and the envi- ronment is not configured correctly. 4.7 HOW TO USE THE AGING TOOLS AS CRON JOBS? QUESTION: How to use the aging tools as cron jobs? ANSWER: The cron facility can be used to run tools at a specific date and time. This facility forks off its own environment in which it runs. You must instruct the cron facility to read the login profile of the CMVC family's account before you instruct it to run the aging tools. The family's login profile must contain all the environ- ment variables that the aging tools rely on. An example on how to get the cron facility to read the login profile and then run the age script is shown below: Minor tools: monitor, age, resetAge, vcPath 21 +--- CLIFF -----------------------------------------------------+ | | | Please check this. | | | +---------------------------------------------------------------+ 1. Edit the file: ???????????????? 2. The entry should look like this: # Run the age script at 21:00 everyday for CMVC family tutfam1 # 00 21 * * * /bin/su - tutfam1 -c "/usr/lpp/cmvc/bin/age tutfam1 # # Note: the dash '-' after the su command will instruct the # cron daemon to read the login profile. # 4.8 HOW CAN I FIND A CMVC FILE IN THE FAMILY'S VC TREE? QUESTION: How can I find a CMVC file in the family's vc tree? ANSWER: The vcPath tool is provided for CMVC family administrators so that they can find the location of a CMVC file within the version control tree on the CMVC server. The vcPath tool is documented in the Ongoing Maintenance section of the CMVC Server Administration manual. The vcPath Tool has the following characteristics. o This tool is found in /usr/lpp/cmvc/bin on the CMVC server. o It provides a quick way of finding a CMVC file within the vc tree ( /home//vc). o Both text and binary files can be found using the tool. o An informational message regarding the directory location of the CMVC file is displayed . o The CMVC server daemon processes (cmvcd) do not have to be running in order to use the tool. For example, to find out the file name in the vc directory for the file "acode/file1" in the release "release1", do the fol- lowing: 1. Logon to the CMVC family's account. 2. Check that the PATH environment variable contains /usr/lpp/cmvc/bin. 3. Enter: 22 CMVC FAQ: administration vcPath acode/file1 release1 4.9 WHAT PROBLEMS CAN BE ENCOUNTERED WHEN USING THE VCPATH TOOL? QUESTION: What problems can be encountered when using the vcPath tool? ANSWER: Some situations that may cause problems when using this tool are: o The tool is not being invoked from the CMVC family's account. o The tool does not have execute permission. o The CMVC_FAMILY environment variable is set incorrectly. o An incorrect database connection password was specified. The connection password is that value assigned to the envi- ronment variable ORACLE_PASS, DB2_PASS, SYBASE_PASS, INFORMIX_PASS. It is the password that the database uses to verify that the user attempting to connect to the database is authorized to do so. This is the same password as the one for the CMVC family account. +--- ADD BIBLIO AND COPYRIGHT ----------------------------------+ | | +---------------------------------------------------------------+ END OF DOCUMENT Minor tools: monitor, age, resetAge, vcPath 23