CVTJRNA      CONVERT JOURNAL ATTRIBUTES                    TAAJRNA

 The  CVTJRNA  command  outputs  the  information  that  is  found  with
 WRKJRNA to three separate data base files:

       JRNFILP    One record per file being journaled

       JRNACPP    One record per access path being journaled

       JRNRCVP    One record per receiver which is known to the journal

 Several APIs are used to access the information.

 A typical command would be entered as:

         CVTJRNA   JRN(xxxxx) FILELIB(yyyy)

 This  would output the  journal attribute  information into 3  files in
 the named library.

 The  CVTJRNA  command  uses  the  QjoRetrieveJournalInformation  API to
 extract the  basic  information.   Additional information  is  accessed
 using other  TAA Tools and  APIs.  The  information is placed  in three
 separate  files.   The  data  base files  can  then be  used  for other
 processing such  as  automating the  saving/deletion of  receivers  and
 restarting journaling.

 For example,  you could  consider making  the CVTJRNA  command part  of
 your  backup procedure so that  you have processable  data base records
 for the journal information  saved as part of  your backup.  This  will
 provide you  with  better documentation  of the  backup  and provide  a
 base  for  an  automatic  reconstruction  of  the  network  of  journal
 descriptions.

 A  performance option is available  to output the information regarding
 the receivers only.

 If a  file is  not found  during processing (such  as a  file is  being
 journaled in  QTEMP by a  different job), the  file will not  appear in
 the outfile.

 Additional length fields
 ------------------------

 Since  the  journal support  was  enhanced to  allow a  larger  size of
 entry and  size  of receiver,  the  original  outfile fields  were  not
 large enough in  several cases.  This was handled  by adding additional
 fields such as for the 'Maximum entry length':

             JRMAXL    5/0     Original field

             JRMAX2   15/0     New field

 The original  fields will continue to  have valid data as  long as they
 are large enough.  If not they will be set to 0.

 For example, if the  max length is 98,000  both JRMAXL and JRMAX2  will
 contain the same  value.  If more  than 5 digits exist, JRMAX2  will be
 set to 0.

 CVTJRNA command                                       *CMD
 ---------------

 The command supports the following parameters:

    JRN           The qualified  name of the journal to  be used.  *LIBL
                  is the library default.

    FILELIB       The  library which  contains the  three files JRNFILP,
                  JRNACPP and  JRNRCVP.    If  the files  exist  in  the
                  library,  they will be  cleared first.   If  the files
                  do not exist, they will be created.

    RCVRONLY      A  *YES/*NO value  for whether  only the  JRNRCVP file
                  (journal receivers)  should  be  output.   This  is  a
                  performance   advantage   when    only   the   journal
                  receivers  are needed.  The  JRNFILP and JRNACPP files
                  are cleared regardless of the option.

 The command uses  system APIs for  most of the information.   There  is
 no API solution  for accessing the  files that have been  specified for
 access  path journaling.   The  command uses  a technique  of accessing
 the  physical  files  and then  the  dependent files.    Each dependent
 logical file is then checked to see if it is journaled.

 The command  assumes that there  will be  one set  of unique files  per
 journal.  You  may create multiple sets of files  (one set per library)
 if you have different journals.

 RSMJRN command                                        *CMD
 --------------

 The  RSMJRN (Resume Journaling) command uses  the records stored in the
 JRNFILP  and  JRNACPP  files  to  resume  journaling.    A  listing  is
 produced  describing  the  file  names  which  were  read  and  whether
 journaling was successfully restarted or not.

 The command  can be used even if the  files are already being journaled
 in which case an indication will be printed on the listing.

 Two parameters  support  the capability  of  moving the  journal  to  a
 different library  and  then restarting  journaling to  the journal  in
 the new library (See NEWJRN and OLDJRN).

 If  you want  to move  the journal,  you must:  1)  Use CVTJRNA  2) End
 journaling  with  ENDJRNAP/ENDJRNPF  3) RSMJRN  with  the NEWJRN/OLDJRN
 parameters.

 The RSMJRN command supports the following parameters:

    FILELIB       The library  which contains the  three files  JRNFILP,
                  JRNACPP and JRNRCVP.

    JRNPF         This is  a *YES/*NO value  for whether to  restart the
                  files  found in the  JRNFILP file with  STRJRNPF.  The
                  default is *YES.

    JRNAP         This is a  *YES/*NO value for  whether to restart  the
                  files found  in the JRNACPP  file with STRJRNAP.   The
                  default is *YES.

    OLDJRN        The  qualified name of  the old  journal if journaling
                  is being  restarted  to  a  different  library.    The
                  default is *NONE.

    NEWJRN        The qualified  name of the  new journal  if journaling
                  is  being  restarted  to  a  different library.    The
                  default is *NONE.

 If  no records exist in  the JRNACPP file, no  errors occur.  Therefore
 the command can  be used even if  you have not implemented  access path
 journaling.

 Resuming journaling to a journal in a different library
 -------------------------------------------------------

 CVTJRNA  and RSMJRN  are also  useful if  you are  currently journaling
 and  want  to move  the  journal to  a  different library.    Because a
 journal object  cannot  be  moved  to a  different  library,  you  must
 achieve this by  ending journaling, re-establishing the  journal in the
 desired  library and restart the  journaling of files.   The Backup and
 Recovery Programmer's Guide  describes the steps  to do this.   If  you
 are currently  journaling many files,  there is a  good deal of  manual
 effort  involved  to  restart journaling.    This  can be  accomplished
 easily with the CVTJRNA and RSMJRN commands.

   **   Use CVTJRNA to capture the environment.

   **   Use ENDJRNAP if access paths are being journaled.

   **   Use ENDJRNPF to end physical file journaling.

   **   Create   the  journal  receiver  and   journal  in  the  desired
        libraries.  A different name may be used.

   **   Use RSMJRN and specify  the NEWJRN and OLDJRN parameters.   This
        will restart journaling to the journal in the new library.

   **   Save your files  to establish a recovery point  for applying the
        journal.

 File format
 -----------

 The  following  are the  file  names, the  model files  and  the record
 names.

   Function          File name      Model file in TAATOOL    Record name

   Physical files    JRNFILP            TAAJRNAP              JRNFILR
   Access paths      JRNACPP            TAAJRNAQ              JRNACPR
   Receivers         JRNRCVP            TAAJRNAS              JRNRCVR

 To see the field names used:

        DSPFMT    TAAJRNAP       Physical files
        DSPFMT    TAAJRNAQ       Access paths
        DSPFMT    TAAJRNAS       Journal receivers.

 Restrictions
 ------------

 The CVTJRNA command  uses RTVJRNRCV,  CVTJRNDBF, and  RTVDBR TAA  Tools
 to   access  information.      These   commands  have   the   following
 restrictions:

   **   RTVJRNRCV allows a maximum of 1500 receivers

   **   CVTJRNDBF   allows  a   maximum  of   60,000  data   base  files
        journaled.

   **   RTVDBR allows  a maximum  of 490  dependent files  per  physical
        file.

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

 The following TAA Tools must be on your system:

       CRTDUPPF      Create duplicate physical file
       CVTJRNDBF     Convert journal data base files
       RTVDBR        Retrieve data base relations
       RTVJRNRCV     Retrieve journal receivers
       RTVPFJRNA     Retrieve physical file journal attributes
       SNDCOMPMSG    Send completion message
       SNDESCMSG     Send escape message
       SNDSTSMSG     Send status message

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

 None, the tool is ready to use.

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

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

    CVTJRNA       *CMD                      TAAJRNA        QATTCMD
    RSMJRN        *CMD                      TAAJRNA2       QATTCMD
    TAAJRNAP      *FILE                     TAAJRNAP       QATTDDS
    TAAJRNAQ      *FILE                     TAAJRNAQ       QATTDDS
    TAAJRNAS      *FILE                     TAAJRNAS       QATTDDS
    TAAJRNAC      *PGM          CLP         TAAJRNAC       QATTCL
    TAAJRNAC2     *PGM          CLP         TAAJRNAC2      QATTCL
    TAAJRNAC3     *PGM          CLP         TAAJRNAC3      QATTCL
    TAAJRNAC4     *PGM          CLP         TAAJRNAC4      QATTCL
    TAAJRNAC5     *PGM          CLP         TAAJRNAC5      QATTCL
    TAAJRNAR      *PGM          RPG         TAAJRNAR       QATTRPG
    TAAJRNAR2     *PGM          RPG         TAAJRNAR2      QATTRPG

 Structure
 ---------

   CVTJRNA
     TAAJRNAC   CL pgm
       TAAJRNAR   RPG pgm
         TAAJRNAC4   CL pgm
         TAAJRNAC5   CL pgm  - Does RTVJRNRCVA

   RSMJRN
     TAAJRNAC2   CL pgm
       TAAJRNAR2   RPG pgm
          TAAJRNAC3  CL pgm

Added to TAA Productivity Tools April 1, 1995


Home Page

Powered by AS/400Powered by AS/400 Last modified on January 12, 2010 © 1995, 2010 - Jim Sloan, Inc.