CREATE OR REPLACE PROCEDURE cs_create_job(v_job_id IN INTEGER) IS
a_running_job_count INTEGER;
- PRAGMA AUTONOMOUS_TRANSACTION;
+ PRAGMA AUTONOMOUS_TRANSACTION; --
BEGIN
- LOCK TABLE cs_jobs IN EXCLUSIVE MODE;
+ LOCK TABLE cs_jobs IN EXCLUSIVE MODE; --
SELECT count(*) INTO a_running_job_count FROM cs_jobs WHERE end_stamp IS NULL;
IF a_running_job_count > 0 THEN
- COMMIT; -- free lock
+ COMMIT; -- free lock
raise_application_error(-20000,
'Unable to create a new job: a job is currently running.');
END IF;
SELECT count(*) INTO a_running_job_count FROM cs_jobs WHERE end_stamp IS NULL;
IF a_running_job_count > 0 THEN
- RAISE EXCEPTION 'Unable to create a new job: a job is currently running';
+ RAISE EXCEPTION 'Unable to create a new job: a job is currently running'; --
END IF;
DELETE FROM cs_active_job;
BEGIN
INSERT INTO cs_jobs (job_id, start_stamp) VALUES (v_job_id, now());
EXCEPTION
- WHEN unique_violation THEN
+ WHEN unique_violation THEN --
-- don't worry if it already exists
END;
END;