Вопросы по условиям Autosys

Итак, у меня есть следующие 3 задания...

  /* ----------------- JOB_A ----------------- */

  insert_job: JOB_A   job_type: CMD
  command: ${BatchScripts}/JOB_A.ksh
  machine: xyz
  owner: abc@xyz
  permission: mx
  date_conditions: 1
  run_calendar: 13BUSDAY
  start_times: "00:10"
  std_out_file: /autotmp/JOB_A.std
  std_err_file: /autotmp/JOB_A.err
  alarm_if_fail: 1
  profile: /export/home/abc/.profile_autosys


  /* ----------------- JOB_B ----------------- */

  insert_job: JOB_B   job_type: CMD
  command: ${BatchScripts}/JOB_B.ksh
  machine: xyz
  owner: abc@xyz
  permission: mx
  date_conditions: 1
  run_calendar: 13BUSDAY
  start_times: "00:15"
  condition: s(JOB_A)
  std_out_file: /autotmp/JOB_B.std
  std_err_file: /autotmp/JOB_B.err
  alarm_if_fail: 1
  profile: /export/home/abc/.profile_autosys


  /* ----------------- JOB_C ----------------- */

  insert_job: JOB_C   job_type: CMD
  command: ${BatchScripts}/JOB_C.ksh
  machine: xyz
  owner: abc@xyz
  permission: mx
  date_conditions: 1
  run_calendar: 13BUSDAY
  start_times: "00:45"
  condition: s(JOB_B)
  std_out_file: /autotmp/JOB_C.std
  std_err_file: /autotmp/JOB_C.err
  alarm_if_fail: 1
  profile: /export/home/abc/.profile_autosys

Они бегают, и проверяя их состояние, я вижу это.

  Job Name            Last Start           Last End             ST Run/Ntry Pri/Xit
  ___________________ ____________________ ____________________ __ ________ _______
  JOB_A               05/18/2016 00:10:03  05/18/2016 00:46:22  SU 76659457/1 0

  Job Name            Last Start           Last End             ST Run/Ntry Pri/Xit
  ___________________ ____________________ ____________________ __ ________ _______
  JOB_B               05/18/2016 00:46:24  05/18/2016 00:48:19  SU 76660708/1 0

  Job Name            Last Start           Last End             ST Run/Ntry Pri/Xit
  ___________________ ____________________ ____________________ __ ________ _______
  JOB_C               05/18/2016 00:45:03  05/18/2016 00:45:07  SU 76660477/1 0

Теперь у нас возникла проблема с JOB_C.. он не работает "должным образом"... и нам удалось отследить тот факт, что он запускается раньше, чем должен. Другими словами, как вы можете видеть по времени START/END JOB_C, оно началось (и закончилось) еще до того, как JOB_B началось.

Меня это смущает, так как у нас есть условие JOB_C для "s(JOB_B)"...

Что может быть причиной такого поведения? JOB_B ждал JOB_A, как и должно было, и работал нормально, однако JOB_C, похоже, немного «нетерпелив».

Это случалось несколько ночей, но не каждую ночь (возможно, 1 из 3 не работает описанным выше образом).

Единственное, о чем я догадываюсь, это то, что, поскольку JOB_B еще не «запустился» @: 45 мин ... он видит SU из предыдущего запуска?

Однако это не имеет смысла, так как JOB_B настроен на запуск @:15 .. не должен ли он сначала измениться на статус AC? затем дождитесь JOB_A на основе условий ??

[править] Версия: CA Workload Automation Agent

для LINUX (Intel) 32-бит

Версия R11.3, пакет обновления 2, уровень обслуживания 0, сборка 508 [/edit]


person Ditto    schedule 24.05.2016    source источник


Ответы (1)


Вы правы в том, что задание C запускается преждевременно, потому что в 00:45 задание B все еще находится в состоянии SU после предыдущего запуска. Задание B ожидает задания A, так как состояние задания A — RU, когда среда выполнения задания B запускается в 00:15.

Задание B не переходит в состояние AC, потому что оно не находится внутри поля, которое могло бы его активировать.

Мое предложение состоит в том, чтобы поместить задания A, B и C в ящик, начало которого запланировано на 00:10, и удалить время начала задания A. Это должно привести к тому, что задание A запустится немедленно в 00:10, а задания B и C перейдут в состояние AC и предотвратят проблему, с которой вы столкнулись.

person Erick B    schedule 25.05.2016
comment
Спасибо... имеет смысл! - person Ditto; 26.05.2016