PDA

View Full Version : rgzpfm bei objlck



Seiten : [1] 2

karin-vogelmann
01-10-09, 16:00
hallo *all,

ich weiß, auf eine gelockte file kann man keinen rgzpfm machen.

aber ich gebe die hoffnung nicht auf, daß es vll. inzwischen einen trick 17 gibt??

wenn ja, welcher?

lg, karin

cbe
01-10-09, 17:38
Hallo Karin,

wenn es Dir nur darum geht, gelöschte Sätze wegzubekommen, hilft Dir evtl. das Attribut an der Datei REUSEDLT(*YES).
Wenn Dir die sequenzelle Reihenfolge der Daten beim Lesen ohne Key egal ist, ist das eine praktische Option. Es löscht zwar die Sätze nicht raus, es kommen aber auch keine neuen dazu.

Allerdings darf glaube ich auch hier die Datei nicht gelockt sein, macht man also am besten nach dem nächsten (und letzten) RGZPFM :)

Gruß,
Christian

Fuerchau
01-10-09, 18:43
Der Trick17 heißt ENDJOB ;)

holgerscherer
02-10-09, 03:04
aber ich gebe die hoffnung nicht auf, daß es vll. inzwischen einen trick 17 gibt??


Hallo Karin,
wie hier schon geschrieben wurde, da gibts keinen Trick17 - ein Reorganize braucht exklusiven Zugriff. Aber in Zeiten von gutem Datenbankdesign und SQL sollte das zweitrangig sein? :-)

-h

karin-vogelmann
05-10-09, 07:27
moin!

das habe ich befürchtet...

aber ok, dann ist es so.

der reusedlt kommt nicht in frage, weil zum chgpf benötigt man auch exklusiven zugriff und wenn ich den schon hätte, könnte ich ja auch gleich den rgzpfm machen.

der endjob hört sich gut an ;-) leider hängt unser gesamtes MQ-subsystem dran, wenn ich das kille, gibt es ärger.

gutes datenbankdesign haben wir ja (an einigen stellen), aber der reorg wurde bislang nicht berücksichtigt und nun habe ich eine datei, die wächst wie hulle und ich krieg den alten schrott nicht mehr raus...


erst mal besten dank für die aufmunternden kommentare!

lg, karin :)

B.Hauser
05-10-09, 07:52
Hallo Karin,

zwar brauchst Du Exklusiv-Rechte um den RGZPFM ausführen zu können, aber seit Release V5R3 ist es nicht mehr erforderlich, dass der RGZPFM komplett durchgeführt wird.

Wenn Du die Option ALWCANCEL im Befehl RGZPFM auf *YES setzt, kann der Reorg abgebrochen werden. Die bereits ausgeführten Änderungen bleiben erhalten. Wir der Reorg erneut ausgeführt, wird einfach weitergemacht. Wenn Du also nur ein kleines Zeitfenster hast, in dem der Reorg laufen kann, kannst Du diesen auch happchenweise durchführen.

Eventuell solltest Du Dir auch noch die Option KEYFILE(*RPLDLTRCD) im RGZPFM-Befehl ansehen, bei dem werden gelöschte Sätze am Anfang der Datei durch aktive Sätze am Ende der Datei ersetzt. (Sollte allerdings nicht verwendet werden, wenn die Reihenfolge der Sätze eingehalten werden muss, also dann wenn REUSEDLT(*YES) nicht verwendet werden kann.)

Vielleicht hilft das auch schon weiter!

Birgitta

Fuerchau
05-10-09, 08:45
Da du ja gutes Datenbankdesign bereits hast, kannst du ja wohl durchaus REUSEDLT(*YES) einsetzen.

Ich würde sowohl den CHGPF als auch den RGZPFM beim nächsten IPL starten lassen.

kitvb1
05-10-09, 10:17
Here is an open source tool: RGZPFPCT

RGZPFPCT - RGZPFM by percentage deleted records - EcofIT Support Portal (http://www.support.changefit.com/showthread.php?t=27)


It checks for locks before doing a RGZPFM
You can choose the % threshold
You can choose Library: named, *LIBL, *USRLIBL, *CURLIB, *ALL, *ALLUSR

itec01
28-04-10, 13:56
Hat jemand Erfahrungen mit dem RGZPFM ALWCANCEL(*YES)?

Ich denke, der eigentlich Lauf wird länger sein, nur wieviel? Wir haben 3 Dateien, die LF (ca. 20 Stück) sind über die 3 Dateien gejoined und die eine Datei enthält ca. 75 Mio. Sätze.

Wie schnell bricht der reorg Job ab?
Wieviel läuft er länger als ohne alwcancel?

Danke.

BenderD
28-04-10, 14:20
... ich habe den Fred erst jetzt gesehen, der ALWCANCEL ist nur der uninteressante Teil der Angelegenheit, der Parameter LOCK ist die entscheidende Sache. Der RGZPFM gibt sich seit V5R3 mit weniger Sperre zufrieden:
RGZPFM ALWCANCEL(*YES) LOCK(*EXCLRD) lässt lesen während des reorgs zu (dem LOCK(*SHRUPD) würde ich nicht trauen.
Der ALWCANCEL sollte weitgehend Laufzeit neutral sein, soweit man ihn nicht abbricht. Der LOCK(*EXCLRD) darf nur wenig Strom kosten, soweit er korrekt implementiert ist. Der weitergehende LOCK(*SHRUPD) packt zumindest Wartezeiten drauf und kann wohl die Eingangsfolge nicht sicherstellen (braucht man die nicht, sollte man ohnehin reuse deleted records auf *YES einstellen und auf den RGZPFM verzichten.

D*B