![]() |
OverEasyUser Reference GuideHigh Speed File Reorganization Utility for Wang/VS Computers |
Nineth Edition, September 1999
© Copyright, Utility Systems, Inc., 1991-1999. All rights reserved. No part of this publication may be reproduced, transmitted, transcribed, stored in a retrieval system, or translated into any language in any form by any means without the written permission of Utility Systems, Inc.
OverEasy is a registered trademark of Utility Systems, Inc.
Use of OverEasy and EggShell is restricted to those specifically licensed by Utility Systems, Inc. That license contains restrictions relating to the copying and use of the OverEasy and EggShell software and related documentation.
![]()
These record specifications will default to the same specifications as the input file. If they are changed, OverEasy will reformat the records to conform to the new specifications using the following rules:
The report is one page and requires only one block to save on disk. We suggest that you designate a library to contain all of the reports and direct them there with the
PRINT getparm. Specifying QUEUE=NO will suppress printing and keep the file on disk for reference.Periodic review of the reports can be used to insure that your reorganization parameters are up to date. For instance, consider a compressed file in which you want to avoid block splits by allowing for two inserted records in each block. If the average physical record length is 109 bytes, you would set
DPACK to 89%. That would fill the blocks to 1818 bytes, leaving 225 bytes to accommodate two more records. Over time, the addition of new fields to the records may cause the average physical record size to increase to 131 bytes. The DPACK should be adjusted to 87% to allow for the same number of insertions.Also of interest might be the size, in blocks, of the alternate index structures and the number of levels in the index structure. Very large alternate keys will cause the number of index levels to increase, which will increase the random retrieval time. Shortening the alternate keys will reduce disk space requirements and potentially reduce the number of levels in the index.
The report also shows you how much time and how many disk blocks are attributable to each segment of the file. This information can be used to estimate the reorganization time and disk space savings that can be realized by removing an alternate index path.
Whether or not you produce the report, OverEasy accumulates all of this valuable information during the reorganization. With a little analysis, you can use it to fine tune your files for peak performance.
When GROWTHP results in fewer blocks than are specified in GROWTHB, then GROWTHB will be used. The default value is 1.0
RECBLK
Specifies whether DMS/TX recovery blocks are to be allocated or used. The valid responses are N=None (no recovery blocks), A=Allocate blocks (indexed only), U=Use recovery blocks (valid if the input file has recovery blocks in use). OverEasy will add, remove, or copy recovery blocks in the same way that the Wang COPY program would. The default value is determined from the input file's recovery block status. Before changing this keyword, consult the DMS/TX Reference Manual for a full discussion of this topic.ALTINDEX
Specifies whether you want to change the alternate index specification. The default is always NO. Specifying YES will cause the ALTINDEX Getparm screen to be presented for review and modification of the alternate index specifications.
And at any time you can also use the crash recovery option to reorganize only the indexed files that EggShell finds in a crash state.
All of these options are available from the first EggShell menu, shown here.
You will first learn how to work with a list (creating, saving, and loading) and then how to do the reorganization procedures (multiply file reorganization and crash recovery).
Volume and free extent management is a new feature with EggShell version 4 that will present usage and free space statistics for all of your disk drives. Consolidation of unused disk space is quick and easy using the free extent consolidation function which is available from this menu option.
The last option "XDMS Support" appears only if you have XDMS installed on your system. This function allows you to convert files in a list from indexed to Indexed+ and vice-versa.
There are endless permutations of these possibilities: mark an entire volume, specific libraries on a volume, all of the files in a library excluding one or two, or crate a list that combines all of these specifications. You control the level of detail.
Using the PF keys listed at the bottom of the screen to perform these functions, as explained in the following section. Note that only the PF keys with functions applicable to you will appear on the screen. The exception is PF32, which is always available, even when not listed on the screen.
Search for Volume:******
On this Volumes screen you can specify the values for any volume and also the system defaults. After typing a parameter value, you must press a PF key or ENTER to catalog it. If you simply press the PF16 to return to the previous screen, it will not record the setting.
Along those same lines, you should be aware that when you enter these parameter settings on the screen, you are not yet affecting the file. The file does not use those values until you reorganize with EggShell.
The libraries screen appears when you position the cursor by a specific volume and press ENTER.
As you can see, it is almost identical to the Volumes screen, except that it presents a list of libraries. If on the proceeding Volumes screen you marked this volume for reorganization, you'll notice that all of the libraries on that volume are automatically marked (highlighted).
You have the same sort of options:
In the section on the right of the screen, you can set parameters for each library. The parameters in effect, as described in the preceding section, "Overriding Parameters," appear as defaults.
The PF keys work almost identically to those on the Volumes screen, except that they now refer to the library level. Refer to the section entitled "PF Key Functions" for detailed PF key information.
This Files screen appears when you select a library and press ENTER. It lists the indexed files in that library, along with the status of each file (this information is useful if you are doing crash recovery), number of extents, blocks allocated and blocks used.
You have the same options:
In the section on the right of the screen, you can set parameters for each file. The parameters in effect, as described in the preceding section, "Overriding Parameters," appear as defaults.
The PF keys work almost identically to those on the Volumes screen, except that they now refer to the file level. Refer to the section entitled "PF Key Functions" for detailed PF key information.
The File Statistics screen, shown here, appears when you select a file and press ENTER. EggShell gathers these file statistics from VS/OS system services, providing them for easy reference.
This screen simply presents information you cannot input anything.
Type a 1 to 8 character filename for the list, then press ENTER. (If a default appears, it is the name of the last list that you loaded during the session.) Your list is now stored in EggShell, ready for later use.
To replace an existing list, enter the same filename. EggShell displays this window:
If you press ENTER, EggShell scratches your old list and the new list takes that name. If you don't wish to replace that list, press PF16 to return to the window to specify a different name.
NOTE: To delete a list entirely, you must use the VS Manage Files and Libraries utility. The lists are stored as files in the library @EGGLST@ on the system volume.
But what happens when you've saved a list, and then new files, libraries or volumes are added to your system? EggShell handles that situation by looking at what you marked or unmarked for the next higher level and marking it the same way.
Type the list name, then press ENTER. If you cannot remember the name of your list, you can find it in library @EGGLST@ on your system volume.
EggShell loads the markings (or unmarkings) of that list. Then, when you select either "Multiple File Recovery" or "Crash Recovery," you will see the appropriate highlighted markings on the Volumes, Libraries and Fields screens. You may then update the list or run the reorganization.
If you have loaded the file to make changes, remember to save that changed list before leaving EggShell.
Note that if you were interactively marking files before choosing the Load option, the following will appear:
This gives you a chance to save those entries, if you wish, before loading a different list. Position the cursor at the desired option and press ENTER.
They operate identically, except that crash recovery is a more selective reorganization.
This section also discusses delaying the reorganization until a later time, the EggShell-OverEasy Reorganization Report, cancelling a reorganization and reorganizing files from a command procedure.
This window appears when you press PF12:
Select the first choice to start the reorganization of the marked files immediately. As the reorganization runs, information on the number or reorganizations attempted, the number of successes and the number of errors scrolls on your screen, as seen in the following sample screen.
Selection of the second choice will cause the WAITER program (described in Appendix A) to run. WAITER allows you to specify the start time for the reorganization to run.
The reorganization screen displays the volume, library and file being reorganized, along with any parameter values that you set at the file, library, volume or system level.
It also shows you the number of disk blocks that were allocated and used both before and after the reorganization. This information lets you see the effect of the parameter settings on the file. You can then fine tune the file parameters to optimize the file size for the next reorganization.
Any error messages also appear, along with a return code. The return code indicates the success of an OverEasy/EggShell run or the reason for failure. Section 6 provides a complete list of return codes and their meanings.
The following window appears when your reorganization is done:
This window presents several options for working with the EggShell-OverEasy Reorganization Report or you can choose to return to EggShell. Refer to the EggShell-OverEasy Reorganization Report section, page 3-5, for details on the report itself.
Position the cursor by the option you want and press ENTER.
Refer to the preceding Multiple File Reorganization section for details, as it runs identically.
If you wish to start the reorganization at a specific time, call the WAITER utility supplied with EggShell as the first step of your command procedure. (See the WAITER documentation in Appendix A for details.)
The defaults that appear are from your usage constants. You can change any of the field values.When you press ENTER , EggShell queues the report to print and returns you to the EggShell main menu.
The report contains all of the information that you saw on-line during the reorganization or crash recovery (including detailed error messages), along with the following statistics:
EggShell stores the report in the current spool library on the current spool volume. If EggShell runs interactively, the report is named EGGS#### (EggShell generates the number, ####). If EggShell runs as a background job, the report is named EGGR####. These reports should be purged periodically.
You can continue reorganizing the current file or abort the reorganization immediately. Position the cursor by your choice and press ENTER.
Once you've specified what to do about the reorganization of the current file, EggShell prompts you with the following window for what to do with the rest of the marked files that have not yet been reorganized. (Note that you will see only this window and not the preceding one if EggShell was in between files when interrupted.)
You may have interrupted the reorganization for a variety of reasons. EggShell gives you a variety of ways to proceed. You can cancel the reorganization completely or move on to the next file, library, or volume. Position the cursor by your choice and press ENTER.
Select any volume by positioning the cursor and press enter to show all of the unused extents on the volume and to access the extent consolidator for that volume.
| PRNAME | KEYWORD | LEN |
TYPE |
DEFAULT | PERMITTED VALUES |
| INPUT | FILE | 8 |
AN |
||
| LIBRARY | 8 |
AN |
INLIB | ||
| VOLUME | 6 |
AN |
INVOL | ||
| MODE | 7 |
AN |
INPUT | INPUT,
SHARED or SPECIAL |
|
| LOCK | LOCK | 3 |
AN |
NO | YES or NO |
| TIMEOUT | 3 |
AN |
10 | 0-255 or NO | |
| BYPASS | 3 |
AN |
NO | YES or NO | |
| OPTIONS | REPORT | 3 |
AN |
YES | YES or NO |
| FILEORG | 1 |
AN |
from input file | C, I, N or U | |
| RECTYPE | 1 |
AN |
from input file | F or V | |
| RECSIZE | 4 |
INT |
from input file | DMS maximum | |
| COMPRESS | 3 |
AN |
from input file | YES or NO | |
| KEYPOS | 4 |
INT |
from input file | <= RECSIZE | |
| KEYLEN | 3 |
INT |
from input file | < 255 and within record | |
| DPACK | 3 |
INT |
from input file | 10-100 | |
| IPACK | 3 |
INT |
from input file | 10-100 | |
| APACK | 3 |
INT |
same as IPACK | 50-100 | |
| GROWTHB | 5 |
INT |
0-99999 | ||
| GROWTHP | 5 |
NUM |
1.0 | any positive real number | |
| RECBLK | 1 |
AN |
from input file | N, A, or U | |
| ALTINDEX | 3 |
AN |
NO | YES or NO |
| PRNAME | KEYWORD | LEN |
TYPE |
DEFAULT | PERMITTED VALUES |
| ALTINDEX | KEYPOS01- | ||||
| KEYPOS16 | 4 |
INT |
from input file | ||
| KEYLEN01- | |||||
| KEYLEN16 | 3 |
INT |
from input file | ||
| DUPSOK01- | |||||
| DUPSOK16 | 3 |
AN |
from input file | YES or NO | |
| APACK01- | |||||
| APACK16 | 3 |
INT |
APACK option | 50-100 | |
| OUTPUT | FILE | 8 |
AN |
||
| LIBRARY | 8 |
AN |
OUTLIB | ||
| VOLUME | 6 |
AN |
OUTVOL | ||
| RETAIN | 3 |
INT |
0-999 or blank | ||
| FILECLAS | 1 |
AN |
from input file | A-Z, #, $ or blank | |
| BLOCKS | 8 |
INT |
from OverEasy | ||
| ACL | 3 |
AN |
NO | YES or NO | |
| SECEXT | 3 |
INT |
50 | 1-100 | |
| FILE | 8 |
AN |
|||
| LIBRARY | 8 |
AN |
SPOOLIB | ||
| VOLUME | 6 |
AN |
SPOOLVOL | ||
| QUEUE | 3 |
AN |
YES | YES or NO | |
| PRTCLASS | 1 |
AN |
PRTCLASS | A-Z | |
| FORM# | 3 |
INT |
FORM# |
Return codes 4 and 16 both indicate a premature termination of the wait. However, the different return codes may be used by the calling program or procedure to distinguish between the user's intent to continue with the next step in the job stream, or to abort the entire job.
The procedure above waits until 5:00 p.m. on April 12, 1992 before continuing with the remaining procedure steps.
This procedure invokes WAITER to delay the start of a reorganization run until 9:00 a.m. on June 23, 1992. If the user aborts WAITER by pressing PF16, this procedure terminates immediately, without running EGGREORG, and returns a code of 99 to the caller of this procedure. If the wait terminates normally or if it is forced to completion by pressing PF13, EGGREORG is run and the return code from EGGREORG is passed to the caller of this procedure.