In einem CL-Programm verwende ich den Befehl STRQMQRY. Nun kann es manchen Fällen passieren, dass eine Tabelle, die im Query verwendet werden soll, zu diesem Zeitpunkt gesperrt ist (z.B. RGZPFM).
In diesem Fall habe ich folgende Einträge im Joblog:
Code:
16:12:20 SQL7982 "SET CONNECTION to relational database XYZ completed."
16:12:52 CPF4270 "Cannot allocate member MYTABLE type *FILE."
16:12:52 SQL0913 "Row or object MYTABLE in MYLIB type *FILE in use."
16:12:52 QWM1201 "RUN QUERY command failed with SQLCODE -913."
16:12:52 QWM1102 "RUN QUERY command ended due to error."
16:12:52 QWM2701 "STRQMQRY command failed."
Wie man sieht, liegen zwischen den ersten beiden Meldungen ca. 30 Sekunden, was der Default wait time (DFTWAIT) des Jobs entspricht.

Diesen Timeout Wert möchte ich gerne auf 3600 Sekunden erhöhen, sodass der Job, der STRQMQRY ausführt, solange maximal wartet, bis die Tabelle wieder verwendbar ist.

Ich habe versucht den Wert mit folgenden Parametern zu ändern, leider ohne Erfolg:
  • CHGJOB DFTWAIT(3600)
  • OVRDBF WAITFILE(3600) OVRSCOPE(*CALLLVL)


Zum Test habe ich in einer Session ALCOBJ OBJ((MYLIB/MYTABLE *FILE *EXCL)) ausgeführt und in einer anderen Session den STRQMQRY Befehl.

Habt ihr eine Idee, was ich falsch mache?