Adabas Manual
Adabas Manual
Adabas Manual
1 utils
http://slidepdf.com/reader/full/adabas-631-utils 1/431
7/18/2019 adabas 6.3.1 utils
This document applies to Adabas for UNIX, Windows and OpenVMS Version 6.3.1.
Specications contained herein are subject to change and these changes will be reported in subsequent release notes or new editions.
Copyright © 1987-2013 Software AG, Darmstadt, Germany and/or Software AG USA, Inc., Reston, VA, United States of America,
and/or their licensors.
Detailed information on trademarks and patents owned by Software AG and/or its subsidiaries is located at
http://documentation.softwareag.com/legal/.
Use of this software is subject to adherence to Software AG's licensing conditions and terms. These terms are part of the product doc-
umentation, located at http://documentation.softwareag.com/legal/ and/or in the root installation directory of the licensed product(s).
Thissoftwaremay includeportions of third-party products.For third-party copyrightnotices andlicense terms, pleaserefer to "License
Texts, Copyright Notices and Disclaimers of Third-Party Products". This document is part of the product documentation, located at
http://documentation.softwareag.com/legal/ and/or in the root installation directory of the licensed product(s).
http://slidepdf.com/reader/full/adabas-631-utils 2/431
7/18/2019 adabas 6.3.1 utils
Table of Contents
Adabas Utilities ............................................................................................................... vii
1 Conventions ..................................................................................................................... 1
Use of character fonts ................................................................................................. 2
Syntax conventions
Upper-Case Conversions .................................................................................................... 2
........................................................................................... 4
Symbols used in control parameter summaries ........................................................ 6
Order of parameters ................................................................................................... 6
Numeric Values .......................................................................................................... 6
Maximum Values ..................................................................................................... 10
Syntax diagrams in the HTML documentation ......................................................... 7
Obsolete Parameters ................................................................................................... 7
2 Overview ......................................................................................................................... 9
3 ADABAS (Starting The Database Nucleus) .................................................................. 15
Functional Overview ................................................................................................ 16
Procedure Flow ........................................................................................................ 17
Control Parameter .................................................................................................... 18
4 ADABCK (Dump And Restore Database Or Files) ....................................................... 19
Functional Overview ................................................................................................ 20
Procedure Flow ........................................................................................................ 22
Checkpoints .............................................................................................................. 24
Control Parameters .................................................................................................. 25
Restart Considerations ............................................................................................. 37
5 ADACLP (Command Log Report) ................................................................................ 39
Functional Overview ................................................................................................ 40
Procedure Flow ........................................................................................................ 41
Checkpoints .............................................................................................................. 42
Control Parameters .................................................................................................. 42
Specifying Multiple Selection Criteria ..................................................................... 48
6 ADACMP (Compression Of Data) ................................................................................ 49
Functional Overview ................................................................................................ 50
Procedure Flow ........................................................................................................ 51
Checkpoints .............................................................................................................. 52
Control Parameters .................................................................................................. 52
Output ...................................................................................................................... 64
Report ....................................................................................................................... 65
Restart Considerations ............................................................................................. 65
7 ADADBA (DBA Workbench) ........................................................................................ 67
Functional Overview ................................................................................................ 68
Procedure Flow ........................................................................................................ 69
8 ADADBM (Database Modication) .............................................................................. 71
Functional Overview ................................................................................................ 72
Procedure Flow ........................................................................................................ 74
Checkpoints .............................................................................................................. 76
iii
http://slidepdf.com/reader/full/adabas-631-utils 3/431
7/18/2019 adabas 6.3.1 utils
Adabas Utilities
iv Adabas Utilities
http://slidepdf.com/reader/full/adabas-631-utils 4/431
7/18/2019 adabas 6.3.1 utils
Adabas Utilities
Examples ................................................................................................................ 189
16 ADAMON (Monitoring The Database Nucleus) ....................................................... 195
Functional Overview .............................................................................................. 196
Procedure Flow ...................................................................................................... 197
Checkpoints ............................................................................................................ 197
Control Parameters ................................................................................................. 198
17 ADAMUP (Mass Add And Delete) ........................................................................... 203
Functional Overview .............................................................................................. 204
Procedure Flow ...................................................................................................... 205
Checkpoints ............................................................................................................ 208
Control Parameters ................................................................................................. 209
Restart Considerations ........................................................................................... 215
SORT Data Set Placement ....................................................................................... 215
TEMP Data Set Placement ...................................................................................... 215
Examples ................................................................................................................ 216
18 ADANUC (Starting The Database, Dening Nucleus Parameters) .......................... 217
Functional Overview .............................................................................................. 218
Procedure Flow ...................................................................................................... 220
Checkpoints ............................................................................................................ 222
Control Parameters ................................................................................................. 222
Summary of ADANUC Parameters ....................................................................... 241
19 ADAOPR (Operator Utility) ...................................................................................... 245
Functional Overview .............................................................................................. 246
Procedure Flow ...................................................................................................... 247
Checkpoints ............................................................................................................ 248
Control Parameters ................................................................................................. 248
20 ADAORD (Reorder Database Or Files, Export/Import Files) ................................... 285
Functional Overview .............................................................................................. 286
Procedure Flow ...................................................................................................... 287
Checkpoints ............................................................................................................ 289
Control Parameters ................................................................................................. 289
Restart Considerations ........................................................................................... 298
Examples ................................................................................................................ 298
21 ADAPLP (Protection Log Printout) ........................................................................... 301
Functional Overview .............................................................................................. 302
Procedure Flow ...................................................................................................... 303
Checkpoints ............................................................................................................ 304
Adabas Utilities v
http://slidepdf.com/reader/full/adabas-631-utils 5/431
7/18/2019 adabas 6.3.1 utils
Adabas Utilities
vi Adabas Utilities
http://slidepdf.com/reader/full/adabas-631-utils 6/431
7/18/2019 adabas 6.3.1 utils
Adabas Utilities
This manual describes the Adabas utilities. The database administrator (DBA) uses the Adabas
utilities to create and maintain Adabas databases. For each utility, the following information is
provided:
This manual is intended principally for the DBA. Certain Adabas utilities contain functionality
for modifying or deleting existing database information, so caution is advised when these utilities
are used. Some utilities, such as ADAREP, provide status information only, and can be used freely
by the end user.
Note: The Adabas utilities also contain some undocumented features that can be invoked
using syntax that is not documented (this also includes the FDT syntax as described in the
Administration documentation). Software AG strongly recommends that you do not use
such undocumented features; there is no guarantee that undocumented features will work
correctly and that they will not have negative side eects on the general behaviour of
Adabas.
The subsequent documents describe the individual utilities in detail, with one utility per document.
Appendix A contains a description of the demo utility input les provided with the Adabas kit.
Appendix B contains a description of the example program prilogc, which is used for printing a
command log that is created with the nucleus parameter CLOGLAYOUT set to 6.
vii
http://slidepdf.com/reader/full/adabas-631-utils 7/431
7/18/2019 adabas 6.3.1 utils
viii
http://slidepdf.com/reader/full/adabas-631-utils 8/431
7/18/2019 adabas 6.3.1 utils
1 Conventions
http://slidepdf.com/reader/full/adabas-631-utils 9/431
7/18/2019 adabas 6.3.1 utils
Conventions
Examples of utility output and le contents are shown in a typewriter font, for example:
In examples which show both user input and utility output, the typewriter font is used for the
whole example:
Syntax conventions
Items shown in lowercase letters indicate that you have to replace the item by a value of your
choice. If the item is "number", you can specify any decimal number. Only positive numbers or 0
can be specied, no negative numbers are allowed. If the item is "string", you can specify a text
string, i.e. any number of alphanumeric characters. For numbers or strings, it is also possible to
specify hexadecimal values preceded by "0x", "0X". "^x" or "^X"; for numbers specied as hexa-
decimal values, leading zeroes may be omitted. Other items are possible, for example "descriptor",
A vertical bar ("|") separates items which are alternatives, i.e. you can enter one item or the other
but not both.
2 Adabas Utilities
http://slidepdf.com/reader/full/adabas-631-utils 10/431
7/18/2019 adabas 6.3.1 utils
Conventions
The ellipsis ("...") indicates that you can repeat the immediately preceding element of the syntax
as often as you like.
If an ellipsis is preceded by a comma, i.e. ",...", this means that you can repeat the immediately
preceding element of the syntax as often as you like, with a comma preceding each repetition.
If round brackets are used for a list of elements and only one keyword is supplied, the round
brackets may be omitted if only one element is supplied.
Example 1
RB=0x33445566
Here the string value has been specied as a hexadecimal string; it consists of printable characters
equivalent to the ASCII character string "3DUf".
Example 2
DBID = number
This means that you must type in the keyword "DBID" (using uppercase or lowercase letters or
any combination thereof), followed by the "=" character, followed by a decimal number, for example:
DBID = 27
Example 3
This means that you must type in the keyword "RABN" (using uppercase or lowercase letters or
any
also combination thereof),
provide a hyphen ("-")followed
followedby
bythe "=" character,
another decimal followed by athis
number, but decimal
is notnumber.
required.You can
Here
are a few examples of input that corresponds to this syntax:
RABN = 25
RABN = 1000 - 1125
Example 4
RABN = 0x400
RABN = 1024
Example 5
This means that you must type in the keyword "SORTSEQ" (using uppercase or lowercase letters
or any combination thereof), followed by the "=" character, followed by either a descriptor value
or the keyword "ISN", for example:
Adabas Utilities 3
http://slidepdf.com/reader/full/adabas-631-utils 11/431
7/18/2019 adabas 6.3.1 utils
Conventions
SORTSEQ = ISN
Example 6
27
27-50
27-50,68
27,68-90
27-50,68-90
27-50,68-90,102,105,118-140,160
Example 7
As an alternative to example 4, the following syntax specication using the ",..." construction is
also possible:
{ number[-number] },...
Example 8
(number[,number]...)
(12,23,45)
(123)
123 - only one list element, so brackets can be omitted
Upper-Case Conversions
Parameter names that are specied are always converted to upper case.
For most utility control parameters, the specied parameter values are also converted to upper
case, but this is not always desirable. Starting with Adabas Version 6.1.6, a new convention for
upper-case conversion of control parameter values has been introduced:
4 Adabas Utilities
http://slidepdf.com/reader/full/adabas-631-utils 12/431
7/18/2019 adabas 6.3.1 utils
Conventions
Although the option of specifying a colon or an equals sign after a parameter name has been intro-
duced generally via the parser for all parameters, Software AG recommends that you specify a
colon only for those parameters where it is explicitly described in the syntax, because the behaviour
described above is only guaranteed for these parameters; due to compatibility reasons with previous
Adabas versions, the upper-case conversion is handled dierently for some other parameters.
Example
NAME{=|:}string
If you specify
NAME=Production
If you specify
NAME:Production
However, some utility input is not provided as "parameter{=|:}value", for example eld, descriptor
or referential constraint denitions. The specications are converted to upper case by default,
unless the parameter LOWER_CASE_FIELD_NAMES has been specied before the denitions.
Example
1,aa,8,a,de
1,AA,8,A,DE
Adabas Utilities 5
http://slidepdf.com/reader/full/adabas-631-utils 13/431
7/18/2019 adabas 6.3.1 utils
Conventions
The description of each utility contains a table which summarizes the syntax of the control para-
meters that are available for that utility. Some control parameters are preceded by the letter "M"
or the letter "D".
The letter "M" indicates "mandatory", i.e. the you must specify this parameter in your input to the
utility otherwise the utility cannot run. If the letter "M" is not present, the parameter is optional,
i.e. you do not have to specify it.
The letter "D" indicates that the control parameter has a default value. This means that if you do
not specify this parameter explicitly in your input, the utility will use a preset value for the para-
meter.
Order of parameters
The parameters of the utilities are listed in this documentation in alphabetical order, but in some
cases, there are restrictions on the order in which they can or must be specied. Usually, the DBID
parameter has to be specied rst, and depending on the utility, there may be more restrictions.
Numeric Values
■ number
■ number[K], where the value is 1024*number
■ number[M], where the value is 1024*1024*number
number[K] and number[M] are only allowed in cases in which large numeric values are expected.
6 Adabas Utilities
http://slidepdf.com/reader/full/adabas-631-utils 14/431
7/18/2019 adabas 6.3.1 utils
Conventions
Maximum Values
Maximum values for numeric parameters are only mentioned if there is a xed limit that is given
by restrictions within Adabas. They are not mentioned if they result from the fact that a 4 byte
signed or unsigned integer is used to store the variable: in this case, the limit may be dened a
little smaller than the maximum possible integer, for example 4000 M.
There is a syntax diagram at the start of each utility description, and these diagrams contain links
to the detailed descriptions of the keywords and parameters that are available. The hyperlinks in
these syntax diagrams are underlined in order to make them visible, but please note that the un-
Obsolete Parameters
Sometimes, utility or nucleus parameters will become obsolete when a new version of Adabas is
released. Usually, the obsolete parameters are still accepted by the utility of the nucleus, but you
will receive a PAROBS warning, for example:
Adabas Utilities 7
http://slidepdf.com/reader/full/adabas-631-utils 15/431
7/18/2019 adabas 6.3.1 utils
http://slidepdf.com/reader/full/adabas-631-utils 16/431
7/18/2019 adabas 6.3.1 utils
2 Overview
This chapter gives an overview of the Adabas utilities, which provide all of the functions necessary
to manage an Adabas database.
ADABAS
Start the database nucleus (for Windows only)
This utility starts the database nucleus with the required environment.
ADABCK
Backup and restore database or les
The Adabas backup utility dumps/restores the contents of the database (or a specic le or
les) to/from a sequential data le. The utility can also be used to copy an Adabas backup
copy.
ADACLP
Command log report
The compression utility compresses user data. The compressed data is used as input for the
mass update utility ADAMUP. The input for this utility is the raw data together with the data
denitions that describe the structure of the data provided.
ADADBA
DBA Workbench
This utility provides functionality for operating and maintaining Adabas databases and les
via a graphical user interface.
ADADBM
Database modication
http://slidepdf.com/reader/full/adabas-631-utils 17/431
7/18/2019 adabas 6.3.1 utils
Overview
The ADADBM utility consists of the following functions which can be used to make modic-
ations to the database:
■ The ADD_CONTAINERfunction adds a new container le to theAssociator or Data Storage
data set;
■
The ADD_FIELDS function appends one or more new elds to the end of a le's FDT;
■ The ALLOCATE functions increase the Normal Index, Upper Index, Address Converter or
Data Storage space assigned to a le. The DEALLOCATE functions are the inverse;
■ The CHANGE function changes the standard length of a eld in the FDT;
■ The CHANGE_FIELDS function changes a eld denition;
■ The DEFINE_REFINT function denes a new referential constraint;
■ The DELCP function deletes old checkpoint records from the checkpoint le in the specied
range of dates;
■ The DELETE function deletes an Adabas le or a range of les from the database;
■ The DISPLAY function displays the UCB;
■ The DROP_FIELDS function marks the specied elds as not existing, which means that
they can no longer be accessed;
■ The DROP_LOBFILE function is the inverse function of ADAFDU ADD_LOBFILE;
■ The DROP_REFINT function drops an existing referential constraint;
■ The EXTEND_CONTAINER function extends the last container le dened for the database;
■ The NEW_DBID function changes the identier of the database in use;
■ The NEWWORK function allocates and formats a new Adabas WORK data set;
■ The PGM_REFRESH function is used to disable or enable refreshing an Adabas le inside
an application program with an E1 command;
■ The RECOVER function returns lost space to the FST;
■ The REDUCE_CONTAINER function reduces the size of the last container le dened for
the database;
■ The REFRESH function resets a le or a range of les to the state of zero records loaded;
■ The REMOVE_CONTAINER function deletes a container le;
■ The REMOVE_DROP function, used in conjunction with a subsequent REFRESH, removes
dropped elds from the FDT;
■ The REMOVE_REPLICATION function stops all replication processing and deletes the
replication system les;
■ The RENAME function changes the database name or the name of a loaded le;
■ The RENUMBER function renumbers a loaded le or exchanges the numbers of loaded les;
10 Adabas Utilities
http://slidepdf.com/reader/full/adabas-631-utils 18/431
7/18/2019 adabas 6.3.1 utils
Overview
■ The REPLICATION_FILES function creates the systems les required for Adabas - Adabas
replication;
■ The RESET function removes entries from the UCB;
■ The RESET_REPLICATION_TARGET function resets the replication target ag of Adabas
les;
■ The REUSE function controls the reuse of data storage space or ISNs by Adabas;
■ The SYFMAX function species the maximum number of values generated for a system
generated multiple-value eld in the le specied.
ADADCU
Decompression of data
This utility consists of several functions for managing the disk space to be used by Adabas. It
can be used to preallocate space for a database.
ADAERR
Error le report
The ADAERR utility displays the contents of the error les generated by various utilities.
ADAFDU
File denition
The le denition utility ADAFDU denes a le in the database. It only loads the FCB and the
FDT into the database and allocates the requested space for ASSO and DATA for the specied
le.
ADAFIN
File information report
The ADAFIN utility displays information about one or more les, e.g. FDT, descriptor statistics
and the ll percentage of blocks in the Data Storage, Normal Index and Upper/Main Index.
ADAFRM
Format and create a new database
Adabas Utilities 11
http://slidepdf.com/reader/full/adabas-631-utils 19/431
7/18/2019 adabas 6.3.1 utils
Overview
The formatting utility ADAFRM allocates and formats the les that are used by Adabas (Asso-
ciator, Data Storage, WORK, TEMP and SORT). It can also format les which have been
preallocated by ADADEV.
ADAINV
Creating, removing and verifying inverted lists
The invert utility ADAINV creates, reinverts or removes inverted lists for a loaded le in a
database or validates specied descriptors.
ADAMON
This utility monitors the performance of an Adabas nucleus and displays statistics on a terminal.
ADAMUP
Mass add and delete
The ADAMUP utility adds or deletes large numbers of records to/from a le in the database.
ADANUC
Starting the database, dening nucleus parameters
The ADANUC utility starts the database for online operations and denes the runtime envir-
onment.
ADAOPR
Operator utility
The reorder utility ADAORD provides functions to reorganize a database or les within a
database (REORDER function) and to migrate les between databases (EXPORT and IMPORT
functions).
ADAPLP
Protection log printout
The ADAPRI utility prints the contents of a block or a range of blocks in the Associator, Data
Storage, WORK, TEMP or SORT for maintenance or auditing purposes.
ADAREC
Recovery of database or les
12 Adabas Utilities
http://slidepdf.com/reader/full/adabas-631-utils 20/431
7/18/2019 adabas 6.3.1 utils
Overview
ADAREP
Database report
The ADAREP utility produces the database status report. This report contains information
about the current physical layout and logical contents of the database.
The information in this report includes the following: the amount and location of the space
currently allocated for the Associator and Data Storage; the amount and location of unused
space available for Associator andData Storage; database le summary; checkpoint information;
information about each le in the database (space allocation, space available, number of records
loaded, MAXISN setting, eld denitions).
ADASCR
Security functions
The security utility ADASCR creates, modies and deletes le protection levels and user
passwords, and enables the record locking capabilities of individual passwords (by using value
criteria for individual database les) to be set or modied. Additionally, the utility is used to
display le and password security information.
ADATST
Issuing Adabas commands
The unload utility ADAULD unloads a le from a database or an Adabas backup copy and
produces compressed records with the same format as those produced by the compression
utility ADACMP. Unloaded records may be used as input for the decompression utility
ADADCU or with the mass update utility ADAMUP. Records can be unloaded from a database
in the sequence in which they are currently stored in Data Storage, in the sequence of a
descriptor or in ISN sequence. However, records can only be unloaded from a backup copy
in the order in which they were stored by the utility.
ADAVFY
Database consistency check
This utility checks the consistency of the database. The General Control Block (GCB) is validated
together with each File Control Block (FCB) and each Field Denition Table (FDT) of the loaded
les. The index structure and Data Storage are validated. If specied, ADAVFY also looks for
lost RABNs.
Adabas Utilities 13
http://slidepdf.com/reader/full/adabas-631-utils 21/431
7/18/2019 adabas 6.3.1 utils
14
http://slidepdf.com/reader/full/adabas-631-utils 22/431
7/18/2019 adabas 6.3.1 utils
15
http://slidepdf.com/reader/full/adabas-631-utils 23/431
7/18/2019 adabas 6.3.1 utils
Functional Overview
The utility ADABAS is used to start the database nucleus with the nucleus parameters that are
specied in the database initialization le (DBxxx.INI ) - if you start the database nucleus ADANUC
directly without parameters, the DBxxx.INI le is not evaluated, and the default values of the
nucleus parameters are used.
Note: Control parameters and values cannot be entered interactively, and must be entered
at the command prompt when the utility is started.
16 Adabas Utilities
http://slidepdf.com/reader/full/adabas-631-utils 24/431
7/18/2019 adabas 6.3.1 utils
Procedure Flow
1. ADABAS reads the global initialization le %ADADIR%\ETC\ADABAS.INI to get the database
initialization le of the database to be started.
2. ADABAS reads the database initialization le to get the nucleus parameters of the database to
be started.
3. ADABAS starts ADANUC with the parameters read.
Note: Please refer to the Extended Operations section for further information about the database
initialization les.
Adabas Utilities 17
http://slidepdf.com/reader/full/adabas-631-utils 25/431
7/18/2019 adabas 6.3.1 utils
Control Parameter
M [DBID =] number
DBID
[DBID =] number
Example:
adabas dbid=20
or
adabas 20
18 Adabas Utilities
http://slidepdf.com/reader/full/adabas-631-utils 26/431
7/18/2019 adabas 6.3.1 utils
■ FunctionalOverview ........................................................................................................................ 20
■ ProcedureFlow ............................................................................................................................... 22
■ Checkpoints ................................................................................................................................... 24
■
Control Parameters .......................................................................................................................... 25
■ Restart Considerations ..................................................................................................................... 37
19
http://slidepdf.com/reader/full/adabas-631-utils 27/431
7/18/2019 adabas 6.3.1 utils
Functional Overview
The backup utility ADABCK provides protection against database corruption by creating Adabas
backup copies. ADABCK should be used at regular intervals.
Making use of the internal structure of the database, this utility provides optimum performance.
Unused blocks do not have to be read and can be omitted when dumping. Even though such
blocks are not included in the Adabas backup copy, they can be re-created during a restore.
The backup copy can be directly assigned to tape: this option supports consecutive tapes (see Ad-
ministration , Using Utilities).
Furthermore, a backup copy may be directed to stdout in order to support the piping of the backup
data (this feature is only available on UNIX platforms). This feature is enabled by setting the en-
vironment variable (BCK001) to '-' (minus). In this case, the output messages are directed to stderr.
The RESTORE and OVERLAY functions can also be used in this way, i.e. a backup copy can be
read from stdin. In this case, the ADABCK control statements must be given in the command line
(see Administration , Using Utilities).
20 Adabas Utilities
http://slidepdf.com/reader/full/adabas-631-utils 28/431
7/18/2019 adabas 6.3.1 utils
■ The list functions CONTENTS, FILES and SUMMARY display information about an Adabas
backup copy. When the list functions are used, the DBID does not have to be entered rst; the
exception to this is when the backup le is in a raw section. In this case, the DBID is required,
but the database itself does not have to be present (UNIX platforms only).
The functions
one of DUMP,
them may EXU_DUMP,
be executed duringOVERLAY
a single runand RESTORE
of this are mutually
utility. The exclusive
list functions andbe
can only only
used
together with the READ_CHECK, RESTORE or OVERLAY function.
If you perform the RESTORE or OVERLAY function and the database is too small or database
containers are missing, ADABCK will automatically increase the size of the database or create the
missing containers.
Note: The RESTORE and OVERLAY functions can process backup les created with earlier
Adabas versions, but not backup les created with later Adabas versions.
Caution: If you don't use the Adabas INI les, but instead use environment variables to
specify the container le names, and if you forget to assign the environment variables/logical
names before you start ADABCK, a copy of the database will be created in the database
directory. If you perform a le overlay or restore when the Adabas nucleus is active, and
the database has to be extended, the database is extended by the nucleus, and not by AD-
ABCK. In this case, the nucleus extends the database even if OPTION=AUTOEXPAND was
NOT specied. If you use environment variables to specify the database containers, you
must consider the following when a new container has to be created for the restore/overlay:
it is important that the nucleus was started with the correct environment variable settings
for the new container - because the new containers are created by the nucleus, specifying
the environment variable for the ADABCK process has no eect.
Adabas Utilities 21
http://slidepdf.com/reader/full/adabas-631-utils 29/431
7/18/2019 adabas 6.3.1 utils
Procedure Flow
22 Adabas Utilities
http://slidepdf.com/reader/full/adabas-631-utils 30/431
7/18/2019 adabas 6.3.1 utils
Adabas Utilities 23
http://slidepdf.com/reader/full/adabas-631-utils 31/431
7/18/2019 adabas 6.3.1 utils
Notes:
1. A named pipe can be used for this sequential le (UNIX platforms only, see Administration ,
Using Utilities for details).
2. For functions other than DUMP or EXU_DUMP (BCK001 only).
3. For DUMP or EXU_DUMP (BCK001 only).
4. If BCK001 is not stdout/SYS$OUTPUT.
5. If BCK001 is stdout/SYS$OUTPUT.
The sequential les BCK00n can have multiple extents. For detailed information about sequential
les with multiple extents, see Administration , Using Utilities.
Checkpoints
The following table shows the nucleus requirements for each function and the checkpoint written:
Function Nucleus must be active Nucleus must NOT be active Nucleus is NOT required Checkpoint written
CONTENTS X -
COPY X -
DUMP X(see note 1) X SYNX
EXU_DUMP X(see note 1) X SYNX
FILES X -
NEW_PLOG SYNC
OVERLAY X(see note 2) X(see note 3) SYNP
READ_CHECK X -
RESTORE X(see note 2) X(see note 3) SYNP
SUMMARY X -
Notes:
1. Nucleus only required when AUTORESTART is pending at the end of this function.
24 Adabas Utilities
http://slidepdf.com/reader/full/adabas-631-utils 32/431
7/18/2019 adabas 6.3.1 utils
Control Parameters
CONTENTS
COPY [= number]
M DBID = number
DUMP = {*|(number[-number][,number[-number]]...)}
[,BLOCKSIZE = number [K|M]]
D [{,DRIVES = number} |
D {,[NO]DUAL } ]
[,ET_SYNC_WAIT = number]
D [,[NO]NEW_PLOG]
EXU_DUMP = {*|(number[-number][,number[-number]]...)}
[[,BLOCKSIZE = number [K|M]]
D [{,DRIVES = number} |
D {,[NO]DUAL} ]
D [,[NO]NEW_PLOG]
FILES = { * | (number[-number][,number[-number]]...)}
IOSTAT
OVERLAY = {*|(number[-number][,number[-number]]...)}
[,FMOVE [=(number [,number [-number]]...)]]
[,FORMAT = (keyword [,keyword])]
[,KEEP_FILE_ALLOC]
[,NEW_DBID = number]
[,RENUMBER = (number[-number] [,number [-number]]...)]]
PARALLEL = keyword
READ_CHECK
RESTORE = {*|(number[-number][,number[-number]]...)}
[,FMOVE [=(number [,number [-number]]...)]]
[,FORMAT = (keyword [,keyword])]
[,NEW_DBID = number]
[,RENUMBER = (number[-number] [,number [-number]]...)]]
SUMMARY
Adabas Utilities 25
http://slidepdf.com/reader/full/adabas-631-utils 33/431
7/18/2019 adabas 6.3.1 utils
CONTENTS
CONTENTS
This parameter displays a list of les in an Adabas backup copy created with the DUMP or
EXU_DUMP function.
Example
adabck: contents
COPY
COPY [= number]
This function creates a new le from an existing Adabas backup copy. The input le (BCK0xx)
and the output le (BCKOUT) may be on either disk or tape, where xx is either the specied
number, or 01 if no number is explicitly specied.
DBID
DBID = number
DUMP
DUMP = { * | (number[-number][,number[-number]]...)}
[,BLOCKSIZE = number [K|M]]
[ {,DRIVES = number} |
{, [NO]DUAL } ]
[,ET_SYNC_WAIT = number ]
[,[NO]NEW_PLOG ]
At the le level, this function dumps the les specied by the numbers in the list. LOB les specied
are ignored, but the LOB les assigned to all base les are dumped too. An asterisk '*' species
26 Adabas Utilities
http://slidepdf.com/reader/full/adabas-631-utils 34/431
7/18/2019 adabas 6.3.1 utils
that the complete database is to be dumped. Parallel updates are permitted on the les to be
dumped while the dump is in progress.
If the nucleus is running in parallel (online backup), ADABCK must ensure that all transactions
aecting the dumped les are completed by all users before ADABCK terminates. This is called
ET synchronization
information. - please arefer
If you perform dumpto the section
at the ET Synchronization
le level Administration for
with the option inNONEW_PLOG, thefurther
ET syn-
chronization is performed at the le level; otherwise the ET synchronization is performed for the
complete database.
If you specify les with referential constraints, all les connected to these les via referential
constraints must also be specied in order to maintain referential integrity.
BLOCKSIZE = number[K|M]
This parameter can be specied to change the I/O transfer blocksize. If PARALLEL is specied,
the default
1MB, 2MB, blocksize is 512
... 12MB. The KB. The specied
blocksize followingwill
values can beinspecied:
be used 64KB,RESTORE
a subsequent 128KB, 256KB, 512KB,
function.
DRIVES = number
This parameter limits the maximum number of output devices to be operated in parallel. It can
be used to split a backup le into several extents. The output is sent to BCK0xx.
The parameters DRIVES and DUAL are mutually exclusive, and only one of them may be specied
in a given call of the DUMP function.
[NO]DUAL
DUAL species that two physical copies of the dumped information are to be created. The output
is sent to BCK001 and BCK002.
The parameters DUAL and DRIVES are mutually exclusive, and only one of them may be specied
in a given call of the DUMP function.
Adabas Utilities 27
http://slidepdf.com/reader/full/adabas-631-utils 35/431
7/18/2019 adabas 6.3.1 utils
ET_SYNC_WAIT = number
This parameter denes the time (in seconds) that ADABCK waits for ET-logic users to come to ET
status at the end of the DUMP function.
If this parameter is omitted, the value currently in eect for the database nucleus (ADANUC
parameter TT) is taken.
[NO]NEW_PLOG
This option species whether or not to close the protection log le and create a new log le at the
end of the DUMP function.
The default for a database dump is NEW_PLOG, and for a le dump it is NONEW_PLOG.
Caution: Before V6.3 SP1 Fix 13, the default for a le dump was NEW_PLOG. In most cases,
this change is of no consequence, but if you really need the PLOG switch, you must specify
NEW_PLOG explicitly.
EXU_DUMP
EXU_DUMP = {*|(number[-number][,number[-number]]...)}
[,BLOCKSIZE = number [K|M]]
[ {,DRIVES = number} |
{,[NO]DUAL} ]
[,[NO]NEW_PLOG]
At the le level, this function dumps the les specied by the numbers in the list. LOB les specied
are ignored, but the LOB les assigned to all base les are dumped too. An asterisk '*' species
that the complete database is to be dumped. Only ACC users are permitted on the les to be
dumped while the dump is in progress. ET-synchronization is not required.
If you specify les with referential constraints, all les connected to these les via referential
constraints must also be specied in order to maintain referential integrity.
28 Adabas Utilities
http://slidepdf.com/reader/full/adabas-631-utils 36/431
7/18/2019 adabas 6.3.1 utils
BLOCKSIZE = number[K|M]
This parameter can be specied to change the I/O transfer blocksize. If PARALLEL is specied,
the default blocksize is 512 KB. The following values can be specied: 64KB, 128KB, 256KB, 512KB,
1MB, 2MB, ... 12MB. The blocksize specied will be used in a subsequent RESTORE function.
DRIVES = number
This parameter limits the maximum number of output devices to be operated in parallel. It can
be used to split a backup le into several extents. The output is sent to BCK0xx.
The parameters DRIVES and DUAL are mutually exclusive, and only one of them may be specied
in a given call of the DUMP function.
[NO]DUAL
DUAL species that two physical copies of the dumped information are to be created. The output
is sent to BCK001 and BCK002.
The parameters DUAL and DRIVES are mutually exclusive, and only one of them may be specied
in a given call of the DUMP function.
[NO]NEW_PLOG
This option species whether or not to close the protection log le and create a new log le at the
end of the EXU_DUMP function.
Examples 1-3
In the examples below, the les 1, 2, 4, 6, 7, 8, 10, 11, 12, and 13 are loaded in the selected database.
Adabas Utilities 29
http://slidepdf.com/reader/full/adabas-631-utils 37/431
7/18/2019 adabas 6.3.1 utils
Example 1
Example 2
File 8 is dumped and two physical copies are created. Only ACC users are allowed on le 8 while
the dump is in progress.
Example 3
Files 1, 2, 4, 6, 8, 10, 11 and 13 are dumped. ADABCK allows a maximum of 5 seconds for ET-logic
users to come to ET status.
FILES
FILES = { * | (number[-number][,number[-number]]...)}
This parameter displays status information of the specied les in a dump le.
IOSTAT
IOSTAT
If this parameter is specied, the data transfer rate and the I/O (waiting) times on the various
devices are printed at the end of ADABCK processing.
Example:
30 Adabas Utilities
http://slidepdf.com/reader/full/adabas-631-utils 38/431
7/18/2019 adabas 6.3.1 utils
Dump Method
Either parallel or non-parallel, depending on the setting of the PARALLEL parameter.
DB I/O time
The total I/O time in seconds and the average time per I/O operation in microseconds for the
access to the ASSO and DATA containers.
BCK n I/O time
The total I/O time in seconds and the average time per I/O operation in microseconds for the
access to the backup les.
Note: The I/O time measured is the time required for the I/O system functions. This may be
dierent from the physical I/O times actually required to accessing the disks because of
caches in the operating system or in the storage system and because of usage of asynchronous
I/O.
Note: Only the I/Os for the real backup or restore are counted. During the startup phase
of ADABCK, some additional I/Os are required; therefore the sum of wait and nowait
I/Os is less than the sum of ASSO and DATA I/Os.
Adabas Utilities 31
http://slidepdf.com/reader/full/adabas-631-utils 39/431
7/18/2019 adabas 6.3.1 utils
Notes:
1. For the transfer rate, only the pure backup/restore time is taken into consideration, but not
the time required for the preparation of the backup/restore. Therefore, the transfer rate may
be higher than the transfer rate you would get if you compute the transfer rate based on
the total elapsed time of ADABCK.
2. In the case of small backups, rounding errors may occur in the computation. Therefore, for
very small backups the transfer rate is not displayed, because the value would be too inac-
curate.
3. Because usually many database blocks are not lled completely, and because only the net
data are copied to the backup le(s), the transfer rate is less than the rate you would get if
you consider the processed database space.
OVERLAY
OVERLAY = {*|(number[-number][,number[-number]]...)}
[,FMOVE [=(number [,number [-number]]...)]]
[,FORMAT = (keyword [,keyword] ) ]
[,KEEP_FILE_ALLOC]
[,NEW_DBID = number]
[,RENUMBER = (number[-number] [,number [-number]]...)]]
This function restores the les specied by the numbers in the list at le level. LOB les specied
are ignored, but the LOB les assigned to all base les are restored too. The les to be restored
may already be loaded in the database. ADABCK performs an implicit delete before restoring
such les. If only one le of a LOB group is overlaid, the other le of the LOB group is also deleted.
An asterisk ('*') species that a restore is to be made at the database level. Exclusive control over
the database container les is required.
Only the specied les are overlayed, even if there are referential integrity constraints to other
les; these referential integrity constraints are removed.
If this keyword is specied, ADABCK reallocates all les to be overlayed or the specied subset
rather than attempting to restore them in the same block ranges as in the backup. Using this
keyword reduces the number of le extents as much as possible.
32 Adabas Utilities
http://slidepdf.com/reader/full/adabas-631-utils 40/431
7/18/2019 adabas 6.3.1 utils
The keywords ASSO and/or DATA may be specied. This parameter is used to format Associator
and/or Data Storage blocks. When restoring at the le level, only blocks contained in the unused
areas of the les' extents are formatted.
KEEP_FILE_ALLOC
If this parameter is specied, ADABCK tries to keep the allocation of the le as it currently is in
the database, as opposed to restoring it with the same block ranges as on the backup. This keyword
can, for example, be used when a le has been reorganized since the backup was made or also if
more space has since been preallocated to the le. If the le on the backup has more blocks allocated
than are currently available in the database, the remaining blocks will be allocated in an arbitrary
location. This keyword can only be used in conjunction with a le list.
NEW_DBID = number
This parameter can be used to change the identier of the database to be restored. This parameter
can only be specied when restoring a complete database.
A new identier can be used to restore a backup copy of an active database into a dierent set of
container les. The new identier may not be identical to that of another active database.
RENUMBER is used to renumber the les to be overlayed in the target database. The following
restrictions and requirements apply:
■ There must be a 1:1 relationship between the les specied in the OVERLAY le list and the
RENUMBER le list.
■ If you specify a range in the OVERLAY le list, the corresponding range in the RENUMBER
le list must be the same size.
■ Normally it is not necessary to specify LOB les in the OVERLAY le list. However, if the LOB
le is also to be renumbered, the LOB le must also be specied.
■ Files may occur more than once in the OVERLAY le list, for example: (11-55),(44-99). In this
case, you are not allowed to specify dierent target le numbers for the same source le numbers.
For the example le list, it is correct to specify RENUMBER=(1011-1055,1044-1099), whereas
RENUMBER=(1011-1055,2044-2099) is incorrect.
■ It is not allowed to renumber more than one le to the same target le number.
Adabas Utilities 33
http://slidepdf.com/reader/full/adabas-631-utils 41/431
7/18/2019 adabas 6.3.1 utils
PARALLEL
PARALLEL = keyword
This parameter can be specied to increase processing speed when creating/restoring from backups
on slow devices (e.g. tape drives) by using parallel devices. The keyword MULTI_PROCESS can
be used. If PARALLEL=MULTI_PROCESS is specied, the default value of the BLOCKSIZE
parameter changes to 512 KB.
The ADABCK operation is only performed in parallel if the number of backup les (ADABCK
subparameter DRIVES for DUMP or EXU_DUMP) is greater than 1.
Notes:
1. If it is to be used, PARALLEL must be specied after the DBID parameter and before the DUMP,
EXU_DUMP, OVERLAY or RESTORE parameter.
READ_CHECK
READ_CHECK
This function checks the readability (i.e. absence of parity errors) and completeness of the Adabas
backup copy. These checks are made to ensure that the dump le can be used to restore the database
or les with the RESTORE or OVERLAY function of this utility.
RESTORE
RESTORE = {*|(number[-number][,number[-number]]...)}
[,FMOVE [=(number [,number [-number]]...)]]
[,FORMAT = (keyword [,keyword] ) ]
[,NEW_DBID = number]
[,RENUMBER = (number[-number] [,number [-number]]...)]]
This function restores the les specied by the numbers in the list at the le level. LOB les specied
are ignored, but the LOB les assigned to all base les are restored too. If a le list is given, the
les to be restored must not be loaded in the database. An '*' species that a restore is to be made
at the database level. In this case, the les may already be loaded in the database and will implicitly
be deleted or substituted by les in the dump with identical le numbers. Exclusive control over
the database container les is required.
34 Adabas Utilities
http://slidepdf.com/reader/full/adabas-631-utils 42/431
7/18/2019 adabas 6.3.1 utils
Only the specied les are restored, even if there are referential integrity constraints to other les;
these referential integrity constraints are removed.
Note: You can only use RESTORE=* if the dump le was created with DUMP=* or
EXU_DUMP=*.
If this keyword is specied, ADABCK reallocates all les to be restored or the specied subset
rather than attempting to restore them in the same block ranges as in the backup. Using this
keyword reduces the number of le extents as much as possible.
The keywords ASSO and/or DATA may be specied. This parameter is used to format Associator
and/or Data Storage blocks. When restoring at the le level, only blocks contained in the unused
areas of the les' extents are formatted.
NEW_DBID = number
This parameter can be used to change the identier of the database to be restored. This parameter
can only be specied when restoring a complete database.
A new identier can be used to restore a backup copy of an active database into a dierent set of
container les. The new identier may not be identical to that of another active database.
RENUMBER is used to renumber the les to be restored in the target database. The following re-
strictions and requirements apply:
■ There must be a 1:1 relationship between the les specied in the RESTORE le list and the
RENUMBER le list.
■ If you specify a range in the RESTORE le list, the corresponding range in the RENUMBER le
list must be the same size.
■ Normally it is not necessary to specify LOB les in the RESTORE le list. However, if the LOB
le is also to be renumbered, the LOB le must also be specied.
■ Files may occur more than once in the RESTORE le list, for example: (11-55),(44-99). In this
case, you are not allowed to specify dierent target le numbers for the same source le numbers.
For the example le list, it is correct to specify RENUMBER=(1011-1055,1044-1099), whereas
RENUMBER=(1011-1055,2044-2099) is incorrect.
■ It is not allowed to renumber more than one le to the same target le number.
Adabas Utilities 35
http://slidepdf.com/reader/full/adabas-631-utils 43/431
7/18/2019 adabas 6.3.1 utils
Examples:
It is assumed that none of the les specied in the DUMP examples above are loaded in the selected
database.
adabck: restore = *
The complete database is restored. The output of DUMP=* or EXU_DUMP=* may be used as input
for this example. The nucleus must be inactive.
adabck: restore = 8
File 8 is restored. The output of any of the DUMP/EXU_DUMP examples above can be used as
input for this example. The nucleus may be active (assuming that le 8 is neither the checkpoint
le nor the security le).
Only the outputs of the rst and last DUMP/EXU_DUMP example could be used. The output of
the last example would restore les 1, 4, 6, 8, 11 and 13, whereas that of the rst example would
restore les 7 and 12 as well.
SUMMARY
SUMMARY
This parameter displays general information and physical layout of the database in the Adabas
backup copy created by a previous run of the DUMP/EXU_DUMP function.
Example
adabck: summary
36 Adabas Utilities
http://slidepdf.com/reader/full/adabas-631-utils 44/431
7/18/2019 adabas 6.3.1 utils
-------------------------------------------------------------------------------
10.00 MB
========
Restart Considerations
An interrupted RESTORE/OVERLAY of one or more les will result in lost RABNs which can be
recovered by executing the RECOVER function of the utility ADADBM. An interrupted RE-
STORE/OVERLAY of a database results in a database that cannot be accessed.
Adabas Utilities 37
http://slidepdf.com/reader/full/adabas-631-utils 45/431
7/18/2019 adabas 6.3.1 utils
38
http://slidepdf.com/reader/full/adabas-631-utils 46/431
7/18/2019 adabas 6.3.1 utils
■ FunctionalOverview ........................................................................................................................ 40
■ ProcedureFlow ............................................................................................................................... 41
■ Checkpoints ................................................................................................................................... 42
■
Control Parameters .......................................................................................................................... 42
■ Specifying Multiple Selection Criteria ................................................................................................... 48
39
http://slidepdf.com/reader/full/adabas-631-utils 47/431
7/18/2019 adabas 6.3.1 utils
Functional Overview
The ADACLP utility prints the command log with a line width of 132 characters.
Note: ADACLP can only process command logs of nucleus sessions that were started with
the ADANUCparameter CLOGLAYOUT=5 (5 is the default value). Please refer to ADANUC ,
CLOGLAYOUT for further information.
A record is written in the command log for each Adabas command issued. Command logging
must be enabled during Adabas startup with the nucleus parameter LOGGING, or when the
nucleus is already active with the ADAOPR parameter LOGGING.
Note: For performance reasons, the Adabas nucleus determines thecommand start timestamp
only if command logging has been enabled. For this reason, the command start date and
the command duration are not displayed for Adabas commands that are already active but
not yet nished when command logging is switched on.
Any of the ADACLP parameters selects a subset of the command log information.
40 Adabas Utilities
http://slidepdf.com/reader/full/adabas-631-utils 48/431
7/18/2019 adabas 6.3.1 utils
Procedure Flow
Note: (*) A named pipe can be used for this sequential le (not on OpenVMS, see Adminis-
tration , Using Utilities for details).
The sequential les CLPCLG can have multiple extents. For detailed information about sequential
les with multiple extents, see Administration , Using Utilities.
Adabas Utilities 41
http://slidepdf.com/reader/full/adabas-631-utils 49/431
7/18/2019 adabas 6.3.1 utils
Checkpoints
Control Parameters
D [NO]ADDITIONS_2
CLASS = (keyword[,keyword]...)
CLOG = (number[,number])
COMMAND = (keyword[,keyword]...)
DATE = ([absolute-date][,[absolute-date]])
DBID = number
D DISPLAY = (keyword[,keyword]...)
D ES_ID [=number]
D FILE = (number[-number][,number[-number]]...)
D [NO]HEXADECIMAL
D LOGIN_ID = string
NODE_ID = string
D PAGE = number
D RECORDS = number[-number]
RESPONSE = (number[-number][,number[-number]]...)
D USER_ID = string
D WIDTH = number
42 Adabas Utilities
http://slidepdf.com/reader/full/adabas-631-utils 50/431
7/18/2019 adabas 6.3.1 utils
[NO]ADDITIONS_2
[NO]ADDITIONS_2
This option can be used to display the Additions 2 eld instead of the command ID.
CLASS
This parameter selects the log records whose command codes belong to the specied command
class. All records are selected if neither the CLASS parameter nor the COMMAND parameter is
specied.
KEYWORD USE
Example:
The log records of the commands S1, S2, S4, S8 and S9 are selected.
CLOG
This parameter is required if the command log is within a raw section. It is optional if the command
log is within a le system. The CLOG number and the extension count can be specied. If no ex-
tension count is specied, Adabas will open subsequent extents as necessary. If an extent count
is specied, then only the specied extent will be processed.
Adabas Utilities 43
http://slidepdf.com/reader/full/adabas-631-utils 51/431
7/18/2019 adabas 6.3.1 utils
COMMAND
This parameter selects the log records with an Adabas command code specied by the keywords.
Up to ten keywords can be dened. If neither the COMMAND parameter nor the CLASS parameter
is specied, all records are selected.
All valid Adabas commands (A1...S9) can be used as keywords (see Command Reference for further
information).
DATE
This parameter
strings selects thetolog
must correspond therecords in the
following range specied
absolute date and by theformat:
time optional date strings. The date
dd-mmm-yyyy[:hh:mm:ss]
Leading zeroes in the date and time specication may be omitted. Any numbers not specied are
set to 0, for example 28-jul-2012 is equivalent to 28-jul-2012:00:00:00.
Examples:
All log records written from 8-AUG-2012 12:00:00 onwards are selected.
44 Adabas Utilities
http://slidepdf.com/reader/full/adabas-631-utils 52/431
7/18/2019 adabas 6.3.1 utils
DBID
DBID = number
This parameter selects the database to be used. This parameter must be specied when the CLOG
to be used is on a raw device.
DISPLAY
This parameter is used to display various kinds of information from the command log. The
keywords shown in the following table are available. Information for these keywords can only be
displayed if corresponding data was logged during the nucleus session.
KEYWORD MEANING
Note: For command logs created with versions lower than Version 6.3 SP1, the duration of
the command is displayed in milliseconds.
FB Format buer.
FULL_CB All elds of the control block. Other information shown for DISPLAY=CB is not shown here.
IB ISN buer.
IO IO list.
RB Record buer.
SB Search buer.
STATISTICS Command statistics of the selected records.
VB Value buer.
Adabas Utilities 45
http://slidepdf.com/reader/full/adabas-631-utils 53/431
7/18/2019 adabas 6.3.1 utils
ES_ID
ES_ID [ = number]
This parameter causes the environment-specic ID to be displayed instead of the login ID.
If a number is specied, only records with information for the specied environment-specic ID
(process ID) will be selected.
FILE
This parameter selects the log records with commands that reference the le(s) specied by
number or range of numbers. A maximum of 20 les may be specied.
[NO]HEXADECIMAL
[NO]HEXADECIMAL
If this parameter is set to HEXADECIMAL, the record buer and value buer are displayed in
hexadecimal format (when DISPLAY=RB or DISPLAY=VB is specied).
LOGIN_ID
LOGIN_ID = string
This parameter selects all records with the specied login ID.
NODE_ID
NODE_ID = string
This parameter selects the log records from the specied node.
The node identication shown while processing ADAOPR with the parameter DISPLAY = UQ
must be used.
46 Adabas Utilities
http://slidepdf.com/reader/full/adabas-631-utils 54/431
7/18/2019 adabas 6.3.1 utils
PAGE
PAGE = number
This parameter denes the page size, in lines, used for the printout.
RECORDS
This parameter selects the log records in the specied range of log record numbers. Log record
numbers start with 1 after the log is switched on.
RESPONSE
This parameter selects the records with the specied response code or range of response codes.
USER_ID
USER_ID = string
This parameter selects the records with the user ID specied in `string'.
user_id = *adarep
All records that represent commands issued from the utility ADAREP are selected.
Adabas Utilities 47
http://slidepdf.com/reader/full/adabas-631-utils 55/431
7/18/2019 adabas 6.3.1 utils
WIDTH
WIDTH = number
This parameter selects the output line width. Valid values are 80 and 132.
If multiple selection criteria are specied, they are combined by a logical AND, e.g.
48 Adabas Utilities
http://slidepdf.com/reader/full/adabas-631-utils 56/431
7/18/2019 adabas 6.3.1 utils
■ FunctionalOverview ........................................................................................................................ 50
■ ProcedureFlow ............................................................................................................................... 51
■ Checkpoints ................................................................................................................................... 52
■
Control Parameters .......................................................................................................................... 52
■ Output ........................................................................................................................................... 64
■ Report ........................................................................................................................................... 65
■ Restart Considerations ..................................................................................................................... 65
49
http://slidepdf.com/reader/full/adabas-631-utils 57/431
7/18/2019 adabas 6.3.1 utils
Functional Overview
The compression utility ADACMP compresses user raw data into a form which can be used by
the mass update utility ADAMUP.
The input data for this utility must be contained in a sequential le. LOB eld values can also be
provided in separate les.
The logical structure and characteristics of the input data are described by a eld denition table
(FDT). These statements specify the level number, eld name, standard length and format together
with any denition options that are to be assigned to the eld (descriptor, unique descriptor,
multiple-value eld, null value suppression, xed storage, periodic group). See Administration ,
FDT Record Structure for more detailed information about the layout of the le in the database and
characteristics of the input data.
Each eld in the input record without the option SY (system generated) is compressed. Compression
consists of removing trailing blanks from alphanumeric elds and leading zeros from numeric
elds. Unpacked and packed elds are checked for correct data. Fields dened with the xed
storage option are not compressed. A user exit is provided to allow additional editing of each input
record with a user-written routine.
System generated elds are either regenerated or decompressed, depending on the keyword
specied for the ADACMP parameter SYFINPUT.
The sizes of the descriptor values of all descriptors are listed at the end of execution.
If the utility writes records to the error le, it will exit with a non-zero status.
50 Adabas Utilities
http://slidepdf.com/reader/full/adabas-631-utils 58/431
7/18/2019 adabas 6.3.1 utils
Procedure Flow
The sequential les CMPDTA, CMPDVT and CMPERR can have multiple extents. For detailed
information about sequential les with multiple extents, see Administration , Using Utilities, Adabas
Adabas Utilities 51
http://slidepdf.com/reader/full/adabas-631-utils 59/431
7/18/2019 adabas 6.3.1 utils
Sequential Files, Multiple Extents . CMPLOB is a directory that contains les which may be stored
as LOB values in the database.
Logical Name
Associator ASSOx Disk
Compressed data CMPDTA Disk, Tape (* see note) output by ADACMP
Descriptor Value Table CMPDVT Disk, Tape (* see note) output by ADACMP
Rejected data CMPERR Disk, Tape (* see note) output by ADACMP
Input data FDT CMPFDT Disk, Tape (* see note) Utilities Manual
User input data CMPIN Disk (* see note) Utilities Manual
User LOB input data CMPLOB Disk Utilities Manual
ADACMP stdin/ Utilities Manual
Note: (*) A named pipe can be used for this sequential le (see Administration , Using Utilities,
Adabas Sequential Files, Using Named Pipes for details).
If the SINGLE_FILE option is set, the Descriptor Value Table (DVT) and the compressed user data
are written together to the logical name CMPDTA.
Checkpoints
Control Parameters
DBID = number
D [NO]DST
FDT
52 Adabas Utilities
http://slidepdf.com/reader/full/adabas-631-utils 60/431
7/18/2019 adabas 6.3.1 utils
FILE = number
D [NO]LOBS
D [NO]LOWER_CASE_FIELD_NAME
D [NO]NULL_VALUE
D NUMREC = number
D RECORD_STRUCTURE = keyword
D [NO]SHORT_RECORDS
D [NO]SINGLE_FILE
SKIPREC = number
D SOURCE_ARCHITECTURE = (keyword[,keyword][,keyword])
D SYFINPUT = keyword
D TZ {=|:} [timezone]
D [NO]USEREXIT
D [NO]USERISN
D WCHARSET = char_set
DBID
DBID = number
This parameter selects the database that contains the le to be specied by the FILE parameter.
Adabas Utilities 53
http://slidepdf.com/reader/full/adabas-631-utils 61/431
7/18/2019 adabas 6.3.1 utils
[NO]DST
[NO]DST
The parameter DST is required if a daylight saving time indicator is provided for date/time elds
with the option TZ. The daylight saving time indicator must be appended behind the date/time
value as a 2-byte integer value (format F) that contains the number of seconds to be added to the
standard time in order to get the actual time (usually 0 or 3600).
Without the parameter DST, it is not possible to dene time values in the hour before the time is
switched back to standard time.
Notes:
1. The DST parameter is ignored if the FIELDS parameter is specied. In this case, you must specify
a D element for elds with the daylight saving time indicator.
2. The DST parameter is not compatible with the RECORD_STRUCTURE = NEWLINE_SEPAR-
ATOR parameter because the daylight saving indicator in format F contains non-printable
characters.
Example:
■
The local date/time value corresponding to the edit mask DATE_TIME as an 8-byte packed
value
■ The daylight saving time indicator, usually 0 for standard time and 3600 for summer time as a
2-byte xed point value
Case 1 (DT has a date/time value with daylight saving time): 0x0200910250230000E10
Case 2 (DT has a date/time value with standard time): 0x0200910250230000000
FDT
FDT
If this parameter is the rst parameter that is specied, ADACMP reads the FDT information
contained in the sequential le CMPFDT. If it is specied in conjunction with the DBID and FILE
parameters, the FDT of the specied le is displayed.
54 Adabas Utilities
http://slidepdf.com/reader/full/adabas-631-utils 62/431
7/18/2019 adabas 6.3.1 utils
FIELDS
This parameter is used to specify a subset of elds given in the FDT and their format and length.
This means that the input records do not have to contain all of the elds given in the FDT, or that
elds can be provided with a dierent format or length. The syntax and semantics are the same
as for the format buer, with the exception that you can also specify an R-element (for LOB refer-
ences) if the decompressed record contains the name of a le containing the LOB value instead of
the LOB value itself. See Administration , Loading and Unloading Data, Uncompressed Data Format for
more detailed information.
While entering the specication list, the FDT function can be used to display the FDT of the le
to be decompressed. The specication list can be terminated or interrupted by entering
END_OF_FIELDS or `.'. The `.' option is an implicit END_OF_FIELDS and is compatible with the
format buer syntax. FIELDS or END_OF_FIELDS must always be entered on a line by itself,
whereas the `.' may be entered on a line by itself or at the end of the format buer elements.
If the eld denitions are terminated with the END_OF_FIELDS parameter, this parameter must
be specied in upper case when the LOWER_CASE_FIELD_NAMESparameter is used. In addition,
the FDTparameter must also be specied in upper case when the LOWER_CASE_FIELD_NAMES
parameter is used.
FILE
FILE = number
This parameter species the le from which the FDT information is to be read. This parameter
can only be specied after the DBID parameter.
[NO]LOWER_CASE_FIELD_NAMES
[NO]LOWER_CASE_FIELD_NAMES
Adabas Utilities 55
http://slidepdf.com/reader/full/adabas-631-utils 63/431
7/18/2019 adabas 6.3.1 utils
[NO]LOBS
[NO]LOBS
This parameter species whether LA and LB eld values are to be stored in a LOB le after loading
the compressed data into the database:
■ If the parameters DBID and le number have been specied, this parameter is ignored, and the
eld is handled as described below;
■ If the parameters DBID and le number have not been specied and LOBS is specied, eld
values for LA and LB elds are prepared for storage in a LOB le, except the eld is dened as
a descriptor.
■ If the parameters DBID and le number have not been specied and NOLOBS is specied, eld
values for LA and LB elds are prepared for storage in the base le. In this case, the length of
eld values for LA and LB elds must not exceed 16381 bytes and the compressed record must
t into a 32 KB DATA block.
Please note that LA and LB elds which are descriptors or parent elds of a derived descriptor,
e.g. a super descriptor, are always handled as described for the NOLOBS parameter.
■ If the parameters DBID and le number have been specied and the le is a base le with cor-
responding LOB le, LOBS is default.
■ If the parameters DBID and le number have been specied and the le is not a base le with
corresponding LOB le, NOLOBS is default.
■ If the parameters DBID and le number have not been specied, LOBS is default.
MAX_DECOMPRESSED_SIZE
This parameter species the maximum size of a decompressed record in bytes, kilobytes or
megabytes, depending on the specication of "K" or "M" after the number. This parameter is inten-
ded to recognize invalid CMPIN les as early as possible.
Notes:
1. This parameter does not include the size of LOB values stored in separate les.
2. The exact denition of this parameter is the size of the I/O buer required for the largest decom-
pressed record. Only multiples of 256 bytes are used for the I/O buers, which means that you
must specify a value greater than or equal to the largest decompressed record (including the
preceding length eld) rounded up to the next multiple of 256.
56 Adabas Utilities
http://slidepdf.com/reader/full/adabas-631-utils 64/431
7/18/2019 adabas 6.3.1 utils
MUPE_C_L
MUPE_C_L = {1|2|4}
If the uncompressed data contain multiple-value elds or periodic groups, they are preceded by
a binary count eld with the length of MUPE_C_L bytes.
The default is 1.
[NO]NULL_VALUE
[NO]NULL_VALUE
The parameter NULL_VALUE is required if you are compressing data according to the standard
FDT and the status values of the NC option elds are given in the input data. Normally, such input
data is generated by ADADCU with the NULL_VALUE option set.
NUMREC
NUMREC = number
This parameter species the number of input records to be processed. If this parameter is omitted,
all input records contained on the input le are processed.
Use of this parameter is recommended for the initial execution of ADACMP if the input data le
contains a large number of records. This avoids unnecessary processing of all records in cases
where a data denition error or invalid input data results in a large number of rejected records.
This parameter is also useful for creating small les for test purposes.
Adabas Utilities 57
http://slidepdf.com/reader/full/adabas-631-utils 65/431
7/18/2019 adabas 6.3.1 utils
RECORD_STRUCTURE
RECORD_STRUCTURE = keyword
This parameter species the type of record separation used in the input le with the environment
variable CMPIN. The following keywords can be used:
Keyword Meaning
ELENGTH_PREFIX The records in the CMPIN le are separated by a two-byte exclusive length eld.
E4LENGTH_PREFIX The records in the decompressed data le are separated by a 4-byte exclusive
length eld.
ILENGTH_PREFIX The records in the CMPIN le are separated by a two-byte inclusive length eld.
I4LENGTH_PREFIX The records in the decompressed data le are separated by a 4-byte inclusive
length eld.
NEWLINE_SEPARATOR The records in the CMPIN le are separated by a new-line character. This
keyword may only be specied if the eld values do not contain characters
interpreted as new-line (i.e. if there are only unpacked, alphanumeric and
Unicode elds, and the alphanumeric and Unicode elds contain only printable
characters). This keyword and the USERISN parameter are mutually exclusive.
RDW The records in the CMPIN le contain data that has been transferred from an
IBM host using the FTP site rdw option. ADACMP is able to process such data
without having to use cvt_fmt rst (in previous versions, the unsupported tool
cvt_fmt was used for such format conversions). For example:
% ftp IBM-host
ftp> binary
200 Representation type is Image
ftp> site rdw
200 Site command was accepted
ftp> get decomp
% setenv CMPIN decomp
% adacmp fdt record_structure=rdw source=(ebcdic,high)
58 Adabas Utilities
http://slidepdf.com/reader/full/adabas-631-utils 66/431
7/18/2019 adabas 6.3.1 utils
SEPARATOR
If you specify this option, ADACMP expects the elds in the raw data record to be separated by
the character specied. You can omit the apostrophes round the character specication if the
character has no special meaning for the Adabas utilities. The same elds in dierent records are
then permitted to be of dierent lengths.
If a format buer is specied using the FIELDS parameter, the order of the specied eld names
must correspond with the order in which the elds are specied in the FDT. A mismatch results
if this is not the case.
If the FDT contains multiple value elds or periodic groups, a format buer must be specied
with the FIELDS parameter. Members of periodic groups must be ordered by 1) periodic group
index and 2) eld sequence in the FDT (see example 2 below).
Because no binary data is expected in the input le using the SEPARATOR option, the RE-
CORD_STRUCTURE parameter will be set to NEWLINE_SEPARATOR.
Example 1
FDT: 1, AA, 2, U
1, AB, 8, U
1, AC, 2, A
CMPIN: 12;12345678;AA
1234;5;BB
adacmp
fdt
separator=\;
or for UNIX
or
In this example, 2 records are compressed with the default FDT, the separator character is the
semicolon, and the default record structure is NEWLINE_SEPARATOR. Note that the semicolon
must be preceded by a backslash, otherwise it would be treated as the start of a comment. If you
enter the parameters under UNIX directly from the command line, it is necessary to precede the
backslash and the semicolon by additional backslashes or to put them in quotes or double quotes
since they are special characters.
Adabas Utilities 59
http://slidepdf.com/reader/full/adabas-631-utils 67/431
7/18/2019 adabas 6.3.1 utils
Example 2
FDT: 1, XX, PE
2, AA, 8, A
2, AB, 8, U
1, YY, 2, A
In this example, 1 record with elds given in the format buer is compressed, the separator char-
acter is the comma.
Example 3
FDT: 1, AA, 8, A
1, MA, 1, A, MU
CMPIN: aaaa%2%A%B
bbbb%3%C%D%E
In this example, 2 records with elds given in the format buer are compressed, the occurrence
count or the multiple value eld MA is dierent in dierent records. The separator character is
the percent character.
[NO]SHORT_RECORDS
[NO]SHORT_RECORDS
If SHORT_RECORDS
that is specied, it is possible to omit elds at the end of the decompressed record
contain null values.
You can only omit complete elds; it is not possible to truncate the last value:
60 Adabas Utilities
http://slidepdf.com/reader/full/adabas-631-utils 68/431
7/18/2019 adabas 6.3.1 utils
Example
Assuming you have specied the parameters for a le containing alphanumeric elds AA and
AB:
FIELDS
AA,20,AB,20
END_OF_FIELDS
SHORT_RECORDS
"Field AA "
"Field AA"
[NO]SINGLE_FILE
[NO]SINGLE_FILE
If the SINGLE_FILE option is set, ADACMP writes the Descriptor Value Table (DVT) and the
compressed user data to a single le (CMPDTA) instead of writing them to separate les.
SKIPREC
SKIPREC = number
This parameter species the number of records to be skipped before compression is started.
SOURCE_ARCHITECTURE
This parameter species the format (character set, oating-point format and byte order) of the
input data records. The following keywords can be used:
EBCDIC
Floating-point format IBM_370_FLOATING
IEEE_FLOATING
Adabas Utilities 61
http://slidepdf.com/reader/full/adabas-631-utils 69/431
7/18/2019 adabas 6.3.1 utils
VAX_FLOATING
Byte order HIGH_ORDER_BYTE_FIRST
LOW_ORDER_BYTE_FIRST
If no keyword of a keyword group is specied, the default for this keyword group is the keyword
that corresponds to the architecture of the machine on which ADACMP is running.
Example
If the input records that are to be compressed are in IBM format, the user must specify the following:
SYFINPUT
SYFINPUT = keyword
This parameter species the input used for the compression of system generated elds. The fol-
lowing keywords can be used:
Keyword Meaning
SYSTEM The system generated eld values are regenerated by the system in ADACMP.
USER The system generated eld values are taken from the decompressed le.
TZ
TZ {=|:} [timezone]
The specied time zone must be a valid time zone name that is contained in the time zone database
known as the Olson database ( http://www.twinsun.com/tz/tz-link.htm). If a time zone has been
specied, this time zone is used for time zone conversions of date/time elds with the option TZ.
The default is UTC, which is used internally to store date/time elds with option TZ; no conversion
is required.
If you specify an empty value, no checks are made to ensure that date/time elds are correct.
62 Adabas Utilities
http://slidepdf.com/reader/full/adabas-631-utils 70/431
7/18/2019 adabas 6.3.1 utils
Note: The time zone names are le names. Depending on the platform, these le names
may or may not be case sensitive. Also, the time zone names, depending on the platform,
may or may not be case sensitive.
Examples:
tz:Europe/Berlin
TZ=Europe/Berlin
[NO]USEREXIT
[NO]USEREXIT
This option species whether a user exit is to be taken or not. If USEREXIT is specied, the envir-
onment variable ADAUEX_6/logical name ADABAS$USEREXIT_6 must point to a loadable user-
written routine.
[NO]USERISN
[NO]USERISN
If this option is set to USERISN, the ISN for each record in the input le will be assigned by the
user.
If USERISN is specied, the user must give the ISN to be assigned to each record as a four-byte
binary number immediately preceding each data record.
ISNs may be assigned in any order and must be unique (for the le). The ISN must not exceed the
maximum number of records (MAXISN) specied for the le (see the le denition utility
ADAFDU for more detailed information).
ADACMP does not check for unique ISNs or for ISNs which exceed MAXISN. These checks are
performed by the mass update utility ADAMUP (if an error is detected, the ADAMUP run termin-
ates with an error message).
Adabas Utilities 63
http://slidepdf.com/reader/full/adabas-631-utils 71/431
7/18/2019 adabas 6.3.1 utils
WCHARSET
WCHARSET = char_set
This parameter species the default encoding used in the decompressed le based on the encoding
names listed at http://www.iana.org/assignments/character-sets - most of the character sets listed
there are supported by ICU, which is used by Adabas for internationalization support.
Output
1. Compressed data
2. Descriptor values
3. Records with errors
The data records which ADACMP has processed, modied and compressed are output together
with the FDT information to a sequential le. This le is used as input for the mass update utility
ADAMUP.
If the output le contains no records (no records on the input le or all records rejected), the output
may still be used as input for the mass update utility ADAMUP.
Compressed data records and descriptor value tables are written to one le if the SINGLE_FILE
option is specied.
64 Adabas Utilities
http://slidepdf.com/reader/full/adabas-631-utils 72/431
7/18/2019 adabas 6.3.1 utils
Any records rejected by ADACMP are written to the ADACMP error le. The contents of this error
le should be displayed using the ADAERR utility. Do not print the error le using the standard
operating system print utilities since the records contain unprintable characters.
Report
The ADACMP report begins with a display of the eld denition entered if CMPFDT is used for
input. Any statement which contains a syntax error will be printed with a message immediately
following the statement.
Following the display of the data-denition statements, a descriptor summary, the number of input
records processed, the number of input records rejected, and the number of input records com-
pressed are printed.
Restart Considerations
ADACMP does not have a restart capability. An interrupted ADACMP run must be re-started
from the beginning.
ADACMP does not change the database; therefore, no considerations need to be made concerning
database status before restarting ADACMP.
Adabas Utilities 65
http://slidepdf.com/reader/full/adabas-631-utils 73/431
7/18/2019 adabas 6.3.1 utils
66
http://slidepdf.com/reader/full/adabas-631-utils 74/431
7/18/2019 adabas 6.3.1 utils
67
http://slidepdf.com/reader/full/adabas-631-utils 75/431
7/18/2019 adabas 6.3.1 utils
Functional Overview
The DBA Workbench is a graphical user interface that is used to create, operate and maintain
Adabas databases and les on the local node.
The Adabas Workbench is no longer supported starting with Version 6.2. On those platforms for
which the DBA Workbench was delivered for Version 6.1, the Workbench will still be delivered,
but the functionality is frozen to the functionality that was available with Version 6.1. New features
that were introduced for Version 6.2, such as date/time elds, are not supported.
The DBA Workbench can be started either from the command line in the same manner as any
other utility (UNIX and Windows), or by clicking the icon for the DBA Workbench in the Adabas
folder on the desktop (Windows only).
Additional information is available as context-sensitive online help when the DBA Workbench is
running.
68 Adabas Utilities
http://slidepdf.com/reader/full/adabas-631-utils 76/431
7/18/2019 adabas 6.3.1 utils
Procedure Flow
Adabas Utilities 69
http://slidepdf.com/reader/full/adabas-631-utils 77/431
7/18/2019 adabas 6.3.1 utils
70
http://slidepdf.com/reader/full/adabas-631-utils 78/431
7/18/2019 adabas 6.3.1 utils
■ FunctionalOverview ........................................................................................................................ 72
■ ProcedureFlow ............................................................................................................................... 74
■ Checkpoints ................................................................................................................................... 76
■
Control Parameters .......................................................................................................................... 77
■ Restart Considerations ................................................................................................................... 100
71
http://slidepdf.com/reader/full/adabas-631-utils 79/431
7/18/2019 adabas 6.3.1 utils
Functional Overview
The ADADBM utility consists of the following functions which may be used to make modications
to the database:
■ The ADD_CONTAINER function adds a new container le to the Associator or Data Storage
data set;
■ The ADD_FIELDS function adds new elds to the end of a le's FDT;
■ The ALLOCATE NI, UI, AC or DS function increases the Normal Index, Upper Index, Address
Converter or Data Storage space assigned to a le;
■ The CHANGE function changes the standard length of a eld in the Field Denition Table
(FDT);
■ The CHANGE_FIELDS function modies one or more eld specications in a le;
■ The DEALLOCATE functions are the inverse functions of ALLOCATE. The NI, UI, AC or DS
function returns the Normal Index, Upper Index, Address Converter or Data Storage space
which is no longer required by a le to the free space table (FST);
■ The DELCP function deletes old checkpoint records from the checkpoint le in the specied
range of dates;
■ The DELETE function deletes a single Adabas le or a range of Adabas les from the database;
■ The DISPLAY function displays the utility communication block (UCB);
■ The DROP_FIELDS function marks the specied elds as not existing, which means that they
can no longer be accessed ;
■ The DROP_LOBFILE function is the inverse function of ADAFDU ADD_LOBFILE;
■ The DROP_REFINT function drops an existing referential constraint;
■ The EXTEND_CONTAINER function extends the last container le dened for the database;
■ The NEW_DBID function changes the identier of the database in use;
■ The NEWWORK function allocates and formats a new Adabas WORK data set;
■ The PGM_REFRESH function enables or disables refreshing an Adabas le inside an application
program with an E1 command;
■ The RECOVER function returns lost space to the free space table;
■ The REDUCE_CONTAINER function reduces the size of the last container le dened for the
database;
■ The REFRESH function resets a single le or a range of les to the state of zero records loaded;
72 Adabas Utilities
http://slidepdf.com/reader/full/adabas-631-utils 80/431
7/18/2019 adabas 6.3.1 utils
■ The REMOVE_CONTAINER function removes a container le from the Associator, or Data
Storage data set;
■ The REMOVE_DROP function, used in conjunction with a subsequent REFRESH, removes
dropped elds from the FDT;
■
The REMOVE_REPLICATIONfunction
system les; stops all replication processing and deletes the replication
■ The RENAME function changes the database name or names of loaded les;
■ The RENUMBER function renumbers a loaded le or exchanges the numbers of loaded les;
■ The REPLICATION_FILES function creates the system les required for Adabas - Adabas rep-
lication;
■ The RESET function removes entries from the UCB;
■ The RESET_REPLICATION_TARGET function resets the replication target ag of Adabas les;
■ The REUSE function controls the reusage of Data Storage space or ISNs by Adabas;
■ TheSYFMAXfunction species themaximum number of values generatedfor a system generated
multiple-value eld in the le specied.
Adabas Utilities 73
http://slidepdf.com/reader/full/adabas-631-utils 81/431
7/18/2019 adabas 6.3.1 utils
Procedure Flow
Online Mode
If the Adabas nucleus is active, ADADBM calls the nucleus to modify the database containers. For
some tasks, no checkpoints are written, but the activity is logged in the database log, and in the
case of a recovery, the activity is re-executed automatically.
74 Adabas Utilities
http://slidepdf.com/reader/full/adabas-631-utils 82/431
7/18/2019 adabas 6.3.1 utils
Offline Mode
If the Adabas nucleus is not active, ADADBM itself modies the database containers.
Adabas Utilities 75
http://slidepdf.com/reader/full/adabas-631-utils 83/431
7/18/2019 adabas 6.3.1 utils
Checkpoints
The following table shows the nucleus requirements for each function and the checkpoints written:
Function Nucleus must Nucleus must NOT Nucleus is NOT Checkpoint written
be active be active required
ADD_CONTAINER X SYNP
ADD_FIELDS X SYNP (oine)
SYNX (online)
ALLOCATE X SYNP
CHANGE X -
CHANGE_FIELDS X SYNP (oine)
SYNX (online)
DEALLOCATE X SYNP
DELCP X SYNP
DELETE X SYNP (oine)
SYNX (online)
DISPLAY X -
DROP_FIELDS X SYNP (oine)
SYNX (online)
DROP_LOBFILE X SYNP
EXTEND_CONTAINER for WORK for ASSO or DATA SYNP
NEW_DBID X (see note 1) SYNP
NEWWORK X (see note 1) SYNP
PGM_REFRESH X SYNP
RECOVER X SYNP
REDUCE_CONTAINER for ASSO or DATA SYNP
REFRESH X SYNP
REMOVE_CONTAINER X SYNP
REMOVE_REPLICATION X SYNP (oine)
RENAME X SYNP
RENUMBER X SYNP
REPLICATION_FILES X SYNP (oine)
SYNX (online)
(see note 2)
76 Adabas Utilities
http://slidepdf.com/reader/full/adabas-631-utils 84/431
7/18/2019 adabas 6.3.1 utils
Function Nucleus must Nucleus must NOT Nucleus is NOT Checkpoint written
be active be active required
RESET X SYNX
RESET_REPLICATION_TARGET
REUSE X SYNP
SYFMAX X SYNP (oine)
SYNX (online)
Notes:
Control Parameters
ADD_CONTAINER = keyword
D [,BLOCKSIZE=number[K] ]
,SIZE = number [B|M]
M DBID = number
DISPLAY = UCB
Adabas Utilities 77
http://slidepdf.com/reader/full/adabas-631-utils 85/431
7/18/2019 adabas 6.3.1 utils
DROP_LOBFILE = number
NEW_DBID = number
RECOVER
REMOVE_CONTAINER = keyword
[NO]REMOVE_DROP
REMOVE_REPLICATION
RESET_REPLICATION_TARGET = number
78 Adabas Utilities
http://slidepdf.com/reader/full/adabas-631-utils 86/431
7/18/2019 adabas 6.3.1 utils
ADD_CONTAINER
ADD_CONTAINER = keyword
[,BLOCKSIZE=number[K] ]
,SIZE = number [B|M]
The ADD_CONTAINER function adds a new container le to an existing Associator or Data
Storage dataset in accordance with the keyword used. The keyword can take the values ASSO or
DATA .
The new container le may be allocated on the same device as the current container les or it may
be allocated on a dierent device type.
The placement of the new container le depends on the environment variable/logical name ASSOx
or DATAx. This has to be set to a legal le name with its whole path name. If ASSOx or DATAx
is not set, the container les are created in the current directory.
Notes:
1. If you add a new DATA container, free space is required on the existing Associator for the Data
Storage Space Table (DSST): 1 byte is required for each new DATA block. Therefore, you should
add a new ASSO container rst if the existing Associator is full.
2. If you add a new container while the Adabas nucleus is active, the container is not added by
ADADBM, but by ADANUC. In this case, you should consider the following, depending on
the way the container les are specied: if the container les are specied as environment
variables/logical names, you can only add the new container if you have already dened the
corresponding environment variable/logical name for the current nucleus session. If you haven't,
you have to terminate the current nucleus session before you can add the new container. If, on
the other hand, the container les are specied in the DBnnn.INI les (which, for example, are
generated if you use the Workbench to administrate Adabas), you can enter the new container
in the le just before you add the container, since the nucleus re-reads the le before the con-
tainer is added (please refer to the Adabas Extended Operation for further information about the
DBnnn.INI les).
BLOCKSIZE = number[K]
This parameter species the block size in bytes (or in kilobytes, if "K" is specied after the number)
of the new container le.
Adabas rounds up the value you specify to the next multiple of 1K. The minimum block size is
1K and maximum block size is 32K.
The default value for BLOCKSIZE is the block size of the last container le of the dataset in question
that is currently present in the database.
Adabas Utilities 79
http://slidepdf.com/reader/full/adabas-631-utils 87/431
7/18/2019 adabas 6.3.1 utils
This parameter species the number of blocks (B) or megabytes (M) to be allocated for the new
container le. By default, the size is given in megabytes.
Example
A new container le of 10 megabytes is added to the Data Storage. The block size is the same as
the block size of DATA1.
ADD_FIELDS
The ADD_FIELDS function adds one or more new elds to the end of the le dened by `number'.
Specifying a LOB le is not permitted. The function is completed by entering END_OF_FIELDS.
If the eld denitions are terminated with the END_OF_FIELDS parameter, this parameter must
be specied in upper case when the LOWER_CASE_FIELD_NAMES parameter is used. In addition,
the FDTparameter must also be specied in upper case when theLOWER_CASE_FIELD_NAMES
parameter is used.
Note: It is not possible to add derived descriptors using ADADBM - you should use the
field_specification
The eld specication list is entered in the same way as the FDT input in ADAFDU:
The NN option is not permitted. DE is only permitted when the Adabas nucleus is active and to-
gether with the NU or NC option. Otherwise use the ADAINV utility to give the new elds
descriptor status. UQ is only permitted together with the DE option.
Note: When you add system-generated elds (elds with the eld option SY) to a le, these
elds have null values in the records that are already in the database - this is the same be-
haviour as for elds without the SY option.
80 Adabas Utilities
http://slidepdf.com/reader/full/adabas-631-utils 88/431
7/18/2019 adabas 6.3.1 utils
FDT
This parameter displays the FDT of the le to which the elds are to be added.
Example
adadbm: add_fields=12
adadbm: fdt
12 I AD
I CD II 20 I
I A I DE,NU
I I
I SP
2 I AE I 20 I A I NU I
2 I AF I 10 I A I DE,NU I
1 I AG I 2 I U I NU I SP
1 I AH I 1 I A I DE,FI I
1 I AI I 1 I A I FI I
1 I AJ I 6 I U I NU I SP
1 I AK I I I I
2 I AL I 3 I A I NU I
2 I AM I 4 I P I NU,MU I
-------------------------------------------------------------------------------
Type I Name I Length I Format I Options I Parent field(s) Fmt
-------------------------------------------------------------------------------
SUPER I AN I 4 I B I NU I AJ ( 5 - 6 ) U
I I I I I AJ ( 3 - 4 ) U
-------------------------------------------------------------------------------
SUPER I AO I 22 I A I NU I AG ( 1 - 2 ) U
I I I I I AD ( 1 - 20 ) A
-------------------------------------------------------------------------------
adadbm: 01,dd,1,a
adadbm: 01,gr
adadbm: 02,g1,20,a,fi
adadbm: fdt
Field Definition Table:
Adabas Utilities 81
http://slidepdf.com/reader/full/adabas-631-utils 89/431
7/18/2019 adabas 6.3.1 utils
1 I CD I I I I
2 I AD I 20 I A I DE,NU I SP
2 I AE I 20 I A I NU I
2 I AF I 10 I A I DE,NU I
1 I AG I 2 I U I NU I SP
1 I AH I 1 I A I DE,FI I
1 I AI I 1 I A I FI I
1 I AJ I 6 I U I NU I SP
1 I AK I I I I
2 I AL I 3 I A I NU I
2 I AM I 4 I P I NU,MU I
1 I DD I 1 I A I I
1 I GR I I I I
2 I G1 I 20 I A I FI I
-------------------------------------------------------------------------------
Type I Name I Length I Format I Options I Parent field(s) Fmt
-------------------------------------------------------------------------------
SUPER I AN I 4 I B I NU I AJ ( 5 - 6 ) U
I I I I I AJ ( 3 - 4 ) U
-------------------------------------------------------------------------------
SUPER I AO I 22 I A I NU I AG ( 1 - 2 ) U
I I I I I AD ( 1 - 20 ) A
-------------------------------------------------------------------------------
adadbm: end_of_fields
%ADADBM-I-FUNC, function ADD_FIELDS executed
ALLOCATE
Depending on the keyword specied (AC, DS, NI or UI), the ALLOCATE function increases the
Normal Index (NI), Upper Index (UI), Address Converter (AC) or Data Storage (DS) by a given
size. Each extent for the required type is checked to see whether it can be extended or not. A new
extent is created if none of the current extents can be extended.
This function lets the DBA override the automatic extension method and can be used to preallocate
smaller or larger extents. This can be useful when adding a large number of records. Exclusive
control of the le is NOT required for this function.
82 Adabas Utilities
http://slidepdf.com/reader/full/adabas-631-utils 90/431
7/18/2019 adabas 6.3.1 utils
FILE = number
RABN = number
This parameter species the allocation start RABN. For NI or UI allocation for a LOB le, the block
size of the RABN specied must be less than 16 KB. For DS allocation for a LOB le, the block size
of the RABN specied must be 32 KB.
This parameter species the size of the expansion area. If a 'B' is appended to size, the size is in
blocks, otherwise it is in megabytes.
Example
CHANGE
This function changes the standard length of a eld in the le specied by number. Specifying a
LOB le is not permitted. The length of xed storage elds (option FI) and oating point elds
(format G) cannot be changed.
Changing the length of a eld does not lead to any modications within the Data Storage, but
may aect programs that use the standard length.
Adabas Utilities 83
http://slidepdf.com/reader/full/adabas-631-utils 91/431
7/18/2019 adabas 6.3.1 utils
FIELD = string
This parameter species the eld whose standard length is to be changed. The eld must be dened
in the Field Denition Table for this le.
LENGTH = number
Example
CHANGE_FIELDS
The CHANGE_FIELDS function modies one or more eld specications of the le dened by
`number'. The function is completed by entering END_OF_FIELDS.
If the eld denitions are terminated with the END_OF_FIELDS parameter, this parameter must
be specied in upper case when the LOWER_CASE_FIELD_NAMES parameter is used. In addition,
the FDTparameter must also be specied in upper case when theLOWER_CASE_FIELD_NAMES
parameter is used.
The changes that are allowed depend on the existence of records in the le. The following restric-
tions apply to all les:
■ The eld level number must not change;
■ A group must either remain a group or may be converted to a periodic group if it is dened on
level 1;
■ A periodic group must either remain a periodic group or may be converted to a non-periodic
group;
■ A eld that is not a group or periodic group must not be converted to a group or a periodic
group.
84 Adabas Utilities
http://slidepdf.com/reader/full/adabas-631-utils 92/431
7/18/2019 adabas 6.3.1 utils
format from W to A, the eld will contain UTF-8 values. Please note that the format specied
in the format buer of Adabas commands must be identical to the format in the eld denition
for A and W elds - therefore it may be necessary to adapt existing programs accordingly.
Other changes of the eld format except for the change between A and W are not allowed.
■ Field options: it is not allowed to add or remove the options DE, FI, MU and UQ.
DT not set DT set, TZ not set or No check is made to see whether the values in the database
set are compliant with the date/time edit mask specied. TZ may
not be set for edit mask names DATE, TIME and NATDATE.
LB set LB not set, LA set Only allowed if there is no LOB le dened for the le or if
the eld is a descriptor of the parent of a derived descriptor.
The behaviour of calls accessing the eld with variable length
changes.
NB not set NB set
NC and NN set FI, NC, NU and NN After this change, the eld is no longer mandatory in the
not set format buer for N1/N2 commands; if not specied, the eld
gets the Adabas null value.
NC and NN set NC set, NN not set After this change, the eld is no longer mandatory in the
format buer for N1/N2 commands; if not specied, the eld
gets the SQL null value.
NU set NC set Empty values are converted to NULL values. Note that NC
set -> NU not set because NU and NC are mutually exclusive.
NV set NV not set The behaviour of cross-platform calls changes.
NV not set NV set
Adabas Utilities 85
http://slidepdf.com/reader/full/adabas-631-utils 93/431
7/18/2019 adabas 6.3.1 utils
SY not set SY set The behaviour of A1, N1 and N2 commands changes. The eld
format must be compatible with the SY option. Note that no
check is made to ensure that the existing values are reasonable.
SY set SY not set The behaviour of A1, N1 and N2 commands changes.
TR not set TR set
TZ not set DT set TZ set, DT unchanged Values in the database will be converted from UTC to local
time when you specify a date/time edit mask.
TZ set TZ not set Values in the database are no longer converted from UTC to
local time when you specify a date/time edit mask.
field_specification
The eld specication list is entered in the same way as the FDT input in ADAFDU:
FDT
This parameter displays the FDT of the le to which the elds are to be added.
DBID
DBID = number
Note: Utility functions which require or allow the nucleus to be shut down need logical as-
signments for the data sets.
Examples
adadbm: dbid=76
%ADADBM-I-DBOFF, database 76 accessed offline
adadbm: dbid=76
%ADADBM-I-DBON, database 76 accessed online
86 Adabas Utilities
http://slidepdf.com/reader/full/adabas-631-utils 94/431
7/18/2019 adabas 6.3.1 utils
DEALLOCATE
Depending on the keyword specied (AC, DS, NI or UI), this function releases a given amount of
space from the Address Converter (AC), Data Storage (DS), Normal Index (NI) or Upper Index
(UI).
If too much space is allocated to an extent, either automatically or manually, the DBA can release
this space and return it to the Free Space Table (FST).
Deallocation is done for only one extent at a time. To release space from multiple extents, DEAL-
LOCATE has to be called several times.
FILE = number
RABN = number
This parameter species the rst RABN to be deallocated. If this parameter is omitted, deallocation
starts at the end of the last extent.
SIZE = numberB
Example
Adabas Utilities 87
http://slidepdf.com/reader/full/adabas-631-utils 95/431
7/18/2019 adabas 6.3.1 utils
DEFINE_REFINT
This function adds a referential constraint to the le 'number', which contains a foreign key. The
syntax for the constraint is the same as that used in the FDT le for ADAFDU and is described in
Administration , FDT Record Structure, Referential Constraints. The constraint is also included in the
FDT of the primary le, therefore, the constraint name must not already be dened in the primary
le.
Adding a referential constraint is not allowed if the le specied as the primary le is dened
with PGM_REFRESH=YES.
If there are violations of the referential integrity, adding of the constraint will fail - no updates are
performed on the data of the le in order to establish referential integrity.
DELCP
Examples
adadbm: delcp=13-NOV-2006:15:09:48
%ADADBM-I-DELCP, 1 record deleted from CHECKPOINT file
adadbm: delcp=(13-NOV-2006:15:09:48,)
%ADADBM-I-DELCP, 81 records deleted from CHECKPOINT file
adadbm: delcp=(,14-NOV-2006:14:37:24)
%ADADBM-I-DELCP, 41 records deleted from CHECKPOINT file
adadbm: delcp=(14-NOV-2006:14:37:25,14-NOV-1996:14:38:15)
%ADADBM-I-DELCP, 42 records deleted from CHECKPOINT file
adadbm: delcp=*
%ADADBM-I-DELCP, 20 records deleted from CHECKPOINT file
88 Adabas Utilities
http://slidepdf.com/reader/full/adabas-631-utils 96/431
7/18/2019 adabas 6.3.1 utils
DELETE
The DELETE function deletes one or more les or ranges of les from the database and returns
all space which was allocated for this le to the Free Space Table (FST). LOB les specied are ig-
nored, but the LOB les assigned to all base les specied are deleted too. There must not be a
referential constraint between a le that is to be deleted and another le, which is not specied.
ADADBM does not request conrmation of the les to be deleted, i.e. care should be taken when
entering the le numbers.
Example
adadbm: delete=(4-11,14)
%ADADBM-I-DELETED, file 11 deleted
DISPLAY = UCB
The DISPLAY function displays the utility communication block. This function can also be executed
during a pending AUTORESTART.
Example:
adadbm: display=ucb
■ DATE/TIME shows the date and time on which the given les were locked.
■ ENTRY ID shows the allocated identication of the entry.
■ UTILITY shows the name of the utility.
■ MODE shows the mode in which the les are being accessed.
■ FILES shows the le numbers of the les that are locked.
Adabas Utilities 89
http://slidepdf.com/reader/full/adabas-631-utils 97/431
7/18/2019 adabas 6.3.1 utils
DROP_FIELDS
The DROP_FIELDS function drops one or more elds from the le dened by `number' - the
specied elds are marked as no longer existing and they cannot be accessed. Specifying a LOB
le is not permitted. The function is completed by entering END_OF_FIELDS.
If the eld denitions are terminated with the END_OF_FIELDS parameter, this parameter must
be specied in upper case when the LOWER_CASE_FIELD_NAMES parameter is used. In addition,
the FDTparameter must also be specied in upper case when theLOWER_CASE_FIELD_NAMES
parameter is used.
If you specify a group or a periodic group, all of the elds that belong to the group or periodic
group are dropped. You must not specify a eld that is a descriptor or from which a descriptor is
derived - if you want to drop such a eld, you must rst release all corresponding descriptors
with ADAINV.
Once the DROP_FIELDS function has been executed, you can redene the names of the dropped
elds, for example using ADADBM's ADD_FIELDS function.
Notes:
1. The DROP_FIELDS function does not physically remove the elds. You should not drop and
then add elds repeatedly, since this can cause the data records or the FDT of the le in question
to overow.
2. ADAMUP is not able to load data into a le that contains the same visible elds but which
contains dierent dropped elds.
FDT
This parameter displays the FDT of the le from which the elds are to be dropped.
DROP_LOBFILE
DROP_LOBFILE = number ↩
The number must specify the le number of a base le with an empty assigned LOB le to be de-
leted.
90 Adabas Utilities
http://slidepdf.com/reader/full/adabas-631-utils 98/431
7/18/2019 adabas 6.3.1 utils
DROP_REFINT
The function removes a referential constraint from the le specied by 'number', which contains
the foreign key. The constraint is also removed from the FDT of the primary le.
EXTEND_CONTAINER
The EXTEND_CONTAINER function extends the last Associator, Data Storage or WORK container
le dened for the database in accordance with the keyword used. The keyword can take the
values ASSO, DATA or WORK.
Note: The WORK container can only be extended in the oine mode.
This parameter species the size of the expansion area in blocks (B) or megabytes (M). By default,
the size is in megabytes.
[NO]LOWER_CASE_FIELD_NAMES
[NO]LOWER_CASE_FIELD_NAMES
NEW_DBID
NEW_DBID = number
This function is used to change the identier of the database in use. The new identier may not
already be in use by another active database.
Adabas Utilities 91
http://slidepdf.com/reader/full/adabas-631-utils 99/431
7/18/2019 adabas 6.3.1 utils
Example
adadbm: new_dbid=77
%ADADBM-I-FUNC, function NEW_DBID executed
NEWWORK
This function removes the existing WORK1 container le and replaces it with a new WORK1
container le. The new WORK1 container le is allocated and then formatted, if required.
Before a new WORK can be created, the nucleus and all utilities using the database must have
been successfully terminated. Since this function requires the current WORK, it must not be deleted
before NEWWORK has been executed. TEMP1 must point to the new work le when this function
is used.
Note: The new WORK can be directed to a disk section or to a le system. If TEMP1 points
to the same disk section as WORK1, then ADADBM tries to extend/reduce the existing
WORK le. In each case the name of the new WORK container le is WORK1. If the function
completes successfully, the old WORK1 gets deleted.
BLOCKSIZE = number[K]
This parameter species the block size in bytes (or in kilobytes, if "K" follows the number) of the
new container le.
Adabas rounds up the value you specify to the next multiple of 1024.
The minimum block size allowed is 3072 and the maximum block size allowed is 32768.
In addition to these minimum and maximum values, the following size restrictions apply in gen-
eral to the block sizes for ASSO and WORK:
where MAX(ASSOBLS) represents the largest ASSO block size and WORKBLS represents the
WORK block size.
The default value for BLOCKSIZE is the block size of the old WORK le.
92 Adabas Utilities
http://slidepdf.com/reader/full/adabas-631-utils 100/431
7/18/2019 adabas 6.3.1 utils
This parameter species the number of blocks or megabytes to be allocated for the new WORK
le. By default, the size is in megabytes. The minimum value is 200 blocks or the equivalent value
in megabytes.
PGM_REFRESH
This function is used to disable or enable refreshing an Adabas le inside an application program
with an E1 command (ISN = 0, CID = BLANK). Specifying a LOB le is not permitted. The keyword
can take the values YES or NO. It is not allowed to set PGM_REFRESH=YES for les that are
primary les of referential constraints.
FILE = number
RECOVER
RECOVER
This function returns lost space within the Associator and Data Storage to the Free Space Table
(FST).
Example
adadbm: recover
%ADADBM-I-FUNC, function RECOVER executed
REDUCE_CONTAINER
The REDUCE_CONTAINER function deallocates free space at the end of the Associator or Data
Storage
can takecontainer
the valuesdened forDATA.
ASSO or the database in accordance with the keyword used. The keyword
The requested number of blocks must not be in use at the end of the container specied. If the
complete space of one or more container extents is to be released, the container extents are removed.
Note that the message informing you that a container extent is removed is not displayed by
ADADBM if ADADBM is executed online - instead, it is included in the nucleus log.
Adabas Utilities 93
http://slidepdf.com/reader/full/adabas-631-utils 101/431
7/18/2019 adabas 6.3.1 utils
If less blocks than requested are free at the end of the container, all free space at the end of the
container is deallocated, and the following warning is displayed:
SIZE = number B
This parameter species the size by which the container is to be reduced, in blocks.
REFRESH
This function resets the les specied by `number' to the state of zero records loaded. Only the
rst extents for Normal Index, Address Converter and Data Storage are kept. The remaining extents
are returned to the Free Space Table (FST). The Upper Index is rebuilt and the unused Upper Index
ADADBM does not request conrmation of the les to be refreshed, i.e. care should be taken when
entering the le numbers.
This function is useful for clearing a test le in a test environment. This method is faster than de-
leting and reloading the le.
If the REMOVE_DROP function has been specied, dropped elds are removed from the FDT.
Example
adadbm: refresh=13
%ADADBM-I-REFRESH, file 13 refreshed
REMOVE_CONTAINER
REMOVE_CONTAINER = keyword
This function removes the last database container le from an existing Associator or Data Storage
data set in accordance with the keyword used. The keyword can take the values ASSO or DATA.
The container le to be removed must not be in use when this function is executed, i.e. all of the
blocks in the le must be free.
The container le will be deleted from the le system or from the raw disk section.
94 Adabas Utilities
http://slidepdf.com/reader/full/adabas-631-utils 102/431
7/18/2019 adabas 6.3.1 utils
Before a container le can be removed, the nucleus and all of the utilities using the database must
have terminated successfully.
Example
adadbm: remove_container=data
%ADADBM-I-DMCONREM, container DATA2 removed
REMOVE_DROP
[NO]REMOVE_DROP
If you specify REMOVE_DROP, subsequent REFRESH functions will remove dropped elds from
the FDT.
If you specify NOREMOVE_DROP, subsequent REFRESH functions will not remove dropped
elds from the FDT.
The default is NOREMOVE_DROP.
Example
adadbm: remove_drop
adadbm: refresh=2
%ADADBM-I-REFRESH, file 2 refreshed
adadbm: refresh=3
%ADADBM-I-REFRESH, file 3 refreshed
adadbm: noremove_drop
adadbm: refresh=4
%ADADBM-I-REFRESH, file 4 refreshed
File 2 has been refreshed and dropped elds have been removed from the FDT. File 3 has been
refreshed and dropped elds have been removed from the FDT. File 4 has been refreshed and
dropped elds have not been removed from the FDT.
REMOVE_REPLICATION
REMOVE_REPLICATION
This function stops all replication processing and deletes all replication system les.
Note: This function is only relevant for customers who are using the Adabas Event Replic-
ator with Adabas - Adabas replication.
Adabas Utilities 95
http://slidepdf.com/reader/full/adabas-631-utils 103/431
7/18/2019 adabas 6.3.1 utils
RENAME
This function changes the name of a le or a database. `number' is the number of the le whose
name is to be changed. If `number' is 0, the name of the database is changed.
`string' is the new name of the specied le or database. If you specify an equals sign, the value
given for 'string' will be converted to upper case; if you specify a colon, no upper-case conversion
is performed.
Example
RENUMBER
This function changes the le number of a loaded Adabas le. If, however, the le's new number
already belongs to a loaded le, the numbers of these les are exchanged.
The rst `number' is the le number currently assigned to the le. The second `number' is the new
le number to be assigned to the le.
Example:
adadbm: renumber=(12,14)
%ADADBM-I-RENUM, File 12 renumbered to 14
%ADADBM-I-RENUM, File 14 renumbered to 12
REPLICATION_FILES
This functions performs all of the necessary initialization steps for the Adabas - Adabas replication
and creates the replication system les.
le1
The metadata le.
le2
The replication transaction le.
96 Adabas Utilities
http://slidepdf.com/reader/full/adabas-631-utils 104/431
7/18/2019 adabas 6.3.1 utils
le3
The replication command le.
le4
LOB le for the replication command le.
Note: This function is only relevant for customers who are using the Adabas Event Replic-
ator with Adabas - Adabas replication.
RESET
UCB
This function removes one or more entries from the utility communication block (UCB). This option
can also be used during a pending AUTORESTART.
The UCB is used to control access to certain resources (the whole database, one or more les, etc.)
within a database. It saves information about the Adabas utilities processing the database and the
resources attached to them.
An entry is made in the UCB each time a utility is granted access to a resource. This entry contains
information about the utility and the resources it locks. The utility automatically removes the entry
when the resource is no longer required. Please refer to the DISPLAY=UCB function of this utility
for information about how to display the contents of the UCB.
However, certain special conditions (e.g. an aborted ADAMUP) can cause entries to remain in the
UCBand keep allocated resources locked. The RESET function releases these resources by removing
one or more entries from the UCB.
Resetting a UCB entry also removes the associated entry from the user queue and returns lost
blocks to the free space table if the nucleus is active. Otherwise, the resource can be returned to
the free space table by using the RECOVER function.
This parameter species the unique ID of the entry to be removed. '*' removes all entries.
If the RESET UCB function is used oine, only `*' may be specied.
Adabas Utilities 97
http://slidepdf.com/reader/full/adabas-631-utils 105/431
7/18/2019 adabas 6.3.1 utils
Example
RESET_REPLICATION_TARGET
RESET_REPLICATION_TARGET = number
This function resets the replication target ag of Adabas les, after which they are handled as
normal les again. If you specify 0, the replication target ag of all replication target les is reset;
if you specify a le number, the replication target ag of the le with this le number is reset.
Notes:
1. This function is only relevant for customers who are using the Adabas Event Replicator with
Adabas - Adabas replication.
2. After performing this function, a replication to this replication target is no longer possible - if
the replication to this replication target is still active, a new update transaction on the replication
source will set the replication to status Error. If you want to replicate data to this replication
target again, a new initial state processing is required.
REUSE
The REUSE function controls the reuse of Data Storage space or ISNs by Adabas.
The File Control Block (FCB) for the specied le is modied to indicate the type of allocation
technique to be used when adding new records or moving updated records.
If the DS keyword is specied, Adabas scans the Data Storage Space Table (DSST) in order to
locate a block with sucient space. In this case, the rst block found with sucient space is used.
If the NODS keyword is specied, then all newly-added records, together with records that have
to be moved to another block (as a result of record expansion caused by updating), are placed in
98 Adabas Utilities
http://slidepdf.com/reader/full/adabas-631-utils 106/431
7/18/2019 adabas 6.3.1 utils
the last used block in the Data Storage extent allocated to the le. If there is not sucient space in
this block, the next block is used.
If the ISN keyword is specied, Adabas may reuse the ISN of a deleted record.
If the NOISN keyword is specied, Adabas does not reuse the ISN of a deleted record for a new
record. Each new record will be assigned the next-highest unused ISN.
ISN and NOISN are mutually exclusive. The default is REUSE = NOISN.
FILE = number
Example
SYFMAX
This parameter species the maximum number of values generatedfor a system generatedmultiple-
value eld in the le specied. There is no explicit maximum value, but you should bear in mind,
that you can get a record overow if the value is dened too high; the compressed data record
should also t into one DATA block is SYFMAX values are dened for system generated multiple-
value elds. If the SYFMAX value is decreased and a record contains more values for system
generated elds than the new value of SYFMAX, the excess values are removed during the next
update operation for this record.
Adabas Utilities 99
http://slidepdf.com/reader/full/adabas-631-utils 107/431
7/18/2019 adabas 6.3.1 utils
FILE = number
Restart Considerations
ADADBM has no restart capability. At the end of each function, however, the system reports
whether execution was successfully completed or not. If it is not successfully completed, the
function has to be re-started.
http://slidepdf.com/reader/full/adabas-631-utils 108/431
7/18/2019 adabas 6.3.1 utils
■ Functional
Overview ....................................................................................................................... 102
■ ProcedureFlow ............................................................................................................................. 103
■ Checkpoints ................................................................................................................................. 104
■
Control Parameters ........................................................................................................................ 105
■ Inputand Output Data .................................................................................................................... 113
■ Restart Considerations ................................................................................................................... 114
101
http://slidepdf.com/reader/full/adabas-631-utils 109/431
7/18/2019 adabas 6.3.1 utils
Functional Overview
The output of the decompression utility ADADCU can be used as input for a program using
standard operating system le access methods.
It can also be used as input for the compression utility ADACMP once any required changes have
been made to the data structure or once the data denitions of the le have been changed. A
warning message is issued if the decompressed output le (DCUOUT le) created by the utility
is empty.
ADADCU also decompresses les produced with the SINGLE option of the utilities ADAULD
and ADACMP, but no parameter is required since this can be determined by the utility.
■ Complete records can be decompressed to the formats and lengths described in the FDT. A one-
byte count eld precedes each multiple-value eld or periodic group in the output record.
■ LOB eld values can also be stored in separate les; the generated le names are put into the
decompressed records.
■ Several elds can be decompressed.
If several elds are decompressed, the elds can be re-arranged within a record, i.e. the record
structure may be changed as follows:
If the utility writes records to the error le, it will exit with a non-zero status.
http://slidepdf.com/reader/full/adabas-631-utils 110/431
7/18/2019 adabas 6.3.1 utils
Procedure Flow
http://slidepdf.com/reader/full/adabas-631-utils 111/431
7/18/2019 adabas 6.3.1 utils
DCULOB is a directory where LOB values are stored in separate les. The sequential les DCUDTA
and DCUERR can have multiple extents. For detailed information about sequential les with
multiple extents, see Administration, Using Utilities.
Variable/ Medium
Logical Name
Note: (*) A named pipe can be used for this sequential le (not on OpenVMS, see Adminis-
tration , Using Utilities for details).
Checkpoints
http://slidepdf.com/reader/full/adabas-631-utils 112/431
7/18/2019 adabas 6.3.1 utils
Control Parameters
D [NO]DCUFDT
D [NO]DST
FDT
D [NO]LOWER_CASE_FIELD_NAMES
D MUPE_C_L = {1|2|4}
MUPE_OCCURRENCES
D [NO]NULL_VALUE
D NUMREC = number
D RECORD_STRUCTURE = keyword
SKIPREC = number
D TARGET_ARCHITECTURE = (keyword[,keyword[,keyword]])
D [NO]TRUNCATION
TZ {=|:} [timezone]
D [NO]USERISN
WCHARSET = char_set
http://slidepdf.com/reader/full/adabas-631-utils 113/431
7/18/2019 adabas 6.3.1 utils
[NO]DCUFDT
[NO]DCUFDT
If this option is set to DCUFDT, the FDT information of the decompressed records is written to
the sequential le DCUFDT. The default is NODCUFDT.
If you have used the FIELDS parameter (see below), the elds are written to the sequential le
DCUFDT in the order specied in FIELDS. Thus, the elds in DCUFDT might be in a dierent
order to those in the original FDT.
[NO]DST
[NO]DST
The parameter DST is required if a daylight saving time indicator is to be provided for date/time
elds with the option TZ. The daylight saving time indicator will be appended behind the date/time
value as a 2-byte integer value (format F) containing the number of seconds to be added to the
standard time to get the actual time (usually 0 or 3600).
This parameter is required if there are records containing date/time values with the option TZ in
the hour before the time is switched back to standard time, otherwise these values are written to
the error le.
Notes:
FDT
FDT
This parameter displays the FDT of the le containing the compressed records.
http://slidepdf.com/reader/full/adabas-631-utils 114/431
7/18/2019 adabas 6.3.1 utils
FIELDS
This parameter is used to specify a subset of elds given in the FDT and their format and length.
This means that the decompressed records created do not have to contain all of the elds given
in the FDT, or that elds can be decompressed with a dierent format or length. The syntax and
semantics are the same as for the format buer, with the exception that you can also specify an R-
element (for LOB references) if the decompressed record contains the name of a le containing
the LOB value instead of the LOB value itself. See Administration , Loading And Unloading Data,
Uncompressed Data Format for further information.
While entering the specication list, the FDT function can be used to display the FDT of the le
to be decompressed. The specication list can be terminated or interrupted by entering
END_OF_FIELDS or `.'. The `.' option is an implicit END_OF_FIELDS and is compatible with the
format buer syntax. FIELDS or END_OF_FIELDS must always be entered on a line by itself,
whereas the `.' may be entered on a line by itself or at the end of the format buer elements. Pro-
cessing may be continued after setting any option or parameter by entering FIELDS.
If the eld denitions are terminated with the END_OF_FIELDS parameter, this parameter must
be specied in upper case when the LOWER_CASE_FIELD_NAMESparameter is used. In addition,
the FDTparameter must also be specied in upper case when the LOWER_CASE_FIELD_NAMES
parameter is used.
Example
adadcu: fields
adadcu: ; This is a comment line
adadcu: AA,AB,6,A,AC,P ; - inline comment -
adadcu: AD,AF,CBC,CB1-N . ; implicit END_OF_FIELDS
Field AA is output with default length and format, eld AB with 6 byte alphanumeric and eld
AC with default length packed. Fields AD and AF are output in default length and format, followed
by the one-byte binary multiple eld count of eld CB and all its occurrences.
[NO]LOWER_CASE_FIELD_NAMES
[NO]LOWER_CASE_FIELD_NAMES
http://slidepdf.com/reader/full/adabas-631-utils 115/431
7/18/2019 adabas 6.3.1 utils
MAX_DECOMPRESSED_SIZE
This parameter species the maximum size of a decompressed record in bytes, kilobytes or
megabytes, depending on the specication of "K" or "M" after the number. This parameter is inten-
ded to prevent very large decompressed record les from being created unintentionally (if you
didn’t consider that a le contained LOB data).
Note: The exact denition of this parameter is the size of the I/O buer required for the
largest decompressed record. Only multiples of 256 bytes are used for the I/O buers, which
means that you must specify a value greater than or equal to the largest decompressed record
(including the preceding length eld) rounded up to the next multiple of 256.
MUPE_C_L
MUPE_C_L = {1|2|4}
If the data contain multiple-value elds or periodic groups, they are preceded by a binary count
eld with the length of MUPE_C_L bytes in the decompressed data.
The default is 1.
MUPE_OCCURRENCES
MUPE_OCCURRENCES
This parameter is used to print a list of all multiple elds and periodic groups together with their
maximum occurrence. Such information is important because the decompressed data can become
very large; if the range specied is too large, it is even possible to exceed the limit for the size of
a decompressed record.
Example
1,AA,4,A,NU
1,PE,PE
2,PA,2,A,NU
2,PB,2,A,NU,MU
1,MM,2,U,NU,MU
1,X1,4,B
http://slidepdf.com/reader/full/adabas-631-utils 116/431
7/18/2019 adabas 6.3.1 utils
[NO]NULL_VALUE
[NO]NULL_VALUE
This parameter can be used to decompress records according to the standard FDT if the record
contains NC option elds and their status values (S-elements). It is required if one or more elds
have the null value, otherwise these records are put in the error le.
Example
If the FDT entry for eld AA is: 1, AA, 2, A, NC, the eect of NULL_VALUE is as follows:
■ NULL_VALUE: 1st output record (in hex) 00004141 (AA has a value), 2nd output record (in
hex) FFFF2020 (AA has the null value).
■ NONULL_VALUE: 1st output record (in hex) 4141 (AA has a value), 2nd output record (in hex)
AA is null, therefore the record will be put into the error le.
NUMREC
NUMREC = number
This parameter species the number of records to be read from the input le and decompressed.
If NUMREC is not specied and SKIPREC is also not specied, all records are processed.
http://slidepdf.com/reader/full/adabas-631-utils 117/431
7/18/2019 adabas 6.3.1 utils
Example
RECORD_STRUCTURE
RECORD_STRUCTURE = keyword
This parameter species the type of record separation used in the output le with the logical name
DCUOUT. The following keywords can be used:
Keyword Meaning
ELENGTH_PREFIX The records in the DCUOUT le are separated by a two-byte exclusive length
eld. There is no separator character and the use of this format is not subject to
any restrictions.
E4LENGTH_PREFIX The records in the decompressed data le are separated by a 4-byte exclusive
length eld.
ILENGTH_PREFIX The records in the DCUOUT le are separated by a two-byte inclusive length
eld. There is no separator character and the use of this format is not subject to
any restrictions.
I4LENGTH_PREFIX The records in the decompressed data le are separated by a 4-byte inclusive
length eld.
NEWLINE_SEPARATOR The records in the DCUOUT le are separated by a new-line character. If the
DCUOUT le is to be used as input for ADACMP, this keyword can only be
specied if the eld values of the output do not contain the new-line character
(i.e. if there are only unpacked, alphanumeric and Unicode elds, and if the
alphanumeric and Unicode elds only contain printable characters).
This keyword and the USERISN parameter are mutually exclusive.
RDW The records in the DCUOUT le are formatted such that they can be transferred
to an IBM host using the FTP site rdw option.
RDW_HEADER Like RDW, for decompressed records that can be compressed on a mainframe
with HEADER=YES.
VARIABLE_BLOCKED The records are stored as blocks. Each record begins with an inclusive four-byte
length eld.
http://slidepdf.com/reader/full/adabas-631-utils 118/431
7/18/2019 adabas 6.3.1 utils
SKIPREC
SKIPREC = number
This parameter species the number of records to be skipped before decompression is started.
TARGET_ARCHITECTURE
TARGET_ARCHITECTURE = (keyword[,keyword[,keyword]])
This parameter species the format (character set, oating-point format and byte order) of the
output data records. The following keywords can be used:
EBCDIC
Floating-point format IBM_370_FLOATING
IEEE_FLOATING
VAX_FLOATING
Byte order HIGH_ORDER_BYTE_FIRST
LOW_ORDER_BYTE_FIRST
If no keyword of a keyword group is specied, the default for this keyword group is the keyword
that corresponds to the architecture of the machine on which ADADCU is running.
Example
If the output records are to be decompressed into IBM format, the user must specify the following:
http://slidepdf.com/reader/full/adabas-631-utils 119/431
7/18/2019 adabas 6.3.1 utils
[NO]TRUNCATION
[NO]TRUNCATION
NOTRUNCATION is the default. In this case, all the records with truncated alphanumeric eld
values are written to the error le.
Numeric values may not be truncated, and the value must t into the standard or specied length.
If truncated numeric values occur, the records concerned are written to the error le.
TZ
TZ {=|:} [timezone]
The specied time zone must be a valid time zone name that is contained in the time zone database
known as this
specied, the Olson database
time zone ( http://www.twinsun.com/tz/tz-link.htm
is used ). If a time
for time zone conversions of date/time elds with zone has been
the option TZ.
The default is UTC, which is used internally to store date/time elds with option TZ; no conversion
is required.
If you specify an empty value, no checks are made to ensure that date/time elds are correct.
Note: The time zone names are le names. Depending on the platform, these le names
may or may not be case sensitive. Also, the time zone names, depending on the platform,
may or may not be case sensitive.
Examples:
tz:Europe/Berlin
TZ=Europe/Berlin
With this specication, TZ is converted to upper case EUROPE/BERLIN. This is correct on Windows,
because le names are not case sensitive on Windows, but it is not correct on Unix, because Unix
le names are case sensitive.
http://slidepdf.com/reader/full/adabas-631-utils 120/431
7/18/2019 adabas 6.3.1 utils
[NO]USERISN
[NO]USERISN
This parameter indicates whether the ISN is to be output together with each decompressed record
or not. The user can specify whether the ISN currently assigned to the record is to be output with
the decompressed data or whether it is to be omitted. If the user intends to reload the le with the
same ISNs, the USERISN option must be set.
If this parameter is omitted, the ISN is not output with each record.
Example
adadcu: userisn
WCHARSET
WCHARSET = char_set
This parameter species the default encoding used in the decompressed le based on the encoding
names listed at http://www.iana.org/assignments/character-sets - most of the character sets listed
there are supported by ICU, which is used by Adabas for internationalization support.
The input for ADADCU must be a le containing compressed records such as those output by the
unload utility ADAULD or by the compression utility ADACMP.
ADADCU decompresses each input record in accordance with the FIELDS specications and
writes the resulting record to the le with the logical name DCUOUT. The records are written in
variable-length format. By default, the records are separated by a two-byte exclusive length eld
(see the parameter RECORD_STRUCTURE in this section for more detailed information).
If USERISN is specied, the data record is preceded by its ISN in the form of a four-byte binary
number.
http://slidepdf.com/reader/full/adabas-631-utils 121/431
7/18/2019 adabas 6.3.1 utils
ADADCU Output
The sequential le DCUFDT (eld denition information of the decompressed records) can be
used as input for the le denition utility ADAFDU or for the compression utility ADACMP.
Restart Considerations
ADADCU does not have a restart capability. An interrupted ADADCU run must be re-executed
from the beginning.
ADADCU does not update the database, therefore, no considerations regarding the status of the
database need to be made before re-executing an interrupted ADADCU execution.
http://slidepdf.com/reader/full/adabas-631-utils 122/431
7/18/2019 adabas 6.3.1 utils
■ Functional
Overview ....................................................................................................................... 116
■ ProcedureFlow ............................................................................................................................. 117
■ Checkpoints ................................................................................................................................. 118
■
Control Parameters ........................................................................................................................ 118
115
http://slidepdf.com/reader/full/adabas-631-utils 123/431
7/18/2019 adabas 6.3.1 utils
Functional Overview
The ADADEV utility provides several functions for managing disk space to be used by Adabas
via the raw disk I/O interface.
ADADEV requires READ/WRITE access to the specied disk-section device le. See Installation ,
Installing Adabas for information about raw disk-section usage in your system.
Each disk section used by Adabas must be initialized once with ADADEV. Preallocation for
Adabas container les or for Adabas sequential les is not necessary, but can be useful sometimes.
Disk space
creating is allocated
Adabas automatically
sequential les with anwhen creating
Adabas container
utility. If spaceextents
has notwith
beenADAFRM or when
preallocated, a best-
t algorithm is used for container extents. For Adabas sequential les, one half of the largest
available free space is allocated if it is larger than 1 MB. If the allocated space is exceeded, an
automatic extension is performed if the immediate right neighbour is a free space area.
The number of container extents and sequential les per raw section is limited to 338.
http://slidepdf.com/reader/full/adabas-631-utils 124/431
7/18/2019 adabas 6.3.1 utils
Procedure Flow
Notes:
1. xyz = PLG, CLG, 00n, OUT, ERR, LOG, EXP, DTA, DVT.
2. A named pipe can be used for this sequential le (see Administration, Using Utilities for details).
The sequential les DEVPLG, DEVCLG, DEV00n, DEVOUT, DEVERR, DEVEXP, DEVDTA,
DEVDVT and DEVLOG can have multiple extents. For detailed information about sequential les
with multiple extents, see Administration , Using Utilities.
http://slidepdf.com/reader/full/adabas-631-utils 125/431
7/18/2019 adabas 6.3.1 utils
Checkpoints
Control Parameters
CHANGE = (keyword,keyword)
DBID = number
DEALLOCATE = {*|keyword}
FREE_SPACE
INITIALIZE
LAYOUT
D [NO]MOUNTCHECK
REALLOCATE = {*|keyword}
RESET
RESIZE
M SECTION = string
UNLOCK = keyword
http://slidepdf.com/reader/full/adabas-631-utils 126/431
7/18/2019 adabas 6.3.1 utils
ALLOCATE
In accordance with the keyword specied, this function allocates space for an Adabas container
le or Adabas sequential le. The space is allocated using a best-t algorithm if no start sector is
specied. The keyword can take the values ASSOx, DATAx, WORKx, TEMPx and SORTx (where
x is a number between 1 and the maximum number of extents allowed, as described in Adminis-
tration , Using Utilities), PLG, CLG, BCK, BCKOUT, RECOUT, ERR, MUPLOG, MUPTMP, ORDEXP,
DTA or DVT. The DBID parameter must be set before space can be allocated to an ASSO, DATA
or WORK le, or to PLG, CLG, BCK, BCKOUT or RECOUT.
The DBA can use this function to preallocate container les or Adabas sequential les. Reasons
for using it include performance aspects, avoiding fragmentation (by specifying the start sectors)
and reserving space for a database that is to be created in the future.
If ADADBM or ADAFRM are used to create a container le in a disk section, the preallocated
space is taken if it is available. If there was no preallocation made, the allocation is made using a
best-t algorithm. The same sizes must be used when preallocating and creating container les.
START_SECTOR = number
BLOCKSIZE = numberKB
Values up to 32KB can be used to specify the container block-size when the allocation is being
made in blocks. The defaults are 2KB for ASSO container les, 4KB for all other container les and
1 KB for Adabas sequential les.
This parameter species the size of the area to be allocated in blocks or megabytes. If 'B' is appended
to the number, the size is in blocks. By default, the size is given in megabytes.
http://slidepdf.com/reader/full/adabas-631-utils 127/431
7/18/2019 adabas 6.3.1 utils
CHANGE
This function changes the type of the container le or Adabas sequential le specied by the rst
keyword into the type specied by the second keyword.
From To
MUPLOG DTA
RECOUT PLG (* see note)
BCKOUT BCK (* see note)
Note: (*) If RECOUT [BCKOUT] is a copy of PLG.n [BCK00n], the new Adabas sequential
le name will be the corresponding name.
The DBID parameter must be set before the keywords WORK1, RECOUT or BCKOUT are used.
The WORK1 container of a given database can only be changed to a SORT or TEMP container if
there is no autorestart pending.
COMBINE
This parameter combines multiple Adabas sequential le extents into a single extent. The keyword
can take the values PLG.n, CLG.n, BCK00n, BCKOUT, RECOUT.n, ERR, MUPLOG, ORDEXP,
DTA or DVT. The keywords can also be followed by an extent label (m). In some cases, the DBID
parameter must be set (see ALLOCATE for further information).
A COMBINE can start at an arbitrary extent, but must end with the nal (end-of-le) extent. All
subsequent extents
DEVxyz is set, can extent
the rst be specied interactively,
is taken or by path
from the default predened
name. environment variables.
If DEVxyz is not If
set, Adabas
looks in the current disk section to nd the rst extent.
`string' is either the path name of the device le that represents the raw interface of a disk section,
the path name of a tape device, the (path) name of a non-existent le of a le system or a period
(".").
http://slidepdf.com/reader/full/adabas-631-utils 128/431
7/18/2019 adabas 6.3.1 utils
Example 1:
In this example, PLOG 2 of database 100 consists of 3 extents that are all located at the same disk
section /dev/rdsk/c4d0s2.
adadev: section=/dev/rdsk/...
adadev: dbid=100
adadev: combine=plg.2(1)
adadev: destination=PLOG_2
All extents of PLOG 2 are combined into one le which will be written into the le system under
the name PLOG_2. The section must be specied twice in DEVPLG so that it can ip-op.
Example 2:
In this example, PLOG 3 of database 100 consists of 9 extents, and the extents 5 to 9 are distributed
across four disk sections:
adadev: section=/dev/rdsk/...
adadev: dbid=100
adadev: combine=plg.3(5)
adadev: destination=PLOG.3(5)
Extents 5 to 9 of PLOG 3 are combined into one extent in PLOG 3 with the extent number 5 and
the EOF label. The combined PLOG extent is created in the current directory under the name
PLOG.3(5).
http://slidepdf.com/reader/full/adabas-631-utils 129/431
7/18/2019 adabas 6.3.1 utils
COPY
This function copies a container le (ASSO1, DATA1, etc.) or an Adabas sequential le (RECOUT,
DVT, etc.) from its present location to a specied destination (DESTINATION=string).
Valid keywords for the container les are ASSOx, DATAx and WORKx, where x is a number
between 1 and the maximum number of extents allowed, as described in Administration , Using
Utilities.
Valid keywords for the Adabas sequential les are PLG.n, CLG.n, BCK00n, BCKOUT, RECOUT.n,
ERR, MUPLOG, ORDEXP, DTA, and DVT. The `n' extension on the Adabas sequential le keywords
designates an extent number.
If a container le is to be copied, you must rst set the appropriate environment variable (e.g.
ASSO1) to the source location before the copy is attempted.
If an Adabas sequential le is to be copied into the current disk section, as specied by the SECTION
parameter (e.g. SECTION=/dev/c5d0s2), the environment variable DEVxyz (where xyz may take
the values PLG, CLG, 00n, OUT, ERR, LOG, EXP, DTA, and DVT) must be set to the Adabas se-
quential le or device le.
The DESTINATION keyword may be specied as either a path name for a raw disk section, a path
name of a tape device, a path name of a non-existent le in the le system, a named pipe or a
period `.', which indicates that the le will be copied into the current disk section.
In some cases, the DBID must be specied in order to uniquely identify the le before the COPY
function can be executed: please refer to the ALLOCATE function for a list of those les that require
the DBID.
Examples:
adadev: section=/dev/rlv02
adadev: dbid=23
adadev: copy=WORK1, destination=/FS/fs0395/SAG/ada/db023/WORK1.023
http://slidepdf.com/reader/full/adabas-631-utils 130/431
7/18/2019 adabas 6.3.1 utils
adadev: section=/dev/rlv02
adadev: dbid=023
adadev: copy=WORK1, destination=.
DBID
DBID = number
This parameter species the database of an ASSO, DATA or WORK container le, or of a PLG,
CLG, BCK, BCKOUT or RECOUT Adabas sequential le.
DEALLOCATE
DEALLOCATE = { * | keyword }
In accordance with the keyword specied, this function deallocates space from an Adabas container
le or Adabas sequential le, or from all of the extents of a given database (DEALLOCATE=*).
The keyword can take the values ASSOx, DATAx, WORKx, TEMPx , SORTx, NUCTMPx and
NUCSRTx (where x is a number between 1 and the maximum number of extents allowed, as de-
scribed in Administration , Using Utilities), PLG, PLG.n, PLG*, CLG, CLG.n, CLG*, BCK, BCK00n,
BCK*, BCKOUT, RECOUT, RECOUT.n, ERR, MUPLOG, MUPTMP, ORDEXP, DTA or DVT. The
Adabas sequential le keywords can also be followed by an extent label (m) or (*). In some cases,
the DBID parameter must be set (see ALLOCATE for further information).
The DBA can use this function to deallocate space from container les, e.g. when a database is no
longer required or e.g. when a PLOG extent is saved to tape. The deallocated space is managed
as free space and can be allocated to other containers.
FREE_SPACE
FREE_SPACE
This function displays the areas of free space on the current disk section. It is a subset of the
LAYOUT function. In order to make it easier to allocate space in units of the default block sizes,
this function also lists the size of the free areas in units of 2KB and 4KB.
http://slidepdf.com/reader/full/adabas-631-utils 131/431
7/18/2019 adabas 6.3.1 utils
INITIALIZE
INITIALIZE
Some sectors at the beginning of each disk section are used to manage the allocated and free space
areas. This function initializes this management part. Each disk section to be used by Adabas must
be initialized beforehand. When a disk section is accessed for Adabas purposes, the rst step is
for the management part to be veried. A disk section can only be initialized if this verication
fails.
LAYOUT
LAYOUT
This function provides a summary of the disk section usage. It lists the container and Adabas se-
quential areas as well as the free space areas. It also displays the status of a container area (allocated
or created). Adabas sequential les can also have the status "during creation". This means that the
Adabas sequential le is growing: some of the allocated space has been used up, but some of it is
still free.
Following a power failure, TEMP and SORT containers may be locked for read or write (status:
rlocked or wlocked). Please refer to the UNLOCK function in this section for further information
about unlocking container les.
[NO]MOUNTCHECK
[NO]MOUNTCHECK
If
theMOUNTCHECK
ADADEV SECTION is used, ADADEV
parameter. If achecks if a le
le system is system is mounted
mounted, ADADEVonterminates.
the disk specied in
This check
can be skipped if NOMOUNTCHECK is specied before the SECTION parameter is used.
MOVE
MOVE is essentially the same as COPY, however, with the dierence that the source le is removed
(see COPY for further information).
http://slidepdf.com/reader/full/adabas-631-utils 132/431
7/18/2019 adabas 6.3.1 utils
NEW_DBID
This function changes the DBID of Adabas les within raw sections (for example, when the number
of a database has been changed and the PLOGs are to be applied to the database with the new
number).
■ all containers/sequential les with an associated database ID (ASSO, DATA, PLG ...)
■ wildcard character '*' with PLOG and CLOG (PLG*, CLG*) to change all les within the section
■ when specifying a given PLOG (e.g. PLG.175) and there are sequential le extents (PLG.175(1)
etc.), all these occurrences are changed
Example
REALLOCATE
REALLOCATE = { * | keyword }
This function deallocates space and directly allocates it in a single step. The keyword can take the
same values as for the DEALLOCATE function. Adabas sequential le areas that are <=50 KB are
always deallocated.
This function can be used as a short cut when deallocating a container le and then allocating it
again at the same location. It is particularly useful if ADAFRM aborts while creating a database,
with some container les already created and preallocated at given start sectors.
There is a ag for each container in a disk section, which indicates whether the container or Adabas
sequential le has actually been created or whether the space has only been allocated for it. For
security reasons, an existing container or Adabas sequential le cannot be overwritten just by
creating it again: it must be deallocated or reallocated rst.
http://slidepdf.com/reader/full/adabas-631-utils 133/431
7/18/2019 adabas 6.3.1 utils
RESET
RESET
The management part of the current disk section is set to binary zero if the section is initialized.
This function is used if a disk section which has the same start sector as an overlapping, initialized
disk section is to be initialized.
RESIZE
RESIZE
If a new, overlapping disk section is used with the same start sector as the current disk section,
this function updates the size of the section to the size of the new section. The new section can be
larger or smaller than the current section. If it is larger, the free space at the end of the section is
increased. If it is smaller, existing free space at the end of the section is decreased.
SECTION
SECTION = string
This parameter selects the disk section to be used. The (path) name of the device le that represents
the raw I/O interface of the disk section must be specied.
UNLOCK
UNLOCK = keyword
This parameter is used to unlock a container of an abnormally terminated utility (for example kill
-9). The keyword can take the values TEMP1, SORT1 or SORT2.
Following a power failure, locked container les must be unlocked using the UNLOCK function
in order to use them further. If an Adabas sequential le consists of more than one physical extent,
the last extent is marked with EOF in the status eld.
http://slidepdf.com/reader/full/adabas-631-utils 134/431
7/18/2019 adabas 6.3.1 utils
■ Functional
Overview ....................................................................................................................... 128
■ ProcedureFlow ............................................................................................................................. 129
■ Checkpoints ................................................................................................................................. 129
■
Control Parameter ......................................................................................................................... 129
■ Example ...................................................................................................................................... 130
■ Rejected Data Records ................................................................................................................... 130
127
http://slidepdf.com/reader/full/adabas-631-utils 135/431
7/18/2019 adabas 6.3.1 utils
Functional Overview
The ADAERR utility displays the contents of error les generated by the utilities
■ ADACMP
■ ADADCU
■ ADAINV
■ ADAMUP
■ ADAREC
http://slidepdf.com/reader/full/adabas-631-utils 136/431
7/18/2019 adabas 6.3.1 utils
Procedure Flow
Note: (*) A named pipe can be used for this sequential le (not on Open VMS, see Adminis-
tration , Using Utilities for details).
The sequential le ERRIN can have multiple extents. For detailed information about sequential
les with multiple extents, see Administration , Using Utilities.
Checkpoints
Control Parameter
D [NO]DUMP
http://slidepdf.com/reader/full/adabas-631-utils 137/431
7/18/2019 adabas 6.3.1 utils
[NO]DUMP
[NO]DUMP
If NODUMP is specied, only a description (length of record, ISN of the record etc.) of each error
record will be output, but not the actual record content. See the section Rejected Data Records in
this section for information on the contents of the error records.
If DUMP is specied, the record content will be dumped in addition to the record description. For
ADACMP, thedecompressed record will be dumped, whereas for ADADCUthecompressed record
will be dumped.
Example
$ adaerr
■ ADACMP
■ ADADCU
■ ADAINV
■ ADAMUP
■ ADAREC
The structure of the error records is contained as a header le in the Adabas distribution kit -
$ADADIR/$ADAVERS/inc/iodesam.h on Unix, %ADADIR%\%ADAVERS%\..\inc\iodesam.h
on Windows.
http://slidepdf.com/reader/full/adabas-631-utils 138/431
7/18/2019 adabas 6.3.1 utils
■ Functional
Overview ....................................................................................................................... 132
■ ProcedureFlow ............................................................................................................................. 133
■ Checkpoints ................................................................................................................................. 135
■
Control Parameters ........................................................................................................................ 135
■ Examples ..................................................................................................................................... 149
131
http://slidepdf.com/reader/full/adabas-631-utils 139/431
7/18/2019 adabas 6.3.1 utils
Functional Overview
The le denition utility ADAFDU denes a new base le and/or a LOB le in a database. It does
not require the Adabas nucleus to be active.
The eld denitions for a base le, including special descriptor denitions and referential integrity
denitions for foreign keys, are read from the sequential le FDUFDT; the eld denition of a
LOB le is predened. Additional input for ADAFDU is provided by parameters.
See Administration , FDT Record Structure for information about the syntax and use of the data
denitions to dene the logical structure of the le in the database.
See Administration , Loading And Unloading Data, File Space Estimation for information about formulae
for calculating the Associator and Data Storage space requirements for a le.
http://slidepdf.com/reader/full/adabas-631-utils 140/431
7/18/2019 adabas 6.3.1 utils
Procedure Flow
Offline Mode
If the nucleus is not active, ADAFDU itself creates the new le in ASSO and DATA
http://slidepdf.com/reader/full/adabas-631-utils 141/431
7/18/2019 adabas 6.3.1 utils
Online Mode
If the nucleus is active, ADAFDU calls the nucleus to create the new le in ASSO and DATA. In
this case, no checkpoint is written, but the le creation is logged in the database log, and in case
of a recovery, the le is created automatically.
http://slidepdf.com/reader/full/adabas-631-utils 142/431
7/18/2019 adabas 6.3.1 utils
Note: (*) A named pipe can be used for this sequential le (not on OpenVMS, see Adminis-
tration , Using Utilities for details).
Checkpoints
The utility writes a SYNP checkpoint if it is performed oine. If the utility is performed online,
the le denition is written to the PLOG, a SYNX checkpoint is written.
Control Parameters
ACBLOCKSIZE = numberK
ACRABN = number
ADAM_KEY = key
D ADAM_OVERFLOW = number
D ADAM_PARAMETER = number
ADD_LOBFILE = (number,number)
D ASSOPFAC = number
D [NO]BT
D [NO]CIPHER
http://slidepdf.com/reader/full/adabas-631-utils 143/431
7/18/2019 adabas 6.3.1 utils
D DATAPFAC = number
M DBID = number
DSBLOCKSIZE = numberK
DSRABN = number
D DSSIZE = number[B|M]
FDT
FILE = number
D [NO]FORMAT
D [NO]LOWER_CASE_FIELD_NAMES
D MAXISN = number
D NAME{=|:} string
NIBLOCKSIZE = numberK|(numberK,numberK)
NIRABN = number|(number,number)
D NISIZE = number[B|M]|(number[B|M],number[B|M])
[NO]PGM_REFRESH
SYFMAX = number
UIBLOCKSIZE = numberK|(numberK,numberK)
UIRABN = number|(number,number)
D UISIZE = number[B|M]|(number[B|M],number[B|M])
http://slidepdf.com/reader/full/adabas-631-utils 144/431
7/18/2019 adabas 6.3.1 utils
ACBLOCKSIZE
ACBLOCKSIZE = numberK
This parameter allows you to specify a block size for the allocation of the address converter extent.
Example:
acblocksize = 6k
If the database does not contain enough space with this block size, ADAFDU aborts.
ACRABN
ACRABN = number
This parameter species the RABN at which the space allocation for the Address Converter is to
start.
This parameter can be used to allocate the Address Converter to a given container le extent.
ADAM_KEY
ADAM_KEY = key
If this parameter is specied, the le is dened as an ADAM le. The key can be either a descriptor
name or the keyword `ISN'. If an ADAM key is used, it must be dened with the UQ option in
the FDT. It must not be a sub-, super-, phonetic or hyperdescriptor. It must not be a multiple-value
eld or a eld within a periodic group. It must not have the NU/NC option.
ADAM_OVERFLOW
ADAM_OVERFLOW = number
This parameter species the number of DATA overow blocks for the le. Overow blocks are
required in case ADAM-calculated blocks get full. The overow blocks are taken from the end of
http://slidepdf.com/reader/full/adabas-631-utils 145/431
7/18/2019 adabas 6.3.1 utils
Note: When checking the maximum value, and DSSIZE is specied in megabytes, it is as-
sumed that the Data Storage block size is 32 - independent of the actual value. If you want
to specify a larger value for ADAM_OVERFLOW, which is possible with a smaller Data
Storage block size, DSSIZE must be specied in blocks.
The default is 1.
ADAM_PARAMETER
ADAM_PARAMETER = number
This parameter species the number of consecutive ISNs to be stored in one block if the keyword
`ISN' is specied for the ADAM_KEY parameter.
If the ADAM key is a descriptor with xed-point format, the parameter species the number of
consecutive values for one block. For other key formats, it species an oset into the values. See
Administration for more information.
ADD_LOBFILE
The parameter ADD_LOBFILE is used to create a LOB le and assign it to an existing base le
that is specied by the rst number, the base le must not yet have an assigned LOB le. A LOB
le, with the le number specied by the second number, is generated and assigned to the base
le, and the base le is enabled for LOB processing. A le with the specied le number must not
yet exist. The maximum number that can be specied is 32000. You can specify the parameters
describing the data storage, the address converter, the normal and upper index of the LOB le,
but the following should be taken into consideration:
■ The block size for LOB le data blocks must be 32 KB.
■ The block size for LOB NI and UI blocks must be < 16 KB.
http://slidepdf.com/reader/full/adabas-631-utils 146/431
7/18/2019 adabas 6.3.1 utils
It is not possible to specify FILE if you specify ADD_LOBFILE, and vice versa.
Because there are some predened requirements for a LOB le, not all the other ADAFDU para-
meters make sense in connection with ADD_LOBFILE, for example the ADAM_* parameters.
These parameters are ignored by ADAFDU when the LOB le is added.
ASSOPFAC
ASSOPFAC = number
This parameter species the padding factor to be used for the le's index. The number specied
is the percentage of each index block which is not to be used by a subsequent run of the mass update
utility ADAMUP. This padding area is reserved for future use if additional entries have to be added
to the block by the Adabas nucleus. This avoids the necessity of having to relocate overow entries
to another block.
A small padding factor (0 to 10) should be specied if little or no descriptor updating is expected.
A larger padding factor (10 to 50) should be specied if there is a large amount of descriptor up-
dating in which new descriptor values are created.
You can change the padding factor at a later time using the utility ADAORD.
[NO]BT
[NO]BT
If NOBT is specied, this le will be a no-BT le, which means that modications to this le are
not made within normal transaction logic, and all modications are kept in the database even if
a transaction is backed out.
BT is the default.
■ All database modications for a no-BT le issued before the last ET command are applied to
the database.
■ It is not dened whether database modications for a no-BT le issued after the last ET command
are applied to the database or not.
http://slidepdf.com/reader/full/adabas-631-utils 147/431
7/18/2019 adabas 6.3.1 utils
[NO]CIPHER
[NO]CIPHER
Ciphering prevents the unauthorized analysis of Adabas container les. If ciphering is enabled,
data records are ciphered when they are stored in a database by either the Adabas nucleus or by
the mass update utility ADAMUP. The data records are then deciphered when they are requested
by a user or application: this means that the ciphering is completely transparent to the user or
application. See Administration , Adabas Security Facilities for further information about ciphering.
CONTIGUOUS
This parameter is used to control ADAFDU's space allocations. If specied, ADAFDU ensures
that only the rst logical extent of the types specied is used.
DATAPFAC
DATAPFAC = number
This parameter species the padding factor to be used for the le's Data Storage. The number
specied is the percentage of each data block which is not to be used when subsequently adding
new records to the le with the mass update utility ADAMUP or with the Adabas nucleus. This
padding area is reserved for future use if any record in the block requires additional space as a
result of record updating by the Adabas nucleus. This avoids the necessity of having to relocate
the record to another block.
A small padding factor (0 to 10) should be specied if there is little or no record expansion. A larger
padding factor (10 to 50) should be specied if there is a large amount of record updating which
will cause expansion.
You can change the padding factor at a later time using the utility ADAORD.
The default padding factor is 5.
http://slidepdf.com/reader/full/adabas-631-utils 148/431
7/18/2019 adabas 6.3.1 utils
DBID
DBID = number
DSBLOCKSIZE
DSBLOCKSIZE = numberK
This parameter allows you to specify a block size for the allocation of the data storage extent.
Example:
dsblocksize = 6k
If the database does not contain enough space with this block size, ADAFDU aborts.
DSRABN
DSRABN = number
This parameter species the RABN at which the space allocation for Data Storage is to start.
This parameter can be used to allocate Data Storage to a given container le extent.
DSSIZE
This parameter species the number of blocks or megabytes to be assigned to Data Storage. By
default, the size is given in megabytes.
The value specied for DSSIZE determines the size of the logical extent allocated to Data Storage
for the le.
This parameter is mandatory for ADAM les - the dependencies between the parameters
ADAM_OVERFLOW and DSSIZE are described for the parameter ADAM_OVERFLOW.
For non-ADAM les, this parameter can be omitted; in this case Adabas calculates a reasonable
number of blocks to be used for Data Storage. If the size that is actually required is larger, the le
is automatically increased.
http://slidepdf.com/reader/full/adabas-631-utils 149/431
7/18/2019 adabas 6.3.1 utils
FDT
FDT
If this parameter is specied, the FDT contained in the sequential le FDUFDT is displayed.
FILE
FILE = number
This parameter is required when a base le is to be created; it species the le number to be assigned
to the le.
The `number' specied must not be currently assigned to another le in the database and must
not exceed the maximum le number dened for the database. The maximum number that can
be specied is 32000.
[NO]FORMAT
[NO]FORMAT
This option is used to control whether the RABNs allocated for the le's index and Data Storage
are to be formatted or not. The RABNs of the le's Address Converter are always formatted.
LOBFILE
If LOBFILE is specied, a LOB le with the specied number is generated and assigned to the
base le to be created, and the base le is enabled for LOB processing. A LOB le with the specied
le number must not already exist. The maximum number that can be specied is 32000. You
should take the following into consideration:
■ The block size for LOB le data blocks will be 32 KB.
■ The block size for LOB NI and UI blocks will be < 16 KB.
■ LOBSIZE species the size in Data storage of the LOB le, analogously to the parameter DSSIZE.
■ Adabas calculates reasonable sizes for the Address converter, the normal and upper index of
the LOB le. If you want to specify these values yourself, you should create the base le rst
without specifying LOBFILE, and then you should call ADAFDU again and add the LOB le
with the ADD_LOBFILE parameter.
http://slidepdf.com/reader/full/adabas-631-utils 150/431
7/18/2019 adabas 6.3.1 utils
[NO]LOWER_CASE_FIELD_NAMES
[NO]LOWER_CASE_FIELD_NAMES
MAXISN
MAXISN = number
This parameter species the highest ISN expected in the le. The le denition utility ADAFDU
uses this parameter to determine the amount of space to be allocated for the le's Address Con-
verter (AC). The default value for MAXISN is 5000.
Note: The value is rounded up to the number of ISNs that t into the Address converter
blocks required to store MAXISN ISNs in the Address converter, the exact value used as
MAXISN for the le is:
(MAXISN specied / (Address converter block size / 4) + 1) * (Address converter block size
/ 4) -1. For example, using an Address converter with a block size of 4KB, the default value
of 5000 is increased to (5000 / (4096 / 4) + 1) * (4096 / 4) -1 = 5119.
http://slidepdf.com/reader/full/adabas-631-utils 151/431
7/18/2019 adabas 6.3.1 utils
NAME
This parameter species the name to be assigned to the le. This name will appear together with
data about this le in the database status report produced by the report utility ADAREP. A max-
imum of 16 characters are permitted. If you specify an equals sign, the value given for 'string' will
be converted to upper case; if you specify a colon, no upper-case conversion is performed
NIBLOCKSIZE
NIBLOCKSIZE = numberK|(numberK,numberK)
This parameter allows you to specify a block size for the allocation of the Normal Index. Note that
the Normal Index requires a block size >= 16 KB for large index values > 253 bytes, while a smaller
block is allocated for descriptors with smaller descriptor values. The following must be taken into
consideration:
■ If you specify one block size, the le is created with all normal index blocks having this size.
■ If you specify two block sizes, one value should be < 16K, and one value should be >= 16K. You
should also specify two values for NISIZE; the rst value for NIBLOCKSIZE corresponds to the
rst value of NISIZE, and the second value for NIBLOCKSIZE corresponds to the second value
of NISIZE.
Examples:
niblocksize = 6k
niblocksize = (8k,32k)
nisize = (1000b,10m)
The normal index will be allocated with 1000 blocks of block size 8 KB and 10 MB of block size 32
KB.
If the database does not contain enough space with this block size, ADAFDU aborts.
http://slidepdf.com/reader/full/adabas-631-utils 152/431
7/18/2019 adabas 6.3.1 utils
NIRABN
NIRABN = number|(number,number)
This parameter species the RABN at which the space allocation for the Normal Index is to start.
This parameter can be used to allocate the Normal Index to a given container le extent.
If two RABNs have been specied, one should have a block size < 16KB, and the other should
have a block size of >= 16KB.
If both NIBLOCKSIZE and NIRABN are specied, the block sizes of the RABNs specied as
NIRABN must be equal to the values specied as NIBLOCKSIZE.
NISIZE
If the block size cannot be derived from the NIBLOCKSIZE or the NIRABN parameter, the rst
value for NISIZE is used for blocks < 16KB, and the second value is used for blocks >= 16KB.
If this parameter is omitted, Adabas calculates a reasonable number of blocks to be used for the
normal index.
Examples:
If the block size cannot be derived from the NIBLOCKSIZE or NIRABN parameter, 100 blocks
with block size < 16KB are allocated for the Normal Index.
If the block size cannot be derived from the NIBLOCKSIZE or NIRABN parameter, 10 MB of blocks
with block size < 16KB and 1000 blocks of block size >= 16KB are allocated for the Normal Index.
http://slidepdf.com/reader/full/adabas-631-utils 153/431
7/18/2019 adabas 6.3.1 utils
[NO]PGM_REFRESH
[NO]PGM_REFRESH
If PGM_REFRESH is specied, the le can be refreshed by an E1 command (reset to a state of zero
records loaded) when it is loaded.
REUSE
The REUSE parameter controls the reuse of Data Storage space or ISNs by Adabas.
REUSE = [NO]DS
NODS(as
block causes all newly-added
a result records,
of record expansion together
caused with records
by updating) that
to be have to
placed in be
themoved to another
last used block in
the Data Storage extent allocated to the le. If there is not sucient space in this block, the next
block is used.
If the DS keyword is specied, Adabas will scan the Data Storage Space Table (DSST) in order to
locate a block with sucient space. In this case, the rst block found with sucient space will be
used.
The le control block for the specied le is modied to indicate the type of allocation to be used
when adding new records or moving updated records.
REUSE = [NO]ISN
If REUSE is set to NOISN, Adabas does not reuse the ISN of a deleted record for a new record.
Each new record will be assigned the next-highest unused ISN.
The ISN keyword species that Adabas may reuse the ISN of a deleted record.
http://slidepdf.com/reader/full/adabas-631-utils 154/431
7/18/2019 adabas 6.3.1 utils
Examples
ISNs of deleted records can be reassigned to new records. The DSST is scanned for free space when
a record is added to the database or when an updated record is moved in the database.
Reuse of data storage and no reuse of ISNs is specied. This is the default setting.
SYFMAX
SYFMAX = number
This parameter species the maximum number of values generatedfor a system generatedmultiple-
value eld. There is no explicit maximum value, but you should bear in mind, that you can get a
record overow if the value is dened too high; the compressed data record should also t into
one DATA block is SYFMAX values are dened for system generated multiple-value elds.
UIBLOCKSIZE
UIBLOCKSIZE = numberK|(numberK,numberK)
This parameter allows you to specify a block size for the allocation of the Upper Index. Note that
the Upper Index requires a block size >= 16 KB for large index values > 253 bytes, while a smaller
block is allocated for descriptors with smaller descriptor values. The following must be taken into
consideration:
■ If you specify one block size, the le is created with all normal index blocks having this size.
■
If you specify
should two block
also specify sizes, one
two values value should
for UISIZE; be value
the rst < 16K,for
and one value should
UIBLOCKSIZE be >= 16K.
corresponds toYou
the
rst value of UISIZE, and the second value for UIBLOCKSIZE corresponds to the second value
of UISIZE.
http://slidepdf.com/reader/full/adabas-631-utils 155/431
7/18/2019 adabas 6.3.1 utils
Examples:
uiblocksize = 6k
uiblocksize = (8k,32k)
uisize = (1000b,10m)
The upper index will be allocated with 1000 blocks of block size 8 KB and 10 MB of block size 32
KB.
If the database does not contain enough space with this block size, ADAFDU aborts.
UIRABN
UIRABN = number|(number,number)
This parameter species the RABN at which the space allocation for the Upper Index is to start.
This parameter can be used to allocate the Upper Index to a given container le extent.
If two RABNs have been specied, one should have a block size < 16KB, and the other should
have a block size of >= 16KB.
If both UIBLOCKSIZE and UIRABN are specied, the block sizes of the RABNs specied as UIR-
ABN must be equal to the values specied as UIBLOCKSIZE.
UISIZE
UISIZE = number [B | M]
This parameter denes the number of blocks or megabytes to be assigned to the Upper Index. By
default, the size is in megabytes.
If the block size cannot be derived from the UIBLOCKSIZE or the UIRABN parameter, the rst
value for UISIZE is used for blocks < 16KB, and the second value is used for blocks >= 16KB.
If this parameter is omitted, Adabas calculates a reasonable number of blocks to be used for the
upper index.
http://slidepdf.com/reader/full/adabas-631-utils 156/431
7/18/2019 adabas 6.3.1 utils
Examples
Example:
File 6 is to be loaded. The maximum number of expected records preset for the le is 20000. 100
blocks are allocated for Data Storage. The Associator and Data Storage block padding factors are
both 10 percent. 20 blocks are allocated for the Upper Index and 5 megabytes for the Normal Index.
The Normal Index ISN size is implicitly set to 2.
Example:
File 7 is to be loaded. The maximum number of expected records preset for the le is 350000. The
Associator padding factor is 5 percent. The Data Storage padding factor is 15 percent. 100 megabytes
are allocated for Data Storage. The Normal Index ISN size is implicitly set to 4.
Example:
File 8 is to be loaded. The maximum number of expected records preset for the le is 10000. 20
megabytes are allocated to Data Storage. The padding factor for both the Associator and Data
Storage is 5 percent (default).
http://slidepdf.com/reader/full/adabas-631-utils 157/431
7/18/2019 adabas 6.3.1 utils
Example:
File 9 is to be loaded. The maximum number of expected records preset for the le is 55000. 2000
blocks are allocated for Data Storage. The Data Storage allocation will start at RABN 30629. 50
blocks are allocated for the Upper Index. 300 blocks are allocated for the Normal Index. The padding
factor for the Associator is 20 percent. The padding factor for Data Storage is 10 percent.
Example:
File 10 is to be loaded. The maximum number of records expected for the le is set to 20000. All
space allocation will be calculated by Adabas.
http://slidepdf.com/reader/full/adabas-631-utils 158/431
7/18/2019 adabas 6.3.1 utils
■ Functional
Overview ....................................................................................................................... 152
■ ProcedureFlow ............................................................................................................................. 153
■ Checkpoints ................................................................................................................................. 154
■
Control Parameters ........................................................................................................................ 154
151
http://slidepdf.com/reader/full/adabas-631-utils 159/431
7/18/2019 adabas 6.3.1 utils
Functional Overview
■ the FDT,
■ descriptor information, and
■ the number of blocks in the Data Storage, Normal Index or Upper Index and their usage
http://slidepdf.com/reader/full/adabas-631-utils 160/431
7/18/2019 adabas 6.3.1 utils
Procedure Flow
http://slidepdf.com/reader/full/adabas-631-utils 161/431
7/18/2019 adabas 6.3.1 utils
Checkpoints
Control Parameters
ADAM_DS = keyword
M DBID = number
D [NO]HISTOGRAM
ADAM_DS
ADAM_DS = keyword
This parameter can be used in conjunction with USAGE=DS for ADAM les. It selects the data
section of the ADAM le for which information is to be displayed. The following keywords can
be used:
Keyword Meaning
http://slidepdf.com/reader/full/adabas-631-utils 162/431
7/18/2019 adabas 6.3.1 utils
DBID
DBID = number
DESCRIPTOR
This function denes the list of descriptors for which information is to be displayed. If more than
one le is selected, information may only be requested for all descriptors (DESCRIPTOR = *).
The DESCRIPTOR function can only be executed if the selected les are not opened for update
with the nucleus running. This function can only be selected in conjunction with the FILE parameter.
The DESCRIPTOR function does not synchronize against parallel updates (for example ADAINV
REINVERT).
Examples
http://slidepdf.com/reader/full/adabas-631-utils 163/431
7/18/2019 adabas 6.3.1 utils
http://slidepdf.com/reader/full/adabas-631-utils 164/431
7/18/2019 adabas 6.3.1 utils
http://slidepdf.com/reader/full/adabas-631-utils 165/431
7/18/2019 adabas 6.3.1 utils
Highest PE-occurrence: 5
http://slidepdf.com/reader/full/adabas-631-utils 166/431
7/18/2019 adabas 6.3.1 utils
Total of 18 descriptors
http://slidepdf.com/reader/full/adabas-631-utils 167/431
7/18/2019 adabas 6.3.1 utils
FDT
FDT
This parameter displays the Field Denition Tables (FDTs) of the les selected with the FILE
parameter. This function can only be selected in conjunction with the FILE parameter.
Example
1
1 II AA
AB I
I 8 I
I A I
I DE,UQ I
I I
I
2 I AC I 20 I W I NU I I
2 I AE I 20 I W I NU I SP I
2 I AD I 20 I W I NU I I
1 I AF I 1 I A I FI I I
1 I AG I 1 I A I FI I I
1 I AH I 8 I U I DE I I
1 I A1 I I I I I
2 I AI I 20 I W I NU,MU I I
2 I AJ I 20 I W I DE,NU I I
2 I AK I 10 I A I NU I I
2 I AL I 3 I A I NU I I
1 I A2 I I I I I
2 I AN I 6 I A I NU I I
2 I AM I 15 I A I NU I I
1 I AO I 6 I A I DE I SB,SP I
1 I AP I 25 I W I DE,NU I I
1 I AQ I I I PE I I
2 I AR I 3 I A I NU I SP I
2 I AS I 5 I P I NU I SP I
2 I AT I 5 I P I NU,MU I I
1 I A3 I I I I I
2 I AU I 2 I U I I SP I
2 I AV I 2 I U I NU I SP I
1 I AW I I I PE I I
2 I AX I 8 I U I NU I I
2 I AY I 8 I U I NU I I
1 I AZ I 3 I A I DE,NU,MU I I
-------------------------------------------------------------------------------
Type I Name I Length I Format I Options I Parent field(s) Fmt
-------------------------------------------------------------------------------
COLL I CN I1,144 I I NU,HE I AE de__PHONEBOOK
I I I I I PRIMARY
http://slidepdf.com/reader/full/adabas-631-utils 168/431
7/18/2019 adabas 6.3.1 utils
-------------------------------------------------------------------------------
SUPER I H1 I 4 I B I NU I AU ( 1 - 2 ) U
I I I I I AV ( 1 - 2 ) U
-------------------------------------------------------------------------------
SUB I S1 I 4 I A I I AO ( 1 - 4 ) A
-------------------------------------------------------------------------------
SUPER I S2 I 26 I A I NU I AO ( 1 - 6 ) A
I I I I I AE ( 1 - 20 ) W
-------------------------------------------------------------------------------
SUPER I S3 I 12 I A I NU,PE I AR ( 1 - 3 ) A
I I I I I AS ( 1 - 9 ) P
-------------------------------------------------------------------------------
FILE
This parameter selects one or more les from a database and displays information about these
les in accordance with the following parameter. Specifying FILE = * selects all les.
[NO]HISTOGRAM
[NO]HISTOGRAM
If the HISTOGRAM option is selected, a graphical overview of the descriptor-value length distri-
butions will be provided in all the information that is subsequently displayed by the DESCRIPTOR
function.
Using the HISTOGRAM option does not lead to additional I/Os on the data sets.
http://slidepdf.com/reader/full/adabas-631-utils 169/431
7/18/2019 adabas 6.3.1 utils
adafin:
Keyword Meaning
Length Each value n shown in this column indicates that there is a descriptor value with a length of n
bytes in the le.
The range of values in this column lies between the minimum (column "min") and maximum
(column "max") values shown in the table before the histogram.
Frequency The value shown in this column indicates the number of descriptor values for the given descriptor
length.
The sum of the values in the frequency column is equal to the total number of values for the
descriptor in question.
If all of the descriptor values are of the same length, the histogram will be of an unusual type, e.g.:
http://slidepdf.com/reader/full/adabas-631-utils 170/431
7/18/2019 adabas 6.3.1 utils
This histogram shows that the le only contains descriptor values that have a length of 8 bytes.
The le contains a total of 1107 values for the descriptor AA.
http://slidepdf.com/reader/full/adabas-631-utils 171/431
7/18/2019 adabas 6.3.1 utils
USAGE
Depending on the keyword specied, this parameter displays the percentage of used blocks in
the le.
Keyword Meaning
Example
0%: 0 blocks
5%: 0 blocks
10%: 0 blocks
15%: 0 blocks
20%: 0 blocks
25%: 0 blocks
30%: 0 blocks
35%: 0 blocks
40%: 0 blocks
45%: 0 blocks
50%: 0 blocks
55%: 0 blocks
60%: 0 blocks
65%: 0 blocks
70%:**** 2 blocks
75%:
80%:** 0
1 blocks
block
85%:************* 6 blocks
90%:***************************** 13 blocks
95%:************************************************************* 27 blocks
100%: 0 blocks
Information about the used data blocks of le 13 in database 76 is displayed. 50 DS blocks are al-
located, of which 49 are in use and 1 is unused. The total number of records is 179, with the record
http://slidepdf.com/reader/full/adabas-631-utils 172/431
7/18/2019 adabas 6.3.1 utils
length varying between a maximum of 1991 and a minimum of 260. The average record length is
997.47. The following lines give an overview of the number of blocks that are used up to a given
level. The majority of the blocks (27) is used up to between 90% and 95%.
adafin: file = 8
adafin: adam_ds = full
adafin: usage = ds
Information about all data blocks of le 8, which is an ADAM le, is displayed. The ADAM
parameter is set to 5. 94 blocks are used for the ADAM area, with 1 block reserved for overow.
The ADAM area contains 3860 records, and 3 records are in the overow area.
http://slidepdf.com/reader/full/adabas-631-utils 173/431
7/18/2019 adabas 6.3.1 utils
166
http://slidepdf.com/reader/full/adabas-631-utils 174/431
7/18/2019 adabas 6.3.1 utils
■ Functional
Overview ....................................................................................................................... 168
■ ProcedureFlow ............................................................................................................................. 169
■ Checkpoints ................................................................................................................................. 170
■
Control Parameters ........................................................................................................................ 170
■ Restart Considerations ................................................................................................................... 174
■ Control Statement Examples ............................................................................................................ 174
167
http://slidepdf.com/reader/full/adabas-631-utils 175/431
7/18/2019 adabas 6.3.1 utils
Functional Overview
The utility ADAFRM creates the container les (ASSO, DATA, WORK) assigned to the database
and establishes the database including the database system les. It can also be used to format the
TEMP and SORT les.
For the raw device interface, the utility ADADEV can be used if placement control is required.
Raw devices and les in the le system may be used for database container les.
You can create up to 255 ASSO and 255 DATA container les. You can add more containers later
using ADADBM's ADD_CONTAINER function.
After ADAFRM creates the container les, it initializes the global Adabas blocks, inserts the 3
Adabas system les (checkpoint le, ET data le, security le) and allocates space for them. The
checkpoint le is allocated 3000 records, the ET data le is allocated 3000 records and the security
le is allocated 200 records.
Block sizes from 1 kilobyte to 32 kilobytes may be used for database container les.
If you try to reformat a container le, the utility terminates with an error message. This ensures
that the database is not accidentally overwritten.
Note: On OpenVMS, container les are allocated using the contiguous-best-try method. For
this reason, you should ensure that your disk space is as defragmented as possible in order
to avoid reduced performance.
This utility is a single function utility.
http://slidepdf.com/reader/full/adabas-631-utils 176/431
7/18/2019 adabas 6.3.1 utils
Procedure Flow
If a database is to be formatted:
http://slidepdf.com/reader/full/adabas-631-utils 177/431
7/18/2019 adabas 6.3.1 utils
Checkpoints
Control Parameters
The following control parameters are only used when establishing a new database:
DBID = number
D WORKBLOCKSIZE = number[K]
M WORKSIZE = number[M | B]
http://slidepdf.com/reader/full/adabas-631-utils 178/431
7/18/2019 adabas 6.3.1 utils
ASSOBLOCKSIZE
This parameter species the block sizes that are to be used for the Associator container le(s). The
rst block size corresponds to ASSO1, the second to ASSO2 etc.
For ASSO1, only blocks sizes from 2K to 8K can be specied. For ASSO2 to ASSOn, block sizes
between 1K and 32K are permitted.
Note: The ASSOBLOCKSIZE parameter should be specied once for each ASSOSIZE that
is specied, i.e. these parameters should be specied in pairs. If ASSOSIZE is specied more
frequently than ASSOBLOCKSIZE, then the last specied block size will be used for the
containers that do not have a block size specied. The default value will be used if ASSOB-
LOCKSIZE is not specied at all.
ASSOSIZE
This parameter species the number of blocks or megabytes to be assigned to the Associator.
If the Associator is to be contained in more than one physical le, the size of each le must be
specied.
DATABLOCKSIZE
This parameter species the block sizes that are to be used for the Data Storage container le(s).
The rst block size corresponds to DATA1, the second to DATA2 etc.
If block sizes are not specied, the default of 32K will be used.
Note: The DATABLOCKSIZE parameter should be specied once for each DATASIZE that
is specied, i.e. these parameters should be specied in pairs. If DATASIZE is specied
more frequently than DATABLOCKSIZE, then the last specied block size will be used for
the containers that do not have a block size specied. The default value will be used if
DATABLOCKSIZE is not specied at all.
http://slidepdf.com/reader/full/adabas-631-utils 179/431
7/18/2019 adabas 6.3.1 utils
DATASIZE
This parameter species the number of blocks or megabytes to be assigned to the Data Storage.
If the Data Storage is to be contained in more than one le, the size of each le must be specied.
If a `B' is appended to the number, the size is in blocks, otherwise it is in megabytes.
DBID
DBID = number
Note: This parameter only needs to be set when formatting ASSO, DATA and WORK. It
must not be entered when formatting only SORT or TEMP.
NAME
This parameter species the name to be assigned to the database. This name will appear in the
title of the database status report produced by the report utility ADAREP. If you specify an equals
sign, the value given for 'string' will be converted to upper case; if you specify a colon, no upper-
case conversion is performed.
SORTSIZE
This parameter species the number of megabytes to be assigned to the SORT dataset.
If the SORT dataset consists more than one extent, the size of each extent must be specied. Up
to 50 extents can be specied. The SORT dataset can be formatted independently.
http://slidepdf.com/reader/full/adabas-631-utils 180/431
7/18/2019 adabas 6.3.1 utils
SYSFILES
This parameter species the le numbers to be reserved for the Adabas system les. These le
numbers must not be used subsequently for user les.
The rst value species the le number of the checkpoint le.
The second value species the le number of the security le.
The third value species the le number of the user data le.
TEMPSIZE
If the TEMP dataset is to be contained in more than one physical le, the size of each le must be
specied.
WORKBLOCKSIZE
WORKBLOCKSIZE = number[K]
This parameter species the block size that is to be used for the WORK le.
WORKSIZE
http://slidepdf.com/reader/full/adabas-631-utils 181/431
7/18/2019 adabas 6.3.1 utils
Restart Considerations
ADAFRM does not have a restart capability. An interrupted ADAFRM run must be restarted from
the beginning. Associator, Data Storage and WORK must be formatted together.
A new database is established with the number 1 and the name "DATABASE_1". Two ASSO con-
tainer les are created: ASSO1 has a size of 200 megabytes and a blocksize of 2 kilobytes, and
ASSO2 has a size of 100 megabytes and a blocksize of 4 kilobytes. There are three DATA containers.
DATA1 and DATA3 have a blocksize of 4 kilobytes, DATA2 has a blocksize of 16 kilobytes. There
is a single WORK container le with a block size of 16 kilobytes. The le numbers 1, 2 and 3 will
be used for the 3 system les.
Explanation: Two container les, each 10 megabytes in length, are to be formatted as SORT1 and
SORT2. A container le, 10 megabytes in length, is to be formatted as TEMP1.
http://slidepdf.com/reader/full/adabas-631-utils 182/431
7/18/2019 adabas 6.3.1 utils
■ Functional
Overview ....................................................................................................................... 176
■ ProcedureFlow ............................................................................................................................. 177
■ Checkpoints ................................................................................................................................. 178
■
Control Parameters ........................................................................................................................ 179
■ Restart Considerations ................................................................................................................... 188
■ Examples ..................................................................................................................................... 189
175
http://slidepdf.com/reader/full/adabas-631-utils 183/431
7/18/2019 adabas 6.3.1 utils
Functional Overview
The inverted list utility ADAINV creates, removes and veries inverted lists for loaded les in a
database. It does not require the Adabas nucleus to be active. The nucleus may, however, be active
or shut down while ADAINV is running. The following functions are available:
A LOB le can only be specied for the functions REINVERT, SUMMARY and VERIFY.
These functions are mutually exclusive and only one of them may be executed each time this
utility is run.
If the utility writes records to the error le, it will exit with a non-zero status.
http://slidepdf.com/reader/full/adabas-631-utils 184/431
7/18/2019 adabas 6.3.1 utils
Procedure Flow
http://slidepdf.com/reader/full/adabas-631-utils 185/431
7/18/2019 adabas 6.3.1 utils
The sequential le INVERR can have multiple extents. For detailed information about sequential
les with multiple extents, see Administration , Using Utilities.
Logical Name
Associator ASSOx Disk
Data storage DATAx Disk
Rejected data INVERR Disk, Tape (* see note) output of ADAINV
Sort storage SORTx Disk Administration Manual, temporary working
TEMPLOCx space
Control statements stdin/ Utilities Manual
SYS$INPUT
ADAINV messages stdout/ Messages and Codes
SYS$OUTPUT
Temporary storage TEMPx Disk
Work storage WORK1 Disk
Note: (*) A named pipe can be used for this sequential le (not on OpenVMS, see Adminis-
tration, Using Utilities for details).
In cases without an active nucleus and no pending AUTORESTART, the WORK may be used as
TEMP by setting the environment variable/logical name TEMP1 to the path name or raw disk
section of a WORK container.
Checkpoints
Checkpoints
The following table shows the nucleus requirements for each function and the checkpoints written:
Function Nucleus must Nucleus must NOT be Nucleus is NOT Checkpoint written Nucleus operations
be active active required allowed
INVERT X SYNP R
REINVERT X(* see note) X SYNP
RELEASE X SYNP R
RESET_UQ X SYNP R
SET_UQ X SYNP R
SUMMARY X W
VERIFY X(* see note) X SYNX R
http://slidepdf.com/reader/full/adabas-631-utils 186/431
7/18/2019 adabas 6.3.1 utils
Control Parameters
M DBID = number
INVERT = number,
FIELDS {field_name [,UQ] [,TR] | derived_descriptor_definition | FDT},
... [END_OF_FIELDS]
[,FDT]
D [,LWP = number[K]]
D [,UQ_CONFLICT = keyword]
D [NO]LOWER_CASE_FIELD_NAMES
REINVERT = number,
{ALL_FIELDS | FIELDS {descriptor_name | FDT}, ... [END_OF_FIELDS]}
[,FDT]
D [,[NO]FORMAT]
D [,LWP = number[K]]
D [,UQ_CONFLICT = keyword]
RELEASE = number,
{ALL_FIELDS | FIELDS {descriptor_name | FDT}, ... [END_OF_FIELDS]}
[,FDT]
D [,[NO]FORMAT]
RESET_UQ = number,
{ALL_FIELDS | FIELDS {descriptor_name | FDT}, ... [END_OF_FIELDS]}
[,FDT]
SET_UQ = number,
{ALL_FIELDS | FIELDS {descriptor_name | FDT}, ... [END_OF_FIELDS]}
[,FDT]
D [,UQ_CONFLICT = keyword]
SUMMARY = number,
{ALL_FIELDS | FIELDS
{descriptor_name | derived_descriptor_definition | FDT},
... [END_OF_FIELDS]}
[,FDT]
D [,FULL]
http://slidepdf.com/reader/full/adabas-631-utils 187/431
7/18/2019 adabas 6.3.1 utils
VERIFY = number,
{ALL_FIELDS | FIELDS {descriptor_name | FDT}, ... [END_OF_FIELDS]}
D [,ERRORS = number]
[,FDT]
D [,LWP = number[K]]
DBID
DBID = number
INVERT
INVERT = number,
FIELDS {field_name [,UQ] [,TR] | derived_descriptor_definition | FDT},
... [END_OF_FIELDS]
[,FDT]
[,LWP = number[K]]
[,UQ_CONFLICT = keyword]
This function establishes new elementary, sub-, super-, hyper-, phonetic and collation descriptors
at any time after a le has been initially loaded. `number' species the le containing the elds to
be inverted. You are not allowed to specify the number of a LOB le.
FDT
This parameter displays the FDT of the selected le. This option may be specied before or within
the eld specication list.
■ eld name,
■ phonetic descriptor or
■ sub-, super-, hyper- or collation descriptor
specications, each starting on a separate line. See Administration , FDT Record Structure for valid
specications of eld names, phonetic, sub-, super-, hyper- or collation descriptors.
The options UQ and TR are used to specify whether the eld in question is a unique descriptor
or whether index truncation will be performed. See Administration , Denition Options for further
information about the UQ and TR options.
http://slidepdf.com/reader/full/adabas-631-utils 188/431
7/18/2019 adabas 6.3.1 utils
Note: Only elds for which the values are stored in the base le can be used as descriptors
or parent elds of derived descriptors. For this reason, an invert function will be aborted
if a eld to be inverted or a parent eld of a derived descriptor to be created has the LA or
LB option and values are stored in the LOB le. LA and LB elds can be used as descriptors
or parent elds of derived descriptors, but then all values are limited to 16 KB – 3, and the
base record including these LA or LB eld values must t into one data block.
If the eld denitions are terminated with the END_OF_FIELDS parameter, this parameter must
be specied in upper case when the LOWER_CASE_FIELD_NAMESparameter is used. In addition,
the FDTparameter must also be specied in upper case when the LOWER_CASE_FIELD_NAMES
parameter is used.
LWP = number[K]
This parameter species the size of the Work Pool in bytes or in kilobytes (K) to be used for the
sort while creating the inverted lists.
You can use the SUMMARY function to determine the required value for this parameter.
UQ_CONFLICT = keyword
This parameter determines which action is to be taken when duplicate values are found for a
unique descriptor. `keyword' may take the values ABORT or RESET. If ABORT is specied,
ADAINV terminates execution and returns an error status if duplicate UQ descriptor values are
found. If RESET is specied, the UQ status of the descriptors in question is removed and processing
continues.
The default is UQ_CONFLICT = ABORT.
[NO]LOWER_CASE_FIELD_NAMES
[NO]LOWER_CASE_FIELD_NAMES
http://slidepdf.com/reader/full/adabas-631-utils 189/431
7/18/2019 adabas 6.3.1 utils
REINVERT
REINVERT = number,
{ALL_FIELDS | FIELDS {descriptor_name | FDT}, ... [END_OF_FIELDS]}
[,FDT]
[,[NO]FORMAT]
[,LWP = number[K]]
[,UQ_CONFLICT = keyword]
This function performs an implicit RELEASE and INVERT. This reduces the probability of a typing
error, especially for sub- and superdescriptors.
Note: The purpose of ADAINV REINVERT is to recreate a descriptor if the index tree becomes
unbalanced as a result of a large number of updates, or if an index error occurred. Descriptors
are always recreated with the same denition as before; if you want to change the denition
of a descriptor, for example a superdescriptor, you must perform ADAINV RELEASE fol-
This parameter species that all descriptors of the selected le are to be released/inverted.
FDT
This parameter displays the FDT of the selected le. This option may be specied before or within
the elds specication list.
If the eld denitions are terminated with the END_OF_FIELDS parameter, this parameter must
be specied in upper case when the LOWER_CASE_FIELD_NAMES parameter is used. In addition,
the FDTparameter must also be specied in upper case when theLOWER_CASE_FIELD_NAMES
parameter is used.
http://slidepdf.com/reader/full/adabas-631-utils 190/431
7/18/2019 adabas 6.3.1 utils
[NO]FORMAT
If a descriptor is released or reinverted, the new index created is generally smaller than the old
index and requires less disk space. The FORMAT option can be used to format the blocks that are
no longer used by the index but which are still allocated to the le.
LWP = number[K]
This parameter species the size of the Work Pool to be used for the sort. This is an internal sort
to recover lost index blocks when rebuilding the upper index.
You can use the SUMMARY function to determine the required value for this parameter.
UQ_CONFLICT = keyword
This parameter determines which action is to be taken when duplicate values are found for a
unique descriptor. `keyword' may take the values ABORT or RESET. If ABORT is specied,
ADAINV terminates execution and returns an error status if duplicate UQ descriptor values are
found. If RESET is specied, the UQ status of the descriptors in question is removed and processing
continues.
RELEASE
RELEASE = number,
{ALL_FIELDS | FIELDS {descriptor_name | FDT}, ... [END_OF_FIELDS]}
[,FDT]
[,[NO]FORMAT]
This function removes elementary, sub-, super-, hyper-, phonetic and collation descriptors from
the le specied by `number'. You are not allowed to specify the number of a LOB le.
http://slidepdf.com/reader/full/adabas-631-utils 191/431
7/18/2019 adabas 6.3.1 utils
ALL_FIELDS
This parameter species that all descriptors of the selected le are to be released.
FDT
This parameter displays the FDT of the selected le. This option may be specied before or within
the elds specication list.
This parameter species the descriptors to be released. It can be followed by one or more eld
names, each starting on a separate line. See Administration , FDT Record Structure for a description
of valid eld name specications.
If the eld denitions are terminated with the END_OF_FIELDS parameter, this parameter must
be specied in upper case when the LOWER_CASE_FIELD_NAMES parameter is used. In addition,
the FDTparameter must also be specied in upper case when theLOWER_CASE_FIELD_NAMES
parameter is used.
[NO]FORMAT
If a descriptor is released or reinverted, the new index created is generally smaller than the old
index and requires less disk space. The FORMAT option can be used to format the blocks that are
no longer used by the index but which are still allocated to the le.
RESET_UQ
RESET_UQ = number,
{ALL_FIELDS | FIELDS {descriptor_name | FDT}, ... [END_OF_FIELDS]}
[,FDT]
This function removes the unique status from elementary, sub-, hyper-, super- and collation
descriptors dened in the le specied by `number'. You are not allowed to specify the number
of a LOB le.
http://slidepdf.com/reader/full/adabas-631-utils 192/431
7/18/2019 adabas 6.3.1 utils
ALL_FIELDS
This parameter species that the unique status is to be removed from all unique descriptors in the
specied le.
FDT
This parameter displays the Field Denition Table (FDT) of the selected le. This option may be
specied before or within the elds specication list.
This parameter species the descriptors that are to have unique status removed. It can be followed
by one or more eld names, each starting on a separate line. See Administration , FDT Record
Structure for a description of valid eld name specications.
If the eld denitions are terminated with the END_OF_FIELDS parameter, this parameter must
be specied in upper case when the LOWER_CASE_FIELD_NAMESparameter is used. In addition,
the FDTparameter must also be specied in upper case when the LOWER_CASE_FIELD_NAMES
parameter is used.
SET_UQ
SET_UQ = number,
{ALL_FIELDS | FIELDS {descriptor_name | FDT}, ... [END_OF_FIELDS]}
[,FDT]
[,UQ_CONFLICT = keyword]
This function establishes the unique status for elementary, sub-, hyper-, super- and collation
descriptors dened in the le specied by `number'. You are not allowed to specify the number
of a LOB le.
ALL_FIELDS
This parameter species that the unique status is to be established for all elementary, sub-, hyper-
, super- and collation descriptors dened in the specied le.
http://slidepdf.com/reader/full/adabas-631-utils 193/431
7/18/2019 adabas 6.3.1 utils
FDT
This parameter displays the FDT of the selected le. This option may be specied before or within
the elds specication list.
This parameter species the descriptors for which the unique status is to be established. It can be
followed by one or more eld names, each starting on a separate line. See Administration , FDT
Record Structure for a description of valid eld name specications.
If the eld denitions are terminated with the END_OF_FIELDS parameter, this parameter must
be specied in upper case when the LOWER_CASE_FIELD_NAMES parameter is used. In addition,
the FDTparameter must also be specied in upper case when theLOWER_CASE_FIELD_NAMES
parameter is used.
UQ_CONFLICT = keyword
This parameter determines which action is to be taken when duplicate values are found for a
unique descriptor. `keyword' may take the values ABORT or RESET. If ABORT is specied,
ADAINV terminates execution and returns an error status if duplicate descriptor values are found.
If RESET is specied, the UQ status of the descriptors in question is not established and processing
continues.
SUMMARY
SUMMARY = number,
{ALL_FIELDS | FIELDS
{descriptor_name | derived_descriptor_definition | FDT},
... [END_OF_FIELDS]}
[,FDT]
[,FULL]
This function displays the descriptor space summary (DSS) for the specied descriptors and the
required sizes to process the descriptors.
Note: Processing the exact size would be too complicated. It may be that sizes a little smaller
than those displayed are sucient. If the le is updated during or after the SUMMARY
function, the displayed values might also be too small.
http://slidepdf.com/reader/full/adabas-631-utils 194/431
7/18/2019 adabas 6.3.1 utils
ALL_FIELDS
This parameter species that all descriptors of the selected les are to be checked.
FDT
This parameter displays the FDT of the selected le. This option may be specied before or within
the elds specication list.
This parameter species the descriptors for which the unique status is to be established. It can be
followed by one or more eld names, phonetic descriptors, subdescriptors, superdescriptors, hy-
perdescriptors or collation descriptors, each starting on a separate line. You can specify elds that
are descriptors or elds that are not descriptors. See Administration , FDT Record Structure for a
description of valid eld name specications.
If the eld denitions are terminated with the END_OF_FIELDS parameter, this parameter must
be specied in upper case when the LOWER_CASE_FIELD_NAMESparameter is used. In addition,
the FDTparameter must also be specied in upper case when the LOWER_CASE_FIELD_NAMES
parameter is used.
FULL
If this is specied, each descriptor is displayed along with the sizes that are required for the
descriptor. This can be helpful if not all of the specied elds are to be processed.
VERIFY
VERIFY = number,
{ALL_FIELDS | FIELDS {descriptor_name | FDT}, ... [END_OF_FIELDS]}
[,ERRORS = number]
[,FDT]
[,LWP = number[K]]
This function checks the integrity of inverted lists of the le specied by `number'.
http://slidepdf.com/reader/full/adabas-631-utils 195/431
7/18/2019 adabas 6.3.1 utils
ALL_FIELDS
This parameter species that all descriptors of the selected le are to be checked.
ERRORS = number
This parameter species the number of errors that have to be reported in order to terminate the
verication of a descriptor.
FDT
This parameter displays the FDT of the selected le. This option may be specied before or within
the elds specication list.
This parameter species the descriptor elds to be veried. It can be followed by one or more eld
names, each starting on a separate line. See Administration , FDT Record Structure for a description
of valid eld name specications.
If the eld denitions are terminated with the END_OF_FIELDS parameter, this parameter must
be specied in upper case when the LOWER_CASE_FIELD_NAMES parameter is used. In addition,
the FDTparameter must also be specied in upper case when theLOWER_CASE_FIELD_NAMES
parameter is used.
LWP = number[K]
This parameter species the size of the Work Pool to be used for the sort while verifying the inverted
lists.
You can use the SUMMARY function to determine the required value for this parameter.
Restart Considerations
ADAINV has no restart capability. However, it may or may not be possible to re-start an abnormally
terminated ADAINV from the beginning.
If ADAINV terminates abnormally, it can usually be restarted from the beginning. However, if
ADAINV has modied the index, the following points have to be considered:
http://slidepdf.com/reader/full/adabas-631-utils 196/431
7/18/2019 adabas 6.3.1 utils
■ The function REINVERT ... FIELDS is the same as the function RELEASE ... FIELDS followed
by the function INVERT ... FIELDS. So if ADAINV has aborted in the INVERT phase, perform
the function INVERT ... FIELDS to restart the operation.
■ If ADAINV is performed oine, there is a very small amount of time where a few records that
together form a logical unit are written to disk. If ADAINV terminates after the rst of these
records has been written and before the last has been written, ADAINV cannot be restarted. In
this case, the function REINVERT ... ALL_FIELDS is required. This cannot happen if ADAINV
is performed online.
■ If ADAINV terminates abnormally, it can happen that some index blocks are lost. These index
blocks can only be recovered by the function REINVERT ... ALL_FIELDS or by using the utility
ADAORD or by using the utilities ADAULD and ADAMUP.
Examples
Example 1
adainv: dbid=1
adainv: invert=10, fields
adainv: HO
Example 2
adainv: dbid=1
adainv: invert=10
adainv: lwp=600k
adainv: fields
adainv: ph=phon(na)
adainv: sp=na(1,3),yy(1,2),uq
adainv: bb,uq
Three new descriptors are established for le 10 in database 1. PH is a phonetic descriptor based
on the eld NA. SP is a unique superdescriptor derived from bytes 1 to 3 of eld NA and bytes 1
to 2 of eld YY. The elementary eld BB is changed to descriptor status and the unique ag is set.
The size of the work pool to be used for the sort is increased to 600 K.
http://slidepdf.com/reader/full/adabas-631-utils 197/431
7/18/2019 adabas 6.3.1 utils
Example 3
adainv: dbid=1
adainv: release=10
adainv: fields
adainv: ho
adainv: ph
The two descriptors HO and PH from the examples above are released.
Example 4
The descriptors SP and NA are veried. The descriptor value table entries generated for descriptor
NA are checked against the decompressed values of this eld. Verication is terminated if more
than ve errors are reported for each descriptor.
Example 5
The descriptor NA in le 10 of database 1 is to be reinverted (this may be necessary if errors are
reported in example 4).
Example 6
adainv: db=12
adainv: reinvert=9
adainv: all_fields
The complete index is recreated for le 9 in database 12.
http://slidepdf.com/reader/full/adabas-631-utils 198/431
7/18/2019 adabas 6.3.1 utils
%ADAINV-I-SORTDESC,
%ADAINV-I-LOADDESC, sorting
loading descriptor
descriptor AC
AC
http://slidepdf.com/reader/full/adabas-631-utils 199/431
7/18/2019 adabas 6.3.1 utils
Notes:
1. The message NULLDESC indicates that no descriptor values exist for this descriptor. This may
happen for elds dened with option NU or NC if the eld contains the null value/SQL null
values for all records.
2. The message DSPASSES shows how often the data records of the le were read. In this case the
number of data storage passes is 17, i.e. the data records were reread for each descriptor, because
no TEMP container was dened where descriptor values can be saved. The number of data
storage passes can be reduced by dening a TEMP container. This is recommended in particular
for large les, because it reduces the number of required I/O operations signicantly. The
ADAINV parameter SUMMARY can be used to nd out which size is useful for the TEMP
container.
3. The message REMOVED shows that a temporary SORT container created by ADAINV was
deleted. You can also use a persistent SORT container, which is not created and deleted by
ADAINV (see ADAFRM for further details).
Example 7
The unique status is to be established for the descriptor NA in le 10 of database 1. If there is more
than one ISN per descriptor value, the conicting ISNs are written to the error log and the unique
status is removed.
http://slidepdf.com/reader/full/adabas-631-utils 200/431
7/18/2019 adabas 6.3.1 utils
Example 8
Example 9
adainv: db=33
adainv: summary=112
adainv: fields
adainv: ab
adainv: ae
adainv: s1=ap(1,1),aq(1,1),ar(1,1)
adainv: s2=ac(1,3),ad(1,8),ae(1,9)
adainv: s3=ao(2,3)
Descriptor summary:
===================
http://slidepdf.com/reader/full/adabas-631-utils 201/431
7/18/2019 adabas 6.3.1 utils
194
http://slidepdf.com/reader/full/adabas-631-utils 202/431
7/18/2019 adabas 6.3.1 utils
■ Functional
Overview ....................................................................................................................... 196
■ ProcedureFlow ............................................................................................................................. 197
■ Checkpoints ................................................................................................................................. 197
■
Control Parameters ........................................................................................................................ 198
195
http://slidepdf.com/reader/full/adabas-631-utils 203/431
7/18/2019 adabas 6.3.1 utils
Functional Overview
The ADAMON utility is used to monitor an Adabas session with the aim of collecting performance
data. The type of information collected is determined by the setting of the DISPLAY parameter;
the information is usually displayed on a "per second" basis. The information collected can be
presented as a set of numbers or as a basic graphical output. An ADAMON session is terminated
by typing CTRL/C, or when the value specied for the LOOP parameter has been reached - then
a statistical summary of the monitored session is displayed.
http://slidepdf.com/reader/full/adabas-631-utils 204/431
7/18/2019 adabas 6.3.1 utils
Procedure Flow
Checkpoints
http://slidepdf.com/reader/full/adabas-631-utils 205/431
7/18/2019 adabas 6.3.1 utils
Control Parameters
D [NO]DATETIME
M DBID = number
D DISPLAY = keyword
D [NO]GRAPHICAL
D INTERVAL = number
D LOOPS = number
DATETIME
[NO]DATETIME
If this parameter is set to DATETIME, each monitoring line with non-graphical output will be
preceded by the current date and time. The default is NODATETIME.
DBID
DBID = number
This parameter selects the database to be used. The database must be active for all functions with
the exception of DISPLAY = BACKUP.
DISPLAY
DISPLAY = keyword
This parameter displays database information in accordance with the keyword specied. The
display is refreshed at intervals specied by the parameter INTERVAL (default of 3 seconds).
Please refer to the DISPLAY examples in the section ADAOPR for explanations of the information
displayed.
http://slidepdf.com/reader/full/adabas-631-utils 206/431
7/18/2019 adabas 6.3.1 utils
Keyword Meaning
ACTIVITY Displays the throughput of a database, for example the number of commands per second.
This keyword is the default if the nucleus is active.
BACKUP Displays a graph which monitors the execution of an ADABCK DUMP or RESTORE
function. The values displayed are normalized to full blocksizes, which can be dierent
from the real backup/restore space because of 'used size compression'. The output is always
graphically oriented. This keyword can also be used if the nucleus is not active. This
keyword is the default if the nucleus is not active.
HIGH_WATER Displays some important highwater values. The output is always graphically oriented.
The bold line gives the current value in percent, the dashed line shows the highwater
value. If there is only a bold line, the current and the high water values are identical. The
'Write Limit' line shows the number of modied blocks in percent until the ush limit is
reached - at 100%, usually a buer ush will be started. The number given within the line
shows the modied space in bytes. The 'WP1 Flush' line shows the number of modied
WORK part 1 blocks from the most recent buer ush record- if the 100% point is reached,
a buer ush will be started. The 'Hit rate' lines show the overall hit rate (dashed line)
and
and the current
'DATA' rate
lines thatthe
show occurred during used
ratio between the measured
and totalinterval (bold
allocated line). The
container 'ASSO'
space. The
'PLOG' line shows the ratio between the used and allocated space for the protection log.
The numbers in these data set lines are either given in KB, MB or GB units. Note that the
PLOG on le system always shows 100%
INDEX Displays some counters and exceptions that occurred during index update (for internal
reasons).
IO Displays the number of physical I/Os of the specic Adabas container les, per second.
For each container type (ASSO, DATA) only the rst 10 extents can be displayed. I/Os to
upper extents are collected in ASSOx or DATAx.
Furthermore, if an exceptional
ation is displayed situation
on the screen. is detected during
In the non-graphical modecollection of the data,
it is displayed additional
in the inform-
nal column, in
the graphical mode, the status is shown in the base line. The following status information can be
detected:
BF_ACTIVE
A buer ush is in progress.
SPACE_WAIT
Threads waiting for work pool space on complex commands.
ET_SYNC
The nucleus is in ET_SYNC mode, which means no new transactions will be started.
HYX
The nucleus is executing a hyperexit.
UEX
The nucleus is executing a user exit.
LARGE_DWP
The internal work pool is so large that it extends into the buer pool.
http://slidepdf.com/reader/full/adabas-631-utils 207/431
7/18/2019 adabas 6.3.1 utils
SHUTDOWN-P
Nucleus shutdown in progress.
SHUTDOWN-C
Nucleus shutdown completed.
CRASHED
Nucleus abnormally terminated.
If an AUTORESTART is executing, ADAMON can monitor and display the phase number (1, 2,
3 or 4) and the number of processed blocks. Usually, phase 3 takes the most time, and the percentage
of processed blocks is displayed. This is done independently of the selected function. When the
AUTORESTART completes, it PT_RETs to the function requested.
GRAPHICAL
[NO]GRAPHICAL
Setting this option to GRAPHICAL switches the output to the graphical format. For the display
functions BACKUP and HIGH_WATER, only the graphical format is supported. The default is
NOGRAPHICAL.
INTERVAL
INTERVAL = number
LOOPS
LOOPS = number
By default, ADAMON loops continuously. Data collection can be terminated with CTRL/C.
http://slidepdf.com/reader/full/adabas-631-utils 208/431
7/18/2019 adabas 6.3.1 utils
Examples
Example 1:
adamon dbid=1
Display the activity of database 1.
Example 2:
adamon dbid=2
adamon display=high_water
Example 3:
adamon dbid=3
adamon display=io graphical
Example 4:
adamon dbid=4
adamon interval=10
Display the activity of database 4, and refresh the content of the screen every 10 seconds.
http://slidepdf.com/reader/full/adabas-631-utils 209/431
7/18/2019 adabas 6.3.1 utils
202
http://slidepdf.com/reader/full/adabas-631-utils 210/431
7/18/2019 adabas 6.3.1 utils
■ Functional
Overview ....................................................................................................................... 204
■ ProcedureFlow ............................................................................................................................. 205
■ Checkpoints ................................................................................................................................. 208
■
Control Parameters ........................................................................................................................ 209
■ Restart Considerations ................................................................................................................... 215
■ SORT Data Set Placement .............................................................................................................. 215
■ TEMP Data Set Placement .............................................................................................................. 215
■ Examples ..................................................................................................................................... 216
203
http://slidepdf.com/reader/full/adabas-631-utils 211/431
7/18/2019 adabas 6.3.1 utils
Functional Overview
The mass update utility ADAMUP adds records to, or deletes records from a le in a database. It
does not require the Adabas nucleus to be active.
The output les produced by the compression utility ADACMP or the unload utility ADAULD
may be used as input for a mass add.
Note: The ADAMUP ADD function can process MUPDTA/MUPDVT les created with
earlier Adabas versions, but not MUPDTA/MUPDVTles created with later Adabas versions.
Input les produced by ADACMP or ADAULD with the SINGLE_FILE option or from a previous
run of ADAMUP using the DELETE function with the LOG option can also be used.
Input les produced without descriptor value tables (SHORT option in ADAULD or LOG=SHORT
option in ADAMUP) can be processed if the database le to be processed does not contain any
descriptors.
The input for the DELETE function is provided in an input le. Each record contains one or more
ISNs or ISN ranges.
Records may be both added to and deleted from a database le during a single run of ADAMUP.
If the utility writes records to the error le, it will exit with a non-zero status.
http://slidepdf.com/reader/full/adabas-631-utils 212/431
7/18/2019 adabas 6.3.1 utils
Procedure Flow
http://slidepdf.com/reader/full/adabas-631-utils 213/431
7/18/2019 adabas 6.3.1 utils
The sequential les MUPDTA, MUPDVT, MUPTMP, MUPLOB and MUPERR can have multiple
extents. For detailed information about sequential les with multiple extents, see Administration ,
Using Utilities.
Variable/ Medium
Logical Name
Note: (*) A named pipe can be used for this sequential le (not on OpenVMS, see Adminis-
tration , Using Utilities for details).
In cases without an active nucleus and no pending AUTORESTART, the WORK may be used as
TEMP by setting the environment variable/logical name TEMP1 to the same value as WORK1.
http://slidepdf.com/reader/full/adabas-631-utils 214/431
7/18/2019 adabas 6.3.1 utils
The sequential les MUPTMP, MUPLBI, MUPLOG and MUPERR can have multiple extents. For
detailed information about sequential les with multiple extents, see Administration , Using Utilities.
http://slidepdf.com/reader/full/adabas-631-utils 215/431
7/18/2019 adabas 6.3.1 utils
Note: (*) A named pipe can be used for this sequential le (not on OpenVMS, see Adminis-
tration , Using Utilities for details).
Checkpoints
The following table shows the nucleus requirements for each function and the checkpoints written:
Function Nucleus must be active Nucleus must NOT be active Nucleus is NOT required Checkpoint written
FDT X -
UPDATE X(* see note 1) X(* see note 2) X(* see note 3) SYNP
SUMMARY X -
Notes:
http://slidepdf.com/reader/full/adabas-631-utils 216/431
7/18/2019 adabas 6.3.1 utils
Control Parameters
M DBID = number
FDT
SUMMARY
DBID
DBID = number
FDT
FDT
This parameter displays the Field Denition Table (FDT) of the selected le in the database. If re-
cords are to be added to a le, the FDT of the sequential input le containing these records can
also be displayed. This parameter may also be used in an ADD/DELETE specication.
Depending on the context in which the FDT parameter is used, the Field Denition Table contained
in the sequential input le MUPDTA and/or the Field Denition Table contained in the selected
database le is displayed.
SUMMARY
SUMMARY
This parameter displays the Descriptor Space Summary (DSS) on the sequential input le that
contains the compressed records. This display is identical to the one at the end of the ADACMP,
ADAULD or ADAMUP run which generated this input le, and can be used to estimate the space
required in the index.
Because the information has to be obtained from the last block of the input le on magnetic tape,
a mechanical fast wind is required and some delay should be expected.
http://slidepdf.com/reader/full/adabas-631-utils 217/431
7/18/2019 adabas 6.3.1 utils
Note: If the default LWP is large enough to do a memory-resident sort, SORT sizes are not
displayed.
UPDATE
This function species the le to which records are to be added/deleted. Since ADAMUP requires
exclusive control of the le, it cannot be used for an Adabas system le while the nucleus is active.
You are not allowed to specify a LOB le.
ADD
ADD
[,DE_MATCH = keyword]
[,FDT]
[,[NO]NEW_FDT]
[,NUMREC = number]
[,SKIPREC = number]
[,UQ_CONFLICT = keyword]
[,RI_CONFLICT = keyword]
[,[NO]USERISN]
This parameter indicates that records are to be added to the le specied by the UPDATE para-
meter.
The input for mass add is produced by the compression utility ADACMP, the unload utility
ADAULD or by a previous run of the mass update utility ADAMUP using the DELETE function
with the LOG option set.
ADAMUP compares the FDT in the sequential input le that contains the compressed records
with the FDT of the database le specied. The FDTs must have identical layouts and must use
the same eld names, formats, lengths and options.
http://slidepdf.com/reader/full/adabas-631-utils 218/431
7/18/2019 adabas 6.3.1 utils
Descriptors in the database le can be a subset of the descriptors dened in the FDT in the sequential
input le, but the input le must contain descriptor value table (DVT) entries for all descriptors
dened in the database le. Therefore, input les produced without descriptor value tables (SHORT
option) can only be processed if there are no descriptors currently dened in the database le to
be updated.
If the input for mass update contains LOB data, the Adabas le must have an assigned LOB le.
DE_MATCH = keyword
This parameter is used to indicate which action is to be taken if a descriptor provided with the
input data is not a descriptor in the actual FDT of the le. If keyword = IDENTICAL, ADAMUP
terminates processing and returns an error message. If keyword = SUBSET, ADAMUP ignores a
descriptor which is in the input le, but which has been removed from the database le.
[NO]NEW_FDT
If NEW_FDT is specied, the FDT of the le is replaced by the FDT of the MUPDTA le. NEW_FDT
can only be specied if the le is empty when ADAMUP is started.
NEW_FDT must be specied if the FDT of the le in the database and the FDT of the MUPDTA
le are dierent - a mass update is not possible if the FDTs are dierent and the le is not empty.
NUMREC = number
This parameter species the number of records to be added. If NUMREC is specied, ADAMUP
terminates after adding the predened number of records, unless an end-of-le condition on the
input le causes ADAMUP processing to end. If NUMREC is omitted and SKIPREC is not specied,
all records in the input le are added.
SKIPREC = number
This parameter species the number of records in the input le to be skipped before starting to
add records.
UQ_CONFLICT = keyword
This parameter is used to indicate which action is to be taken if duplicate values are found for a
unique descriptor. 'keyword` may take the values ABORT or RESET. If ABORT is specied,
ADAMUP terminates execution and returns an error status if duplicate UQ descriptor values are
found. If RESET is specied, conicting ISNs are written to the error log, the UQ status of the
descriptors in question is removed and processing continues.
http://slidepdf.com/reader/full/adabas-631-utils 219/431
7/18/2019 adabas 6.3.1 utils
RI_CONFLICT
This parameter is used to indicate which action is to be taken if referential integrity is violated.
'keyword` may take the values ABORT or RESET. If ABORT is specied, ADAMUP terminates
execution and returns an error status. The index is marked as not accessible. If RESET is specied,
the violated constraint is removed. In both cases the violating ISNs are stored in the error log.
The default is RI_CONFLICT=ABORT.
[NO]USERISN
This option indicates whether the ISN to be assigned to each record is to be taken from the input
le or not.
This option should be set to USERISN if the user wants to control ISN assignment for each record
added to the database le. Each ISN provided must be:
■
a four-byte binary number immediately preceding each data record;
■ within the current limit (MAXISN) for the le - the le's Address Converter is not automatically
extended;
■ unique within the specied le.
Note that problems could arise if this option is set to USERISN for an input le created by an unload
that is based on a descriptor which is a multiple-value eld. This is because the same record may
have been unloaded more than once. Please refer to the ADAULD utility, SORTSEQ parameter
for more information.
If this option is set to NOUSERISN, the ISN for each record is assigned by ADAMUP. However,
the ISN of a DVT record that has been previously re-vectored by a hyperexit will not be changed
by ADAMUP.
DELETE
DELETE
[,DATA_FORMAT
[,FDT] = keyword]
[,ISN_NOT_PRESENT = keyword]
[,LOG = keyword | ,NOLOG]
This parameter indicates that records are to be deleted from the le specied by the UPDATE
parameter. The ISNs of the records to be deleted are given in an input le.
http://slidepdf.com/reader/full/adabas-631-utils 220/431
7/18/2019 adabas 6.3.1 utils
DATA_FORMAT = keyword
This parameter denes the data type of the records in the input le containing the ISNs to be de-
leted. Each record contains one or more ISNs or ISN ranges.
In accordance with the formats supported, `keyword' may take the following values:
Keyword Meaning
BINARY A single ISN is contained in a 4 byte binary value, an ISN range is contained in two consecutive
binary values, with the high-order bit set in the second value.
ADAMUP validates all input records in a rst step. ADAMUP displays the line number and the
oset for each error that is detected. If an error is detected, ADAMUP terminates execution once
the input le has been completely parsed.
ISN_NOT_PRESENT = keyword
This parameter indicates the action to be taken when an ISN given in the input le of records to
be deleted is:
Keyword Meaning
ABORT ADAMUP aborts execution and returns an error message if a conicting ISN is detected.
IGNORE ADAMUP writes the conicting ISNs to the error log and continues processing.
LOG = keyword
http://slidepdf.com/reader/full/adabas-631-utils 221/431
7/18/2019 adabas 6.3.1 utils
NOLOG
LOG=keyword indicates that the deleted records are logged in a sequential le. The records are
written in compressed format and are identical to those produced by the compression utility
ADACMP and the unload utility ADAULD. Because each data record is preceded by its ISN, these
ISNs can be
described used as user ISNs when reloading or mass-adding this le (see the USERISN option
above).
Keyword Meaning
FULL The descriptor values which are required to build the index, are included in the output le.
SHORT The descriptor values which are required to build the index, are omitted from the output le.
ADAMUP writes both the compressed data records and the descriptor values generated to a single
le.
[NO]FORMAT
This option may be used to format blocks at the end of the le's Normal Index (NI) and Upper
Index (UI) extents if the new index (after the modications have been made) requires less space
than the old index did. This may be the result of deletions within the index, recovery of lost index
blocks or re-establishing the padding factor.
Because these blocks are returned to the le's unused blocks, there are no side-eects if the data
stored in these blocks is not deleted. If this option is set to FORMAT, ADAMUP overwrites these
blocks with binary zeros.
LWP = number[K]
This parameter species the size of the Work Pool to be used for the sort during ADAMUP execu-
tion.
http://slidepdf.com/reader/full/adabas-631-utils 222/431
7/18/2019 adabas 6.3.1 utils
Restart Considerations
ADAMUP has no restart capability. An abnormally terminated ADAMUP must be rerun from the
beginning.
If the Data Storage space becomes exhausted, ADAMUP will not abort, but will attempt to build
the index for the records that have already been loaded; this means that the le is consistent, and
the remaining records can then be loaded with the SKIPREC option after additional Data Storage
space has been allocated.
It is recommended that the SORT data set does not reside on the same volume as the Associator
and the input le that contains the Descriptor Value Tables.
The SORT data set may be omitted when adding only small amounts of data. ADAMUP then
performs an in-core sort.
Use the SUMMARY function to get information about the required SORT and LWP sizes.
It is recommended that the TEMP data set does not reside on the same volume as the input le
that contains the Descriptor Value Tables and the SORT. Although the size of TEMP is closely related
to the performance when loading the Normal/Main Index, successful execution does not depend
on a given size or the presence of a TEMP.
http://slidepdf.com/reader/full/adabas-631-utils 223/431
7/18/2019 adabas 6.3.1 utils
Examples
Example 1:
adamup: dbid=1
adamup: update=10
adamup: add, userisn
File 10 of database 1 is updated by adding new records. The ISN given with each input record is
used.
Example 2:
adamup: dbid=1
adamup: update=10
adamup: delete
The records identied by the ISNs provided on the input le are to be deleted from le 10 of
database 1. The ISNs to be deleted are in binary format.
Example 3:
adamup: dbid=1
adamup: update=10
adamup: add, skiprec=1000
adamup: delete, data_format=decimal, log=full
New records are to be added while old ones are deleted from le 10 of database 1. The rst thousand
records found on the input le are not added. The ISN for each record added is assigned by
ADAMUP. The ISNs of the records to be deleted are supplied in decimal format on the input le.
All records which have been deleted are logged on an output le. The values required to re-create
the inverted list when reloading are included in the log.
http://slidepdf.com/reader/full/adabas-631-utils 224/431
7/18/2019 adabas 6.3.1 utils
Parameters)
■ FunctionalOverview ....................................................................................................................... 218
■ Procedure Flow ............................................................................................................................. 220
■ Checkpoints ................................................................................................................................. 222
■ Control Parameters ........................................................................................................................ 222
■ Summary of ADANUC Parameters .................................................................................................... 241
217
http://slidepdf.com/reader/full/adabas-631-utils 225/431
7/18/2019 adabas 6.3.1 utils
This chapter describes the utility "ADANUC". ADANUC is the database nucleus task.
Functional Overview
The nucleus parameters are used to dene the Adabas nucleus runtime environment.
Notes
1. If ADANUC terminates with a stop error during nucleus startup, e.g. STP055 or STP997, the
reason is probably that there are not enough operating system resources (for example memory)
available in order to start the nucleus with the specied parameters. You can prevent the stop
error from occurring by reducing the values of some nucleus parameters (for example NT or
LBP).
2. At the start of the rst nucleus session after a database has been created or restored, the Adabas
nucleus initializes all of the blocks of the WORK container. For a large WORK container this
may take a few minutes. The database will only be available after the initialization of the WORK
container has nished.
3. The default values for the nucleus parameters can be used if there are not more than 20 users
who perform Adabas calls with relatively small Adabas buers. The following hints describe
conditions under which it may be necessary to use other nucleus parameter values:
■ If you temporarily have bad response times for Adabas commands (during an Adabas buer
ush), or if you get I/O errors during asynchronous I/Os even though your hardware is OK,
consider setting BFIO_PARALLEL_LIMIT.
■ If Adabas commands with large adabas buers are performed, e.g. for LOB processing, con-
sider increasing the value for LAB and LBP.
■ If there are multi-threaded applications performing Adabas calls, consider increasing the
NCL parameter.
■ If the number of parallel Adabas sessions is greater than 20, increase the NU parameter.
http://slidepdf.com/reader/full/adabas-631-utils 226/431
7/18/2019 adabas 6.3.1 utils
■ If it is important that the autorestart time after a nucleus crash is short, set WRITE_LIMIT to
a small positive value, especially if you are using a large buer pool.
4. You can run a database in read-only mode by either removing the write permissions from the
Adabas containers or by specifying OPTIONS=READ_ONLY. If you run the database in read-
only mode, the temporary working space on disk is only created if you specify its location ex-
plicitly (environment variables TEMPLOCn or entries TEMPORARY_LOCATION in the DBnnn.INI le).
For further information, see Administration , Temporary Working Space.
5. If the previous Adabas session was not terminated normally with SHUTDOWN or CANCEL,
Adabas performs an Autorestart: All transactions that were active when the nucleus crashed,
are rolled back, and all missing database updates are written to ASSO and DATA. For this
purpose, all update operations have been logged on the WORK container. Additionally, all
update operations are logged in the NUCPLG le, which is required to recover the current state
of the database, if one or more of the database containers has been corrupted, for example, be-
cause of a disk failure. In case of a nucleus crash, it is necessary that both logs contain the same
information, otherwise the database could contain additional transactions, or transactions could
be lost if you perform a restore/recover later. In order to check this, the PLOG le must still be
available with the same name when an autorestart is performed. If you have renamed the PLOG
le, or moved it to another location, you get the following warning:
%ADANUC-W-PLNOF, Last plog not found, so consistency check is not possible. New ↩
backup required.
If you get this warning, your database is still consistent, but if you perform a restore/recover
later, it may be that your database then becomes inconsistent. If you create a new backup to be
used as a base for restore/recover, the consistency of the restore/recover is guaranteed again.
6. You can dene the nucleus parameters in the Adabas INI les via the DBA Workbench (not on
OpenVMS). However, these parameters are not used when you execute ADANUC directly. If
you want to start the nucleus with the nucleus parameters that are dened in the Adabas INI
les, without using the DBA Workbench, you can use the Adabas Extended Operation command
adastart (see Adabas Extended Operations , Administration Commands). On Windows platforms,
there is also the utility ADABAS for starting ADANUC with the nucleus parameters in the
Adabas INI les.
7. On UNIX platforms, the IPC resources allocated by the Adabas nucleus are not removed if the
nucleus is not shut down normally with ADAOPR SHUTDOWN or ADAOPR CANCEL. The
nucleus can only be restarted after these resources have been removed, and for this reason the
nucleus executes the command showipc -k <dbid>. Important: if Adabas was not installed as
recommended by user "sag", group "sag", it is necessary to set the environment variable SIPUSER
and/or SIPGROUP. For further information, see Administration , showipc. On Windows platforms,
the operating system automatically removes IPC resources that are no longer used.
http://slidepdf.com/reader/full/adabas-631-utils 227/431
7/18/2019 adabas 6.3.1 utils
Procedure Flow
The sequential les NUCPLG and NUCCLG can have multiple extents. For detailed information
about sequential les with multiple extents, see Administration , Using Utilities.
http://slidepdf.com/reader/full/adabas-631-utils 228/431
7/18/2019 adabas 6.3.1 utils
Notes:
1. In the environment variable/logical name ADA_CSA_DUMP, the directory in which the Adabas
CSA dump is to be created must be specied.
2. The default directory for the Adabas CSA dump le is the database directory. For the layout
of the le names for Adabas CSA dumps, see ADAOPR, parameter CSA.
3. For further information about the Adabas CSA dumps, see also the ADAOPR parameters
ABORT and RESPONSE_CHECK.
4. In the environment variable/logical name SMP_DUMPFILE, the name of the SMP_DUMPFILE
itself (not a directory) must be specied. An existing le is overwritten.
5. If the SMP_DUMPFILE is not specied, the SMP dump is written into the Adabas CSA dump
directory with the le name SAGSMP.xxx.hh:mm:ss (UNIX), SAGSMP.xxx.hh-mm-ss(Windows)
and SAGSMP-xxx-hh-mm-ss (OpenVMS) where xxx is the database ID and hh:mm:ss/hh-mm-
ss is the nucleus start-time.
http://slidepdf.com/reader/full/adabas-631-utils 229/431
7/18/2019 adabas 6.3.1 utils
Checkpoints
Control Parameters
D AR_CONFLICT = keyword
BFIO_PARALLEL_LIMIT = number
D [NO]BI
D CLOGBMAX = number [K | M]
D CLOGLAYOUT = [5 | 6]
M DBID = number
D LAB = number [K | M]
D LABX = number [K | M]
D LBP = number [K | M]
D LPXA = number
D LWP = number [K | M]
D MGC = number
D NCL = number
D NISNHQ = number
http://slidepdf.com/reader/full/adabas-631-utils 230/431
7/18/2019 adabas 6.3.1 utils
D NT = number
D NU = number
D OPTIONS = (keyword[,keyword]...)
D [NO]PLOG
D READ_PARALLEL_LIMITS = (records,blocks,total)
D TNAA = number
D TNAE = number
D TNAX = number
D TT = number
D TZ = ['timezone']
USEREXITS = (number[,number]...)
D WRITE_LIMIT = number
ADABAS_ACCESS
Please refer to Administration , Database Security Overview, Using the UNIX Group Concept for further
information about using the ADABAS_ACCESS parameter.
Note: This parameter only applies to local Adabas calls in UNIX environments.
http://slidepdf.com/reader/full/adabas-631-utils 231/431
7/18/2019 adabas 6.3.1 utils
AR_CONFLICT
AR_CONFLICT = keyword
This parameter species the action to be taken if a restart detects that the last system crash was
during a buer ush. The following keywords can be used:
Keyword Meaning
It is recommended to keep the setting AR_CONFLICT=ABORT. Only if the nucleus does not come
up due to an interrupted buer ush, then temporarily AR_CONFLICT=CONTINUE should be
set.
Note: You should be aware of the possibility of inconsistencies in the case of a restart with
BFIO_PARALLEL_LIMIT
BFIO_PARALLEL_LIMIT = number
This parameter is used to limit the number of parallel I/O requests by a buer ush and to allow
earlier processing of concurrent I/Os from other threads. A large buer ush, for example, can
cause thebe
I/Os) can I/Oenqueued
queue to forbe very busy,
a long time,and other down
slowing I/Os (such as buer
command pool readand
throughput I/Os and WORK
possibly causing
applications to stall if a buer ush is active.
If BFIO_PARALLEL_LIMIT is specied, the buer ush sets up the specied number of I/Os and
waits until these have been processed before issuing the next packet. The maximum value for
´number´ is dened by the operating system, for example by the UNIX kernel parameter
AIO_LISTIO_MAX. Specifying a value of 0 is equivalent to specifying the maximum value allowed.
The default value is 50.
Note: If the value of BFIO_PARALLEL_LIMIT is too high (or equal to 0), this can result in
an I/O the
is that error duringavailable
memory asynchronous
withinIO
the(utility error
operating message:
system ADRERR). The
for asynchronous reason
I/O for this
is exhausted.
You can imagine that the required memory is at least the size of the blocks to be written to
the database plus some additional space. The maximum value for BFIO_PARALLEL_LIMIT
for which you can be sure that this ADRERR error will not occur, depends on the operating
system conguration and on the other processes that are active on the same machine. 50
seems to be a useful value for BFIO_PARALLEL_LIMIT; if the ADRERR error occurs nev-
ertheless, you should check your operating system conguration.
http://slidepdf.com/reader/full/adabas-631-utils 232/431
7/18/2019 adabas 6.3.1 utils
Examples
adanuc: bfio_parallel_limit = 20
adanuc: bfio_parallel_limit = 0
[NO]BI
[NO]BI
This option is used to specify whether before images are written to the PLOG (BI) or not (NOBI).
The before images on the PLOG are used during a regenerate in order to verify the data consistency
(for example, whether the appropriate PLOG is being used). If NOBI is set, the PLOG is smaller,
but the consistency verications cannot be performed.
Note that if you specify NOBI, this will reduce the amount of consistency checking possible when
using the ADAREC REGENERATE function. See ADAREC for more details.
CLOGBMAX
CLOGBMAX = number[K | M]
This parameter species the maximum Adabas buer length that is logged in the command log.
If an Adabas buer is larger than the value specied, the buer is truncated in the command log.
0 means that the complete buers are always logged.
Example
adanuc: clogbmax = 4k
The logging of Adabas buers is limited to the rst 4 kilobytes of each buer.
http://slidepdf.com/reader/full/adabas-631-utils 233/431
7/18/2019 adabas 6.3.1 utils
CLOGLAYOUT
CLOGLAYOUT = [5|6]
If you specify CLOGLAYOUT=5, the command log has the same layout as for Adabas Version 5
when command logging is enabled. Since this layout does not support the ACBX interface, only
the subset of information that is also available in the old ACB interface is logged for ACBX calls.
The command log can be evaluated with the ADACLP utility that already existed in old versions
of Adabas.
If you specify CLOGLAYOUT=6, the command log is generated in the new layout that is supported
by Adabas Version 6. For evaluating the command log, an example program prilogc is provided
– for details see Appendix B.
DBID
DBID = number
This mandatory parameter selects the database to be used. `number' is in the range from 1 to 255.
Example:
adanuc: dbid = 2
Database 2 is used.
LAB
LAB = number[K | M]
This parameter species the size of the attached buer area to be used during the Adabas session.
The attached buer area is used for allocating the user buers during command execution.
Adabas rounds up the given value to the next multiple of 32 kilobytes to allocate the attached
buer area.
The high water mark for this parameter can be displayed using the DISPLAY parameter in
ADAOPR.
The minimum value is 1 megabyte, the default value is 1 megabyte, however, if the value specied
is less than the value of the NCL parameter in kilobytes, the value for LAB is automatically increased
to that value.
http://slidepdf.com/reader/full/adabas-631-utils 234/431
7/18/2019 adabas 6.3.1 utils
Notes:
1. The attached buers must be large enough to contain, for each local client thread, the maximum
total size of user buers for an Adabas call performed by this thread. Additional space may be
required for the administration of the user buers and for waste resulting from the dierent
sizes required for dierent threads.
2. Attached buers > 64 KB are allocated in the separate attached buer extension area (see para-
meter LABX).
LABX
LABX = number[K | M]
This parameter species the size of the attached buer extension area to be used for LOB processing
or for other Adabas calls that use large Adabas buer areas. While the regular attached buers
remain allocated during the whole Adabas session of the users, the attached buer extensions are
allocated before each Adabas call that requires more than 64 KB of attached buer space, and they
are released again at the end of the call.
The attached buer extension area was introduced because storing large buers in the regular
attached buer area requires much more space because of fragmentation.
Adabas rounds up the given value to the next multiple of 32 kilobytes to allocate the attached
buer area.
The high water mark for this parameter can be displayed using the DISPLAY parameter in
ADAOPR.
LBP
LBP = number[K | M]
This parameter species the size in bytes of the Adabas buer pool during the session.
The high water mark for this parameter can be displayed using the DISPLAY parameter in
ADAOPR.
There are the following reasons for using a buer pool in Adabas:
http://slidepdf.com/reader/full/adabas-631-utils 235/431
7/18/2019 adabas 6.3.1 utils
■ If the same database block is accessed more than once, physical I/Os for rereading the block can
be avoided;
■ Commands that update the database can be nished before all of the corresponding database
blocks have been written to the disk.
If the buer pool is too small, you have a larger number of I/Os than you would when performing
the same database operations with a sucient buer pool size. In some cases, it may even occur
that Adabas cannot successfully process an Adabas command, in which case the command will
get a response code 162 (buer pool too small).
In particular, if you process LOBs, it is recommended that you increase the size of the buer pool;
it should be possible to put the LOBs into the buer pool without removing too many other
database blocks. On the other hand, the buer pool should not be too large, since there is no ad-
vantage in having buer pool I/Os replaced by operating system paging I/Os.
You can use the ADAOPR parameter DISPLAY=BP_STATISTICS in order to help you nd the
optimum size for the buer pool.
Example:
adanuc: lbp=16m
LOGGING
This parameter species logging of the buers as dened in the keyword list.
Keyword Meaning
http://slidepdf.com/reader/full/adabas-631-utils 236/431
7/18/2019 adabas 6.3.1 utils
Logging parameters may also be specied while a session is executing by using operator commands
as described in the section on the utility ADAOPR.
Example
adanuc: logging=(cb)
Command logging is performed for the current Adabas session; all of the Adabas control blocks
will be logged.
LPXA
LPXA = number
This parameter species the number of blocks reserved for data protection information on the
Adabas WORK in the XA context if OPTIONS=XA is specied. These blocks are used to save
protection information for transactions which run in the XA context and are in the pending state
(prepared but not yet committed) at nucleus shutdown or for a long time. Each such transaction
uses at least one of these blocks. If there are no free blocks in this area, Adabas will heuristically
commit such transactions.
LWP
LWP = number[K | M]
This
usedparameter species
for the Adabas the size
nucleus of the Adabas work pool, which is a work area in memory to be
session.
The high water mark for this parameter can be displayed using the DISPLAY parameter in
ADAOPR.
http://slidepdf.com/reader/full/adabas-631-utils 237/431
7/18/2019 adabas 6.3.1 utils
Example:
adanuc: lwp=750k
MGC
MGC = number
This parameter species the maximum group-commit count. This denes the maximum limit of
ET command grouping before the PLOG buers are written back to disk. If this limit is reached,
and the nal I/O has been performed, all remaining users will be posted.
The high water mark for this parameter can be displayed using the DISPLAY parameter in
ADAOPR.
The minimum value is 1, the default value is 50 and the maximum value is 500.
Example:
adanuc: mgc=80
NCL
NCL = number
This parameter species the number of client threads locally accessing the database.
The minimum value is 2. The default value is the value for the NU parameter but at least 50. There
is no xed maximum value for this parameter, it is only limited by the IPC resources that are
available for the operating system.
Note that Net-Work Version 7 also uses several threads to access the database; please refer to the
Net-Work documentation for further details.
Note: The value specied for the NCL parameter should not be too high. When Adabas
sessions are terminated correctly with a close command, the associated message queues are
removed, but if the sessions are terminated abnormally without a close command, the
message queues are not removed. A cleanup of the message queues is only performed when
the number of client message queues is equal to the value specied for the NCL parameter
- therefore, it may happen that Adabas attempts to create more message queues than it is
allowed to do by the system, if the value for the NCL parameter is too high, even though
http://slidepdf.com/reader/full/adabas-631-utils 238/431
7/18/2019 adabas 6.3.1 utils
the actual number of active Adabas users is very small. If this happens, the Adabas com-
mands receive a response 255 (see Messages and Codes for further information).
NISNHQ
NISNHQ = number
This parameter species the maximum number of records that can be placed into hold at any time
by a single user.
If a user attempts to place more records in the hold status than permitted, he will receive a non-
zero response code, even though there may still be space in the hold queue.
The high water mark for this parameter can be displayed using the DISPLAY parameter in
ADAOPR.
The minimum value is 0 - where 0 means unlimited, the default value is 0 (unlimited).
Example
adanuc: nisnhq=50
The maximum number of records which can be in the hold status for a single user is 50.
NT
NT = number
This parameter species the number of threads to be established for the Adabas session.
Each Adabas command is assigned to a thread. A thread is released when the command has been
processed.
The high water mark for this parameter can be displayed using the DISPLAY parameter in
ADAOPR.
The minimum value is 1, the maximum value 100 and the default value is 6.
Notes:
1. It is strongly recommended to use an NT parameter value greater than 1, because some internal
commands can only be executed if NT > 1. If NT is 1, some utilities or applications, such as SQL
Gateway, which use these internal commands, may fail.
2. NT = 1 only makes sense in some special situations, for example, if support requests an ADANUC
trace and you want to have the trace of all Adabas commands in one le.
http://slidepdf.com/reader/full/adabas-631-utils 239/431
7/18/2019 adabas 6.3.1 utils
3. Increasing the NT parameter usually implies an overhead, which may reduce the performance.
Therefore, it usually doesn't make sense to use an NT parameter value that is signicantly
higher than the number of hardware threads; if you have a large number of hardware threads,
the performance may even be better if NT is less than the number of hardware threads, because
the Adabas nucleus is not the only program running on the machine and using CPU time.
4. One reason to increase the value of the NT parameter is if there are several complex commands
in parallel that require a long time to complete. If all nucleus threads are blocked by such
commands, it can happen that short running commands cannot be scheduled for a long time,
and as a result the overall performance of Adabas becomes very low.
5. With previous versions of Adabas, it was possible that short running commands could no longer
be scheduled because complex, long-running commands blocked all threads, which resulted
in very poor overall performance. In order to avoid this situation, now only NT/2 threads can
be used to process such long-running commands in parallel. As a consequence of this, it may
be that you can see several free threads even though there are sucient commands in the
command queue waiting to be scheduled.
Example:
adanuc: nt=8
NU
NU = number
This parameter species thenumber of user queue elements to be established for the Adabas session.
A user queue element is assigned to each active Adabas user. A user queue element is assigned
when the user issues an OP command or when the rst Adabas command is issued. A user queue
element is released when the user issues a CL command or when the user queue element is deleted
on a timeout.
The high water mark for this parameter can be displayed using the DISPLAY parameter in
ADAOPR.
http://slidepdf.com/reader/full/adabas-631-utils 240/431
7/18/2019 adabas 6.3.1 utils
Example:
adanuc: nu=100
For single-threaded applications, the number of required communication blocks is not larger than
the number of user queue elements, but for multi-threaded applications you need one communic-
ation block for each thread of an application that performs Adabas calls. Therefore the required
value of the NU parameter may be much higher than the number of Adabas users.
OPTIONS
OPTIONS = (keyword[,keyword]...)
This parameter is used to dene the mode(s) in which the nucleus is started.
Keyword Meaning
AUTO_EXPAND If AUTO_EXPAND is selected, the database will increase the existing container
extents or create a new container extent if there is no free space available for
increasing an existing Adabas le or for adding a new Adabas le. See the section
Container Files in the Administration section for further information.
AUTORESTART_ONLY The AUTORESTART_ONLY keyword shuts down the nucleus immediately
after its startup sequence has completed. If an autorestart is pending, the
autorestart will be performed. No user commands or utility calls will be accepted
by the nucleus.
FAULT_TOLERANT_AR When FAULT_TOLERANT_AR is selected, the nucleus behaviour in the event
of an Adabas error during autorestart can be controlled. If an error occurs for a
given le, a detailed entry is made in the nucleus log, but the autorestart
continues. When the autorestart completes, the DBA can restore and regenerate
the le by using ADABCK RESTORE and ADAREC REGENERATE for the
aected le. If however the error occurred for the index of a le, it is sucient
to rebuild the le's index by using the REINVERT function of ADAINV. If
FAULT_TOLERANT_AR is not selected, Adabas aborts an autorestart if an error
is detected, and this can cause the database to be in an inconsistent state.
LOCAL_UTILITIES If LOCAL_UTILITIES is selected, ADANUC rejects all remote utility calls, i.e.
the Adabas utilities cannot be run from a remote node across a network. This
setting is recommended if security is important in your operating environment.
http://slidepdf.com/reader/full/adabas-631-utils 241/431
7/18/2019 adabas 6.3.1 utils
Keyword Meaning
UTILITIES_ONLY If UTILITIES_ONLY is selected, all calls other than for utilities will be rejected,
giving the DBA exclusive control over all of the les in the database. Note,
however, that this restriction only applies to new users; users who were already
active when OPTIONS=UTILITIES_ONLY was specied can continue processing
normally. If you want exclusive utility control over les or the entire database,
use the LOCK function of ADAOPR instead.
Example:
All non-utility calls are rejected and the DBA has exclusive control over all database les.
http://slidepdf.com/reader/full/adabas-631-utils 242/431
7/18/2019 adabas 6.3.1 utils
[NO]PLOG
[NO]PLOG
The database cannot be regenerated if the disk is physically damaged and if there is no protection
log. In this case, the database has to be restored using the last database dump. All updates made
since this last dump was taken are then lost.
READ_PARALLEL_LIMITS
READ_PARALLEL_LIMITS = (records,blocks,total)
For sequential commands, Adabas tries to increase the performance by reading the database blocks
■ Checking which blocks are required for the next records requires a certain amount of CPU time,
and this is superuous if all blocks are already in the buer pool.
■ If you don’t read the next records of the command sequence, the overhead for reading blocks
for this command sequence is superuous.
■ If I/Os for too many blocks have been initiated, an I/O required for another command performed
in parallel may be delayed signicantly.
The READ_PARALLEL_LIMITS parameter lets you control the read-ahead behaviour. You can
specify 3 numbers with the following meanings:
records
The maximum number of records to be processed next in a command sequence, that are checked
for blocks that are not yet in the buer pool. The maximum value that can be specied is 65,535.
blocks
The maximum number of blocks read in advance for one command sequence. The number
specied for blocks must be <= the number specied for records, the maximum value is oper-
ating-system dependent.
total
The maximum total number of blocks read in advance at the same time for the whole database.
The number specied for total must be >= the number specied for blocks, the maximum value
is operating-system dependent.
http://slidepdf.com/reader/full/adabas-631-utils 243/431
7/18/2019 adabas 6.3.1 utils
Note: If the value of the number specied for total is too high, this can result in an I/O error
during asynchronous IO (utility error message: ADRERR). The reason for this is that the
memory available within the operating system for asynchronous I/O is exhausted. You can
imagine that the required memory is at least the size of the blocks to be written to the
database plus some additional space. The maximum value for total for which you can be
sure that this ADRERR error will not occur, depends on the operating system conguration
and on the other processes that are active on the same machine.
Example
When sequential commands are processed, the next up to 100 records of a command sequence are
checked for required blocks that are not yet in buer pool. The search for blocks to be read is
stopped
currentlywhen
read 20
byblocks are found, or
other commands is when the anumber
50. Then offor
read I/O blocks found
these plus
blocks the number of blocks
is initiated.
TNAA
TNAA = number
This parameter species the maximum elapsed time (in seconds) that an access-only user may be
active without issuing an Adabas command. This value can be changed dynamically with the
ADAOPR utility.
The OP command allows you to override this value. See Command Reference , OP command for details.
Note that the gure you specify for this parameter is only approximate. In any particular instance,
the actual amount of time can vary from this value by up to 10 seconds.
The minimum value is 20, the default value is 900 and the maximum value is 2592000.
Example:
adanuc: tnaa=180
http://slidepdf.com/reader/full/adabas-631-utils 244/431
7/18/2019 adabas 6.3.1 utils
TNAE
TNAE = number
This parameter species the maximum elapsed time (in seconds) that an ET logic user may be
active without issuing an Adabas command. This value can be changed dynamically with the
ADAOPR utility.
The OP command allows you to override this value. See Command Reference , OP command for details.
Note that the gure you specify for this parameter is only approximate. In any particular instance,
the actual amount of time can vary from this value by up to 10 seconds.
The minimum value is 20, the default value is 900 and the maximum value is 2592000.
Example:
adanuc: tnae=180
TNAX
TNAX = number
This parameter species the maximum elapsed time (in seconds) that an exclusive update user
who does not use ET logic may be active without issuing an Adabas command. This value can be
changed dynamically with the ADAOPR utility.
The OP command allows you to override this value. See Command Reference , OP command for details.
Note that the gure you specify for this parameter is only approximate. In any particular instance,
the actual amount of time can vary from this value by up to 10 seconds.
The minimum value is 20, the default value is 900 and the maximum value is 2592000.
http://slidepdf.com/reader/full/adabas-631-utils 245/431
7/18/2019 adabas 6.3.1 utils
Example:
adanuc: tnax=180
The non-activity time limit for exclusive update users is 180 seconds.
TT
TT = number
This parameter species the maximum elapsed time (in seconds) permitted for a logical transaction
issued by an ET logic user. This value can be changed dynamically with the ADAOPR utility.
The OP command allows you to override this value. See Command Reference , OP command for details.
The time measurement for a logical transaction starts when the rst command that places a record
in hold status is issued, and terminates when an ET, BT, or CL command is issued. Adabas takes
the following action when this time limit is exceeded:
1. All database updates made during the transaction are backed out;
2. All records held during the transaction are released;
3. All Command IDs for the user are released;
4. Response code 9 is returned on the next call issued by the user.
This time limit does not apply to non-ET logic users. The value specied for TT directly inuences
the required size of the Adabas Work data set.
The high water mark for this parameter can be displayed using the DISPLAY parameter in
ADAOPR.
Note that the gure you specify for this parameter is only approximate. In any particular instance,
the actual amount of time can vary from this value by up to 10 seconds.
The minimum value is 20, the default value is 300 and the maximum value is 2592000.
Example:
adanuc: tt=50
http://slidepdf.com/reader/full/adabas-631-utils 246/431
7/18/2019 adabas 6.3.1 utils
TZ
TZ = ['timezone']
The specied time zone must be a valid time zone name that contained in the time zone database
known as the Olson database ( http://www.twinsun.com/tz/tz-link.htm). If a time zone has been
specied, this time zone is used for time zone conversions of date/time elds with the option TZ,
unless a user has specied his own time zone in the OP command.
The default is none. If no time zone is specied, a time zone conversion can only be done for users
who specied a time zone in the OP command - other users get an Adabas response code 48.
UNBUFFERED
This parameter is relevant only for UNIX platforms, and if database containers or the protection
log are stored in a le system. Usually, write I/Os are buered by the le system. However, if you
specify the O_DSYNC option for the corresponding open call, write I/O operations are performed
unbuered. This may improve the performance, in particular, if specied for WORK and PLOG,
as it is required that the corresponding log information is really on disk at the end of a transaction.
With the parameter UNBUFFERED, the usage of the O_DSYNC operation may be dened.
Note: Usage of this parameter only has impact on the performance of Adabas; which actual
setting of the UNBUFFERED parameter results in the best performance depends on the
operating system and the storage system used - the integrity of the database is guaranteed
for all values of the UNBUFFERED parameter.
Keyword Meaning
DATABASE ASSO and DATA containers in a le system are opened with the option O_DSYNC.
NODATABASE ASSO and DATA containers in a le system are not opened with the option O_DSYNC.
WORK A WORK container in a le system is opened with the option O_DSYNC.
NOWORK A WORK container in a le system is not opened with the option O_DSYNC.
PLOG A protection log in a le system is opened with the option O_DSYNC.
NOPLOG A protection log in a le system is not opened with the option O_DSYNC.
http://slidepdf.com/reader/full/adabas-631-utils 247/431
7/18/2019 adabas 6.3.1 utils
Example:
adanuc: unbuffered=(nowork)
O_DSYNC is not used for ASSO and DATA containers because NODATABASE is the default.
O_DSYNC is not used for WORK container because NOWORK has been specied.
USEREXITS
This parameter, used in conjunction with the user exit facility, species one or more user exits.
The specied user exit(s) must be loadable at execution time.
See Administration , User Exits and Hyperexits for further information about the user exits available.
WRITE_LIMIT
WRITE_LIMIT = number
This parameter species the percentage of modied blocks permitted in the buer pool before an
implicit buer ush is taken.
A number in the range from 0 to 70 may be specied; 0 means that Adabas will dynamically choose
an appropriate value.
Note: If you have a large buer pool, it is useful to specify a small value for WRITE_LIMIT
in order to reduce the time required for an auto restart of the nucleus: during an auto restart,
ADANUC must read the update log in the WORK container and reapply all changes in the
database that had not yet been written to disk. A smaller value for WRITE_LIMIT means
a smaller amount of data not yet written to disk, and therefore less updates to be made
during the auto restart.
http://slidepdf.com/reader/full/adabas-631-utils 248/431
7/18/2019 adabas 6.3.1 utils
Example:
adanuc: write_limit=40
An implicit buer ush is taken when 40% of the blocks in the buer pool have been modied.
http://slidepdf.com/reader/full/adabas-631-utils 249/431
7/18/2019 adabas 6.3.1 utils
Notes:
1. A limit may be given by the operating system, for example via the maximum size of a shared
memory segment.
2. If not specied, Adabas dynamically chooses an appropriate value.
3. If the value of a dynamic parameter is changed using ADAOPR, the new value takes eect
immediately, without the nucleus having to be restarted. In the case of non-dynamic parameters,
the nucleus must rst be stopped and restarted for the new value to take eect.
http://slidepdf.com/reader/full/adabas-631-utils 250/431
7/18/2019 adabas 6.3.1 utils
http://slidepdf.com/reader/full/adabas-631-utils 251/431
7/18/2019 adabas 6.3.1 utils
244
http://slidepdf.com/reader/full/adabas-631-utils 252/431
7/18/2019 adabas 6.3.1 utils
■ Functional
Overview ....................................................................................................................... 246
■ ProcedureFlow ............................................................................................................................. 247
■ Checkpoints ................................................................................................................................. 248
■
Control Parameters ........................................................................................................................ 248
245
http://slidepdf.com/reader/full/adabas-631-utils 253/431
7/18/2019 adabas 6.3.1 utils
Functional Overview
http://slidepdf.com/reader/full/adabas-631-utils 254/431
7/18/2019 adabas 6.3.1 utils
Procedure Flow
http://slidepdf.com/reader/full/adabas-631-utils 255/431
7/18/2019 adabas 6.3.1 utils
Checkpoints
The following table shows the nucleus requirements for each function and the checkpoint written:
Function Nucleus must be active Nucleus must NOT be active Nucleus is NOT required Checkpoint written
FEOF=PLOG SYNC
Control Parameters
ABORT
BFIO_PARALLEL_LIMIT = number
CANCEL
CSA = string
DBID = number
ES_ID = number
D [NO]ET_SYNC
FILE = number
FREE_CLQ = number
ID = number
D [NO]IO_TIME
http://slidepdf.com/reader/full/adabas-631-utils 256/431
7/18/2019 adabas 6.3.1 utils
LOGIN_ID = number
MGC = number
NISNHQ = number
NODE_ID = string
READ_PARALLEL_LIMITS = (records,blocks,total)
RESET = keyword
D [NO]RESPONSE_ABORT
RESPONSE_CHECK = (number[-number][,number[-number]]...)
SET_FILE_STATS = (number[-number][,number[-number]]...)
SHUTDOWN
STOP = (number[-number][,number[-number]]...)
TNAA = number
TNAE = number
TNAX = number
TT = number
USER_ID = string
WRITE_LIMIT = [number]
http://slidepdf.com/reader/full/adabas-631-utils 257/431
7/18/2019 adabas 6.3.1 utils
ABORT
ABORT
This function terminates the Adabas session immediately. All command processing is immediately
stopped. The session is terminated abnormally with a pending AUTORESTART.
ABORT causes the following les to be written to the databases's default directory:
■ The CSA dump le, which contains status information from the adabas nucleus. The name of
the le is ADABAS.xxx.hh:mm:ss (UNIX), ADABAS.xxx.hh-mm-ss (Windows) or ADABAS-
xxx-hh-mm-ss (OpenVMS),where xxx is the database ID and hh:mm:ss (or hh-mm-ss) is the
time at which the le was created. ADAOPR can also display the same information that you
can get for a running nucleus for a CSA dump le if you specify the CSA parameter.
■ The SMP dump le, which contains some diagnostic information. The name of the le is
SAGSMP.xxx.hh:mm:ss (UNIX), SAGSMP.xxx.hh-mm-ss (Windows) or SAGSMP-xxx-hh-mm-
ss where xxx is the database ID and hh:mm:ss (or hh-mm-ss) is the time at which the le was
created.
BFIO_PARALLEL_LIMIT
BFIO_PARALLEL_LIMIT = number
This function sets the number of parallel I/O requests by a buer ush, allowing earlier processing
of concurrent I/Os from other threads. A large buer ush, for example, can cause the I/O queue
to be very busy, and other I/Os (such as buer pool read I/Os and WORK I/Os) can be enqueued
for a long time, slowing down command throughput and possibly causing applications to stall if
a buer ush is active.
If BFIO_PARALLEL_LIMIT is specied, the buer ush sets up the specied number of I/Os and
waits until these have been processed before issuing the next packet. The maximum value for
´number´ is dened by the Adabas system, If a value of 0 is specied, the number of buer ush
I/Os is unlimited.
CANCEL
CANCEL
This function terminates the Adabas session immediately. A BT command is issued for each active
ET user and the session is terminated.
The communication link to the database is cut but the shared memory is still held. In this case,
display functions are still possible with ADAOPR but parameter modication commands are no
longer permitted.
http://slidepdf.com/reader/full/adabas-631-utils 258/431
7/18/2019 adabas 6.3.1 utils
CLEAR_FILE_STATS
This function disables the collection of I/O statistics enabled by SET_FILE_STATS for the specied
le(s).
CSA
CSA = string
`string' is a le specication of a le containing status information from an Adabas nucleus, a so-
called CSA dump le. This le may be created by an ADAOPR ABORT function, by an abnormal
termination of Adabas, or by response check trapping (refer to the RESPONSE_CHECK function
for further information).
UNIX
ADABAS.xxx.hh:mm:ss
ADABAS.xxx.RSPyyy.hh:mm:ss
Windows
ADABAS.xxx.hh-mm-ss
ADABAS.xxx.RSPyyy.hh-mm-ss
OpenVMS
ADABAS-xxx-hh-mm-ss
ADABAS-xxx-RSPyyy.hh-mm-ss
For example, if the database ID is 5, and the le creation was initiated by a trapped response code
113, the le name will start with ADABAS.005.RSP113, and then the time of creating will be ap-
pended, e.g. ADABAS.005.RSP113.12:16:50 (UNIX) or ADABAS.005.RSP113.12-16-50 (Windows)
or ADABAS-005-RSP113.12-16-50 (OpenVMS).
http://slidepdf.com/reader/full/adabas-631-utils 259/431
7/18/2019 adabas 6.3.1 utils
The le will be created in the directory that is pointed to by the environment variable/logical name
ADA_CSA_DUMP. The default is the directory from which the nucleus was started. If a le with
the same name already exists in this directory, it will be overwritten.
DBID
DBID = number
This parameter selects the database to which all subsequent ADAOPR commands apply. Multiple
DBIDs are supported within one session.
Example:
adaopr: dbid=1
adaopr: shutdown
adaopr: dbid=2
adaopr: shutdown
adaopr: dbid=3
adaopr: shutdown
adaopr: quit
DISPLAY
Keyword Meaning
http://slidepdf.com/reader/full/adabas-631-utils 260/431
7/18/2019 adabas 6.3.1 utils
Keyword Meaning
The following examples show the information produced by the various keywords, together with
explanations of the information that is displayed.
Some of the following displays include percentages. The corresponding values are always truncated.
An undened value (divided by 0) is specied with " *%" and an overow with "***%".
Example: DISPLAY=ACTIVITY
adaopr: display=activity
http://slidepdf.com/reader/full/adabas-631-utils 261/431
7/18/2019 adabas 6.3.1 utils
hit rate (in %) = ((logical read I/Os - physical read I/Os) * 100)
/ logical read I/Os
■ the format pool hit rate. This is the relationship between the number of format buer requests
(required FBs) and the required format buers already translated in the format pool (translated
FBs). The format pool hit rate is calculated using the following formula:
■ THROWBACKS shows:
■ the numberof commands waiting forsession context because internal commands were running;
■ the number of commands waiting because ISNs are held by another user;
■ the number of commands waiting for ET synchronization;
■ the number of commands thrown back because of dynamic work pool overow.
EXAMPLE: DISPLAY=BP_STATISTICS
adaopr: display=bp_statistics
http://slidepdf.com/reader/full/adabas-631-utils 262/431
7/18/2019 adabas 6.3.1 utils
■
POOL ALLOCATION shows:
■ the size in bytes and percentage of the buer pool that is currently in use;
■ the size in bytes and percentage of the buer pool high water mark (see also the display for
DISPLAY=HIGH_WATER).
■ RABNs PRESENT shows:
■ the number of ASSO, DATA and WORK RABNs currently in the buer pool.
■ I/O STATISTICS shows:
■ the total number of logical and physical buer pool read I/Os (both numbers are required in
order to calculate the buer pool hit rate);
■ the buer pool hit rate (please refer to the example for DISPLAY=ACTIVITY for the buer
pool hit-rate formula);
■ the total number of physical buer pool write I/Os.
■ BUFFER FLUSHES shows:
■ the total number of buer ushes;
■ the total number of buer ushes that were made in order to get free space;
■ the size in bytes and percentage of the buer pool write limit. If the modied bytes in the
buer pool reach this limit, an automatic buer ush is started. The buer pool write limit
is automatically adjusted if not explicitly set in ADANUC or ADAOPR;
■ the size in bytes and percentage of the currently modied bytes in the buer pool.
Example: DISPLAY=COMMANDS
adaopr: display=commands
A1 892 L2 553 OP 25
BT 736 L3 1,124 RC 89
C1 40 L4 569 RE 0
C3 0 L5 420 RI 0
C5 10 L6 436 S1 1,511
http://slidepdf.com/reader/full/adabas-631-utils 263/431
7/18/2019 adabas 6.3.1 utils
CL 32 L9 456 S2 81
E1 1,006 LF 20 S4 12
ET 72 MC 0 S8 230
HI 0 N1 877 S9 50
L1 643 N2 0
This command displays the total numbers of Adabas commands issued in the current session. For
MC commands, the value displayed is the number of MC calls plus the number of single Adabas
commands contained in the MC calls.
A read command that is issued while the multifetch option is set is counted as a single command.
Example: DISPLAY=CQ
adaopr: display=cq
http://slidepdf.com/reader/full/adabas-631-utils 264/431
7/18/2019 adabas 6.3.1 utils
The nal line of the display shows how many command queue entries were selected according
to the currently active selection criteria, and how many entries are used in total in the command
queue.
Status Meaning
Note: The display may show command codes such as "U0", which are only used internally
by Adabas (for example, during a utility run).
The "RUNNING" and "COMPLETED" values may dier even if the user has not specied
an explicit selection criterion.
Example: DISPLAY=DYNAMIC_PARAMETERS
adaopr: display=dynamic_parameters
http://slidepdf.com/reader/full/adabas-631-utils 265/431
7/18/2019 adabas 6.3.1 utils
This display shows the current values of the dynamic nucleus parameters.
Example: DISPLAY=FILE_IO
adaopr: display=file_io
Reads Hit
File Logical Physical Rate Writes
---- ------- -------- ---- ------
11 145,341 180 99% 2,869
12 99,070 148 99% 2,149
This display shows the logical and physical reads, their hit rate and the writes the buer pool
manager has made for every le since the le I/O statistiscs for the le in question were enabled
(ADAOPR SET_FILE_STATS) - les for which the I/O statistics have not been enabled or for which
no I/Os were performed are not displayed.
Notes:
1. The formula for the hit rate value is given in the description of DISPLAY=ACTIVITY.
2. A write operation is only counted if the block was not yet marked as modied. This means that
the physical write I/Os either already done in a previous buer ush or still pending to be
performed in the next buer ush are counted.
Example: DISPLAY=FP_STATISTICS
adaopr: display=fp_statistics
http://slidepdf.com/reader/full/adabas-631-utils 266/431
7/18/2019 adabas 6.3.1 utils
Replacements 0 0
Overflows 0 0
■ the size in bytes and percentage of the local and global format pool high water marks.
■ POOL STATISTICS shows:
■ the total number of scans and hits of valid format buers in the format pool (both numbers
are required in order to calculate the format pool hit rate);
■ the format pool hit rate (please refer to the example DISPLAY=ACTIVITY for the format pool
hit-rate formula);
■ the total number of valid format buers that are overwritten in the format pool (replacements).
■ Overows. This is the number of times that a format buer exceeded the format pool size,
resulting each time in a response 42.
■ POOL CONTENTS shows:
■ the number of valid local format buers in the format pool;
■ the number of valid global format buers in the format pool.
Example: DISPLAY=HIGH_WATER
http://slidepdf.com/reader/full/adabas-631-utils 267/431
7/18/2019 adabas 6.3.1 utils
This display shows the high water marks for the current session:
■ SIZE shows the size in bytes of pools and buers. For queues, threads and hold queue user
The entries in the column AREA/ENTRY correspondto the ADANUCparameters NU (user queue),
NCL (client queue), NISNHQ (hold queue user limit), NT (threads), LWP (workpool), LBP (buer
pool), LAB (attached buer), MGC (group commit), TT (transaction time). The hold queue and
the command queue have no predened size and are increased dynamically if required.
The entry "ACTIVE AREA" is the largest part of WORK part 1 that can be used by a single trans-
action. If a transaction's protection information spans more space than allowed by "Active Area",
it receives a response 9 (LP), the nucleus displays a PLOVFL message and a value of more than
100 in the "%" column of the highwater display.
Users who have set user-specic timeout values in their OP call are not included in the values for
Transaction Time.
Note: 1. Values for Attached Buer and Command Queue are not displayed correctly if the
nucleus cannot be contacted by ADAOPR (for example, if the ADAOPR parameter CSA is
used.
2. Threads are used in a round-robin manner. Therefore, the high water mark for threads
will be the same as the value shown in the Size column in most cases.
http://slidepdf.com/reader/full/adabas-631-utils 268/431
7/18/2019 adabas 6.3.1 utils
Example: DISPLAY=HQ
■ ID shows the internal user identication of the user holding the ISN;
■ NODE ID shows the node identication string. The local node is represented by an empty string;
■ LOGIN ID shows the login user identication string;
■ ES ID shows the environment-specic identication (for example, process ID);
■ USER ID shows the user identication. Adabas utilities use the utility name preceded by an
asterisk as the USER ID;
■ FILE shows the number of the Adabas le in which the ISN is located;
■ ISN shows the number of the ISN in hold;
■ LOCKS shows the kind of lock for the ISN, where X = exclusive lock , S = shared lock.
Note: S is displayed for shared locks starting with Adabas version 6.3 SP 1; in previous
releases R is displayed.
The nal line of the display shows how many hold queue entries were selected according to the
currently active selection criteria, and how many entries are used in total.
http://slidepdf.com/reader/full/adabas-631-utils 269/431
7/18/2019 adabas 6.3.1 utils
Example: DISPLAY=ICQ
adaopr: display=icq
Command Meaning
AR Autorestart
BT Back out transaction
BTCL Back out open transaction and close user
CANCEL Cancel nucleus
DELUQE Release le list and delete user queue element
ETSYNC Start an ET-SYNC status check after a global transaction has received a timeout
SHUT Shut down nucleus
STOP STOP from ADAOPR
The status of internal commands can be READY TO RUN, RUNNING, WAITING FOR ET SYNC
or WAITING FOR UQE.
The nal line of the display shows how many internal command queue entries were selected ac-
cording to the currently active selection criteria, and how many entries are used in total.
Example: DISPLAY=IO_TIMES
adaopr: display=io_times
ADANUC Version <version number>
Database 76 IO Statistics on 19-NOV-2010 12:16:48
http://slidepdf.com/reader/full/adabas-631-utils 270/431
7/18/2019 adabas 6.3.1 utils
The number of IOs shows the number of physical read and write I/O accesses to ASSO, DATA,
WORK, NUCSRT and NUCTMP.
The maximum IO time shows the maximum duration of a single I/O read and write access to
ASSO, DATA, WORK, NUCSRT and NUCTMP in microseconds.
The average IO time shows the average time of a single I/O access to ASSO, DATA, WORK,
NUCSRT and NUCTMP in microseconds.
Example: DISPLAY=PLOG_STATISTICS
adaopr: display=plog_statistics
PLOG Environment
----------------
NUCPLG (active) : /FS/fsxxxx/sag/ada6180102/ada/db076/NUCPLG
Active PLOG
-----------
Session Number : 37
Extent : 2
http://slidepdf.com/reader/full/adabas-631-utils 271/431
7/18/2019 adabas 6.3.1 utils
Example: DISPLAY=REPLICATIONS
adaopr: display=replications
ADANUC Version <version number>
Database 34 Replications on 27-JUN-2012 09:47:48
2 transactions pending:
---------------------------
To DB Transactions
----- ------------
37 2
5 commands pending:
-------------------------
This display shows the Adabas - Adabas replications currently dened. This is only relevant for
customers who are using the Adabas Event Replicator with Adabas - Adabas replication.
Note: Replications to other replication targets, for example SQL databases, are not displayed.
Such replications can only be displayed with the administration tools of the event replication.
■ “ID” is the ID of the replication that is also used in the replication administration.
■ "From FNR” is the le number of the le to be replicated to another Adabas le.
■ “To DB” and “To FNR” are the database ID and le number of the target le for the replication.
■
"Status" can have the following values and meanings:
http://slidepdf.com/reader/full/adabas-631-utils 272/431
7/18/2019 adabas 6.3.1 utils
Status Meaning
Inactive Currently no data are replicated to the target le, and at the moment no activities have
been made to initiate the replication.
Prepare This status indicates that it is planned to perform the initial state processing for the
replication. This status is the prerequisite for creating a backup of les to be replicated via
ADABCK with parameter REPLICATION.
Initialization This status indicates that ADABCK with parameter REPLICATION is running and creates
a backup containing the initial state of les to be replicated.
Recording Adabas is currently recording the update transactions within the replication command le
and the replication transaction le, but currently does not replicate the update operations
to the target database.
Active The replication is active; all modications of the source le are replicated to the target le.
Error An unexpected error occurred during replication. In order to continue replication, a new
initial state processing is required.
■ “Pending Transactions” is the number of transactions that have not yet been replicated to the
target le.
Notes:
1. The number contains both transactionsthat have already been committedbut not yet replicated
to the target database, and transactions that are still open and which can only be replicated
after an end of transaction.
2. If a transaction contains commands to be replicated to more than one target database, the
transaction is counted only once, independent of the number of target databases. Therefore
the total number of pending transactions can be smaller than the sum of the transactions for
the dierent target databases.
■ “Pending Commands” is the number of commands that have not yet replicated to the target
le.
Notes:
1. The number contains both commands belonging to transactions that have already been
committed but not yet replicated to the target database, and commands belonging to transac-
tions that are still open and which can only be replicated after an end of transaction.
2. If a le is replicated to more than one target le, database modication commands of the
source le are counted only once, independent of the number of target les to which a com-
mand has to be replicated.
http://slidepdf.com/reader/full/adabas-631-utils 273/431
7/18/2019 adabas 6.3.1 utils
Value Meaning
0 At least one replication has been dened, and no replication is in status Error.
12 There is a replication in status Error.
15 Replication has not been activated, or no replication has been dened.
Example: DISPLAY=STATIC_PARAMETERS
adaopr: display=static_parameters
Cloglayout: 5
Example: DISPLAY=TT
adaopr: display=tt
This display shows the entries in the thread table. Thenumber of displayed entries is simultaneously
the high water mark for threads.
http://slidepdf.com/reader/full/adabas-631-utils 274/431
7/18/2019 adabas 6.3.1 utils
■ CMD COUNT shows the total number of Adabas commands processed from the corresponding
thread context. The sum of these counts will normally dier from the sum shown by DIS-
PLAY=COMMANDS, because internal commands are also counted.
■ FILE shows the le number of the Adabas command that is currently being processed from the
corresponding thread context. The le number is 0 if the corresponding thread context is not
active, or if the command is a global one which is not linked to a particular le.
■ CMD shows the command string of the Adabas command that is currently being processed
from the corresponding thread context. There is no output in this column if the corresponding
thread context is not active.
■ STATUS shows the command type and the status of the corresponding thread context.
■ Update
■ Simple
■ Complex
Possible entries for the thread status are shown in the following table:
Status Meaning
Example: DISPLAY=UCB
adaopr: display=ucb
http://slidepdf.com/reader/full/adabas-631-utils 275/431
7/18/2019 adabas 6.3.1 utils
■ DATE/TIME shows the date and time on which the given les were locked.
■ ENTRY ID shows the allocated identication of the entry.
■ UTILITY shows the name of the utility.
■ MODE shows the mode in which the les are being accessed. The possibilities are:
■ ACC open for access
■ UPD open for update
■ EXU open for exclusive update (parallel access allowed)
■ UTO open for utilities only
■ UTI open for exclusive access (no parallel access or update allowed)
■ Files shows the le numbers of the les that are locked.
Example: DISPLAY=UQ
adaopr: display=uq
26
23 sunxxx01
sunxxx01 dba
smith 4473
3075 *adaopr UT
ET E
20 sunxxx01 jones 3178 ET I
19 sunxxx01 jones 1946 ET IE
18 sunxxx01 smith 4689 ET
16 sunxxx01 smith 4661 ET
17 sunxxx01 jones 4638 ######## T
14 sunxxx01 miller 4379 ET R
13 sunxxx01 dba 3967 *adatst AC
12 sunxxx01 dba 3651 *adatst EX,ET E
11 sunxxx01 dba 4025 DBADMIN EX RU
http://slidepdf.com/reader/full/adabas-631-utils 276/431
7/18/2019 adabas 6.3.1 utils
The nal line of the display shows how many user queue entries were selected according to the
currently active selection criteria, and how many entries are used in total.
Example: DISPLAY=UQ_FILES
adaopr: display=uq_files
http://slidepdf.com/reader/full/adabas-631-utils 277/431
7/18/2019 adabas 6.3.1 utils
The nal line of the display shows how many user queue entries were selected according to the
currently active selection criteria, and how many entries are used in total.
Example: DISPLAY=UQ_FULL
http://slidepdf.com/reader/full/adabas-631-utils 278/431
7/18/2019 adabas 6.3.1 utils
Example: DISPLAY=UQ_TIME_LIMITS
adaopr: display=uq_time_limits
20 TNAE
TT 00:15:00
00:05:00 00:15:00
00:05:00 19-JAN-2010
19-JAN-2010 14:58:10
14:58:10
19 TNAE 00:15:00 00:15:00 19-JAN-2010 14:58:10
TT 00:05:00
18 TNAE 00:15:00 00:15:00 19-JAN-2010 14:58:10
TT 00:05:00 00:04:50 19-JAN-2010 14:58:00
17 TNAA 00:15:00 00:15:00 19-JAN-2010 14:58:10
16 TNAE 00:15:00 00:15:00 19-JAN-2010 14:58:10
TT 00:05:00 00:05:00 19-JAN-2010 14:58:10
http://slidepdf.com/reader/full/adabas-631-utils 279/431
7/18/2019 adabas 6.3.1 utils
This display shows the current timeout limits for the user queue entries.
The nal line of the display shows how many user queue entries were selected according to the
currently active selection criteria, and how many entries are used in total.
ES_ID
ES_ID = number
This function inuences the output of the DISPLAY options CQ, HQ, ICQ, UQ, UQ_FILES,
UQ_FULL, UQ_TIME_LIMITS. Only entries with the specied environment-specic ID are dis-
played.
[NO]ET_SYNC
[NO]ET_SYNC
This option controls the behaviour of the FEOF=PLOG function. It must be specied before spe-
cifying FEOF=PLOG. Refer to the FEOF=PLOG function for more information.
http://slidepdf.com/reader/full/adabas-631-utils 280/431
7/18/2019 adabas 6.3.1 utils
EXT_BACKUP
This function is used to backup a database using an external backup system, which can be consid-
erably faster with very large databases than using ADABCK.
The keyword PREPARE prepares the database for backup. During this phase, the following restric-
tions apply:
The keyword CONTINUE is used to resume normal database operations following completion
of the external backup. The following actions are performed:
The keyword ABORT is used to abort an external backup for which a PREPARE has already been
issued. In this case, the PLOG isn't switched and no checkpoint is written.
Example
The following scenario shows a backup and restore using a third-party backup tool (tar is not a
real alternative, and is used for demonstration purposes only):
http://slidepdf.com/reader/full/adabas-631-utils 281/431
7/18/2019 adabas 6.3.1 utils
FEOF
In accordance with the keywords specied, the log le(s) are closed and a new log le is created.
Keyword Meaning
If NOET_SYNC is specied:
The current PLOG extent will be closed when the next PLOG block is written, and a new extent
of the same PLOG will be created. The PLOG number is not incremented and the users do not
have to be synchronized at ET status.
Example (PLOG is on raw device): if the current PLOG is PLG.5, then the command "adaopr db=1
et_sync feof=plog" results in the PLOGs PLG.5 and PLG.6, whereas the command "adaopr db=1
noet_sync feof=plog" results in the PLOGs PLG.5(1) and PLG.5(2).
Example (PLOGis in le system): if the current PLOG is NUCPLG.0005, then the command "adaopr
db=1 et_sync feof=plog" results in the PLOGs NUCPLG.0005 and NUCPLG.0006, whereas the
http://slidepdf.com/reader/full/adabas-631-utils 282/431
7/18/2019 adabas 6.3.1 utils
Keyword Meaning
command "adaopr db=1 noet_sync feof=plog" results in the PLOGs NUCPLG.0005(1) and
NUCPLG.0005(2).
The FEOF command will be rejected if the keyword PLOG is used while running ADAREC RE-
GENERATE = * (see ADAREC for more detailed information).
FILE
FILE = number
This inuences the output of the DISPLAY options HQ, ICQ, UQ, UQ_FILES, UQ_FULL and
UQ_TIME_LIMITS. Only entries related to the specied le number are displayed.
FREE_CLQ
FREE_CLQ
Normally, obsolete entries in the client queue are released automatically when the client queue is
full. With ADAOPR FREE_CLQ, you can enforce the client queue cleanup before the client queue
becomes full.
ID
ID = number
This function inuences the output of the DISPLAY options CQ, HQ, ICQ, UQ, UQ_FILES,
UQ_FULL and UQ_TIME_LIMITS. Only entries related to the specied internal ID are displayed.
[NO]IO_TIME
[NO]IO_TIME
The parameter IO_TIME enables logging of the I/O times for the ASSO, DATA, WORK, NUCSRT
and NUCTMP containers. The times are given in microseconds.
If logging of I/O times is already enabled, enabling it again resets all I/O time and I/O counter
statistics.
http://slidepdf.com/reader/full/adabas-631-utils 283/431
7/18/2019 adabas 6.3.1 utils
ISN
This function inuences the output of the DISPLAY option HQ. Only entries related to the specied
ISNs are displayed.
[UN]LOCK
The le(s) specied by the le number(s) are locked or unlocked. The specied les are locked
for all non-utility use; Adabas utilities can use the le(s) normally.
For users who have one or more les to be locked in their open le list, a STOP <user-ID> command
is issued internally. Refer to the description of the ADAOPR STOP parameter for more details.
Notes:
1. You can also lock non-existent le numbers; if you subsequently create les with these numbers,
the les are locked.
2. Locking a LOB le does not prevent users from storing LOB data in the LOB le; disabling the
access to LOB data in the LOB le is part of locking the corresponding base le. Locking a LOB
le is only useful if you plan to use this le number for a base le at some time in the future.
LOGGING
This parameter starts command logging for the buers specied in the list of keywords.
Keyword Meaning
http://slidepdf.com/reader/full/adabas-631-utils 284/431
7/18/2019 adabas 6.3.1 utils
If the nucleus was started with LOGGING=OFF and buer logging is requested, then the CLOG
le will be created.
LOGIN_ID
LOGIN_ID = number
This function inuences the output of the DISPLAY options CQ, HQ, ICQ, UQ, UQ_FILES,
UQ_FULL and UQ_TIME_LIMITS. Only entries with the specied login ID are displayed.
MGC
MGC = number
This parameter species the maximum group-commit count. This denes the maximum limit of
ET command grouping before the PLOG buers are written back to disk. If this limit is reached,
and the nal IO has been performed, all remaining users will be posted.
If the specied value is less than the corresponding high-water value, a warning is issued.
NISNHQ
NISNHQ = number
This parameter species the maximum number of records that can be placed into hold at any time
by a single user.
If the specied value is less than the corresponding high-water value, a warning is issued.
NODE_ID
NODE_ID = string
This function inuences the output of the DISPLAY options CQ, HQ, ICQ, UQ, UQ_FILES,
UQ_FULL and UQ_TIME_LIMITS. Only entries for the specied node are displayed.
http://slidepdf.com/reader/full/adabas-631-utils 285/431
7/18/2019 adabas 6.3.1 utils
OPTIONS
OPTIONS = (keyword[,keyword])
Keyword Meaning
[NO]LOCAL_UTILITIES If LOCAL_UTILITIES is specied, the nucleus rejects all remote utility calls, i.e.
the Adabas utilities cannot be run from a remote node across a network.
[NO]UTILITIES_ONLY If UTILITIES_ONLY is selected, all calls other than for utilities will be rejected.
Note, however, that this restriction only applies to new users; users who were
already active when OPTIONS=UTILITIES_ONLY was specied can continue
processing normally. If you want exclusive utility control over les or the entire
database, use the LOCK function of ADAOPR instead.
These options can be disabled using the prex `NO', e.g. OPTIONS=NOUTILITIES_ONLY.
READ_PARALLEL_LIMITS
READ_PARALLEL_LIMITS = (records,blocks,total)
This parameter is used to modify the nucleus parameter READ_PARALLEL_LIMITS. Please refer
to the description in ADANUC for further information.
RESET
RESET = keyword
RESET=HIGH_WATER resets the high water mark values to the value currently in use.
RESET=COMMANDS resets thecommand counts displayed by ADAOPR DISPLAY=COMMANDS.
[NO]RESPONSE_ABORT
[NO]RESPONSE_ABORT
If response checking is enabled with the RESPONSE_CHECK parameter of ADAOPR, the RE-
SPONSE_ABORT option determines whether the nucleus aborts when one of the specied responses
occurs (RESPONSE_ABORT), or whether the nucleus resumes operation and a database section
http://slidepdf.com/reader/full/adabas-631-utils 286/431
7/18/2019 adabas 6.3.1 utils
RESPONSE_CHECK
RESPONSE_CHECK = [(number[-number][,number[-number]]...)]
This function enables the DBA to gather information if one of a list of Adabas response codes occurs.
The information written may be used to analyze possible problems in the database's operation. If
a response check for an Adabas response code is enabled, the database section le is written to
disk if this response code occurs.
Depending on the setting of the RESPONSE_ABORT option, the nucleus either aborts or continues
operation:
■ if the RESPONSE_ABORT option is set, the database section le (Adabas.xxx.hh:mm:ss [UNIX],
or Adabas.xxx.hh-mm-ss [Windows] or Adabas-xxx-hh-mm-ss [OpenVMS]) is written to the
database's default directory. The database section le is also called the CSA dump le. See
ADANUC and the environment variable ADA_CSA_DUMP for more information.
When the CSA dump le is written, the SMP dump le is also written (UNIX platforms only);
the name of the SMP dump le is SMPPOS.APP:hh:mm:ss.
■ if the NORESPONSE_ABORT option is set (default setting), the nucleus continues running and
the database section le (Adabas.xxx.RSPyyy.hh:mm:ss [UNIX], or Adabas.xxx.RSPyyy.hh-mm-
ss [Windows] or Adabas-xxx-RSPyyy-hh-mm-ss [OpenVMS]) is written to the database's default
directory. See ADANUC and the environment variable ADA_CSA_DUMP for more information.
Only one dump is generated for one response code; if a response code occurs, the RE-
SPONSE_CHECK option is deactivated for that response code, but if it has been activated for
other response codes, it remains active for the other response codes.
Note: Some response codes can be generated outside the nucleus (e.g. by ADALNK and
ENTIRE NET-WORK). If this happens, they cannot be trapped by Adabas. The response
codes in question for ADALNK are: 9, 17, 22, 40, 146-154, 241, 252, 255.
http://slidepdf.com/reader/full/adabas-631-utils 287/431
7/18/2019 adabas 6.3.1 utils
SET_FILE_STATS
SET_FILE_STATS = [(number[-number][,number[-number]]...)]
This function enables the le level I/O statistics for the specied les. Only these les will be dis-
played by DISPLAY = FILE_IO.
SHUTDOWN
SHUTDOWN
This function terminates the Adabas session normally. No new users are accepted. ET-user updating
is continued until the end of the current transaction for each user. When all update activity has
ended as described above, the Adabas session is terminated.
The communication link to the database is cut but the shared memory is still held. In this case,
display functions are still possible with ADAOPR but parameter modication commands are no
longer permitted.
STATUS
This function inuences the output of the DISPLAY parameter options HQ, ICQ, UQ, UQ_FILES,
UQ_TIME_LIMITS, UQ_FULL. Only entries in the specied state will be displayed.
Keyword Meaning
STOP
STOP = (number[-number][,number[-number]]...)
This parameter terminates the user with the specied ID (internal identication). The ID can be
retrieved with DISPLAY = UQ.
The message "Stop handling started for n users" is displayed, where "n" is the number of users
who will be stopped.
http://slidepdf.com/reader/full/adabas-631-utils 288/431
7/18/2019 adabas 6.3.1 utils
The actions that Adabas takes when a user is stopped depend on the user type, and also whether
the nucleus requires an explicit OP (open) command at the start of a user session, as shown in the
following table.
The abbreviation SUQE used in the table means "Stop user queue element", and consists of the
following
user type, actions: release
set response allthe
9 for Command
next call.IDs, scratch the le list, scratch the user ID, scratch the
User Type Adabas Actions without ADANUC Adabas Actions with ADANUC
OPTIONS=OPEN_REQUIRED OPTIONS=OPEN_REQUIRED
ADAREC REGENERATE = *
TNAA
TNAA = number
This parameter sets the non-activity time limit (in seconds) for access-only users who have not
explicitly specied a TNAA value in the OP command (see Command Reference , OP command).
Note that the gure you specify for this parameter is only approximate. In any particular instance,
the actual amount of time can vary from this value by up to 10 seconds.
http://slidepdf.com/reader/full/adabas-631-utils 289/431
7/18/2019 adabas 6.3.1 utils
TNAE
TNAE = number
This parameter sets the non-activity time limit (in seconds) for ET logic users who have not explicitly
specied a TNAE value in the OP command (see Command Reference , OP command).
Note that the gure you specify for this parameter is only approximate. In any particular instance,
the actual amount of time can vary from this value by up to 10 seconds.
TNAX
TNAX = number
This parameter sets the non-activity time limit (in seconds) for EXU and EXF users who have not
explicitly specied a TNAX value in the OP command (see Command Reference , OP command).
Note that the gure you specify for this parameter is only approximate. In any particular instance,
the actual amount of time can vary from this value by up to 10 seconds.
TT
TT = number
This parameter sets the transaction time limit for ET logic users who have not explicitly specied
a TT value in the OP command (see Command Reference , OP command).
If the specied value is less than the corresponding high-water value, a warning is issued.
Note that the gure you specify for this parameter is only approximate. In any particular instance,
the actual amount of time can vary from this value by up to 10 seconds.
USER_ID
USER_ID = string
This function inuences the output of the DISPLAY parameter options CQ, HQ, ICQ, UQ,
UQ_FILES, UQ_TIME_LIMITS, UQ_FULL. Only entries in the specied user ID will be displayed.
http://slidepdf.com/reader/full/adabas-631-utils 290/431
7/18/2019 adabas 6.3.1 utils
WRITE_LIMIT
WRITE_LIMIT = [number]
This parameter species the percentage of modied blocks permitted in the buer pool before an
implicit buer ush is taken.
Note that "WRITE_LIMIT=" (keeping the equals sign but omitting the number) is equivalent to
"WRITE_LIMIT=0".
The minimum value is 0 and the maximum value is 70; 0 means that Adabas will dynamically
choose an appropriate value.
XA_RESPONSE_CHECK
This function
(not on enables
OpenVMS). theinformation
The DBA to gather information
written if onetoofanalyze
may be used a list ofpossible
XA response codes
problems inoccurs
the
database's operation. If a response check for an XA response code is enabled, the database section
le is written to disk if this response code occurs.
Depending on the setting of the RESPONSE_ABORT option, the nucleus either aborts or continues
operation:
XA_RBROLLBACK
XA_RBCOMMFAIL
XA_RBDEADLOCK
XA_RBINTEGRITY
XA_RBOTHER
XA_RBPROTO
XA_RBTIMEOUT
XA_RBTRANSIENT
XA_NOMIGRATE
http://slidepdf.com/reader/full/adabas-631-utils 291/431
7/18/2019 adabas 6.3.1 utils
XA_HEURHAZ
XA_HEURCOM
XA_HEURRB
XA_HEURMIX
XA_RETRY
XAER_ASYNC
XAER_RMERR
XAER_NOTA
XAER_INVAL
XAER_PROTO
XAER_RMFAIL
XAER_DUPID
XAER_OUTSIDE
XA_RBROLLBACK
http://slidepdf.com/reader/full/adabas-631-utils 292/431
7/18/2019 adabas 6.3.1 utils
■ Functional
Overview ....................................................................................................................... 286
■ ProcedureFlow ............................................................................................................................. 287
■ Checkpoints ................................................................................................................................. 289
■
Control Parameters ........................................................................................................................ 289
■ Restart Considerations ................................................................................................................... 298
■ Examples ..................................................................................................................................... 298
285
http://slidepdf.com/reader/full/adabas-631-utils 293/431
7/18/2019 adabas 6.3.1 utils
Functional Overview
The reorder utility ADAORD provides functions to reorganize a whole database (REORDER) and
to migrate les between databases (EXPORT/IMPORT).
Depending on the function selected, ADAORD produces or requires a sequential le (ORDEXP).
■ To changethe layout of a complete database. This includes increasing or decreasing the maximum
number of les permitted;
■ To change the space allocation or placement of a le, to reduce the number of logical extents
assigned to its index, Address Converter or Data Storage and to change or re-establish the
padding factors;
■ To create one or more test les that all contain the same data. This procedure requires a le to
be exported and then imported using a dierent le number;
■ To archive and subsequently reestablish a le, independent of its original placement and the
database device types used.
When exporting les from a database, the Adabas nucleus is not required. If a system le is pro-
cessed, the nucleus must be inactive. For detailed information, please refer to the table of nucleus
requirements.
When importing les into a database, the Adabas nucleus is not required to be active. The nucleus
may be either started or shut down during this procedure.
Note: The IMPORT and IMPORT_RENUMBER functions can process export les created
with earlier Adabas versions, but not export les created with later Adabas versions.
http://slidepdf.com/reader/full/adabas-631-utils 294/431
7/18/2019 adabas 6.3.1 utils
Procedure Flow
The sequential le ORDEXP can have multiple extents, but only if you are using raw devices. For
detailed information about sequential les with multiple extents, see Administration , Using Utilities.
http://slidepdf.com/reader/full/adabas-631-utils 295/431
7/18/2019 adabas 6.3.1 utils
The sequential le ORDEXP can have multiple extents, but only if you are using raw devices. For
detailed information about sequential les with multiple extents, see Administration , Using Utilities.
http://slidepdf.com/reader/full/adabas-631-utils 296/431
7/18/2019 adabas 6.3.1 utils
Note: (*) A named pipe cannot be used for this sequential le (see Administration , Using
Utilities for details).
Checkpoints
The following table shows the nucleus requirements for each function and the checkpoints written:
Function Nucleus must be active Nucleus must NOT be active Nucleus is NOT required Checkpoint written
CONTENTS X -
EXPORT X(* see note) X SYNX
IMPORT X(* see note) X SYNP
IMPORT_ X(* see note) X SYNP
RENUMBER
REORDER X X SYNP
In the case of the EXPORT function, ADAORD writes a single checkpoint and removes the UCB
entry when all of the specied les have been exported and the sequential output le (ORDEXP)
has been closed.
In the case of the IMPORT function, ADAORD writes a checkpoint and informs the nucleus that
the le has been loaded every time a le is successfully imported.
The UCB entry is removed when all of the specied les have been imported. When the utility is
executed oine, writing multiple checkpoints increases the probability of a checkpoint block
(CPB) overow. The checkpoint le should, therefore, always be present to allow the Adabas
nucleus to be started in order to empty the CPB.
In the case of the REORDER function, ADAORD writes a single checkpoint and removes the UCB
entry when the function terminates.
Control Parameters
CONTENTS
DBID = number
http://slidepdf.com/reader/full/adabas-631-utils 297/431
7/18/2019 adabas 6.3.1 utils
EXPORT = (number[-number][,number[-number]]...)
[,FDT]
D [,SORTSEQ = ({descriptor_name|ISN|PHYSICAL},...)]
IMPORT = (number[-number][,number[-number]]...)
[,ACRABN = number]
[,ASSOPFAC = number]
[,DATAPFAC = number]
[,DSRABN = number] [,DSSIZE = number[B|M] ]
[,LOBACRABN = number]
[,LOBDSRABN = number]
[,LOBNIRABN = number]
[,LOBSIZE = numberM]
[,LOBUIRABN = number]
[,MAXISN = number]
[,NIRABN = number|(number,number)]
[,NISIZE = number[B|M]|(number[B|M],number[B|M])]
[,UIRABN = number|(number,number)]
[,UISIZE = number[B|M]|(number[B|M],number[B|M])]
REORDER = *
CONTENTS
CONTENTS
This function displays the list of les contained in the sequential output le (ORDEXP) created
by a previous run of the EXPORT function.
http://slidepdf.com/reader/full/adabas-631-utils 298/431
7/18/2019 adabas 6.3.1 utils
DBID
DBID = number
EXPORT
EXPORT = (number[-number][,number[-number]]...)
[,FDT]
[,SORTSEQ = ({descriptor_name|ISN|PHYSICAL},...)]
This function exports (copies) one or more les from the database to a sequential output le (OR-
DEXP). In order to maintain referential integrity in the export copy, all les that are connected via
referential constraints to a specied le are also exported. The le numbers specied are only
taken into consideration if they are the le numbers of base les; the corresponding LOB les for
the selected
EXPORT les are
consists exportedeach
of copying automatically with thetogether
le's Data Storage, base leswith
without having to be
the information specied.
that An
is required
to reestablish its index. All of the les to be processed are written to ORDEXP in the sequence in
which they are specied. Overlapping ranges and numbers are removed.
Note: If the checkpoint le is included in the le list, it will be processed last.
FDT
This parameter controls the sequence in which the Data Storage is processed. If species either
the eld name of a descriptor, subdescriptor or superdescriptor, or the keyword `ISN' or `PHYS-
ICAL'.
Value Sequence
descriptor_name If the name of a descriptor, sub- or superdescriptor is specied, the data records are
processed in ascending logical sequence of the descriptor values to which the eld name
refers.
A eld with the MU, MC or NU option or one that is contained in a periodic group or a
sub- or superdescriptor derived from such a eld must not be specied.
Logical sequence can be used only if a single le has been selected.
http://slidepdf.com/reader/full/adabas-631-utils 299/431
7/18/2019 adabas 6.3.1 utils
Value Sequence
ISN If ISN is specied, the data records are processed in ascending ISN sequence.
PHYSICAL If PHYSICAL is specied or if the SORTSEQ parameter is omitted, the data records are
processed in the physical sequence in which they are stored in the Data Storage.
The performance when processing in logical sequence and ISN sequence is better if the database
is online (provided that the buer pool is large enough).
If one value is specied for SORTSEQ, that value is valid for all les. If more than one value is
specied, the number of values must be the same as the number of le ranges specied for the
EXPORT parameter. In this case, the rst le range is exported in the rst specied sort sequence,
the second le range is exported in the second specied sort sequence, and so on.
Example
File 1 is exported in the sequence of descriptor AA, les 20-30 are exported in physical sequence
and le 40 is exported in ISN sequence.
FILES
This parameter is used to display information concerning the status of the specied les contained
on the sequential input le (ORDEXP).
IMPORT
IMPORT = (number[-number][,number[-number]]...)
[,ACRABN = number]
[,ASSOPFAC = number]
[,DATAPFAC = number]
[,DSRABN = number] [,DSSIZE = number[B|M] ]
[,LOBACRABN = number]
[,LOBDSRABN = number]
[,LOBNIRABN = number]
[,LOBSIZE = numberM]
[,LOBUIRABN = number]
[,MAXISN = number]
[,NIRABN = number|(number,number)]
[,NISIZE = number[B|M]|(number[B|M],number[B|M])]
[,UIRABN = number|(number,number)]
[,UISIZE = number[B|M]|(number[B|M],number[B|M])]
This function imports one or more les into a database, using the data on the sequential le (OR-
DEXP) produced by a previous run of ADAORD. In order to maintain referential integrity, all
http://slidepdf.com/reader/full/adabas-631-utils 300/431
7/18/2019 adabas 6.3.1 utils
les connected via referential constraints to a specied le are also imported. The le numbers
specied are only taken into consideration if they are the le numbers of base les; the correspond-
ing LOB les for the selected les are imported automatically with the base les without having
to be specied. The le numbers specied are sorted into ascending sequence. Overlapping ranges
and numbers are removed.
By default, ADAORD controls the le placement and the allocation quantities. The parameters
that can be used to overwrite these defaults may be used only if a single le has been selected.
IMPORT_RENUMBER
[,UIRABN
[,UISIZE =
= number|(number,number)]
number[B|M]|(number[B|M],number[B|M])]
This function imports a le into a database, using the data on the sequential le (ORDEXP) produced
by a previous run of ADAORD. It is not possible to import and renumber a le that is connected
to another le via referential integrity. Constraints must either dropped before exporting the les,
or the les must be imported without renumbering and be renumbered later (ADADBM RENUM-
BER). The rst number given denes the base le to be imported, and the second number is the
new le number to be assigned to the le. The third, optional number is the new le number for
the LOB le. If the third number is not specied, the LOB le number (if it exists) remains un-
changed.
Unless otherwise specied, ADAORD controls the le placement and the allocation quantities.
http://slidepdf.com/reader/full/adabas-631-utils 301/431
7/18/2019 adabas 6.3.1 utils
ACRABN = number
This parameter species the RABN at which the space allocation for the Address Converter (AC)
is to start.
ASSOPFAC = number
This parameter species the new padding factor to be used for the le's index. The number specied
is the percentage of each index block which is not to be used by ADAORD or a subsequent run of
the mass update utility ADAMUP. This padding area is reserved for future use if additional entries
have to be added to the block by the Adabas nucleus. This avoids the necessity of having to relocate
overow entries to another block.
A small padding factor (0 to 10) should be specied if little or no descriptor updating is expected.
A larger padding factor (10 to 50) should be specied if a large amount of descriptor updating is
expected in which new descriptor values are created.
If this parameter is omitted, the current padding factor in eect for the le's index is used.
DATAPFAC = number
This parameter species the new padding factor to be used for the le's Data Storage. The number
specied is the percentage of each data block which is not to be used by ADAORD. This padding
area is reserved for future use if any record in a block requires additional space as result of record
updating by the Adabas nucleus. This avoids the necessity of having to relocate overow entries
to another block.
A small padding factor (0 to 10) should be specied if there is little or no record expansion. A larger
padding factor (10 to 50) should be specied if there is a large amount of record updating which
will cause expansion.
If this parameter is omitted, the current padding factor in eect for the le's Data Storage is used.
http://slidepdf.com/reader/full/adabas-631-utils 302/431
7/18/2019 adabas 6.3.1 utils
DSRABN = number
This parameter species the RABN at which the space allocation for the le's Data Storage (DS)
is to start.
DSSIZE = number[B|M]
This parameter species the number of blocks (B) or megabytes (M) to be initially assigned to the
le's Data Storage (DS). By default, the size is given in megabytes.
If this parameter is omitted, ADAORD calculates the size based on the old number of blocks alloc-
ated and the dierence between the old and new padding factor.
LOBACRABN=number
This parameter species the RABN at which the space allocation for the LOB le's Address Con-
verter (AC) is to start.
LOBDSRABN=number
This parameter species the RABN at which the space allocation for the LOB le's Data Storage
(DS) is to start.
LOBNIRABN=number
This parameter species the RABN at which the space allocation for the LOB le's Normal Index
(NI) is to start.
LOBSIZE=numberM
This parameter species the number of megabytes to be initially assigned to the LOB le's Data
Storage (DS). The AC size, NI size and UI size for the LOB le are derived from this size.
If this parameter is omitted, ADAORD calculates the size based on the old number of blocks alloc-
ated and the dierence between the old and new padding factor.
http://slidepdf.com/reader/full/adabas-631-utils 303/431
7/18/2019 adabas 6.3.1 utils
LOBUIRABN=number
This parameter species the RABN at which the space allocation for the LOB le's Upper Index
(UI) is to start.
MAXISN = number
This parameter species the highest permissible ISN for the le. ADAORD uses this parameter
to determine the amount of space to be allocated for the le's Address Converter (AC).
Because there is no automatic extension of the initial allocation, a value that is smaller than the
le's current rst free ISN will cause ADAORD to terminate execution and return an error status
if there are ISNs outside the Address Converter.
If this parameter is omitted, the value of MAXISN currently in eect for the le's Address Converter
is used.
A contiguous-best-try allocation is used.
NIRABN = number|(number,number)
This parameter species the RABN(s) at which the space allocation for the le's Normal Index
(NI) is to start. Adabas usually stores small descriptor values (<= 253 bytes) in small index blocks
(block size < 16 KB) and large descriptor values in large index blocks (block size >= 16 KB. For this
reason, it is possible to specify 2 RABNs - if you specify 2 RABNs, one must have a block size <
16 KB, and the other must have a block size >=16 KB.
NISIZE = number[B|M]|(number[B|M],number[B|M])
This parameter species the number of blocks (B) or megabytes (M) to be initially assigned to the
le's Normal Index (NI). By default, the size is given in megabytes. If two values are specied and
the NIRABN parameter is also specied, the rst value corresponds to the rst value of the NIRABN
parameter, and the second value corresponds to the second value of the NIRABN parameter. If
two values are specied and the NIRABN parameter is not specied, the rst value species the
size of small normal index blocks (< 16 KB), and the second value species the size of large NI
blocks (>= 16 KB).
If this parameter is omitted, ADAORD calculates the size based on the old number of blocks alloc-
ated and the dierence between the old and new padding factor.
http://slidepdf.com/reader/full/adabas-631-utils 304/431
7/18/2019 adabas 6.3.1 utils
UIRABN = number|(number,number)
This parameter species the RABN(s) at which the space allocation for the le's Upper Index (UI)
is to start. Adabas usually stores small descriptor values (<= 253 bytes) in small index blocks (block
size < 16 KB) and large descriptor values in large index blocks (block size >= 16 KB. For this reason,
it
andis possible
the othertomust
specify
have2 RABNs - if you
a block size >=16specify
KB. 2 RABNs, one must have a block size < 16 KB,
UISIZE = number[B|M]|(number[B|M],number[B|M])
This parameter species the number of blocks (B) or megabytes (M) to be initially assigned to the
le's Upper Index (UI). By default, the size is given in megabytes. If two values are specied and
the UIRABN parameter is also specied, the rst value corresponds to the rst value of the UIRABN
parameter, and the second value corresponds to the second value of the UIRABN parameter. If
two of
size values
smallare specied
upper indexand the(<
blocks UIRABN parameter
16 KB), and is not
the second specied,
value thethe
species rst value
size species
of large the
UI blocks
(>= 16 KB).
If this parameter is omitted, ADAORD calculates the size based on the old number of blocks alloc-
ated and the dierence between the old and new padding factor.
REORDER
REORDER = *
This function is used to change the layout of a whole database. It rearranges the database's global
areas, eliminates fragmentation in the DSST and the les' Address Converter, Data Storage, Normal
Index and Upper Index extents by physically changing their placement. It also re-establishes the
les' padding factors. Exclusive control of the database container les is required.
A REORDER database implicitly exports the les, deletes them from the database and then re-
imports them. The sequential le (ORDEXP) that is created during the REORDER is kept.
Note: ADAORD uses a best-t algorithm for the allocation of the disk space for the les.
Therefore, it may occur that the rst container of a given type remains empty if it is followed
by another container with adequate block size which is smaller than the rst one.
http://slidepdf.com/reader/full/adabas-631-utils 305/431
7/18/2019 adabas 6.3.1 utils
Restart Considerations
An abnormally terminated IMPORT of one or more les will result in lost RABNs for the last le
being imported. These RABNs can be recovered by executing ADADBM's RECOVER function.
The les preceding the one being processed when the interrupt occurred will be available in the
database. Therefore, the IMPORT function should be rerun starting with the le number at which
the interrupt occurred.
An abnormally terminated IMPORT_RENUMBER will result in lost RABNs for the le being im-
ported. These RABNs can be recovered by executing ADADBM's RECOVER function. The IM-
PORT_RENUMBER function has to be rerun from the beginning.
An abnormally terminated REORDER at the database level may result in a database that cannot
be accessed if the interrupt occurred while reordering the database's global areas (GCB, FST, DSST,
etc.). In this case, either a new empty database has to be created using ADAFRM or the old database
has to be reestablished from an Adabas backupcopy, using ADABCK's RESTORE database function.
If the interrupt occurred during the re-import phase, it will result in lost RABNs for the last le
being imported. These RABNs can be recovered by executing ADADBM's RECOVER function.
The les preceding the one being processed when the interrupt occurred will be available in the
database. The remaining les can be obtained from the sequential work le (ORDEXP) by using
ADAORD's IMPORT function.
Examples
In the examples below, the les 1, 2, 4, 6, 7, 8, 10, 11, 12 and 25 are loaded in database 1. Database
2 contains les 3, 6 and 11.
Example 1
adaord: dbid = 1
adaord: export = (1-4,7,10-25)
Files 1, 2, 4, 7, 10, 11, 12 and 25 are exported from database 1.
http://slidepdf.com/reader/full/adabas-631-utils 306/431
7/18/2019 adabas 6.3.1 utils
Example 2
adaord: dbid = 2
adaord: import = (1-10,12)
Files 1, 2, 4, 7, 10 and 12 are imported into database 2. It is not possible to specify " import=(1-12)"
because ADAORD rst checks to see if one of the les to be imported is already loaded , and if it
is, then the whole import is rejected - in this case le 11 is already loaded.
Example 3
adaord: dbid = 2
adaord: import_renumber = (11,19), acrabn = 131, datapfac = 20
File 11 is imported into database 2 using a new le number of 19 (because 11 is already in use).
The le's Address Converter (AC) is to be allocated at ASSO RABN 131. The new padding factor
for the Data Storage (DS) is 20 percent.
Example 4
adaord: dbid = 1
adaord: reorder = *
http://slidepdf.com/reader/full/adabas-631-utils 307/431
7/18/2019 adabas 6.3.1 utils
300
http://slidepdf.com/reader/full/adabas-631-utils 308/431
7/18/2019 adabas 6.3.1 utils
■ Functional
Overview ....................................................................................................................... 302
■ ProcedureFlow ............................................................................................................................. 303
■ Checkpoints ................................................................................................................................. 304
■
Control Parameters ........................................................................................................................ 304
■ ADAPLP Output ............................................................................................................................ 313
301
http://slidepdf.com/reader/full/adabas-631-utils 309/431
7/18/2019 adabas 6.3.1 utils
Functional Overview
Note: LOB values are split into several records in a LOB le; when LOB values are stored
in the database, the Protection Log contains the log records for the modications of the LOB
le. This means that ADAPLP does not display the LOB values as one value, but rather it
displays the modications of the corresponding records in the LOB le instead. It is not
possible to decompress the LOB le records because the LOB records are too large to t
into one block, and the continued Protection Log records cannot be decompressed.
http://slidepdf.com/reader/full/adabas-631-utils 310/431
7/18/2019 adabas 6.3.1 utils
Procedure Flow
http://slidepdf.com/reader/full/adabas-631-utils 311/431
7/18/2019 adabas 6.3.1 utils
The sequential le PLPPLG can have multiple extents. For information about sequential les with
multiple extents, see Administration , Using Utilities.
Checkpoints
Control Parameters
M DATASET = keyword
DBID = number
D [NO]DECOMPRESSED
DELTA
D [NO]DUMP
D [NO]HEADER
INTERNAL_ID = number
MODIFIED_RABN = number
NOFILETYPE
NONULL
M RABN = {*|number[-number]}
SEQ = number
D [NO]SHORT
http://slidepdf.com/reader/full/adabas-631-utils 312/431
7/18/2019 adabas 6.3.1 utils
THREAD = number
TSN = number
USER_ID = string
D [NO]WXA
DATASET
DATASET = keyword
This parameter selects the le containing the Protection Log information to be processed. The
keyword can take the values PLOG or WORK. The parameter PLOG must be specied rst if
DATASET=PLOG is to be specied and the protection log is located on a raw device.
DBID
DBID = number
[NO]DECOMPRESSED
[NO]DECOMPRESSED
This option indicates whether for each selected DATA record from a protection log, one line per
eld is printed with the eld name and its decompressed value in hex (DECOMPRESSED) or not
(NODECOMPRESSED).
For an inserted record, an after image containing the eld values of the record after the insert is
displayed.
For an updated record, a before image containing the eld values before the update, and an after
image containing the eld values of the record after the update are displayed.
For a deleted record, a before image containing the eld values before the delete operation is dis-
played.
If you specify DECOMPRESSED and NONULL, no output is produced for the following:
http://slidepdf.com/reader/full/adabas-631-utils 313/431
7/18/2019 adabas 6.3.1 utils
http://slidepdf.com/reader/full/adabas-631-utils 314/431
7/18/2019 adabas 6.3.1 utils
DELTA
DELTA
This parameter indicates that only changed elds after an update are displayed.
For an inserted record, the same output is produced as with the options DECOMPRESSED,
NONULL.
For an updated record, a Delta containing the modied eld values is displayed. Note that for
MU/PE elds, the value count displayed can be smaller than the displayed MU/PE indices if the
MU/PE count has been decreased - this is because all eld values have been set to the null value.
If a record is deleted, no output is produced, however, you can see the deletion if you display
protection log entries of the type CE.
Note: Decompression (DELTA output) is not possible for CONTINUED records. CONTIN-
UED records are created if a PLOG record plus the block header is larger than 32 KB in the
PLOG or larger than the block size used for WORK.
[NO]DUMP
[NO]DUMP
This option indicates whether the variable part of a Protection Log record is included in the printout
(DUMP) or not (NODUMP).
If DUMP is specied, the variable part of each Protection Log record is displayed in both hexa-
decimal and uninterpreted ASCII format.
http://slidepdf.com/reader/full/adabas-631-utils 315/431
7/18/2019 adabas 6.3.1 utils
FILES
The Protection Log records are only displayed if they belong to the le(s) specied by this para-
meter.
Only records of the types DA, DV, EXT, INDEX and FCB are displayed.
Please refer to the tables at the end of this section for a description of the various types of Protection
Log records.
[NO]HEADER
[NO]HEADER
This option indicates whether for each block of the Protection Log a header is displayed (HEADER)
or not (NOHEADER).
INTERNAL_ID
INTERNAL_ID = number
This option displays only the records with the specied internal ID.
ISN
The Protection Log records are only displayed if they belong to the ISNs specied by this parameter.
Only records of the types DA and DV are displayed. Please refer to the tables at the end of this
section for a description of the various types of Protection Log records. This parameter can only
be used in conjunction with the FILE parameter.
http://slidepdf.com/reader/full/adabas-631-utils 316/431
7/18/2019 adabas 6.3.1 utils
MODIFIED_RABN
MODIFIED_RABN = number
This option displays only the records in which modications for the specied RABN are logged.
Please refer to the tables at the end of this section for a description of the various types of Protection
Log records.
NOFILETYPE
NOFILETYPE
This keyword species that record types that are independent of le numbers (for example ET
and BT records) will be displayed in addition to the record types that are bound to le numbers.
Example
The DA and DVT records of le 25 together with all ET and BT records will be displayed.
NONULL
NONULL
The NONULL parameter is only relevant if the DECOMPRESSED parameter is also specied.
Please refer to the DECOMPRESSED parameter for further information.
PLOG
PLOG = (number[,number])
This parameter is required if DATASET=PLOG is specied and the protection log is within a raw
section. It is optional if the protection log is within a le system. The PLOG number and the exten-
sion count can be specied. If an extension count is specied, then only the specied extent will
be processed. If no extension count is specied, Adabas will open subsequent extents when neces-
sary. The parameter PLOG must be specied before DATASET=PLOG is specied.
http://slidepdf.com/reader/full/adabas-631-utils 317/431
7/18/2019 adabas 6.3.1 utils
Example:
Section layout
.
.
.
250000 260000 10001 30 PLG.36 created
adaplp: plog=36
adaplp: dataset=plog
adaplp: plog=(36,3)
adaplp: dataset=plog
RABN
This parameter selects one block or a range of consecutive blocks on the WORK or Protection Log
le. The information contained in the specied blocks is displayed.
Note: If you start ADAPLP without specifying RABN, the utility will run, but will not pro-
duce any output.
Example
http://slidepdf.com/reader/full/adabas-631-utils 318/431
7/18/2019 adabas 6.3.1 utils
RECORD
This parameter selects the records or ranges of records to be printed. All of the records are printed
if `*' or nothing is specied.
Example:
The records 2, 3, 4, 5, 9 and 11 are written while printing one or more PLOG blocks.
SEQUENCE
SEQUENCE = number
This option displays only the records written by the specied sequence number.
[NO]SHORT
[NO]SHORT
This option indicates whether only Protection Log block headers are printed out (SHORT), or
whether all the records in each block are included in the display (NOSHORT).
By default, the Protection Log block header is displayed followed by all of the records contained
in the block.
THREAD
THREAD = number
This option displays only the records with the specied thread.
http://slidepdf.com/reader/full/adabas-631-utils 319/431
7/18/2019 adabas 6.3.1 utils
TSN
TSN = number
This option displays only the records with the specied transaction sequence number (TSN).
Only records of the type BT, C5, CL, DA, DV, ET and XA (not on OpenVMS) are displayed.
Please refer to the tables at the end of this section for a description of the various types of Protection
Log records.
TYPE
This option displays only the protection log records specied by the given keyword(s). Each
keyword corresponds to one or more protection log record types, as shown in the following table.
AB AB
ASSO the record type AC and all record types that are selected by the keywords EXT, FCB and INDEX
AT AT
BF BS, BE, BF
BT BT
C1 C1
C5 C5
CE CE
CF CF
CT CT
DA DA
DATA all record types that are selected by the keywords BT, CE, DA, DV, ET and OP.
DC DC
DT DT
ET ET, CL
EXT ACEXT, UIEXT, NIEXT, DSEXT
http://slidepdf.com/reader/full/adabas-631-utils 320/431
7/18/2019 adabas 6.3.1 utils
YF YF (not on OpenVMS)
YP YP (not on OpenVMS)
Please refer to the tables at the end of this section for a description of the various types of Protection
Log records.
USER_ID
USER_ID = string
This option displays only the records which start with the specied user ID.
Only records of the type BT, C1, C5, CL, DA, DV, ET, FCBDS, FCBIX, INDEX and XA are displayed.
Please refer to the tables at the end of this section for a description of the various types of Protection
Log records.
[NO]WXA
[NO]WXA
This option alternates between the WORK part 1 ring buer (NOWXA) and WORK part 1 XA area
(WXA).
ADAPLP Output
Each block of the Protection Log or WORK is preceded by a header, which consists of the following:
http://slidepdf.com/reader/full/adabas-631-utils 321/431
7/18/2019 adabas 6.3.1 utils
■ the type of PLOG record (see the following table for more information);
■ the number of the thread that executed the command.
■
the internalthat
command user identication
opens (in hexadecimal notation) that is uniquely assigned for each
a transaction.
Type Description
Example
http://slidepdf.com/reader/full/adabas-631-utils 322/431
7/18/2019 adabas 6.3.1 utils
Type Description
DV logs a descriptor update (should always be preceded by a DA record). The entries for the le,
ISN, TSN, clu, and WB are the same as for the DA record type.
ET log entry from an ET command. The ET TSN gives the TSN of the last user data written by an ET
command.
FCBDS logs an FCB change for data storage (WORK only).
FCBIX logs an FCB change for the normal index (WORK only).
FE logs a change of an index block's rst entry (WORK only).
IB logs an index block that is modied (WORK only).
INDEX logs an index block that is split (WORK only).
INSRU logs the insertion of an index block into a reusage chain (WORK only).
NIEXT logs the extension of the normal index (WORK only).
OP logs the OPEN of a user.
REMRU logs the deletion of an index block from a reusage chain (WORK only).
SPISN logs changes in ISN reusage or space reusage.
UIEXT logs the extension of the upper index (WORK only).
YB logs the backout of a transaction within the XA protocol (not on OpenVMS).
YD logs the discarding of a heuristically terminated transaction within the XA protocol (not on
OpenVMS).
YF logs the nal commit of a transaction within the XA protocol (not on OpenVMS).
YP logs the preliminary commit of a transaction within the XA protocol (not on OpenVMS).
There are also several ags that may be displayed with DA or DV records:
Flag Description
AI the data of this PLOG record contain an after image of the data record (record type DA).
BACKOUT indicates that the record was written during a backout within a single command.
BI the data of this PLOG record contain a before image of the data record (record type DA).
BT indicates that the record was written during the backout of a transaction.
DI the data of this PLOG record contain a delta image of the data record (record type DA).
FDATA indicates that this is the rst DA record of this command.
FIRST_ENTRY indicates that this is the rst record with a given sequence number.
http://slidepdf.com/reader/full/adabas-631-utils 323/431
7/18/2019 adabas 6.3.1 utils
316
http://slidepdf.com/reader/full/adabas-631-utils 324/431
7/18/2019 adabas 6.3.1 utils
■ Functional
Overview ....................................................................................................................... 318
■ ProcedureFlow ............................................................................................................................. 319
■ Checkpoints ................................................................................................................................. 320
■
Control Parameters ........................................................................................................................ 320
317
http://slidepdf.com/reader/full/adabas-631-utils 325/431
7/18/2019 adabas 6.3.1 utils
Functional Overview
The ADAPRI utility prints the contents of a block (or range of blocks) in the Associator, Data
Storage, WORK, TEMP, or SORT for maintenance or auditing purposes.
The output is in hexadecimal and ASCII format. Subsequent identical lines and blocks are sup-
pressed.
http://slidepdf.com/reader/full/adabas-631-utils 326/431
7/18/2019 adabas 6.3.1 utils
Procedure Flow
http://slidepdf.com/reader/full/adabas-631-utils 327/431
7/18/2019 adabas 6.3.1 utils
Assignments to the ASSO container les are required in order to be able to process the DATA or
WORK container les.
Checkpoints
Control Parameters
DATASET = keyword
DBID = number
DATASET
DATASET = keyword
This parameter species the part of the database to be dumped. Valid keywords are:
Keyword Meaning
ASSO Associator
DATA Data Storage
SORT Sort Area
TEMP Temporary Area
WORK Work Area
Example
http://slidepdf.com/reader/full/adabas-631-utils 328/431
7/18/2019 adabas 6.3.1 utils
DBID
DBID = number
RABN
Examples
The RABNs from 123 to 129 on the data set SORT are to be dumped.
http://slidepdf.com/reader/full/adabas-631-utils 329/431
7/18/2019 adabas 6.3.1 utils
322
http://slidepdf.com/reader/full/adabas-631-utils 330/431
7/18/2019 adabas 6.3.1 utils
■ Functional
Overview ....................................................................................................................... 324
■ ProcedureFlow ............................................................................................................................. 325
■ Checkpoints ................................................................................................................................. 327
■
ADAREC Input Data ....................................................................................................................... 327
■ Control
Parameters ........................................................................................................................ 327
■ Examples ..................................................................................................................................... 333
■ ADAREC Restart Considerations ...................................................................................................... 340
323
http://slidepdf.com/reader/full/adabas-631-utils 331/431
7/18/2019 adabas 6.3.1 utils
Functional Overview
■ The CLOSE function writes a clean end-of-le to an abnormally-terminated Protection Log le
within a disk section (UNIX platforms only).
■ The LIST function lists information about a Protection Log.
■ The REGENERATE function re-applies all of the updates made between two specied check-
points. The checkpoints used are normally the result of a checkpoint command (C1) but may
also be internal checkpoints taken by OP commands from EXU users or utility actions. If the
whole database is to be regenerated, certain les may be excludedby using the EXCLUDE_FILES
option. The les specied with this option are not regenerated, and the updates that are excluded
are reported.
If REGENERATE terminates at a SYNP checkpoint, ADAREC "looks ahead" on the current PLOG
to nd an alternative restart point for the next run of this PLOG. The utility then displays a list of
other utility functions that have to be executed before ADAREC can be restarted. If one or more
SYNP checkpoints were found, ADAREC terminates with status 14 (setting the status to 14 was
introduced with version 6.1.7.1 - previous Adabas versions terminated with status 0). The calculated
restart point can be reset or overridden by entering BLOCK = or CHECKPOINT =. Refer to the
database report utility ADAREP in this manual for a description of the possible system checkpoint
types.
Normally, REGENERATE completes all fully-logged and conrmed transactions. This function
is most frequently used when the database (or one or more les) has been restored to a previous
status with the RESTORE function of the ADABCK utility.
If the utility writes records to the error le, it will exit with a non-zero status.
Note: If ADAREC is used more than once at the same time to regenerate les, you should
rst increase the value of the nucleus parameter LBP - this is because ADAREC performs
a large number of database updates, and failure to provide a large enough value of LBP
may lead to an Adabas response code 162 being returned.
http://slidepdf.com/reader/full/adabas-631-utils 332/431
7/18/2019 adabas 6.3.1 utils
Procedure Flow
Note: (*) The CLOSE function works only on protection log les in raw disk sections.
http://slidepdf.com/reader/full/adabas-631-utils 333/431
7/18/2019 adabas 6.3.1 utils
REGENERATE Function
http://slidepdf.com/reader/full/adabas-631-utils 334/431
7/18/2019 adabas 6.3.1 utils
Note: (*) A named pipe can be used for this sequential le (not on OpenVMS, see Adminis-
tration , Using Utilities for details).
The sequential le RECPLG can have multiple extents. For detailed information about sequential
les with multiple extents, see Administration , Using Utilities.
Checkpoints
The following table shows the nucleus requirements for each function and the checkpoints written:
Function Nucleus must be active Nucleus must NOT be active Nucleus is NOT required Checkpoint written
CLOSE X -
LIST X -
REGENERATE X SYNX
Data protection information, in the form of `before' and `after' images of all updated records, is
written to the Protection Log during each Adabas session. This information is needed to regenerate
the updates.
Control Parameters
CLOSE = PLOG-number[(extent-number)]
M DBID = number
LIST = keyword
REGENERATE = {* [,EXCLUDE_FILES =
(number[-number] [,number[-number] ] ... ) } |
(number[-number] [,number[-number] ] ... )
PLOG = number
D [,[NO]BI_CHECK]
[,BLOCK = ([number][,number])
,CHECKPOINT = ([string][,string])]
D [,[NO]ERROR_LOG]
D [,ON_ERROR = keyword]
http://slidepdf.com/reader/full/adabas-631-utils 335/431
7/18/2019 adabas 6.3.1 utils
CLOSE
CLOSE = PLOG-number[(extent-number)]
The CLOSE function writes a clean end-of-le to an abnormally-terminated Protection Log le
within a disk section. This function must be executed before such a Protection Log le can be used
as input for the REGENERATE function.
The CLOSE function may be run when an AUTORESTART is pending or after theAUTORESTART
has been performed.
This function can still be used even if subsequent Adabas sessions have created other Protection
Log data les.
PLOG-number and extent-number specify the Adabas Protection Log number and the extent
number of the Protection Log le to be closed. These numbers are displayed by the LAYOUT
function of ADADEV.
Example:
adarec: db=1
%ADAREC-I-DBON, database 1 accessed online
adarec: close=93
adarec:
DBID
DBID = number
Note: Program functions which do not require the nucleus to be running need the environ-
ment variables/logical names set for the container les.
http://slidepdf.com/reader/full/adabas-631-utils 336/431
7/18/2019 adabas 6.3.1 utils
LIST
Valid keywords are BRIEF, FULL and RESTART. BRIEF lists the Protection Log number and its
creation date. FULL lists additional information about the records on the Protection Log, e.g. the
checkpoints, the number of modications for each le, etc. RESTART displays the restart points
that ADAREC writes when it encounters checkpoints while processing.
The LIST=FULL function also checks the structure of the Protection Log to ensure that it is internally
consistent. If a structural error is detected, a message is output indicating the error type as well
as the record and block numbers.
If the Protection Log is within a disk section, the PLOG parameter must be set before LIST can be
specied.
Examples
adarec: list=brief
REGENERATE
Database Regeneration
This optioncertain
to exclude of the REGENERATE function regenerates
les from the regenerate. ET logic is asupported.
database. A le exclusion list can be used
During REGENERATE processing, ADAREC sets the database to utility-only mode. Processing
terminates if a SYNP checkpoint is encountered. In this case, ADAREC inspects the Protection
Log in order to calculate an alternative restart point. This restart point is then displayed together
with a list of utility functions that must be executed before processing can be continued. The next
call to REGENERATE automatically sets up at this point. The use of the calculated restart point
http://slidepdf.com/reader/full/adabas-631-utils 337/431
7/18/2019 adabas 6.3.1 utils
can be overridden by specifying "BLOCK=" or "CHECKPOINT=" (that is, supplying empty values
for these keywords). This procedure is repeated until the end of the PLOG is reached. After
ADAREC has terminated, the database remains in utility-only mode, because more calls to RE-
GENERATE may follow. After the database regeneration has nished, you can enable the database
for normal processing with the ADAOPR command OPTIONS=NOUTILITIES_ONLY.
[NO]BI_CHECK
If this option is set to BI_CHECK, ADAREC checks the consistency of the before images in the
Protection Log against the data in the database (is the ISN in use; does the record exist; is there a
before image mismatch?). If a mismatch is encountered, ADAREC issues messages containing the
relevant information and does not perform the update.
If this option is set to NOBI_CHECK, the consistency check is still made and the ERROR_LOG is
implicitly enabled; however, on nding a BI inconsistency, the update is made and the mismatch
is reported to the ERROR_LOG (see below). If errors are encountered, only the rst error for each
le will be displayed, all subsequent errors are logged to the ERROR_LOG. Note that the index
might become inconsistent in this case.
However, if the PLOG was written with the NOBI option of the nucleus, it will not contain any
before images and the BI_CHECK option cannot be set.
BLOCK = ([number][,number])
This parameter species the numbers of the blocks in the Protection Log les that contain the
corresponding checkpoint names. The block numbers can be taken from ADAREC LIST=FULL.
CHECKPOINT = ([string][,string])
This parameter species the starting and ending checkpoint names. The checkpoint names can be
taken from the ADAREP database status report or ADAREC LIST=FULL.
If processing is to start at the beginning of the Protection Log le, the rst parameter must be
omitted.
[NO]ERROR_LOG
Setting this option to ERROR_LOG enables the automatic logging of any BI inconsistencies that
may be detected when using the NOBI_CHECK option. The contents of the error le produced
can be examined using the ADAERR utility. Do not print this error le using the standard operating
system print utilities, since the records contain nonprintable characters. See ADAERR for further
information.
http://slidepdf.com/reader/full/adabas-631-utils 338/431
7/18/2019 adabas 6.3.1 utils
EXCLUDE_FILES = (number[-number][,number[-number]]...)
This parameter species the les to be excluded when regenerating a complete database. The up-
dates that are excluded are written to a report.
ON_ERROR = keyword
Valid keywords are ABORT and EXCLUDE. The keyword used determines what action to take if
ADAREC detects non-fatal errors during processing (e.g. response code 17, le not loaded). ABORT
abnormally terminates regenerate processing, and EXCLUDE excludes the le in question from
the regenerate if Data Storage errors occur (nucleus response codes 17, 49, 75, 77 and 113).
If, however, an error occurs while updating a le's index (nucleus response codes 75, 76, 77, 98,
165, 166, 167 and 176), only the regeneration of the Data Storage for this le will continue. When
the regeneration process is complete, the index of this le is marked as invalid. The ADAINV
REINVERT function with the ALL_FIELDS option then has to be run for this le (please refer to
the ADAINV utility in this manual for more detailed information). If index errors occur and if the
regenerate includes several Protection Logs, all of the Protection Logs should be processed before
reinverting the index. Reinverting the index each time a Protection Log results in index errors
would waste considerable amounts of time and computer resources.
PLOG = number
This parameter species the log number of the Adabas Protection Log to be used as input for the
REGENERATE function. This number can be found with ADARECusing theLIST = BRIEF function.
File Regeneration
This option of theREGENERATE function re-applies all updates in a Protection Log for the specied
les or ranges of les. LOB les specied are ignored, but the LOB les assigned to all base les
http://slidepdf.com/reader/full/adabas-631-utils 339/431
7/18/2019 adabas 6.3.1 utils
values for these keywords). This procedure is repeated until the end of the Protection Log is
reached.
The les remain locked, because more calls to REGENERATE may follow. After the les regener-
ation is nished, you must unlock the les with the ADAOPR command UNLOCK.
[NO]BI_CHECK
If this option is set to BI_CHECK, ADAREC checks the consistency of the before images in the
Protection Log against the data in the database (is the ISN in use; does the record exist; is there a
before image
relevant mismatch?).
information If a mismatch
and does is encountered,
not perform the update. ADAREC issues messages containing the
If this option is set to NOBI_CHECK, the consistency check is still made and the ERROR_LOG is
implicitly enabled; however, on nding a BI inconsistency, the update is made and the mismatch
is reported to the ERROR_LOG (see below). If errors are encountered, only the rst error for each
le will be displayed, all subsequent errors are logged to the ERROR_LOG. Note that the index
might become inconsistent in this case.
NOBI_CHECK improves performance at the expense of possible loss of data consistency. We advise
you therefore not to use NOBI_CHECK for mission critical databases.
This parameter species the blocks in the Protection Log les that contain the corresponding
checkpoint names. The block numbers can be taken from ADAREC LIST=FULL.
This parameter species the starting and ending checkpoint names. The checkpoint names can be
taken from the ADAREP database status report.
If processing is to start at the beginning of the Protection Log le, the rst parameter must be
omitted. However, if the rst checkpoint name is supplied, it must be found in the rst Protection
Log le.
If processing is to stop at the end of the last Protection Log le, the second checkpoint name must
be omitted.
http://slidepdf.com/reader/full/adabas-631-utils 340/431
7/18/2019 adabas 6.3.1 utils
[NO]ERROR_LOG
Setting this option to ERROR_LOG enables the automatic logging of any BI inconsistencies that
may be detected when using the NOBI_CHECK option. The contents of the error le produced
can be examined using the ADAERR utility. Do not print this error le using the standard OpenVMS
print
utilityutilities, since the
in this manual forrecords contain information.
more detailed non-printable characters. Please refer to the ADAERR
ON_ERROR = keyword
Valid keywords are ABORT and EXCLUDE. The keyword used determines what action to take if
ADAREC detects non-fatal errors during processing (e.g. response code 17, le not loaded). ABORT
abnormally terminates regenerate processing, and EXCLUDE excludes the le in question from
the regenerate if Data Storage errors occur (nucleus response codes 17, 49, 75, 77 and 113).
If, however, an error occurs while updating a le's index (nucleus response codes 75, 76, 77, 98,
165, 166, 167 and 176), only the regeneration of the Data Storage for this le will continue. When
the regeneration process is complete, the index of this le is marked as invalid. The ADAINV
REINVERT function with the ALL_FIELDS option then has to be run for this le (please refer to
the ADAINV utility in this manual for more detailed information). If index errors occur and if the
regenerate includes several Protection Logs, all of the Protection Logs should be processed before
reinverting the index. Reinverting the index each time a Protection Log results in index errors
would waste considerable amounts of time and computer resources.
PLOG = number
This parameter species the log number of the Adabas Protection Log to be used as input for the
REGENERATE function. This number can be found with ADARECusing theLIST = BRIEF function.
Examples
Example 1
In this example, database 2 is to be regenerated using the Protection Log 2. File 12 is to be excluded
from the regenerate.
http://slidepdf.com/reader/full/adabas-631-utils 341/431
7/18/2019 adabas 6.3.1 utils
adarec: regenerate=*,plog=2
adarec: exclude_files=12
adarec:
REGENERATE summary
Processing of theProtection Log terminated at the SYNP checkpoint in block 4. However, no updates
were found on looking ahead and processing can be continued from the calculated restart point
in block 6. ADAREC displays a list of the utility functions that must be executed before processing
continues. The next call to REGENERATE=* will automatically continue at this calculated restart
point.
adarec: regenerate=*,plog=2
%adarec-I-restartp, calculated restart point - block=6,checkpoint=synp
adarec: exclude_files=12
adarec:
4 ET commands issued
http://slidepdf.com/reader/full/adabas-631-utils 342/431
7/18/2019 adabas 6.3.1 utils
REGENERATE summary
Processing of the Protection Log continues at the calculated restart point. The regenerate terminates
successfully.
Example 2
In this example, database 2 is to be regenerated using the Protection Log 2. Processing is to start
at the checkpoint SYNP in block 6 of the Protection Log. If Data Storage errors occur, the le in
question will be excluded from the regenerate. If index errors occur, the le's index will be excluded
from the regenerate and marked as invalid.
adarec: regenerate=*,plog=2,block=6,checkpoint=synp
adarec: on_error=exclude
adarec:
1 modifications in file 11
3 ET commands issued
1 ET command issued
REGENERATE summary
http://slidepdf.com/reader/full/adabas-631-utils 343/431
7/18/2019 adabas 6.3.1 utils
An ISN conict occurred in le 12 and all subsequent updates to this le were excluded. The cause
of the error has to be investigated. However, the nucleus was started without `OPTIONS=UTILIT-
IES_ONLY' and an N1 command was issued before the regenerate was started.
The Protection Log was processed to its end, the abort system message is used only to indicate a
fatal error.
Example 3
This example is similar to the previous one, with the exception that processing will abort if Data
Storage or index errors are encountered.
adarec: regenerate=*,plog=2,block=6,checkpoint=synp
adarec: on_error=abort
adarec:
1 modifications in file 11
3 ET commands issued
Example 4
In this example, database 2 is to be regenerated using the Protection Log 3. The before images in
the Protection Log will be checked against the data in the database andmismatches will be displayed
on the terminal.
adarec: regenerate=*,plog=3
adarec:
http://slidepdf.com/reader/full/adabas-631-utils 344/431
7/18/2019 adabas 6.3.1 utils
1 ET command issued
3 ET commands issued
REGENERATE summary
One before image mismatch occurred during processing. As a result, one update was excluded
from le 11.
Having restored the les, the same example can be rerun with no consistency check of the before
images and with BI error logging enabled.
The Protection Log was processed to its end, the abort system message is used only to indicate a
fatal error.
adarec: regenerate=*,plog=3,nobi_check
adarec:
%ADAREC-W-RECMIS,
%ADAREC-I-PLOGRB, Before image7mismatch
from record in blockfor ISN
2 in 3 in
PLOG 3 file 11
1 modifications in file 11
1 modifications in file 12
4 ET commands issued
http://slidepdf.com/reader/full/adabas-631-utils 345/431
7/18/2019 adabas 6.3.1 utils
REGENERATE summary
The Protection Log was processed to its end, the abort system message is used only to indicate a
fatal error.
The source of the errors is written to an error le which can be displayed using the ADAERR
utility. The rst error is logged and also written to the error le. All subsequent errors are written
to ERROR_LOG.
Example 5
adarec: regenerate=*,plog=3
adarec:
1 modifications in file 11
http://slidepdf.com/reader/full/adabas-631-utils 346/431
7/18/2019 adabas 6.3.1 utils
1 modifications in file 12
4 ET commands issued
REGENERATE summary
An invalid descriptor name was encountered during processing. As a result, only the data storage
of le 11 was regenerated. All of the descriptors will have to be reinverted in order to reestablish
the index.
The Protection Log was processed to its end, the abort system message is used only to indicate a
fatal error.
If index errors occur and if the regenerate includes several Protection Logs, all of the Protection
Logs should be processed before reinverting the index. Reinverting the index each time a Protection
Log results in index errors would waste considerable amounts of time and computer resources.
Example 6
In this example, database 2 is to be regenerated using the Protection Log 4 after the regenerate
processing of Protection Log 3 resulted in an index error.
adarec: regenerate=*,plog=4
adarec:
1 modifications in file 11
1 modifications in file 12
4 ET commands issued
http://slidepdf.com/reader/full/adabas-631-utils 347/431
7/18/2019 adabas 6.3.1 utils
REGENERATE summary
The index error that occurred while processing Protection Log 3 (see example 5) means that le
11's index is no longer accessible. Only the Data Storage of le 11 is regenerated, whereas both
the Data Storage and the index of le 12 are regenerated.
The Protection Log was processed to its end, the abort system message is used only to indicate a
fatal error.
An interrupted ADAREC run which leaves a UCB entry has to be re-started from the beginning.
Because modications have already been made, a RESTORE database or RESTORE le has to be
executed before re-starting ADAREC. However, if there is no UCB entry, the database has not
been modied and ADAREC can be re-started.
Having performed the rst update, ADAREC writes a `started' checkpoint to the checkpoint le,
e.g.
http://slidepdf.com/reader/full/adabas-631-utils 348/431
7/18/2019 adabas 6.3.1 utils
■ Functional
Overview ....................................................................................................................... 342
■ ProcedureFlow ............................................................................................................................. 343
■ Checkpoints ................................................................................................................................. 343
■
Control Parameters ........................................................................................................................ 344
341
http://slidepdf.com/reader/full/adabas-631-utils 349/431
7/18/2019 adabas 6.3.1 utils
Functional Overview
The ADAREP utility generates the database status report. This contains information about the
current physical layout and logical contents of the database. Unless otherwise stated, the functions
can be executed when the nucleus is active or inactive.
■ The amount and location of space currently allocated for the Associator and Data Storage;
■ The amount and location of unused space available for the Associator and Data Storage;
■ Database le summary;
■
Checkpoint information;
■ Information about each le in the database (space allocation, space available, number of records
loaded, MAXISN setting, eld denitions, etc.);
Only the CHECKPOINTS control parameter (see description below) requires the nucleus to be
active.
http://slidepdf.com/reader/full/adabas-631-utils 350/431
7/18/2019 adabas 6.3.1 utils
Procedure Flow
Checkpoints
http://slidepdf.com/reader/full/adabas-631-utils 351/431
7/18/2019 adabas 6.3.1 utils
Control Parameters
CONSTRAINTS
CONTENTS
M DBID = number
D [NO]FDT
D [NO]FULL
FREE_SPACE
LAYOUT
SUMMARY
CHECKPOINTS
This function displays selected information from the checkpoint list and requires the nucleus to
be active.
Five types of system checkpoints (SYNP, SYNC, SYNX, OPEN and CLSE) are written to the
checkpoint le and to the protection log, together with the user checkpoints written by C1 com-
mands.
SYNC indicates a checkpoint made during nucleus initialization, shutdown or cancel processing;
during the ADAOPR function FEOF = PLOG; or due to ADABCK NEW_PLOG processing.
SYNP indicates a checkpoint made by an Adabas utility that requires privileged control, i.e. the
module can make updates without using the nucleus. A SYNP checkpoint is, for example, written
at the end of an ADAMUP UPDATE run.
SYNX indicates a checkpoint made by a utility that requires exclusive control of one or more les.
A SYNX checkpoint is, for example, written by ADAULD.
http://slidepdf.com/reader/full/adabas-631-utils 352/431
7/18/2019 adabas 6.3.1 utils
Note: If the ADAREC `REGENERATE' function is executed using the Protection Log, this
utility stops at each SYNP checkpoint since DBA intervention is required.
The date strings must correspond to the following absolute data and time format:
dd-mmm-yyyy[:hh[:mm[:ss]]]
Leading zeroes in the date and time specication may be omitted. Any numbers not specied are
set to 0, for example 28-jul-2006 is equivalent to 28-jul-2006:00:00:00.
The following table shows the possible values for parameter CHECKPOINTS,and the corresponding
checkpoints displayed by this value:
Example
adarep: checkpoints=*
http://slidepdf.com/reader/full/adabas-631-utils 353/431
7/18/2019 adabas 6.3.1 utils
■ for user checkpoints created via OP/CL commands for EXU/EXF users or via C1 command: the
user specied in the Additions 1 eld of the relevant OP command;
■ for utility checkpoints: the utility function executed.
Taking the output of the example above (checkpoints=*), the selection criteria can be used to lter
the checkpoints selected as shown below.
Specifying
checkpoints=28-jul-2006:12:50:36
Specifying
checkpoints=(28-jul-2006:12:50:36,)
Specifying
checkpoints=(,28-jul-2006:12:50:36)
http://slidepdf.com/reader/full/adabas-631-utils 354/431
7/18/2019 adabas 6.3.1 utils
Specifying
checkpoints=(28-jul-2006:17, 28-jul-2006:17:24)
CONSTRAINTS
CONSTRAINTS
This function displays information about all referential constraints in the database that you specify
with the DBID parameter.
Example
adarep: constraints
The referential constraint HO links the primary key eld AA in the primary le 9 with the foreign
key eld AC in the foreign le 12. The associated actions are delete no action (DX) and update no
action (UX).
CONTENTS
CONTENTS
This function displays information about the les in the database that you specify with the DBID
parameter.
http://slidepdf.com/reader/full/adabas-631-utils 355/431
7/18/2019 adabas 6.3.1 utils
Example
adarep: contents
The column `Extents' shows the number of logical extents currently assigned to the Normal Index
(N), the Main/Upper Indices (U), the Address Converter (A) and Data Storage (D).
The column `Pad' shows the block padding factors in percent dened for the Associator (A) and
Data Storage (D) (please refer to the ASSOPFAC and DATAPFAC parameters of ADAFDU,
ADAMUP or ADAORD for more detailed information).
http://slidepdf.com/reader/full/adabas-631-utils 356/431
7/18/2019 adabas 6.3.1 utils
If ISNs are to be reused, the ISNs of deleted records can be reassigned to new records. If space is
to be reused, the space released within a block as a result of deleting a record can be reused for a
new record (please refer to the REUSE parameter of ADADBM or ADAFDU for more detailed
information).
The second table shows the number of blocks allocated for Normal Index (NI) Main/Upper Indices
(UI), Address Converter (AC) and Data Storage (DS) for each le. The remaining columns show
the number of unused blocks in the Main/Upper Indices (UI) and Data Storage (DS).
DBID
DBID = number
This parameter selects the database to be used. Multiple DBIDs are supported within one session.
Example
[NO]FDT
[NO]FDT
If this parameter is set to FDT, the Field Denition Tables (FDTs) will be included in the status
information subsequently displayed by the FILES function.
http://slidepdf.com/reader/full/adabas-631-utils 357/431
7/18/2019 adabas 6.3.1 utils
FILES
Example
adarep: fdt
adarep: file=9
Database 1, File 9 (EMPLOYEES ) 28-JAN-2010 14:15:54
ASSO:
2 32KB AC 2,562 2,562 1 0 0 0
1 4KB NI 63 152 90 0 35 0
1 4KB UI 153 167 15 0 0 0
DATA:
1 32KB DS 14 45 32 1 23 0
-------------------------------------------------------------------------------
http://slidepdf.com/reader/full/adabas-631-utils 358/431
7/18/2019 adabas 6.3.1 utils
1 I DA I 1 I A I FI I I
1 I EA I 4 I P I DE,NC I I
1 I F0 I I I PE I I
2 I FA I 60 I W I NU,MU I I
2 I FB I 40 I W I DE,NU I I
2 I FC I 10 I A I NU I I
2 I FD I 3 I A I NU I I
2 I F1 I I I I I
3 I FE I 6 I A I NU I I
3 I FF I 15 I A I NU I I
3 I FG I 15 I A I NU I I
3 I FH I 15 I A I NU I I
3 I FI I 80 I A I DE,NU,MU I I
1 I I0 I I I PE I I
2 I IA I 40 I W I NU,MU I I
2 I IB I 40 I W I DE,NU I I
2 I IC I 10 I A I NU I I
2 I ID I 3 I A I NU I I
2 I IE I 5 I A I NU I I
2 I I1 I I I I I
3 I IF I 6 I A I NU I I
3 I IG I 15 I A I NU I I
3 I IH I 15 I A I NU I I
3 I II I 15 I A I NU I I
3 I IJ I 80 I A I DE,NU,MU I I
1 I JA I 6 I A I DE I SB,SP I
1 I KA I 66 I W I DE,NU I I
1 I L0 I I I PE I I
2 I LA I 3 I A I NU I SP I
2 I LB I 6 I P I NU I SP I
2 I LC I 6 I P I DE,NU,MU I I
1 I MA I 4 I G I NU I I
1 I N0 I I I I I
2 I NA I 2 I U I I SP I
2 I NB I 3 I U I NU I SP I
1 I O0 I I I PE I I
2 I OA I 8 I U I NU I I
I I I I DT=E(DATE)
2 I OB I 8 I U I NU I I
I I I I DT=E(DATE)
1 I PA I 3 I A I DE,NU,MU I I
1 I QA I 7 I P I I I
1 I RA I 0 I A I NU,NV,NB,LB I I
12 I
I S0
SA II 80 I
I W I
I PE
NU I
I I
I
2 I SB I 3 I A I NU I I
2 I SC I 0 I A I NU,MU,NV,NB,LB I I
-------------------------------------------------------------------------------
Type I Name I Length I Format I Options I Parent field(s) Fmt
-------------------------------------------------------------------------------
COLL I CN I1,144 I I NU,HE I BC de@collation=phoneb
ook
http://slidepdf.com/reader/full/adabas-631-utils 359/431
7/18/2019 adabas 6.3.1 utils
I I I I I PRIMARY
-------------------------------------------------------------------------------
SUPER I H1 I 5 I B I NU I NA ( 1 - 2 ) U
I I I I I NB ( 1 - 3 ) U
-------------------------------------------------------------------------------
SUB I S1 I 2 I A I I JA ( 1 - 2 ) A
-------------------------------------------------------------------------------
SUPER I S2 I 46 I A I NU I JA ( 1 - 6 ) A
I I I I I BC ( 1 - 40 ) W
-------------------------------------------------------------------------------
SUPER I S3 I 9 I A I NU,PE I LA ( 1 - 3 ) A
I I I I I LB ( 1 - 6 ) P
-------------------------------------------------------------------------------
Referential Integrity
-------------------------------------------------------------------------------
Type I Name I Refer. I PrimaryI Foreign I Rules
I I file I field I field I
-------------------------------------------------------------------------------
PRIMARY I HO I 12 I AA I AC I DELETE_NOACTION UPDATE_NOACTION
------------------------------------------------------------------------------- ↩
The FILES parameter displays the le number and le name, the highest index level, the padding
factors for ASSO and DATA, the highest and maximum ISNs, the number of records loaded, the
corresponding base le number or LOB le number if it exists, as well as the switches for ISN re-
usage, space reusage, program refresh and ciphering. The time and date of the last FDT modication
are also displayed.
The layout of the ASSO and DATA elements of a le are displayed: the block size on which the
various list elements are stored, the location of these extents and the number of corresponding
blocks/megabytes allocated or unused.
In addition, the FDT function displays the Field Denition Table of the le.
The ags which can be displayed in the Field Denition Table are as follows:
Flag Meaning
http://slidepdf.com/reader/full/adabas-631-utils 360/431
7/18/2019 adabas 6.3.1 utils
FREE_SPACE
FREE_SPACE
This function displays a summary of free blocks in ASSO and DATA. This is a subset of the inform-
ation that is displayed by the LAYOUT function.
Example
adarep: free_space
ASSO:
1-2 611 1,546 936 2,048
DATA:
1 245 768 524 4,096
2 769 868 100 3,072
3-4 869 888 20 6,144
[NO]FULL
[NO]FULL
If FULL is specied together with FDT, dropped elds will be included in the display of the FDT
information (but without the eld names).
LAYOUT
LAYOUT
This function displays a summary of the blocks in ASSO and DATA and reports lost blocks. Lost
blocks are blocks that are not listed in the Free Space Table (FST) and are not allocated to a le,
the DSST or the database's global area. This function also reports double-allocated blocks.
http://slidepdf.com/reader/full/adabas-631-utils 361/431
7/18/2019 adabas 6.3.1 utils
Example
adarep: layout
ASSO:
1 1 30 30 4,096 CB
1 31 31 1 4,096 FCB 1
1 32 32 1 4,096 FDT 1
1 33 35 3 4,096 AC 1
1 36 36 1 4,096 UI 1
1 37 37 1 4,096 NI 1
1 38 38 1 4,096 FCB 2
1 39 39 1 4,096 FDT 2
1 40 40 1 4,096 AC 2
1 41 42 2 4,096 UI 2
1 43 43 1 4,096 NI 2
1 44 44 1 4,096 FCB 3
1 45 45 1 4,096 FDT 3
1 46 48 3 4,096 AC 3
1 49 50 2 4,096 UI 3
1 51 62 12 4,096 NI 3
1 63 152 90 4,096 NI 9
1
1 153
168 167
168 15
1 4,096
4,096 UI
FCB 9
9
1 169 169 1 4,096 FDT 9
1 170 170 1 4,096 NI 14
1 171 172 2 4,096 UI 14
1 173 173 1 4,096 FCB 14
1 174 174 1 4,096 FDT 14
1 175 264 90 4,096 NI 11
1 265 279 15 4,096 UI 11
1 280 280 1 4,096 FCB 11
1 281 281 1 4,096 FDT 11
1 282 321 40 4,096 NI 12
1 322 341 20 4,096 UI 12
1 342 342 1 4,096 FCB 12
1 343 343 1 4,096 FDT 12
1 344 393 50 4,096 NI 13
1 394 403 10 4,096 UI 13
1 404 404 1 4,096 FCB 13
1 405 406 2 4,096 FDT 13
1 407 2,560 2,154 4,096 FREE
2 2,561 2,561 1 32,768 DSST
http://slidepdf.com/reader/full/adabas-631-utils 362/431
7/18/2019 adabas 6.3.1 utils
DATA:
1 1 4 4 32,768 DS 1
1 5 5 1 32,768 DS 2
1 6 13 8 32,768 DS 3
1 14 45 32 32,768 DS 9
1 46 170 125 32,768 DS 14
1 171 202 32 32,768 DS 11
1 203 212 10 32,768 DS 12
1 213 222 10 32,768 DS 13
1 223 640 418 32,768 FREE
LAYOUT provides a summary of all blocks in ASSO and DATA. The locations and lengths of
sections of contiguous blocks, the block size, the type of usage and the numbers of the corresponding
les are displayed. These blocks may be free (FREE) or used for the Global Blocks (CB), the File
Control Block (FCB), the FCB extension (FCBE), the FCB Root Block (FCBR), the Field Denition
Table (FDT), the Free Space Table (FST), the Data Space Storage Table (DSST), the Normal Index
(NI), the Upper/Main Index (UI), the Address Converter (AC) or the Data Storage (DS).
Note: The rst FCBR block and the rst FST block are part of the global blocks. For this
reason, the layout only displays FCBR and FST blocks if the database contains more than
one of these blocks.
SUMMARY
SUMMARY
SUMMARY provides general information about the database and the physical layout of ASSO,
DATA and WORK.
Example
adarep: summary
http://slidepdf.com/reader/full/adabas-631-utils 363/431
7/18/2019 adabas 6.3.1 utils
AC SIZE 3
CURRENT PLOG NUMBER 8
CURRENT CLOG NUMBER 0
-------------------------------------------------------------------------------
10.43
=====
The device type can be "raw" (raw section), "le" (le system) or "worm" (write once, read many
device. e.g. optical disk).
http://slidepdf.com/reader/full/adabas-631-utils 364/431
7/18/2019 adabas 6.3.1 utils
■ Functional
Overview ....................................................................................................................... 358
■ ProcedureFlow ............................................................................................................................. 359
■ Checkpoints ................................................................................................................................. 360
■
Control Parameters ........................................................................................................................ 360
357
http://slidepdf.com/reader/full/adabas-631-utils 365/431
7/18/2019 adabas 6.3.1 utils
Functional Overview
The security utility ADASCRcreates, modies and deletes le protection levels anduser passwords,
and enables the security capabilities of individual passwords. Additionally, the utility is used to
display le and password security information. The output of the export functionality of ADASCR
can be used to apply some of all of the security denitions of a database to another database.
Access to this utility should be strictly limited to the person or persons responsible for database
security (DBA).
Multiple functions may be specied within a single run of ADASCR. There is no restriction on the
number of functions which may be specied.
Note: To copy existing security denitions from one hardware architecture or operating
system to another you must use the EXPORT control parameter. You cannot copy the security
denitions from one hardware architecture to another by using ADAULD/ADADCU and
ADACMP/ADAMUP - this is because the data stored in the security le are stored in a
platform-dependent internal format.
http://slidepdf.com/reader/full/adabas-631-utils 366/431
7/18/2019 adabas 6.3.1 utils
Procedure Flow
http://slidepdf.com/reader/full/adabas-631-utils 367/431
7/18/2019 adabas 6.3.1 utils
Checkpoints
Control Parameters
M DBID = number
DELETE = string
DISPLAY = [PASSWORDS,
PERMISSIONS, PASSWORD = {* | string} |
FILE = {* | (number[-number][,number[-number]]...)} |
VALUE_CRITERIA, PASSWORD = {* | string}]
EXPORT = {PASSWORDS,
D [TARGET_ARCHITECTURE = KEYWORD,]
PASSWORD = {* | string} |
PROTECTIONS,
D [TARGET_ARCHITECTURE = KEYWORD,]
FILE = {* | (number[-number][,number[-number]]...)} |
VALUE_CRITERIA,
D [TARGET_ARCHITECTURE = KEYWORD,]
FILE = {* | (number[-number][,number[-number]]...)}
PASSWORD = {* | string}}
PROTECT = (number[-number][,number[-number]]...)
,ACCESS = (number[,number]...)
,UPDATE = (number[,number]...)
http://slidepdf.com/reader/full/adabas-631-utils 368/431
7/18/2019 adabas 6.3.1 utils
*The search/access buer string parameters must be followed by <Newline> with no preceding
comma.
CHANGE
The value specied by the second string must not be the same as an existing password. A password
may be between 1 and 8 characters long. If less than 8 characters are specied, trailing blanks are
added. The password may not contain any special characters or embedded blanks.
If you specify an equals sign, the value given for 'string' will be converted to upper case; if you
specify a colon, no upper-case conversion is performed.
All entries in eect for the password specied by the rst string remain in eect for the new
password.
Example
DBID
DBID = number
Example
http://slidepdf.com/reader/full/adabas-631-utils 369/431
7/18/2019 adabas 6.3.1 utils
DELETE
DELETE = string
This function deletes the existing password specied by the string, together with its associated
permission levels and Security by Value criteria.
Example
DISPLAY
This function shows current security information for les and passwords, as dened by the
ADASCR utility.
Details of le protection levels, passwords, password permission levels and Security by Value
criteria may be displayed.
FILE = {* | number[-number][,number[-number]]...}
The FILE parameter provides the list, range or ranges of les for which the preceding DISPLAY
function is to be applied.
PASSWORDS
The PASSWORDS parameter prints a list of the passwords currently contained in the security le
in ascending, alphanumeric sequence.
http://slidepdf.com/reader/full/adabas-631-utils 370/431
7/18/2019 adabas 6.3.1 utils
Example
FORTYTWO
G6MON
USERPW1
VOYAGER
PERMISSIONS
The PERMISSIONS parameter prints a list of the access and update capabilities of the specied
password for each currently loaded le, by comparing the password permission information
against the current le protection levels.
Where respective access or update capability is granted, this is shown by the letter Y; conversely,
where the capability is not granted, this is shown by the letter N.
Where access or update permissions for a given le are granted and additional Security by Value
restrictions apply to that le, this is indicated by enclosing brackets, i.e. (Y).
Example
Password : "FORTYTWO"
http://slidepdf.com/reader/full/adabas-631-utils 371/431
7/18/2019 adabas 6.3.1 utils
PROTECTIONS
The PROTECTIONS parameter prints le protection information for the specied range of les,
irrespective of whether or not the les specied are currently loaded.
Example:
VALUE_CRITERIA
The VALUE_CRITERIA parameter prints all Security by Value criteria currently dened for the
specied password.
Example:
Password : "FORTYTWO"
|
| |
| UPDATE_CRITERION
SEARCH_BUFFER=CA,4,S,CA,4,D,AA,O,AA.
| | VALUE_BUFFER=01001599MS
|-------|-----------------------------------------------------
Password : "G6MON"
http://slidepdf.com/reader/full/adabas-631-utils 372/431
7/18/2019 adabas 6.3.1 utils
|-------|-----------------------------------------------------
| 4 | ACCESS_CRITERION
| | SEARCH_BUFFER=.
| | VALUE_BUFFER=
| | UPDATE_CRITERION
| | SEARCH_BUFFER=AA,3.
| | VALUE_BUFFER=HAM
|-------|-----------------------------------------------------
EXPORT
EXPORT = {PASSWORDS,
[TARGET_ARCHITECTURE = keyword,]
PASSWORD = {* | string} |
PROTECTIONS,
[TARGET_ARCHITECTURE = keyword,]
FILE = {* | (number[-number][,number[-number]]...)} |
VALUE_CRITERIA,
[TARGET_ARCHITECTURE = keyword,]
FILE = {* | (number[-number][,number[-number]]...)},
PASSWORD = {* | string}}
This function exports the current security settings (password denitions, le protection levels and
security by value criteria) to the sequential le SCROUT. The output in the le SCROUT can be
used as ADASCR input in order to import the security denitions into another database.
The security denitions may be exported either in mainframe syntax to import them on to main-
frame platforms or in open systems syntax to import them on to open systems platforms.
The following examples for the EXPORT parameter assume that the following security denitions
have already been made:
INSERT=MYSECRET,FILE=(9,12,13),ACCESS=(7,2,4),UPDATE=(11,2,4)
PROTECT=9,ACCESS=7,UPDATE=11
PROTECT=12,ACCESS=2,UPDATE=2
PROTECT=13,ACCESS=4,UPDATE=4
SECURITY_BY_VALUE=MYSECRET,FILE=13,ACCESS_CRITERION,SEARCH_BUFFER=B0,GE.
VALUE_BUFFER=0x01000000
UPDATE_CRITERION,SEARCH_BUFFER=B0,3,GE.
VALUE_BUFFER=0xFF0201
SECURITY_BY_VALUE=MYSECRET,FILE=12,ACCESS_CRITERION,SEARCH_BUFFER=AM,3,GE.
http://slidepdf.com/reader/full/adabas-631-utils 373/431
7/18/2019 adabas 6.3.1 utils
VALUE_BUFFER=0x33000C
UPDATE_CRITERION,SEARCH_BUFFER=AM,3,GE.
VALUE_BUFFER=0x50000C
SECURITY_BY_VALUE=MYSECRET,FILE=9,ACCESS_CRITERION,SEARCH_BUFFER=AZ,2,GE.
VALUE_BUFFER=FR
↩
UPDATE_CRITERION,SEARCH_BUFFER=AH,8,GE,D,AH,8,LE,D,AA,8,LE.
VALUE_BUFFER=195201011952020160000000
PASSWORDS
PASSWORDS,
TARGET_ARCHITECTURE = keyword,
PASSWORD = {*|string}
The PASSWORDS parameter exports password permission levels (access and update) and the
associated le or le list for the given password/passwords.
The TARGET_ARCHITECTUREparameter denes the syntax of the target platform. The following
keywords can be used:
Keyword Meaning
The PASSWORD parameter species the password for the security settings have to be exported.
It
anisasterisk
also possible
for thistoparameter.
export all dened passwords in the database - this can be done by specifying
INSERT=MYSECRET,FILE=(9,12,13),ACCESS=(7,2,4),UPDATE=(11,2,4)
http://slidepdf.com/reader/full/adabas-631-utils 374/431
7/18/2019 adabas 6.3.1 utils
PROTECTIONS
PROTECTIONS,
TARGET_ARCHITECTURE = keyword,
FILE = {*|(number[-number][,number[-number]]…)}
The PROTECTIONS parameter exports the protection levels of the given le, le range or ranges.
The TARGET_ARCHITECTUREparameter denes the syntax of the target platform. The following
keywords can be used:
Keyword Meaning
The FILE parameter species the les for which protection levels are to be exported.
PROTECT=(9,12,13),ACCESS=(7,2,4),UPDATE=(11,2,4)
http://slidepdf.com/reader/full/adabas-631-utils 375/431
7/18/2019 adabas 6.3.1 utils
VALUE_CRITERIA
VALUE_CRITERIA,
TARGET_ARCHITECTURE = (keyword [,keyword]),
FILE = {*|(number[-number][,number[-number]]…)},
PASSWORD = {*|string}
The VALUE_CRITERIA parameter exports dened security-by-value settings for a specic le,
for the password specied by ‘string’.
The TARGET_ARCHITECTURE parameter denes the syntax and also the byte order of the target
platform. The following keywords can be used:
Syntax MAINFRAME
OPEN_SYSTEMS
Byte Order HIGH_ORDER_BYTE_FIRST
LOW_ORDER_BYTE_FIRST
The default byte order corresponds to thearchitecture of the machine on which ADASCRis running.
Note: If you export security-by-value denitions from open systems to mainframe platforms,
a warning will be issued if the search buer contains W-formatted elds. This is because
W-formatted elds are not supported on mainframe platforms in security-by-value deni-
tions. Any search buer that contains W-formatted elds will not be exported.
The FILE parameter species the le list or range(s) of les for which security-by-value denitions
are to be exported. Multiple specications of the same le number are not permitted.
The PASSWORD parameter species the password for which security-by-value denitions are to
be exported. If you specify an asterisk, the export will be for all dened passwords.
http://slidepdf.com/reader/full/adabas-631-utils 376/431
7/18/2019 adabas 6.3.1 utils
SECURITY_BY_VALUE=MYSECRET,FILE=9,ACCESS_CRITERION,SEARCH_BUFFER=AH,8,GE.
VALUE_BUFFER=19520130
UPDATE_CRITERION,SEARCH_BUFFER=AH,8,GE,D,AH,8,LE,D,AA,8,LE.
VALUE_BUFFER=195201011952020160000000
Example
This example shows how to export of existing security settings of a Windows Adabas database
33 in order to subsequently import them into a Unix Adabas database 34.
set SCROUT=scrout.txt
adascr
adascr: db=33
adascr: export=passwords,password=MYSECRET
adascr: export=protections, file=(9,12,13)
adascr: export=VALUE_CRITERIA,target_architecture=(open_systems,
high_order_byte_first),file=(9,12,13),password=MYSECRET
The le “scrout.txt” can now be edited as required, for example, to secure more les other than
the ones exported with the given password.
Now copy the exported text le “scrout.txt” to the desired target platform, in this case to a Unix
platform. Import the exported security settings using ADASCR with the following statement:
http://slidepdf.com/reader/full/adabas-631-utils 377/431
7/18/2019 adabas 6.3.1 utils
You can check the imported security settings with the DISPLAY control parameter of ADASCR:
adascr
adascr: dbid=34 display=passwords
MYSECRET
password : "MYSECRET"
password : "MYSECRET"
http://slidepdf.com/reader/full/adabas-631-utils 378/431
7/18/2019 adabas 6.3.1 utils
| | SEARCH_BUFFER: "AZ,2,GE."
| | VALUE_BUFFER: "FR"
| | UPDATE_CRITERION
| | SEARCH_BUFFER: "AH,8,GE,D,AH,8,LE,D,AA,8,LE. "
| | VALUE_BUFFER: "195201011952020160000000"
| 12 | ACCESS_CRITERION
| | SEARCH_BUFFER: "AM,3,GE."
| | VALUE_BUFFER: 0x33000C
| | UPDATE_CRITERION
| | SEARCH_BUFFER: "AM,3,GE."
| | VALUE_BUFFER: 0x50000C
| 13 | ACCESS_CRITERION
| | SEARCH_BUFFER: "B0,GE."
| | VALUE_BUFFER: 0x01000000
| | UPDATE_CRITERION
| | SEARCH_BUFFER: "B0,3,GE."
| | VALUE_BUFFER: 0xFF0201
|-----------------------------------------------------------------------------
INSERT
This function inserts a password specied by 'string' into the password table.
If you specify an equals sign, the value given for 'string' will be converted to upper case; if you
specify a colon, no upper-case conversion is performed.
The password may be between 1 and 8 characters long. If less than 8 characters are specied,
trailing blanks are added. The password may not contain any special characters or embedded
blanks.
ACCESS = (number[,number]...)
The ACCESS parameter species the access protection levels to be associated with the les or le
ranges specied in the FILE parameter. Each protection level corresponds to one le or one le
range. A value may be specied in the range 0 - 14. The protection levels must be specied in the
same order as the corresponding les or le ranges in the FILE parameter.
http://slidepdf.com/reader/full/adabas-631-utils 379/431
7/18/2019 adabas 6.3.1 utils
FILE = (number[-number[,number[-number]]...)
The FILE parameter species the le list or range(s) of les for which permission levels are being
provided. Multiple specications of the same le number are not permitted.
UPDATE = (number[,number]...)
The UPDATE parameter species the update protection levels to be associated with the les or
le ranges specied in the FILE parameter. Each protection level corresponds to one le or one
le range. A value may be specied in the range 0 - 14. The protection levels must be specied in
the same order as the corresponding les or le ranges in the FILE parameter.
Example
PROTECT
PROTECT = (number[-number][,number[-number]]...)
,ACCESS = (number[,number]...)
,UPDATE = (number[,number]...)
This function inserts (or updates) the access and/or update protection levels for the le, list or
range(s) specied. Multiple specications of the same le number are not permitted.
ACCESS = (number[,number]...)
The ACCESS parameter species the access protection levels to be associated with the les or le
ranges specied in the PROTECT parameter. Each protection level corresponds to one le or one
le range. A value may be specied in the range 0 - 15. The protection levels must be specied in
the same order as the corresponding les or le ranges in the PROTECT parameter.
Note that the maximum protection level for access for the PROTECT function is 15, whereas the
INSERT function allows a maximum of only 14. Therefore, with ACCESS=15, a le can be protected
to prevent any user from accessing it.
http://slidepdf.com/reader/full/adabas-631-utils 380/431
7/18/2019 adabas 6.3.1 utils
UPDATE = (number[,number]...)
The UPDATE parameter species the update protection levels to be associated with the les or
le ranges specied in the PROTECT parameter. Each protection level corresponds to one le or
one le range. A value may be specied in the range 0 - 15. The protection levels must be specied
in the same order as the corresponding les or le ranges in the PROTECT parameter.
Note that the maximum protection level for update for the INSERT function is 14, whereas the
PROTECT function allows a maximum of 15. Therefore, with UPDATE=15, a le can be protected
to prevent any user from updating it.
Example
If the le number of a security-protected le is subsequently changed as a result of running the
RENUMBER function of the ADADBM utility, the PROTECT function has to be reexecuted in order
to reestablish the security protection levels for the le. The passwords also have to be reestablished,
since they reect the old le number.
SECURITY_BY_VALUE
* The search/access buer string parameters must be followed by <Newline> with no preceding
comma.
This function inserts (or updates) the Security by Value criteria for a specic le, for the given
password specied by `string'. The password must already have been inserted into the security
le, using the INSERT function. Each password can have Security by Value criteria dened for a
maximum of 99 les.
If you specify an equals sign, the value given for 'string' will be converted to upper case; if you
specify a colon, no upper-case conversion is performed.
http://slidepdf.com/reader/full/adabas-631-utils 381/431
7/18/2019 adabas 6.3.1 utils
ACCESS_CRITERION
The ACCESS_CRITERION keyword must precede the search buer and value buer which will
dene the criterion for restricting access to data using the provided password.
In order for the access value criterion to be specied, the ACCESS password permission level for
the le must also have previously been set (i.e. non-zero); in the case where the level is not set,
the ACCESS_CRITERION keyword cannot be specied.
FILE = number
The FILE parameter species the le for which the value criteria are to be dened. Exactly one le
must be specied and the le must be currently loaded in the database.
UPDATE_CRITERION
The UPDATE_CRITERION keyword must precede the search buer and value buer which will
dene the criterion for restricting the update of data using the provided password.
In order for the update value criterion to be specied, the UPDATE password permission level
for the le must also have previously been set (i.e. non-zero); in the case where the level is not set,
the UPDATE_CRITERION keyword cannot be specied.
SEARCH_BUFFER = string
The SEARCH_BUFFER parameter is used to provide the search expressions for the access/update
criterion. Syntax and examples of search buer construction are provided in Command Reference ,
Calling Adabas, Search and Value Buers.
Certain restrictions apply to the search buer when used for dening Security by Value criteria;
soft coupling and sub-, super-, hyper- and phonetic descriptors are not supported.
If the required criterion is that no restrictions should apply, then the associated search buer
should be specied containing only the terminator, i.e.:
SEARCH_BUFFER = .
In this case, the VALUE_BUFFER parameter is not required and does not need to be supplied.
http://slidepdf.com/reader/full/adabas-631-utils 382/431
7/18/2019 adabas 6.3.1 utils
VALUE_BUFFER = string
The VALUE_BUFFER parameter is used to provide the corresponding values for the search ex-
pressions for the access/update value criterion, specied in the preceding search buer. The string
may be specied either directly, as an alphanumeric string or as a string using hexadecimal notation.
Example
adascr:
adascr: security_by_value
access_criterion, = g6mon, file =
search_buffer = 3
.
adascr: update_criterion, search_buffer = AC,3.
adascr: value_buffer = HAM
If the either the access or update protection level for the specied le is zero, the associated value
criterion will not be tested when the password is used for accessing/updating records for that le.
http://slidepdf.com/reader/full/adabas-631-utils 383/431
7/18/2019 adabas 6.3.1 utils
376
http://slidepdf.com/reader/full/adabas-631-utils 384/431
7/18/2019 adabas 6.3.1 utils
■ Functional
Overview ....................................................................................................................... 378
■ ProcedureFlow ............................................................................................................................. 379
■ Checkpoints ................................................................................................................................. 379
■
Control Parameters ........................................................................................................................ 380
377
http://slidepdf.com/reader/full/adabas-631-utils 385/431
7/18/2019 adabas 6.3.1 utils
Functional Overview
The ADATST utility is used to ll the control block and the necessary buers in order to issue
Adabas commands.
Both theoldACBAdabas command interface andthe newACBX command interface are supported.
For more information on the command interfaces please refer to the Command Reference document-
ation. Note that the ACB interface can be considered as a subset of the ACBX interface: Fields in
the old ACB Adabas control block are also contained in the new ACBX control block (or the ABDs
– the Adabas buer descriptions) with the dierence that some ACB elds are smaller then the
corresponding elds in the new interface. In particular the buer lengths have been increased that
now Adabas buers greater than 64 KB are possible. Switching between the interfaces is possible,
but when you switch back to the old ACB interface you must be aware of the restrictions of the
old ACB interface.
http://slidepdf.com/reader/full/adabas-631-utils 386/431
7/18/2019 adabas 6.3.1 utils
Procedure Flow
Checkpoints
http://slidepdf.com/reader/full/adabas-631-utils 387/431
7/18/2019 adabas 6.3.1 utils
Control Parameters
A1 {=|:} string
A2 {=|:} string
A3 {=|:} string
A4 {=|:} string
A5 {=|:} string
A6 {=|:} string
ABD
ALOOP [= number]
CB
CBDUMP
CC = string
CID = string
CO1 = string
CO2 = string
CO3 = string
CO4 = string
CO5 = string
CO6 = string
CO7 = string
CO8 = string
M DBID = number
http://slidepdf.com/reader/full/adabas-631-utils 388/431
7/18/2019 adabas 6.3.1 utils
DLOOP
ELOOP
ERRORS = number
FBL = number
FB2L [= number]
FB3L [= number]
FILE = number
GO [= { number | ISNQ } ]
IB [= (number [,number]...)]
IBL = number
D INTERFACE = keyword
ISN = number
ISND = number
ISNI = number
ISNQ = number
LOOP
MB = (number_buffers, number_isns)
D [NO]OUTPUT
OVERWRITE_RB = string
OVERWRITE_RB2 = string
OVERWRITE_RB3 = string
http://slidepdf.com/reader/full/adabas-631-utils 389/431
7/18/2019 adabas 6.3.1 utils
RB [{=|:} string]
RBL = number
RB2L [= number]
RB3L [= number]
READ_RB = string
READ_RB2 = string
READ_RB3 = string
RESPONSE = number
SB [{=|:} string]
SBL = number
TIME
D [NO]TRACE
VB [{=|:} string]
VBL = number
D WAIT [= [time]]
WRITE_RB = string
WRITE_RB2 = string
WRITE_RB3 = string
A1
A1 {=|:} string
If you specify an equals sign, the value given for 'string' will be converted to upper case; if you
specify a colon, no upper-case conversion is performed.
http://slidepdf.com/reader/full/adabas-631-utils 390/431
7/18/2019 adabas 6.3.1 utils
A2
A2 {=|:} string
If you specify an equals sign, the value given for 'string' will be converted to upper case; if you
specify a colon, no upper-case conversion is performed.
A3
A3 {=|:} string
If you specify an equals sign, the value given for 'string' will be converted to upper case; if you
specify a colon, no upper-case conversion is performed.
A4
A4 {=|:} string
If you specify an equals sign, the value given for 'string' will be converted to upper case; if you
specify a colon, no upper-case conversion is performed.
A5
A5 {=|:} string
This parameter sets the Additions 5 eld.
If you specify an equals sign, the value given for 'string' will be converted to upper case; if you
specify a colon, no upper-case conversion is performed.
A6
A6 {=|:} string
If you specify an equals sign, the value given for 'string' will be converted to upper case; if you
specify a colon, no upper-case conversion is performed.
http://slidepdf.com/reader/full/adabas-631-utils 391/431
7/18/2019 adabas 6.3.1 utils
ABD
ABD
This parameter is available only after specifying INTERFACE=ACBX. It displays the Adabas buer
denitions for the Adabas buers that are currently dened.
ALOOP
ALOOP [= number]
This parameter opens a loop to add more lines. `number' is a line number. If a line number is
specied, new lines are added from that point, overwriting existing lines; if no number is specied,
new lines are added at the end. Close the loop with ELOOP.
CB
CB
This function displays the contents of the control block.
If the parameter INTERFACE=ACB is specied, only the elds contained in the old ACB Adabas
control block are displayed.
If the parameter INTERFACE=ACBX is specied, the elds contained in the new ACBX Adabas
control block but not in the old ACB Adabas control block are also displayed.
CBDUMP
CBDUMP
CC
CC = string
http://slidepdf.com/reader/full/adabas-631-utils 392/431
7/18/2019 adabas 6.3.1 utils
CID
CID= string
CO1
CO1 = string
CO2
CO2 = string
CO3
CO3 = string
CO4
CO4 = string
CO5
CO5 = string
CO6
CO6 = string
http://slidepdf.com/reader/full/adabas-631-utils 393/431
7/18/2019 adabas 6.3.1 utils
CO7
CO7 = string
CO8
CO8 = string
DBID
DBID = number
DLOOP
DLOOP
ELOOP
ELOOP
ERRORS
ERRORS = number
This parameter species the number of errors permitted before termination occurs.
EXECUTE
This parameter executes a loop `n' times, where `n' is specied by `number' or by ISNQ. Enter
CTRL/C to terminate a loop.
http://slidepdf.com/reader/full/adabas-631-utils 394/431
7/18/2019 adabas 6.3.1 utils
FB
FB [{=|:} string]
This parameter is used to display the rst format buer or enter data into the format buer. The
length is set implicitly.
FB2
This parameter is used to display the second format buer or enter data into the format buer.
The length is set implicitly.
FB3
This parameter is used to display the third format buer or enter data into the format buer. The
length is set implicitly.
FBL
FBL = number
This parameter denes the rst format buer length in the control block.
FB2L
FB2L = number
This parameter denes the second format buer length in the control block.
FB3L
FBL3 = number
This parameter denes the third format buer length in the control block.
http://slidepdf.com/reader/full/adabas-631-utils 395/431
7/18/2019 adabas 6.3.1 utils
FILE
FILE = number
GO
GO [= { number | ISNQ } ]
This function calls Adabas once or `n' times, where `n' is specied by `number' or ISNQ. Enter
CTRL/C to terminate a loop.
IB
IB [= (number [,number]...)]
This parameter is used to display the ISN buer or enter ISNs. The length is set implicitly.
IBL
IBL = number
This parameter species the ISN buer length in the control block.
INTERFACE
INTERFACE = keyword
This parameter is used to switch between the old and new Adabas command interface. Valid
keywords are ACB and ACBX. The default is ACB. After INTERFACE = ACB has been specied,
Adabas calls are performed with the old ACB Adabas interface - any elds that are only contained
in the newACBX Adabas control block andadditional format buers andrecordbuers are ignored.
You can switch between the old and the new Adabas interface in one Adabas session.
ISN
ISN = number
http://slidepdf.com/reader/full/adabas-631-utils 396/431
7/18/2019 adabas 6.3.1 utils
ISND
ISND = number
ISNI
ISNI = number
ISNL
This parameter is used to set the ISN lower limit with the number supplied, or to move the ISN
ISNQ = number
This parameter species the ISN quantity with the number supplied.
LOOP
LOOP
This function denes the start of a loop. All commands that follow will be saved until an ELOOP
is entered.
MB
MB = (number_buffers, number_isns)
This parameter denes the number of multifetch buers and the number of IS entries that can be
stored in a multifetch buer. number_buers may be a number between 0 and 3. number_isns
must be a number >0.
The MB parameter
multifetch canpure
buers are onlyoutput
be specied after
buers, it isINTERFACE
not possible =toACBX
enter has beeninto
content specied.. Since
the multifetch
buers.
Once multifetch buers have been specied, you can display their contents with the RB, RB 2 and
RB3 parameters.
http://slidepdf.com/reader/full/adabas-631-utils 397/431
7/18/2019 adabas 6.3.1 utils
[NO]OUTPUT
[NO]OUTPUT
If this option is set to NOOUTPUT, no messages are output when calling Adabas `n' times. Only
error messages will be printed.
OVERWRITE_RB
OVERWRITE_RB = string
This parameter species the name of an existing le to which the contents of the rst record buer
are written. The current contents of the le will be overwritten.
OVERWRITE_RB2
OVERWRITE_RB2 = string
This parameter species the name of an existing le to which the contents of the second record
buer are written. The current contents of the le will be overwritten.
OVERWRITE_RB3
OVERWRITE_RB3 = string
This parameter species the name of an existing le to which the contents of the third record
buer are written. The current contents of the le will be overwritten.
RB
RB [{=|:} string]
This parameter is used to display the rst record buer or enter data into the rst record buer.
For input to a le, the length is set implicitly.
If you specify an equals sign, the value given for 'string' will be converted to upper case; if you
specify a colon, no upper-case conversion is performed.
If
MB you display the
parameter, therst
rstrecord buer,
multifetch and at
buer leastdisplayed.
is also one multifetch buer has been dened with the
http://slidepdf.com/reader/full/adabas-631-utils 398/431
7/18/2019 adabas 6.3.1 utils
RB2
This parameter is used to display the second record buer or enter data into the second record
buer. For input to a le, the length is set implicitly.
If you specify an equals sign, the value given for 'string' will be converted to upper case; if you
specify a colon, no upper-case conversion is performed.
If you display the second record buer, and at least two multifetch buers have been dened with
the MB parameter, the second multifetch buer is also displayed.
RB3
This parameter
For input is used
to a le, to display
the length is setthe third record buer or enter data into the third record buer.
implicitly.
If you specify an equals sign, the value given for 'string' will be converted to upper case; if you
specify a colon, no upper-case conversion is performed.
If you display the third record buer, and at three multifetch buer have been dened with the
MB parameter, the third multifetch buer is also displayed.
RBL
RBL = number
This parameter species the rst record buer length in the control block.
RB2L
RB2L = number
This parameter species the second record buer length in the control block.
RB3L
RB3L = number
This parameter species the third record buer length in the control block.
http://slidepdf.com/reader/full/adabas-631-utils 399/431
7/18/2019 adabas 6.3.1 utils
READ_RB
READ_RB = string
This parameter species the name of a le that is read into the rst record buer.
READ_RB2
READ_RB2 = string
This parameter species the name of a le that is read into the second record buer.
READ_RB3
READ_RB3 = string
This parameter species the name of a le that is read into the third record buer.
RESPONSE
RESPONSE = number
This parameter displays the error text for the given nucleus response code.
SB
SB [{=|:} string]
This parameter is used to display the search buer or enter data into the search buer. The length
is set implicitly.
If you specify an equals sign, the value given for 'string' will be converted to upper case; if you
specify a colon, no upper-case conversion is performed.
SBL
SBL = number
This parameter species the search buer length in the control block.
http://slidepdf.com/reader/full/adabas-631-utils 400/431
7/18/2019 adabas 6.3.1 utils
TIME
TIME
This function marks the current time, and displays the dierence between this and the last time
mark.
[NO]TRACE
[NO]TRACE
VB
VB [{=|:} string]
This parameter is used to display the value buer or enter data into the value buer. The length
is set implicitly. If `string' equals RB, the record buer is moved into the value buer.
If you specify an equals sign, the value given for 'string' will be converted to upper case; if you
specify a colon, no upper-case conversion is performed.
VBL
VBL = number
This parameter species the value buer length in the control block.
WAIT
WAIT [= seconds]
This parameter causes ADATST to wait for a given period. The waiting time is entered in seconds.
Once the time is set, you can wait for the same period by entering 'WAIT' without any additions.
http://slidepdf.com/reader/full/adabas-631-utils 401/431
7/18/2019 adabas 6.3.1 utils
Example
adatst: wait = 15
WRITE_RB
WRITE_RB = string
This parameter species the name of a le to which the contents of the rst record buer are
written. The record buer is only written if a le with the specied name does not already exist.
WRITE_RB2
WRITE_RB2 = string
This parameter species the name of a le to which the contents of the second record buer are
written. The record buer is only written if a le with the specied name does not already exist.
WRITE_RB3
WRITE_RB3 = string
This parameter species the name of a le to which the contents of the third record buer are
written. The record buer is only written if a le with the specied name does not already exist.
http://slidepdf.com/reader/full/adabas-631-utils 402/431
7/18/2019 adabas 6.3.1 utils
■ Functional
Overview ....................................................................................................................... 396
■ ProcedureFlow ............................................................................................................................. 398
■ Checkpoints ................................................................................................................................. 400
■
Control Parameters ........................................................................................................................ 401
■ Examples ..................................................................................................................................... 407
■ TEMP Data Set Space Estimation ..................................................................................................... 408
■ Restart Considerations ................................................................................................................... 408
395
http://slidepdf.com/reader/full/adabas-631-utils 403/431
7/18/2019 adabas 6.3.1 utils
Functional Overview
The utility ADAULD unloads an Adabas le, i.e. records are retrieved from a database or an
Adabas backup copy, and written to a sequential le.
■ To change the space allocation, to reduce the number of logical extents assigned to the index,
Address Converter or Data Storage, and/or to change the padding factor. In this case, the le
has to be unloaded, deleted and reloaded. These features are also available with ADAORD;
■ To create one or more test les, all containing the same data. This procedure requires a le to
be unloaded and then reloaded using a dierent le number. This feature is also available with
ADAORD;
■ To extract data from a le for subsequent input to ADAMUP. This is useful for moving records
from a production database to an archive database;
■ To re-establish a le that has been archived on an Adabas backup copy.
When unloading a le from a database, the records may be unloaded in:
Logical sequence
The records are unloaded in an ascending sequence based on the values of a user-specied
descriptor;
ISN sequence
The records are unloaded in ascending ISN sequence;
Physical sequence
The records are unloaded in the order in which they are physically located in Data Storage.
Unloading in logical or ISN sequence requires the nucleus to be active. The nucleus is not required
when unloading in physical sequence, provided ADAULD has access to the database container
les.
When unloading from an Adabas backup copy, the records are unloaded in the sequence in which
they were stored by ADABCK. This is generally in ascending data RABN sequence. However, this
sequence cannot be guaranteed when the DRIVES option was used or when the dump was made
online (please refer to the DRIVES option of the utility ADABCK for more detailed information).
The unloaded records are output in compressed format and are identical to the records produced
by the compression utility ADACMP. Since each data record is preceded by its ISN, these ISNs
can be used as user ISNs when reloading the le (please refer to the USERISN option of the utility
ADAMUP for more detailed information).
http://slidepdf.com/reader/full/adabas-631-utils 404/431
7/18/2019 adabas 6.3.1 utils
The user can specify that the descriptor values required to recreate the index for the le are omitted
during the UNLOAD process (SHORT option). This reduces the unload processing time. This
option must not be used if the output is intended as direct input for ADAMUP.
After completion, ADAULD returns one of the following exit status values:
0
Records have been successfully unloaded, and no database corruption was detected.
12
The unload was successful, but corrupted data records were detected, which were not unloaded.
It is recommended that you run ADAVFY in order to obtain more information about the
database corruptions.
15
The unload was successful, but no records were unloaded. In scripts, you can check for this
status value if further activities are required only after unloading at least one record.
255
Unload was not successful.
http://slidepdf.com/reader/full/adabas-631-utils 405/431
7/18/2019 adabas 6.3.1 utils
Procedure Flow
BACKUP_COPY Function
The sequential les ULD00n, ULDDTA, ULDDVT can have multiple extents. For detailed inform-
ation about les with multiple extents, see Administration , Using Utilities.
http://slidepdf.com/reader/full/adabas-631-utils 406/431
7/18/2019 adabas 6.3.1 utils
DBID Function
Thesequential les ULDDTA, ULDDVTcan have multiple extents. For detailed information about
les with multiple extents, see Administration, Using Utilities.
http://slidepdf.com/reader/full/adabas-631-utils 407/431
7/18/2019 adabas 6.3.1 utils
Notes:
1. A named pipe can be used for this sequential le (not on OpenVMS) see Administration , Using
Utilities for details).
2. Required by oineunload. Will also increasethespeed of online unloadusing physical sequence.
3. Only required if unloading from a backup copy with the online option being used. If the utility
is executed oine, WORK may be used as TEMP if there is no Autorestart pending, by setting
the environment variable TEMP1 to the same value as WORK1.
4. The ADAULD BACKUP_COPY function does not read the DBxxx.INI le to nd TEMP,
therefore you must specify TEMP via environment variables.
Checkpoints
The following table shows the nucleus requirements for each function and the checkpoint written:
Function Nucleus must be active Nucleus must NOT be active Nucleus is NOT required Checkpoint written
BACKUP_COPY X -
DBID X(see note 1) X(see note 3) X(see note2) SYNX
Notes:
1. When unloading in logical sequence or ISN sequence or when the database container le cannot
be accessed by ADAULD (e.g. when unloading from a remote node). Alsoapplies if a le contains
LOB data, because LOB data must be unloaded in logical sequence. Also applies if the search
buer and value buer are provided.
2. When unloading in physical sequence and ADAULD has access to the database container les.
3. When unloading an Adabas system le.
http://slidepdf.com/reader/full/adabas-631-utils 408/431
7/18/2019 adabas 6.3.1 utils
Control Parameters
BACKUP_COPY
BACKUP_COPY = number
,FILE
[,FDT]= number
[,NUMREC = number]
[,[NO]ONLINE]
[,[NO]SHORT | [NO]SINGLE_FILE ]
[,SKIPREC = number]
[,[NO]USEREXIT]
This function unloads records from an Adabas backup copy. You are not allowed to specify a LOB
le. "BACKUP_COPY=number" species the ID of the database from which the backup copy was
derived, and "FILE=number" species the le number. Both oine and online backup copies can
be used. If a LOB le is assigned to the le specied, a partial reload using the ADAMUP parameters
NUMREC, SKIPREC is not possible.
http://slidepdf.com/reader/full/adabas-631-utils 409/431
7/18/2019 adabas 6.3.1 utils
FDT
FILE = number
NUMREC = number
This parameter limits thenumber of data records retrieved from the le when unloading. All records
are unloaded if NUMREC is omitted and SKIPREC is not specied. You cannot use NUMREC if
a LOB le is assigned to the le to be reloaded.
[NO]ONLINE
This
le tooption indicates whether the backup copy might contain online data storage blocks for the
be unloaded.
If the backup copy is expected to contain online data storage blocks, two passes are made when
processing the backup copy. This is because the most recent version of each data storage block
has to be found. Setting this option to NOONLINE unloads in one pass and saves a considerable
amount of processing time, at the risk of ADAULD terminating with an error message if an online
data storage block is detected.
The default used depends on whether or not the Adabas nucleus was active when the backup was
made.
[NO]SHORT
This option indicates whether the descriptor values used to build up the index should be included
in the output or omitted.
If the output is intended as direct input for the mass update utility, the le must be unloaded in
NOSHORT mode.
http://slidepdf.com/reader/full/adabas-631-utils 410/431
7/18/2019 adabas 6.3.1 utils
[NO]SINGLE_FILE
If this option is set to SINGLE_FILE, ADAULD writes the DVT and DATA information to a single
data set (ULDDTA).
SKIPREC = number
This parameter species the number of records to be skipped before unloading is started. You
cannot use SKIPREC if a LOB le is assigned to the le to be reloaded.
[NO]USEREXIT
A user-written routine is dynamically loaded. A pointer to an input parameter block and a pointer
to an output parameter are passed with each call (please see the include le adauex.h for more
information). For each record retrieved from the database, the decision can be made whether to
unload the record (write it to the unload le), skip it or terminate execution immediately.
DBID
DBID = number
,FILE = number
[,FDT]
[,[NO]LITERAL
[,NUMREC = number]
[,SEARCH_BUFFER = string]
[,[NO]SHORT | [NO]SINGLE_FILE ]
[,SKIPREC = number]
[,SORTSEQ = { string | ISN }]
[,STARTISN = number]
[,[NO]USEREXIT]
[,VALUE_BUFFER = string]
http://slidepdf.com/reader/full/adabas-631-utils 411/431
7/18/2019 adabas 6.3.1 utils
FDT
FILE = number
This parameter species the le to be unloaded. You are not allowed to specify a LOB le.
[NO]LITERAL
If this option is set to LITERAL, leading blanks and lower case characters can be specied in the
value buer and remain relevant in the string, i.e. they are not removed or converted to upper
case. If NOLITERAL is set, lower case characters will be transformed to upper case, and leading
blanks will be suppressed except when the value is specied as a hexadecimal value.
NUMREC = number
This parameter limits thenumber of data records retrieved from the le when unloading. All records
of the le are unloaded if NUMREC is omitted and SKIPREC or STARTISN are not specied.
SEARCH_BUFFER = string
This parameter is used to restrict the unloaded records to those which meet the selection criterion
provided. The selection criterion must be provided according to the syntax for search buer entries
as described in the Command Reference Manual.
The maximum length of this parameter is 200 bytes. For complex entries, use the following
method:
adauld: search_buffer=aa,20,a,d,\
> ab,10,a.
aa,20,a,d,ab,10,a.
The values which correspond to the selection criterion are provided by the VALUE_BUFFER
parameter.
http://slidepdf.com/reader/full/adabas-631-utils 412/431
7/18/2019 adabas 6.3.1 utils
[NO]SHORT
This option indicates whether the descriptor values used to build up the index should be included
in the output or omitted.
If the output is intended as direct input for the mass update utility, the le must be unloaded in
NOSHORT mode.
[NO]SINGLE_FILE
If this option is set to SINGLE_FILE, ADAULD writes the DVT and DTA information to a single
data set (ULDDTA).
SINGLE_FILE and SHORT are mutually exclusive.
SKIPREC = number
This parameter species the number of data records to be skipped before unloading is started.
When used together with the STARTISN parameter, positioning is carried out before skipping.
SORTSEQ = string
This parameter controls the sequence in which the le is unloaded. If specied, it may either
contain the eld name of a descriptor, sub- or superdescriptor (1) or the keyword `ISN' (2). The
default is physical sequence (3).
1. Logical sequence
If a string species a eld name of a descriptor or sub/superdescriptor, the records are unloaded
in ascending logical sequence of the descriptor values to which the eld name refers. The eld
name must not refer to a descriptor contained within a periodic group.
If the eld name refers to a descriptor which is a multiple-value eld, the same record may be
unloaded more than once (once for each dierent descriptor value in the record). Therefore, it
is not recommended to use this type of descriptor to control the unload sequence.
If the eld name refers to a descriptor dened with the NU or NC option, the records with a
null value for the descriptor are not unloaded.
http://slidepdf.com/reader/full/adabas-631-utils 413/431
7/18/2019 adabas 6.3.1 utils
2. ISN sequence
If the SORTSEQ
which parameter
they are stored in theisData
omitted, the records are unloaded in the physical sequence in
Storage.
If a search buer has been specied and the SORTSEQ parameter has been omitted, the records
are unloaded in ascending ISN sequence.
STARTISN = number
If the SORTSEQ = ISN option is used or a search buer is provided, the STARTISN parameter may
be specied to start unloading at a given ISN rather than from the lowest ISN in the le. If the
specied ISN does not exist, unloading starts at the next highest ISN found.
[NO]USEREXIT
A user-written routine is dynamically loaded. A pointer to an input parameter block and a pointer
to an output parameter are passed with each call (please see the include le adauex.h for more
information). For each record retrieved from the database, the decision can be made whether to
unload the record (write it to the unload le), skip it or terminate execution immediately.
VALUE_BUFFER = string
If a selection criterion is specied with the SEARCH_BUFFER parameter, this parameter is used
to supply the values which correspond to the selection criterion. The maximum length of this
parameter is 2000 bytes.
Note: See also [NO]LITERAL, which controls the conversion of the value buer to upper
case.
http://slidepdf.com/reader/full/adabas-631-utils 414/431
7/18/2019 adabas 6.3.1 utils
Examples
Example 1
File 6 on the backup copy of database 3 is unloaded. A TEMP data set and two passes through the
backup copy may be required, depending on the default setting of the [NO]ONLINE option.
Example 2
The same le is unloaded. Both data records and descriptor value table entries are written to the
same output le. The backup copy is processed in one pass as no online blocks are expected. No
TEMP data set is required.
Example 3
File 6 in database 3 is unloaded. The records are unloaded in the physical sequence in which they
are stored in the Data Storage. The rst 100 records found are not written to the output les.
Example 4
Ten records from le 6 in database 3 are unloaded. The values of the descriptor AB are used to
control the sequence in which the records are retrieved. The values required to re-create the inverted
list when reloading are omitted.
http://slidepdf.com/reader/full/adabas-631-utils 415/431
7/18/2019 adabas 6.3.1 utils
Example 5
File 6 in database 3 is unloaded. The records are unloaded in ascending ISN sequence starting at
ISN 123.
When unloading from an Adabas backup copy without the NOONLINE option set, the TEMP
data set is required to accumulate information about online block occurrences.
The formula TRH=DRH/1000 can be used as a rough estimate with the default TEMP block size
(4 kilobytes).
where:
ENTIRE
the next highest integer
BSTD
TEMP block size in bytes.
DRH
highest Data Storage RABN in the database on the backup copy. The SUMMARY function of
the ADABCK utility can be used to obtain this number.
TRH
highest RABN required on TEMP.
Restart Considerations
ADAULD has no restart capability. An interrupted ADAULD run must be re-executed from the
beginning.
http://slidepdf.com/reader/full/adabas-631-utils 416/431
7/18/2019 adabas 6.3.1 utils
■ Functional
Overview ....................................................................................................................... 410
■ ProcedureFlow ............................................................................................................................. 411
■ Checkpoints ................................................................................................................................. 412
■
Control Parameters ........................................................................................................................ 412
■ Examples ..................................................................................................................................... 417
409
http://slidepdf.com/reader/full/adabas-631-utils 417/431
7/18/2019 adabas 6.3.1 utils
Functional Overview
The ADAVFY utility checks the consistency of the database. The General Control Block (GCB) is
validated together with each File Control Block (FCB) and each Field Denition Table (FDT) of
the loaded les. The index structure and Data Storage are validated. ADAVFY can also search for
lost RABNs.
Running ADAVFY against an active nucleus, or running in parallel with utilities that perform
database updates, may result in errors being reported. This is because further updates can be made
before the utility terminates and some of these updates are only reected in the nucleus buer
pool. ADAVFY does not require the Adabas nucleus to be active; it processes the database oine.
In general, ADAVFY only displays consistency errors that it detects and it does not modify the
database. However, the following error will be corrected if it is detected: the FCB contains a record
counter for the number of records in the le, and if this counter has an incorrect value, it will be
corrected.
http://slidepdf.com/reader/full/adabas-631-utils 418/431
7/18/2019 adabas 6.3.1 utils
Procedure Flow
http://slidepdf.com/reader/full/adabas-631-utils 419/431
7/18/2019 adabas 6.3.1 utils
Checkpoints
Control Parameters
AC
CONSTRAINTS
DATA
M DBID = number
D ERRORS = number
FCB
FIELD
INDEX
D LEVEL = number
LOST
RECORD
AC
AC
This function validates from the Address Converter to the Data Storage and checks that records
can be found in the specied Data Storage for the les specied with the FILES parameter (see
also DATA).
http://slidepdf.com/reader/full/adabas-631-utils 420/431
7/18/2019 adabas 6.3.1 utils
CONSTRAINTS
CONSTRAINTS
This function veries the referential integrity constraints for the les specied with the FILES
parameter.
DATA
DATA
This function veries Data Storage for the specied le number(s). This function validates from
the Address Converter to the Data Storage and from the Data Storage to the Address Converter
for the les specied with the FILES parameter.
DBID
DBID = number
This parameter selects the database to be veried.
ERRORS
ERRORS = number
This parameter species the number of errors to be reported before the verication of a single le
terminates. The minimum number allowed is 1. The default value is 20.
FCB
FCB
This function validates the le control block together with the Field Denition Table for the les
specied with the FILES parameter (see also INDEX).
FIELD
FIELD
This function validates the Data Storage. It checks the record structure and validates the contents
of unpacked, packed and oating point values for the specied les.
http://slidepdf.com/reader/full/adabas-631-utils 421/431
7/18/2019 adabas 6.3.1 utils
FILES
FILES = { * | (number[-number][,number[-number]]...) }
This parameter species the les to be veried. If an asterisk `*' is entered, all les will be veried.
The FILES parameter is required for all functions except the LOST function.
http://slidepdf.com/reader/full/adabas-631-utils 422/431
7/18/2019 adabas 6.3.1 utils
FROM
The values specied are used in conjunction with the LEVEL option to print various structures.
Please refer to the LEVEL parameter in this section for more detailed information.
INDEX
INDEX
This function veries the complete index to level 1 (Normal Index). This includes verication of
the FCB and FDT.
ADAVFY also counts the number of used, free, reusable and lost NI (Normal Index, index level
1), MI (Main Index, index level 2) and UI (Upper Index, index level 3 or greater) blocks.
Example:
%ADAVFY-I-INDSTR, Index verification
%ADAVFY-I-INDCNT, NI: used: 210, free: 1773, reusage: 17, lost: 0
%ADAVFY-I-INDCNT, UI: used: 1, free: 87, reusage: 2, lost: 1
%ADAVFY-I-INDCNT, MI: used: 9, free: 87, reusage: 2, lost: 1
%ADAVFY-I-INDEND, Index verification completed ↩
Notes:
1. Used index blocks are index blocks that are currently in use.
2. Free index blocks are index blocks that have not yet been used.
3. Reusable index blocks are index blocks that already have been used, but that have become
empty again and were included in the reusage queue. These blocks can be used again.
4. Lost index blocks are index blocks that are not currently used and that are missing in the reusage
queue, and therefore cannot be used again. A value of 1 lost block is normal - this can happen
after running ADAINV REINVERT.
5. The number of free, reusable and lost MI and UI blocks is the same, because these blocks are
taken from the same logical extent. Please note that the numbers displayed are the numbers for
MI and UI together - if you use additional space for MI blocks, this also reduces the number of
space available for UI blocks.
http://slidepdf.com/reader/full/adabas-631-utils 423/431
7/18/2019 adabas 6.3.1 utils
LEVEL
LEVEL = number
This parameter species how much information ADAVFY should output concerning the internal
structures. Specifying this parameter does not aect the degree of verication performed. If this
parameter is used, it must be specied before the function in question.
The FROM option is used to specify an index RABN range. Only the RABNs specied will be
dumped.
LOST
LOST
If this option is specied, ADAVFY searches for lost RABNs in the database. If any lost RABNs
are found, the space can be recovered by using the RECOVER function of ADADBM.
http://slidepdf.com/reader/full/adabas-631-utils 424/431
7/18/2019 adabas 6.3.1 utils
RECORD
RECORD
This function validates the Data Storage and checks the structure of each record for the specied
les (see also FIELD).
Examples
Example 1
adavfy: dbid=3,file=*,data,field,index
All les of database 3 are validated using the functions DATA, FIELD and INDEX. This combination
of functions gives the maximum degree of validation.
Example 2
File 7 of database 3 is validated. The record structure in Data Storage is validated, as well as the
contents of unpacked, packed and oating point elds. ADAVFY prints a list of the RABNs which
have been processed and, for each record processed, its oset in the corresponding RABN, its
length and its ISN.
http://slidepdf.com/reader/full/adabas-631-utils 425/431
7/18/2019 adabas 6.3.1 utils
418
http://slidepdf.com/reader/full/adabas-631-utils 426/431
7/18/2019 adabas 6.3.1 utils
The Adabas kit contains example utility input data - this allows you to try out some of the Adabas
utilities, and to load example data into the database so that you can gain experience of using
Adabas.
The following Adabas demo les are provided with the Adabas kit:
9 EMPLOYEES File used for the C example program (see Command Reference)
11 EMPLOYEES-NAT File used as example le by Natural containing employees data
12 VEHICLES File used as example le by Natural containing vehicles data
13 MISCELLANEOUS Example for a le containing a large number of elds
Notes:
1. On OpenVMS, le 9 is still the old Employees le without the LOB le 14. Please note that the
C example delivered on OpenVMS is still the old version of the example program that corres-
ponds to this old example le, which is dierent to the new version delivered for Windows
and Unix and which is listed in the Command Reference document.
2. For creating the Adabas demo database (an Adabas database containing the Adabas demo les)
on UNIX the command crdemodb <dbid> is available, on Windows there is an icon "Create
Demo
loaded,Database".
when youAlso thea DBA
create workbench allows you to specify that the demo les are to be
database.
The Adabas kit contains the following utility input les in the directory $ADADIR/$ADAVERS/de-
modb (UNIX) or %ADADIR%\%ADAVERS%\demodb (Windows):
419
http://slidepdf.com/reader/full/adabas-631-utils 427/431
7/18/2019 adabas 6.3.1 utils
LoadDemo.bsh (UNIX) Script to load all demo les provided via ADAFDU, ADACMP and ADAMUP
loadall.bat (Windows)
loadle.bat Script to load one of the demo les via ADACMP and ADAMUP – called by
(Only Windows) loadall.bat
emp.cmp ADACMP parameters for the EMPLOYEES le
emp.cmpin Decompressed demo data to be loaded via ADACMP and ADAMUP in the
EMPLOYEES le
emp.fdt FDUFDT le containing the FDT of the EMPLOYEES le
emp.fdu ADAFDU parameters for the EMPLOYEES le
emp_nat.cmp ADACMP parameters for the EMPLOYEES_NAT le
emp_nat.cmpin Decompressed demo data to be loaded via ADACMP and ADAMUP in the
EMPLOYEES_NAT le
emp_nat.fdt FDUFDT le containing the FDT of the EMPLOYEES_NAT le
http://slidepdf.com/reader/full/adabas-631-utils 428/431
7/18/2019 adabas 6.3.1 utils
demo.exp Demo data to be loaded into the les EMPLOYEES-NAT, VEHICLES and MISCELLANEOUS
via @ADABAS$VERSION:DBGEN.COM
http://slidepdf.com/reader/full/adabas-631-utils 429/431
7/18/2019 adabas 6.3.1 utils
422
http://slidepdf.com/reader/full/adabas-631-utils 430/431
7/18/2019 adabas 6.3.1 utils
B Appendix B - prilogc
prilogc is an example program for printing a command log that is created with the nucleus para-
meter CLOGLAYOUT set to 6.
The Adabas kit does not contain an ocial utility for creating printable output from a command
log created with the ADANUC parameter CLOGLAYOUT=6, but there is an example C program
prilogc , which can be modied by the user to adapt the output. This program is not ocially
supported by Software AG - and it is not guaranteed that it will also be provided with future
versions of Adabas.
http://slidepdf.com/reader/full/adabas-631-utils 431/431