I've created DBMS_SCHEDULER job, which type is 'CHAIN'. Chain has 2 steps and 2 rules. Each step has PL/SQL "program" (which inserts SYSDATE to table). First rule's condition is 'TRUE'. Second rule has condition checks if step 1 is completed and then runs second step. After I enabled CHAIN and JOB, then "DBA_SCHEDULER_JOB_RUN_DETAILS" table shows "SUCCEEDED" for both chain steps. Table keeping date has new values. So I would say that chain has ran successfully.
Problem here is that JOB does not execute second time. Job is suppose to run every 5 minutes.
DBMS_SCHEDULER.CREATE_JOB (
job_name => 'RUN_REFRESH',
job_type => 'CHAIN',
job_action => 'QUICK_REFRESH_CHAIN',
repeat_interval => 'FREQ=MINUTELY;INTERVAL=5',
start_date => SYSTIMESTAMP,
enabled => TRUE
);
END;
/
Job is also active in "DBA_SCHEDULER_RUNNING_JOBS" table.
Additional info:
SELECT START_DATE, LAST_START_DATE, NEXT_RUN_DATE
FROM DBA_SCHEDULER_JOBS
WHERE job_name = 'RUN_REFRESH';
shows:
21.01.2015 12:58:18,000000000
21.01.2015 12:58:18,328107000
21.01.2015 12:58:18,000000000
Questions: 1) Does "DBA_SCHEDULER_RUNNING_JOBS" show only currently running jobs instead or enabled/scheduled jobs? 2) Why doesn't JOB run second time, even though CHAIN ran successfully?
Aucun commentaire:
Enregistrer un commentaire