gtpd1m1oDatabase Reference

Recoup Procedures by Phase

The following lists the recoup procedures by phase.

Pre-Phase 1

Pre-phase 1 consists of steps to complete before you run recoup on the TPF system. This phase is not considered to be part of a normal recoup run.

Notes:

  1. Cycle your TPF 4.1 system to CRAS state or above.

  2. To run multiprocessor recoup in a loosely coupled environment, you must define recoup descriptor container records as core resident across all TPF images.

  3. In a loosely coupled environment, you can run pre-phase 1 recoup from any active processor.

To run pre-phase 1 recoup, do the following:

Phase 1 Procedures

Before running recoup phase 1, consider the following:

To run phase 1 recoup, do the following:

  1. Ensure that all processors are in the correct system state.
  2. Enter the ZRECP START command to start recoup.
  3. When the RECP0020A - MOUNT RCP TAPE FOR OUTPUT message is displayed, mount the RCP general tape as an active blocked output tape. The RCP general tape must be mounted in the first subsystem user of the subsystem. The default is the BSS.
  4. When the RECP004CA - ENSURE STANDBY RTA AND ALT TAPE MOUNTED FOR PHASE 1 message is displayed, mount a standby RTA and an ALT tape. (Recoup causes an RTA tape switch to occur.)
  5. If you want to display or change your recoup run-time options, enter the ZRECP PROFILE command now (before you enter the ZRECP RECALL command).
  6. Enter ZRECP RECALL after the RCP, standby RTA, and ALT tapes have been mounted. This command makes the control program file all records in virtual file access (VFA) if the TPF system is higher than 1052 state.

    Notes:

    1. You can enter the ZRECP STATUS command at any time during phase 1 to display summary status information about recoup phase 1 processing.

    2. If you have the TPFDF product installed and error logging is on, you can enter the ZRECP ONEL command at any time during phase 1 to display information about any errors that were found during phase 1.
  7. If you are running recoup on more than one processor, enter (from the primary recoup processor) the ZRECP START command, specifying the PROC parameter for each processor that is going to run recoup.
  8. If you receive the RECP0012A - FIXED ERROR - RESPOND and the RECP0014A - DEFERRING TIL SEL RECOUP COMPLETE OR CONTINUE RESPOND message, have your system programmer correct the problem and selectively add a record ID to a recoup run. See Selectively Add a Record ID to a Recoup Run.
  9. You will receive the RECP0016I - PHASE I COMPLETED message when recoup phase 1 is completed.

Selectively Add a Record ID to a Recoup Run

Fixed records that are found in error during recoup chain chase processing are noted on a prime computer room agent set (CRAS) console during recoup phase 1 processing. Selectively adding a record ID to a recoup run allows you to correct and reprocess these records. If, after correcting the errors, you want to reprocess the records in error, enter the ZRECP SEL command for each record that you want to reprocess. This allows the corrected records to be included in the recoup run.

Note:
TPFCS persistent identifiers (PIDs) can be reprocessed in a similar way.

Phase 1 Restart

To restart phase 1, do the following:

  1. Ensure that the TPF system is in the state in which you originally started.
  2. Remount an RCP tape as active output. (The RCP tape must be mounted in the first subsystem user of the subsystem.)
  3. Enter ZRECP RESTART on the primary processor.

Phase 2 Procedures

Recoup phase 2 starts and runs without operator intervention. Recoup phase 2 writes error information to the RCP tape and, depending on your run-time options and online error log settings, online log files.

Note:
If you do not have the TPFDF product installed, you cannot use the online error log. You will have to process the RCP tape offline using the BRFA program. See Broken Chain Report (BRFA) Program.

You can find additional information on commands in TPF Operations:

Chain chasing multiple records that point to the same pool address, from different processors, causes ID counts for those pool addresses to be incorrect, because the pseudo directories are processor unique. These double-counted addresses are reported during recoup phase 2. Before you run recoup again, change the descriptor or DBDEF macro statement for the identified record to force cross-chained databases to be chain chased on the same processor.

Broken Chain Report (BRFA) Program

For each of the possible error conditions determined by phase 1 recoup, separate listings are produced in phase 2. These listings are as follows:

  1. Broken chains due to invalid ID
  2. Broken chains due to invalid RCC
  3. Broken chains due to software errors
  4. Broken chains due to hardware error
  5. Broken chains due to invalid control information
Note:
Pool addresses with error types 1, 2, and 3 are set to available in the pseudo directories recoup builds if no valid reference to those addresses are found. Pool addresses with hardware errors and control information errors are not returned to the pool, and will remain in IN-USE state.

The phase 2 listings show the following information:

Reference From
Contains the record ID, RCC, and file address of the record that sought the next address in the chain that it was chasing.

Seek Address
Contains the record ID, RCC, and the file address of the record that was sought by the referenced from record.

Err
For ID or RCC errors only; contains the record ID or RCC of the record that was found by the referenced from record.

These listings can be in more than one part if all the error items could not fit in main storage at one time. A double asterisk in the left-hand margin shows that the line contains the total number of errors for that part of the listing. A single asterisk shows that the line contains the total errors for the record type shown.

The following shows an example of the broken chain report:


                                   BROKEN CHAINS DUE TO INVALID ID                                       PART   1 PAGE   1  01131
   ********************************************************************************************************************************
   *  REFERENCE FROM LOCATION       SEEK ADDRESS INFO       ERROR /  REFERENCE FROM LOCATION       SEEK ADDRESS INFO       ERROR  *
   *                                                              /                                                               *
   *  ID  RC FILE ADDRESS     DISP  ID  RC FILE ADDRESS     ID/RC /  ID  RC FILE ADDRESS     DISP  ID  RC FILE ADDRESS     ID/RC  *
   ********************************************************************************************************************************
   *  JA  00 00000000FC3C0001 0040  JB  00 00000000001492F1 FC10  /  JA  00 00000000FC3C0001 0028  JE  00 00000000001492ED FC10   *
   *  JA  00 00000000FC3C0005 0060  JB  00 00000000001492FD FC10  /  JA  00 00000000FC3C0005 0040  JB  00 00000000001492F9 FC10   *
   *  JA  00 00000000FC3C0005 0028  JE  00 00000000001492F5 FC10  /  JA  00 00000000FC3C0009 0040  JB  00 0000000000149311 FC10   *
   *  JA  00 00000000FC3C0009 0028  JE  00 000000000014930D FC10  /  JA  00 00000000FC3C000D 0060  JB  00 000000000014931D FC10   *
   *  JA  00 00000000FC3C000D 0040  JB  00 0000000000149319 FC10  /  JA  00 00000000FC3C000D 0028  JE  00 0000000000149315 FC10   *
   *
  **    10 = NUMBER OF BROKEN CHAINS FOR ID TYPE  JA                                                                              *
   *
   *  JG  00 00000000FC3E0001 0200  KB  00 000000000827BA09 FC10  /  JG  00 00000000FC3E0001 0100  KA  00 000000000827BA05 FC10   *
   *  JG  00 00000000FC3E0001 0060  K8  00 00000000001493B9 FC10  /  JG  00 00000000FC3E0001 0050  K8  00 00000000001493B5 FC10   *
   *  JG  00 00000000FC3E0001 0040  K8  00 00000000001493B1 FC15  /  JG  00 00000000FC3E0001 0030  K8  00 00000000001493AD FC15   *
   *                                                                                                                              *
  **     6 = NUMBER OF BROKEN CHAINS FOR ID TYPE  JG                                                                              *
   ********************************************************************************************************************************

A summary listing is also printed that gives the type of errors, the total number of errors per error type, and the number of parts in the listing for each error type.

The following shows an example of the summary listing:


                                                    RECOUP FILE ANALYSIS
                            ****************************************************************************
                            *           ERROR TYPE            * TOTAL ERRORS * NO. OF PARTS IN LISTING *
                            ****************************************************************************
                            *                                 *              *                         *
                            * INVALID RECORD ID'S             *          5   *           1             *
                            *                                 *              *                         *
                            * INVALID RCC'S                   *          0   *           0             *
                            *                                 *              *                         *
                            * SOFTWARE ERRORS                 *          0   *           0             *
                            *                                 *              *                         *
                            * HARDWARE ERRORS                 *          0   *           0             *
                            *                                 *              *                         *
                            * INVALID CONTROL INFORMATION     *          0   *           0             *
                            ****************************************************************************
 

Phase 3 Procedures

Phase 3 can be started and run in 1052 or NORM state. It should, however, remain in the state that it was started until it is completed.

To run phase 3 recoup, do the following:

  1. Once recoup phase 2 has ended (online recoup displays a PHASE 2 COMPLETED message), enter ZRECP RESUME.
  2. When you receive the RECP ENTER ZRECP PROTECT OR IGNORE TO CONTINUE message, enter ZRECP PROTECT or ZRECP IGNORE.

    Notes:

    1. The ZRECP PROTECT command immediately protects pool addresses that were found to be erroneously available from being used by the TPF system. If no pool addresses were found to be erroneously available, enter the ZRECP IGNORE command instead.

    2. You can enter ZRECP DISPLAY ERRON to display pool addresses that were found to be erroneously available.
  3. When you receive the RECP BUILD LOST ADDR EXCLUSION TABLE NOW AND REBUILD DIRECTORIES OTHERWISE ENTER ZRECP NOREBUILD TO CONTINUE message, do one of the following:
  4. When you receive messages indicating ACTIVITY DURING RECOUP, PSEUDO DIRECTORY COUNTS, and RECOUP ACTIVITY COUNTS, have a system programmer analyze the information to determine whether the directories created by recoup should be rolled in to the online system. Run recoup phase 5 for more detailed information. See Phase 5 Procedures for more information.
  5. When you receive the DESTRUCTIVE SEGMENT RESPOND ENTER ZRECP PROCEED TO ROLLIN OR ZRECP SKIP/ZRECP ABORT TO BYPASS ROLLIN message, do one of the following:

Phase 3 Restart

If an error occurs during recoup phase 3, you can fix the error and restart recoup phase 3 from the point of the error.

Note:
Do not enter the ZRECP RESTART command to restart phase 3 if the TPF system IPLed after you entered the ZRECP PROCEED command because this can destroy the database. You must start recoup again from phase 1.

To restart phase 3 recoup, do the following:

  1. Ensure the TPF system is in the same system state it was in when you entered the ZRECP RESUME command to start recoup phase 3.
  2. Enter ZRECP RESTART.
  3. Continue with the normal phase 3 procedures.

Phase 4 Procedures

Integrated online pool maintenance and recoup support merged the recoup phase 3 and phase 4 functions into what is now called phase 3. Recoup phase 4 no longer exists.

Phase 5 Procedures

Recoup phase 3 generated an online file or ADR tapes that contains the file addresses of lost and erroneously available file pool records. In a loosely coupled environment, you can run phase 5 from any of the active processors, but it must remain in the processor where it started and can only be accessed from that processor.

To obtain a selective dump of the file addresses of lost and erroneously available file pool records do the following:

Notes:

  1. When all the addresses are processed, status message RECP0000I is displayed.

  2. If an unplanned shutdown occurs during ZRECP DUMP command processing, you must enter ZRECP DUMP RESTART after the TPF system IPL to continue the job. Restarting recoup phase 5 dump processing can cause recoup phase 7 output to show duplicated record IDs and incorrect counts.

The RTL tapes can subsequently be processed by the postprocessor (STPP) or summarized by record ID through the phase 3 output analyzer (phase 6 and phase 7).

The following headers and message formats accompany the record dumps on the RTL tape:

***START OF RECOUP SELD - LOST ADDRESSES FIRST***
***RECOUP SELD - START OF ERRONEOUSLY AVAIL ADRS***

Phase 6 and Phase 7 Procedures

Phase 6 consists of postprocessing the RTL tapes created by phase 5 under the postprocessor (STPP). Phase 7 consists of a BPR0 offline program that processes the same RTL tapes and creates listings for more information. This program summarizes the output of the phase 3 run. Lost addresses are summarized first and erroneously available addresses, if any, are summarized next. Use the sample JCL provided in Phase 6 JCL and Phase 7 JCL to run these phases.