0

I have Schedule job named JOB_PUNI_ZAL_3B that starts every day at 07:00. When type in Developer

select * from USER_SCHEDULER_JOB_RUN_DETAILS where job_name = 'JOB_PUNI_ZAL_3B';

ERROR MESSAGE IS: ORA-00054 resource busy and acquire with NOWAIT specified

Savke
  • 131
  • 3
  • 11
  • From `oerr ora 54` you can see that ORA-00054 is "resource busy and acquire with NOWAIT specified or timeout expired". So your job is being blocked by something. You'll need to investigate what it's doing and whether anything it's looking at is locked. First thing to check though is whether you ran the job code manually and didn't commit/roll back? – Alex Poole Jan 23 '17 at 10:33
  • Job running procedure PUNI_ZAL_3B, and when I manually start it, it has no problem. What to do next? – Savke Jan 23 '17 at 10:41
  • Right, so is the procedure modifying (or just locking) data, and you aren't committing or rolling back after you run it manually? – Alex Poole Jan 23 '17 at 10:58
  • Well I am not sure. I just inserting into new table some large query for analysis. In mean time I solve this problem, just need to [alter session set ddl_lock_timeout = 100] – Savke Jan 23 '17 at 11:07
  • You aren't sure whether you commited after inserting the data? – Alex Poole Jan 23 '17 at 11:08
  • Can help me about notifications to email when Job failed? – Savke Jan 23 '17 at 11:08
  • Sry. For this procedure I haven't commit. I think the problem was, some other in the company doing some inserting into selected tables, so probably the table was locked, and timeout was 0. Now I set timeot 100, and now there is no problem. Tested now fore several times, and always SUCCEEDED – Savke Jan 23 '17 at 11:10

1 Answers1

0

The problem here was that when i schedule JOB to run procedure, a few min ago doing another scheduled procedure, and in the moment when this starting, the previous didn't finish, and they targeting the same table.

Savke
  • 131
  • 3
  • 11