Computer Corporation of America
|
Feedback
Search CCA:
   
USA CCA
CCA Products
CCA Customer Support
CCA Resources
CCA - Company
CCAPRINT: A Newsletter for Model 204® and System 1032® Users
July 26, 2007
     
Model 204: High Performance REGENERATE Using ONEPASS Printer-friendly version
System 1032: Refreshing Your S1032/AF Dictionary Printer-friendly version

 

Model 204
USE OF AND ACCESS TO PRODUCTS AND FEATURES ARE IN ACCORDANCE WITH THE TERMS AND CONDITIONS OF THE USER’S SOFTWARE LICENSE. THE PRESENTATION OF MATERIAL HEREIN DOES NOT, IN ANY MANNER, MODIFY SUCH TERMS AND CONDITIONS.

High Performance REGENERATE Using ONEPASS
By James Damon



Sometimes you need to recover a file by means other than roll back/roll forward recovery. Media failures such as head crashes and other DASD errors, though very uncommon these days, can render a file unreadable. Backups offer some hope of recovery, but much updating activity may be lost if the backup is not current. Accidentally deleted datasets or roll back/roll forward recovery failures, which cannot be resolved for one or more files, are other examples.


The media recovery feature built into BATCH204 in the form of the REGENERATE command provides a solution to these problems. Using it you can restore a Model 204 file from a backup either taken with the Model 204 DUMP command or taken using a third party backup utility such as IEBGENER, FDR, DFDSS and others. Following the restoration process, the file can then be rolled forward using all CCAJRNLs supplied from runs which updated the file since the backup was taken. For example, if you took a backup of a file on Monday, then updated it on Monday, Tuesday, Wednesday and Thursday with a mixture of Online and Batch204 jobs and the file is lost somehow on Thursday, you can recover the file to its state as of the last update on Thursday--provided you saved all CCAJRNLs from those jobs.

The REGENERATE Command Revised
The REGENERATE command has been available for quite a few releases and was enhanced in V5R1.0 to include the ONEPASS option. The ONEPASS option specifies to make only one pass through the journal data supplied in the CCAGEN DD statement. This may be a collection of concatenated or merged journals (see the MERGEJ utility in the Model 204 System Manager’s Guide). Figure 1 shows the syntax of the REGENERATE command.

Figure 1.

REGENERATE [ONEPASS] FILE filename [FROM dumpname]
[TO {last update
| UPDATE nn
| CHECKPOINT yy.kkk hh.h:mm:ss.th}]

The following fuzzy stopping points are not supported with the ONEPASS option.

They require two passes through CCAGEN.

Benefits of ONEPASS Processing

Input to the REGENERATE command is supplied via the DD statement CCAGEN. This collection of CCAJRNL data may be quite large. It could be the CCAJRNL from one day of Online production (hundreds or thousands of cylinders) or much more, if CCAGEN represents multiple days of production Online and Batch204 runs. The ONEPASS option reduces the number of physical I/Os to CCAGEN by roughly 50% in all cases.


The results in Figure 2 were obtained from two identical REGENERATE runs, one using ONEPASS, the other not.

Figure 2.


JOBNAME STEPNAME RC EXCP CONN
Without ONEPASS: V61REGEN NOONEPASS 04 20964 13708
With ONEPASS: V61REGEN ONEPASS 04 10793 7232

Without ONEPASS:
17.21.46 JOB03210 IEF403I V61REGEN - STARTED - TIME=17.21.46
17.22.09 JOB03210 IEF404I V61REGEN - ENDED - TIME=17.22.09
(elapsed time 23 secs)
With ONEPASS:
17.06.17 JOB03155 IEF403I V61REGEN - STARTED - TIME=17.25.17
17.06.39 JOB03155 IEF404I V61REGEN - ENDED - TIME=17.25.30
(elapsed time 13 secs)

With ONEPASS, the EXCP count was reduced by almost half, as was device connect time in milliseconds (CONN). The job’s elapsed time, indicated by the IEF403I and IEF404I messages, was also reduced by almost half. The elapsed time reduction will vary according to system load, job priority and channel and device contention but the reduction in physical I/Os should always be around 50%.

In Summary
If you make any use of the REGENERATE command, definitely consider using the ONEPASS option. Unless you require the use of fuzzy stopping points, there is really no reason not to use ONEPASS. You will save elapsed time, EXCPs, and get your files back into production without unnecessary delay.

 

System 1032
USE OF AND ACCESS TO PRODUCTS AND FEATURES ARE IN ACCORDANCE WITH THE TERMS AND CONDITIONS OF THE USER’S SOFTWARE LICENSE. THE PRESENTATION OF MATERIAL HEREIN DOES NOT, IN ANY MANNER, MODIFY SUCH TERMS AND CONDITIONS.

Refreshing Your System 1032/AF Dictionary
By Tym Stegner

TymThe System 1032/Application Facility (S1032/AF) is a structured environment you can use to design, build, and maintain System 1032 applications. S1032/AF uses a menu system linked to forms-based editors that guide you to define each part of your application--from the screen interface forms to the generation of the underlying application code. You define the necessary components for your application and S1032/AF builds the application code for all the standard operations common to most applications. You write the custom code for only the special operations required for your application. All application definition components are stored in an S1032/AF data dictionary and applications are built as System 1032 libraries and datasets.

Using the S1032/AF Dictionary
Recently a customer called with what seemed an odd problem while creating a new S1032/AF application. The customer defined his default form based upon a particular dataset, but S1032/AF repeatedly refused to build the default application. A manual test outside of S1032/AF using the dataset showed that a form was possible.


After a series of tests, including manual deletion of the application from the dictionary several times, we finally determined the S1032/AF dictionary was corrupt--apparently owing to a need for dataset maintenance on the dictionary. The dictionary had enjoyed more than a decade of reliable usage.

S1032/AF Dictionary Basics
In addition to the components of your application, the S1032/AF dictionary is a collection of System 1032 datasets comprising the infrastructure repository of the S1032/AF applications. These datasets are located via the S1032_AF_DB logical name, as shown in Figure A.

Figure A

$ Set Default S1032_AF_DB
$ Dir
Directory DDSK:[S1032.AF.V150.DIC]
ACTIONS.DMS;1 ADMINISTRATOR.DMD;1 AF_HELP.DMS;1 APPLICATIONS.DMS;1
ATTRIBUTES.DMS;1 CATALOGS.DMS;2 CATALOGS.SAVE;1 CATREF.DMS;1
DATASETS.DMS;1 FIELDS.DMS;4 FORMS.DMS;1 FRAMES.DMS;1
HELP_TEXT.DMS;2 LINKAGES.DMS;1 MENU_ITEMS.DMS;1 OPTIONS.DMS;1
PROCEDURES.DMS;1
Total of 17 files.

 

Needed Dictionary Maintenance
As System 1032 applications are usually stable after creation, and due to the stability inherent in System 1032 datasets, a long while can elapse before any possible corruption might occur in the S1032/AF dictionary datasets. As a rule, the dictionary datasets are not updated all that often, in contrast to the application’s own datasets.


However, over the course of enough time, or if the dictionary is particularly active due to new application creation or modifications, the S1032/AF dictionary can accumulate deleted and unused records.

Major Housekeeping
As the individual datasets in the S1032/AF dictionary are standard System 1032 datasets, you could simply rebuild the individual datasets according to accepted System 1032 practices. However, when you reach the point such as our customer did, you may wish to perform what is considered a dictionary flush by using the S1032_AF_EMP directory, which is a set of empty S1032/AF datasets, as shown in Figure B.

Figure B

$ Set Default S1032_AF_EMP
$ Dir
Directory $1$DKA300:[S1032.AF.V150.EMP]
ACTIONS.DMS;2 AF_HELP.DMS;2 APPLICATIONS.DMS;2 ATTRIBUTES.DMS;2
CATALOGS.DMS;2 CATREF.DMS;2 DATASETS.DMS;2 FIELDS.DMS;2
FORMS.DMS;2 FRAMES.DMS;2 HELP_TEXT.DMS;2 LINKAGES.DMS;2
MENU_ITEMS.DMS;2 OPTIONS.DMS;2 PROCEDURES.DMS;2
Total of 15 files.

 

Setting Up a New Directory
To start, you copy all these datasets from the S1032_AF_EMP area to a fresh dictionary directory. While it is possible to copy the empty dictionary files into the current dictionary area, you will likely be manipulating files between the old and new dictionaries. If both are in the same directory, this is not possible.

In the new dictionary file area, you now have a blank S1032/AF dictionary area to be repopulated with your active applications.

Note I said active applications. This is a great time to review the applications you currently actually use. Over time, it is possible that your S1032/AF dictionary contains more applications than you are currently using. By archiving outdated applications, you can spend your effort moving only your currently active applications to the new dictionary.

Moving Applications
The details of moving an application require familiarity with the concepts of S1032/AF applications. As this article is not intended as a primer on S1032/AF, the steps to take are here in narrative form only.

S1032/AF provides the two commands necessary to the process of moving applications from one dictionary to another: IMPORT and EXPORT. (Note that these are not System 1032 commands, but both are options on the Utilities menu.)

To move an application, take the following steps:

 

  1. Identify all libraries and datasets involved in the application.
    In addition to the base datasets belonging to the application, other datasets or libraries may be required for field validations or non-standard options.

  2. If the application’s own datasets will be moved, create a new application file directory. The old directory will likely have a logical name associated with it; keep track of this for eventual redefinition to the new area.

  3. In S1032/AF, use the Utilities menu Export option to move the application to its BKP file in the new application file directory.
    This copies all the application element definitions, help text, and the system version number from the old dictionary. This operation does not remove the application from the dictionary.

  4. As needed, copy the application’s own datasets to the new application file area. Remember to redefine the application file logical.

  5. Change the S1032_AF_DB logical name to point to the new dictionary. This can be done after exiting S1032/AF, or via the Utilities menu option for Change Dictionary.

  6. In S1032/AF, use the Import option on the Utilities menu to move the application from the BKP file in the applications’ new file directory. You can change the application name, if the application being imported is not uniquely named. Next, choose a new application root menu.

  7. During the importation processing, S1032/AF checks for any external references on the application’s elements. Record these as the import proceeds, and then correct any broken references.


Resuming Your Daily Work
After you import all applications you plan to continue using the new dictionary, you can redefine the S1032_AF_DB logical at the system level and in the S1032/AF initialization file to point to the new dictionary.

In Summary
Refreshing the data dictionary for the System 1032/Application Facility helps future operations by clearing outdated references in the dictionary, as well as updating all the keyed references--just as is recommended for maintenance on standard System 1032 datasets. As a side benefit you may have reduced the number of applications in the dictionary to only active applications.

Copyright © 2007 Computer Corporation of America.
All right reserved. Published in the United States of America.


Contact CCA Webmaster
Copyright 2008