TAA Tools
CHKDBD        CHECK DATA BASE DEPENDENCIES              TAADBFA

The  CHKDBD  command  checks  for  data  base  dependencies  where  the
dependent files  are in different libraries from  the 'based on' files.
CHKDBD  would note any  physical files in the  library you are checking
that have dependent logicals in other libraries.

The command  can be  executed against  one or  all libraries.   If  you
want  to check  'all libraries'  you should  use the  CHKALLDBD command
which will operate more efficiently.

CHKBOF  is the companion tool.  CHKBOF  would note any logical files in
the library  you are checking  that are  'based on'  physical files  in
other libraries.

The  purpose   of  the   commands  are   to  assist   in  understanding
dependencies  which  cross  library  boundaries  so  that they  can  be
minimized or eliminated.   Dependencies which cross library  boundaries
can cause problems if  a restore occurs where the objects  do not exist
on the  system.  This  is typical of  a total restore  situation onto a
blank system.

If  all the dependencies  are within the same  library, the system will
correctly process the  restore.  If they  are not in the  same library,
the following rules exist:

  1.   Physical  files must  be restored  before the  dependent logical
       files.   If the logical file is  attempted to be restored first,
       the system will not restore the logical file.

  2.   If logical file access  paths are saved as  part of the save  of
       a  physical file  and  the physical  and  logical  files are  in
       differ-  different   libraries,  the  advantage  of  saving  the
       access path will be lost if  a total restore is performed.   The
       option to  save access paths  causes them to  be saved with  the
       physical  file and  not  with the  logical  file.   In  order to
       restore  the access path,  both files must  exist on the system.
       If the logical file is  attempted to be restored first,  it will
       not be restored based on rule number 1.

       The  physical  file  must  be  restored  first,  but  since  the
       logical  file does not  exist at  that point in  time, the saved
       access path  is  ignored.    If the  logical  file  is  restored
       following the  physical, the  access path  for the  logical will
       be automatically  rebuilt by the system.   This does not cause a
       loss of function,  but the  access path rebuild  time can  delay
       the use of the system when a total restore is needed.

  3.   The  system  will  implicitly attempt  to  share  access  paths.
       This may result  in a logical file sharing  the access path of a
       physical  or  another  logical  file.    When  the  system first
       builds an access path,  it assigns ownership of the  access path
       to the file  that caused the build.  If  another logical file is
       added  that can share the  access path, the first  file is still
       the owner.   If the  first file  is deleted  (it can  only be  a
       logical file in  this case), the system  will transfer ownership
       of the access path to the second logical.

       The  system  will  save the  access  paths  even  if the  owning
       logical file is in a different  library than the physical.   For
       example, assume the following:

            Lib 1                           Lib 2
         ----------------------        -------------------------
           Physical file                 Logical file A
                                           Owns the access path
           Logical file B
             shares access path
               of Logical A


       If Library 1  is saved with  ACCPTH(*YES), the access  path will
       be  saved with  the physical.   Assume  both libraries  are then
       deleted.    If  Library 1  is  restored first,  the  system will
       transfer the  ownership of  the access  path to  Logical File  B
       (it will  not rebuild the  access path).   If Library 2  is then
       restored,  Logical File B  will share the same  access path, but
       no longer be the owner.

Since the  rules can result  in a  significant amount  of handling  and
confusion, it  is desirable to  eliminate or minimize  the dependencies
in  different  libraries.     The  CHKDBD  command  will  identify  the
dependencies so they may be minimized.

The CHKDBD command uses  the DSPDBR command to  create an output  file.
The file is  read to examine all files  in a library or  all libraries.
A listing  is produced if  there are dependent  files and they  are not
in the same library as the based on file.

The  printed output occurs to the spooled file  of the same name as the
library if  a  single library  is  requested.   If  *ALL libraries  are
requested, QPRINT is used.

Command parameters                                    *CMD
------------------

   LIB           The library to be checked for dependent files.

                 *ALL   libraries  may   be  specified,   but  a   more
                 efficient  solution is  to use the  CHKALLDBD command.
                 If *ALL  is specified,  you must  have *USE  authority
                 to the TAADSPADP  authorization list.  If  the user is
                 not  authorized to  a specific  library, authorization
                 to TAADSPADP may also be used.

   ESCAPE        A *YES/*NO  parameter for  whether an  escape  message
                 should  be  sent   if  dependencies  outside   of  the
                 library are  found.  The default is  *NO.  The command
                 would end normally with a completion message.

                 If  *YES is  specified, TAA9891  is sent  as an escape
                 message if  dependencies outside  of  the library  are
                 found.

Prerequisites
-------------

The following TAA Tools must be on your system:

      DSPFDA        DSPFD with adopt (part of DSPADP tool)
      RTVSYSVAL3    Retrieve system value 3
      SNDCOMPMSG    Send completion message
      SNDESCMSG     Send escape message

Implementation
--------------

None, the tool is ready to use.

Objects used by the tool
------------------------

   Object        Type       Attribute      Src member     Src file
   ------        -----      ---------      ----------     -----------

   CHKDBD        *CMD                      TAADBFA        QATTCMD
   TAADBFAC      *PGM          CLP         TAADBFAC       QATTCL
   TAADBFAR      *PGM          RPG         TAADBFAR       QATTRPG
					

Added to TAA Productivity tools April 1, 1995


Home Page Up to Top