Процесс Oracle Scheduler не завершается до следующего запуска - PullRequest
0 голосов
/ 03 мая 2018

Я хочу знать, что произойдет, если планировщику требуется больше часа, но планировщик настроен на повторный запуск для каждого часа. Будет ли он создавать несколько запущенных сеансов или будет ждать завершения предыдущего запуска?

1 Ответ

0 голосов
/ 03 мая 2018

Это подождет. Я начну эту работу каждую минуту, но для запуска

потребуется 2 минуты
SQL> create table t ( tag varchar2(10), d date);

Table created.

SQL>
SQL> create or replace
  2  procedure P is
  3  begin
  4    insert into t values ('start',sysdate);
  5    commit;
  6    dbms_lock.sleep(120);
  7    insert into t values ('end',sysdate);
  8    commit;
  9  end;
 10  /

Procedure created.

SQL>
SQL> begin
  2    dbms_scheduler.create_job (
  3      job_name        => 'JOB1',
  4      job_type        => 'PLSQL_BLOCK',
  5      job_action      => 'begin p; end;',
  6      start_date      => systimestamp,
  7      repeat_interval => 'freq=minutely;bysecond=0;',
  8      enabled         => true);
  9  end;
 10  /

PL/SQL procedure successfully completed.

SQL> select * from t;

TAG        D
---------- -------------------
start      03/05/2018 22:47:00
end        03/05/2018 22:49:00
start      03/05/2018 22:49:00
...