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.<familyName>, 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 <<!
                shutdown
                go
                !
 
              Note that "sybase" is the password of the SYBASE system
              administrator (sa).
 
          o   How to bring DB2 up during system reboot?
 
              Add the following into your /etc/inittab just before the
              entries that bring up notifyd and cmvcd:
 
                db2001:2:wait:/bin/su - db2 -c "/u/db2/sqllib/adm/db2start"
 
          o   How to bring DB2 down during system shutdown?
 
              Add the following into your /etc/shutdown just after the
              entry that brings notifyd and cmvcd down:
 
                /u/db2/sqllib/adm/db2stop
 
              Assuming that db2 is the login id of the owner of db2
              instance which is used by the CMVC family.
 
 
          3.2  HOW TO DO AN AUTOMATIC STARTUP AND SHUTDOWN OF THE CMVC
          DAEMONS?
 
          QUESTION:
 
          How to do an automatic startup and shutdown of the cmvc daemons?
 
          ANSWER:
 
          +--- CLIFF -----------------------------------------------------+
          |                                                               |
          | Maybe we can include here one of your tools                   |
          |                                                               |
          +---------------------------------------------------------------+
 
          You can use the "cron" facility in UNIX to automatically start up
          and shutdown the CMVC family (and do a backup, if you want it).
 
          You can take a look at the comments for the CMVC tool "age",
          which is run as a cron job.  The relevant comments are:
 
 
                                   id=.Routine administrative processes  11
 
 
            # Example of adding a cron entry
            # ------------------------------
            # To add or to edit a cron entry, do the following:
            # 1) crontab -e
            # 2) Then in the edit session you can add the following entry:
            # 30 05 * * * /home/toro/age toro 1>/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/<familyName>/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