One off DBMS_JOB in 19c does not retry on failure
I understand that DBMS_JOB is deprecated in 19c, but our current code uses it and relies on it's transactional nature. We run it without an interval so it is a one off job and we also rely on it to retry if it fails. So for example if we run: (test borrowed from Connor McDonald)
DECLARE j INT; BEGIN DBMS_JOB.SUBMIT(j,'declare x int; begin x := 1/0; end;',SYSDATE); END;
Note we have no interval defined. Once we commit in 12c this runs, fails and tries again with an increasing interval up to a max of 16 times. In 19c it runs, fails and the job disappears from user_jobs and user_scheduler_jobs