Loading...
Select Version
&pagelevel(4)&pagelevel
Sie möchten möglichst viel nach vorne verlagern. Irgendwann wird die Datenbank aber abgeschaltet. Dann soll sich die UDS-Online-Utility sofort beenden. Der Realm hat 10000 Seiten. Bei Hinweisen auf Kollisionen soll die UDS-Online-Utility 10 Sekunden warten, weil zu erwarten ist, dass die parallel laufenden Anwendungen bald in anderen Bereichen aktiv werden. Die aufgetretenen Sperrkonflikte werden als Kriterium herangezogen. In der Variablen FREED wird nach Prozedurablauf ausgegeben, wieviele Seiten insgesamt freigegeben wurden. Dabei wird die Variable FREED erst nach einem erfolgreichen FINISH versorgt, damit evtl. asynchrone Abbrüche von Verlagerungstransaktionen den Wert nicht verfälschen.
//SET-ONLINE-UTILITY-PARAMETERS - // DBH=*INDEPENDENT, - // CONFIGURATION-NAME=SESSION5 //SET-RELOCATE-PARAMETERS - // SUBSCHEMA-NAME=SUB5, - // REALM-NAME=AREA5, - // PAGES-PER-DML=2 //DECLARE-VARIABLE - // VARIABLE-NAME=FREED, - // TYPE=*INTEGER, - // INITIAL-VALUE=0 //DECLARE-PROCEDURE - // PROCEDURE-NAME=TA5, - // CODE = ’READY UPDATE;RELOCATE;- // EXIT COND=STATUSCODE EQ 010;- // ADD FREED,RELOC-FREED-PAGES;- // FINISH;- // WAIT 10,COND=RELOC-LOCKED-PAGES GT 0’ //REPEAT-PROCEDURE - // PROCEDURE-NAME=TA5 - // CYCLE-LIMIT=10000 //SHOW-VARIABLE RELOC-ORIGIN //SHOW-VARIABLE FREED