Details
-
Bug
-
Status: Closed
-
Major
-
Resolution: Fixed
-
None
-
None
-
None
Description
When we query for a job id which does not exist in database, it throws an exception. We should catch this exception and remote the job from sla map.
2016-09-15 03:01:56,256 ERROR SLACalculatorMemory:517 [pool-1-thread-17] - SERVER[wf152] USER[-] GROUP[-] TOKEN[-] APP[-] JOB[1514510-160812072515385-oozie_JB-C@4] ACTION[-] Exception in SLA processing for job [1514510-160812072515385-oozie_JB-C@4] org.apache.oozie.executor.jpa.JPAExecutorException: E0604: Job does not exist [select w.eventProcessed, w.lastModifiedTS from SLASummaryBean w where w.jobId = :id] at org.apache.oozie.executor.jpa.SLASummaryQueryExecutor.get(SLASummaryQueryExecutor.java:148) at org.apache.oozie.sla.SLACalculatorMemory.updateJobSla(SLACalculatorMemory.java:240) at org.apache.oozie.sla.SLACalculatorMemory.updateAllSlaStatus(SLACalculatorMemory.java:345) at org.apache.oozie.sla.service.SLAService$SLAWorker.run(SLAService.java:131) at org.apache.oozie.service.SchedulerService$2.run(SchedulerService.java:175) at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:308) at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(ScheduledThreadPoolExecutor.java:180) at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:294) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) at java.lang.Thread.run(Thread.java:745)
Thank you puru for pointing this out.