JCL эксклюзивный доступ к ошибке набора данных - PullRequest
0 голосов
/ 04 июля 2011

Согласно справочному руководству MVS JCL перед началом работы он запрашивает исключительный контроль над набором данных:

DISP and ENQ: Before starting the first step of a job, the initiator requests
control of all of the data sets in that job by issuing an ENQ for each of them,
using the value specified for DISP to determine the kind of ENQ issued. The
initiator issues the ENQ for each data set at the highest level required for that
data set by any step of the job. For example, if all steps of the job request
shared control of a specific data set (DISP=SHR) then the ENQ for that data set
is requested as SHR. If, on the other hand, any step of the job requests
exclusive control of a specific data set (DISP=NEW, DISP=MOD, or DISP=OLD), then
the ENQ for that data set is requested EXCL.

Но у меня есть два разных поведения:

a) Я открываю через ISPF DATASET_A и отправляю JCL, который использует тот же набор данных с DISP = (NEW, CATALOG, DELETE). Я получаю сообщение TSO, потому что набор данных запрашивается заданием, и JCL не запустится, пока я не выпущу набор данных через ISPF.

b) Я отправляю 2 JCL, которые используют один и тот же набор данных с DISP = (NEW, CATALOG, DELETE), но оба запускаются одновременно.

Почему задания не запрашивают монопольный доступ к набору данных при параллельной работе?

1 Ответ

3 голосов
/ 05 июля 2011

Причина, по которой задания в б) не ведут себя так, как вы ожидаете, заключается в том, что вы запускаете их одновременно.Они оба создают новый набор данных с тем же именем, что разрешено.Когда задания, которые когда-либо заканчиваются первым, завершают каталогизацию набора данных, и второе задание получит ошибку NOTCAT2, потому что она уже каталогизирована.

Вторая часть оператора disp (Каталог) - это то, что происходит для успешного шагаи третья часть (Удалить) - это то, что происходит для неудачного шага.

Чтобы создать новый набор данных и получить эксклюзивный доступ, используйте

MOD Указывает одно из следующего:

    * The data set exists and records are to be added to the end of it. The data set must be sequential.

    * A new data set is to be created.

In either case, MOD specifies exclusive (unshared) use of the data set. 

Взято из Руководства IBM

...