Your Browser is not longer supported

Please use Google Chrome, Mozilla Firefox or Microsoft Edge to view the page correctly
Loading...

{{viewport.spaceProperty.prod}}

DML REORGPPP - Reorganizing probable position pointers (PPPs)

&pagelevel(3)&pagelevel

You use the online DML REORGPPP to reorganize PPPs in data records and tables specifically within a realm during live operation.

A REORGPPP DML always refers to a user realm which, like the corresponding DBTT realms, too, must be attached in update mode in the DBH.

The following pages are skipped during PPP reorganization:

  • FPA pages and DBTT pages

  • DBTT anchor pages

  • Free pages

PPP reorganization procedure

Each page in the specified user realm (except skipped pages, see above) is read
sequentially and all PPPs are updated in this page.

To update PPPs, specify the number of pages that have to be processed as far as possible using a REORGPPP DML by means of the statements of the UDS online utility (PAGES-PER-DML parameter of the SDF statement SET-REORGANIZE-PPP-PARAMETERS, see section “Defining the properties of a REORGPPP DML (SET-REORGANIZE-PPP-PARAMETERS)”.

If conflicts with other transactions occur during PPP reorganization, the online DML REORGPPP aborts prematurely in order to reduce the hindrance for parallel application to a minimum. PPP that have already been reorganized in the transaction are retained updated.

PPP reorganization progress data

In each session section the DBH maintains internal progress data concerning the page number in the specified realm where PPPs have been already reorganized, thus enabling reorganization to be continued in multiple consecutive online utility runs without any great effort.

The current page number is provided as the REORG-PPP-CURRENT variable in order to inform the UDS online utility and contains the block number of the relevant database page where further PPP reorganization is continued if applicable.

Initializing the PPP reorganization process

The first REORGPPP DML starts with page number 0, i.e. at the beginning of a realm. After a successful REORGPPP DML has been processed, the position is set to the page number where a subsequent REORGPPP DML continues its work. This value is provided as the current page number in the UDS online utility.

The progress data for reorganization is not stored in the database for later session sections. It is lost when the realm concerned is detached. After the realm has been attached, progress data from previous session sections is therefore no longer available. The next PPP reorganization transaction can only be performed if the current page number is reinitialized.

After the UDS online utility has been restarted, it is possible to continue reorganization specifically in a session section which has not been interrupted. In this case, use the INITIALIZE parameter of the SDF statement SET-REORGANIZE-PPP-PARAMETERS to control initialization of the current page number:

  • INITIALIZE=* ANY
    As the UDS online utility may not have recognized that the progress data has been lost, INITIALIZE=* ANY enables the REORGPPP transaction to be executed using any progress data that still exists. If no progress data is existing, initialization takes place.

  • INITIALIZE=*NO
    INITIALIZE=*NO enables initialization to be explicitly prevented if the realm was detached and then re-attached after the last REORGPPP transaction.

  • INITIALIZE=*YES
    It is, however, also possible to use INITIALIZE=*YES to start initialization of the reorganization process again. In this case the initial page number is initialized. This initialization becomes effective in the first corresponding transaction. All subsequent transactions of a UDS online utility are executed with INITIALIZE=*ANY. Whether these transactions are executed in one or more consecutive procedure sequences (SDF statement REPEAT-PROCEDURE) is not relevant.

End of PPP reorganization

A sequence of REORGPPP transactions is ended internally when the current page number reaches the last page number in the realm. This is reported to the UDS online utility. As a result, no further reorganization transactions are executed in this realm.

Behavior in the event of locked pages

The CLASH-HANDLING parameter of the SDF statement SET-REORGANIZE-PPP-PARAMETERS permits you to control how the DBH should behave when it encounters a locked page (see section “Defining the properties of a REORGPPP DML (SET-REORGANIZE-PPP-PARAMETERS)”).

  • With the default value BREAK-DML, the DML is aborted and the PPP reorganizations that have already taken place are retained. The controller in the UDS online utility can react to this situation and repeat the next reorganization request after a particular wait time.

  • SKIP-PAGE provides the option of skipping a locked page.

  • WAIT-FOR-TRANSACTION provides the option to wait until the locked page is released by the locking transaction.