ED2 KC- Null Pointer Exception: Continuous Analytics
Background
If you create a new Continuous Analytics job it cannot start right away but continuously fails with a NullPointerException
.
This error is then repeated every $delay_in_seconds
. If you restart Tomcat it somehow can initialize correctly.
Resolution
Restart Tomcat after the first CA Job is scheduled
UiO Jira Ticket
https://jira.dhis2.org/browse/DHIS2-10099
How to reproduce
- Apps > Scheduler > add new Job
- Name: Analytics (continuous)
- Type: Continuous Analytics table job
- Delay in seconds: 120
- Full update of hour: 23
- Last Years: 2
- Save Job
- Wait for it to start
- Check the Scheduler UI ("Failed to execute") and the logs:
java<br>creation:* INFO 2020-12-07T18:17:21,768 'admin' update org.hisp.dhis.scheduling.JobConfiguration, name: Analytics (continuous), uid: KL0VHbVj7e2 (AuditLogUtil.java [http-nio2-8081-exec-90])<br> |
java<br>* INFO 2020-12-07T18:17:21,768 Tried to stop job but job was not found with key: 'KL0VHbVj7e2' (DefaultSchedulingManager.java [http-nio2-8081-exec-90])<br> |
java<br>* INFO 2020-12-07T18:17:21,771 Tried to stop job but job was not found with key: 'KL0VHbVj7e2' (DefaultSchedulingManager.java [http-nio2-8081-exec-90])<br> |
java<br>* INFO 2020-12-07T18:17:21,771 Scheduling job: JobConfiguration{uid='KL0VHbVj7e2', name='Analytics (continuous)', jobType=CONTINUOUS_ANALYTICS_TABLE, cronExpression='null', delay='60', jobParameters=org.hisp.dhis.scheduling.parameters.jackson.ContinuousAnalyticsJobParametersDeserializer$CustomJobParameters@2a48a08c, enabled=true, inMemoryJob=false, lastRuntimeExecution='00:00:00.011', userUid='null', leaderOnlyJob=false, jobStatus=SCHEDULED, nextExecutionTime=null, lastExecutedStatus=FAILED, lastExecuted=2020-12-07 18:09:29.641} (DefaultSchedulingManager.java [http-nio2-8081-exec-90])<br> |
java<br>* INFO 2020-12-07T18:17:21,772 Scheduled job: JobConfiguration{uid='KL0VHbVj7e2', name='Analytics (continuous)', jobType=CONTINUOUS_ANALYTICS_TABLE, cronExpression='null', delay='60', jobParameters=org.hisp.dhis.scheduling.parameters.jackson.ContinuousAnalyticsJobParametersDeserializer$CustomJobParameters@2a48a08c, enabled=true, inMemoryJob=false, lastRuntimeExecution='00:00:00.011', userUid='null', leaderOnlyJob=false, jobStatus=SCHEDULED, nextExecutionTime=null, lastExecutedStatus=FAILED, lastExecuted=2020-12-07 18:09:29.641} (DefaultSchedulingManager.java [http-nio2-8081-exec-90])<br><br> |
java<br>execution:* INFO 2020-12-07T18:17:30,255 Scheduler initiated execution of job: JobConfiguration{uid='KL0VHbVj7e2', name='Analytics (continuous)', jobType=CONTINUOUS_ANALYTICS_TABLE, cronExpression='null', delay='60', jobParameters=org.hisp.dhis.scheduling.parameters.jackson.ContinuousAnalyticsJobParametersDeserializer$CustomJobParameters@19d71706, enabled=true, inMemoryJob=false, lastRuntimeExecution='00:00:00.011', userUid='null', leaderOnlyJob=false, jobStatus=SCHEDULED, nextExecutionTime=null, lastExecutedStatus=FAILED, lastExecuted=2020-12-07 18:09:29.641} (DefaultSchedulingManager.java [http-nio2-8081-exec-61])<br> |
java<br>* INFO 2020-12-07T18:17:30,260 'system-process' create org.hisp.dhis.message.MessageConversation, name: Job failed: 'Analytics (continuous)', uid: rCquIs64ROj (AuditLogUtil.java [taskScheduler-8])<br> |
java<br>* INFO 2020-12-07T18:17:30,265 no recipient (SmsMessageSender.java [taskScheduler-16])<br> |
java<br>* ERROR 2020-12-07T18:17:30,267 Job failed: 'Analytics (continuous)' (DefaultJobInstance.java [taskScheduler-8])<br> |
java<br>* ERROR 2020-12-07T18:17:30,268 java.lang.NullPointerException<br> |
java<br>* INFO 2020-12-07T18:17:30,268 'system-process' update org.hisp.dhis.scheduling.JobConfiguration, name: Analytics (continuous), uid: KL0VHbVj7e2 (AuditLogUtil.java [taskScheduler-8])<br> |
java<br>* INFO 2020-12-07T18:17:31,772 'system-process' update org.hisp.dhis.scheduling.JobConfiguration, name: Analytics (continuous), uid: KL0VHbVj7e2 (AuditLogUtil.java [taskScheduler-24])<br> |
java<br>* INFO 2020-12-07T18:17:31,777 'system-process' create org.hisp.dhis.message.MessageConversation, name: Job failed: 'Analytics (continuous)', uid: j1LMYRiUzJz (AuditLogUtil.java [taskScheduler-24])<br> |
java<br>* INFO 2020-12-07T18:17:31,781 no recipient (SmsMessageSender.java [taskScheduler-7])<br> |
java<br>* ERROR 2020-12-07T18:17:31,782 Job failed: 'Analytics (continuous)' (DefaultJobInstance.java [taskScheduler-24])<br> |
java<br>* ERROR 2020-12-07T18:17:31,782 java.lang.NullPointerException<br> |