Issue Summary
Some SLAs are not correctly calculated in background threads due to a DateTimeRange error. This issue sometimes also affects the visualisation of the SLA data for an affected issue in the Issue View.
Steps to Reproduce
- With an affected issue (we don't know how to reproduce the root-cause);
- Change the issue in a way that a new SLA transition would be created.
Expected Results
Transition occurs normally, with no errors in the log.
Actual Results
The below exception is thrown in the atlassian-jira.log file:
com.atlassian.servicedesk.internal.sla.metric.DateTimeRangeException: com.atlassian.servicedesk.internal.sla.metric.DateTimeRange - the START time of the DateTimeRange (2021-03-29T16:45:18.812Z) must be less than or equal to the STOP time (2021-03-29T16:44:53.734Z) at com.atlassian.servicedesk.internal.sla.metric.DateTimeRange.<init>(DateTimeRange.java:38) at com.atlassian.servicedesk.internal.sla.model.Timeline.getRanges(Timeline.java:136) at com.atlassian.servicedesk.internal.sla.model.Timeline.getPausedRanges(Timeline.java:81) at com.atlassian.servicedesk.internal.sla.metric.TimeMetricCalculationServiceImpl.getElapsedTime(TimeMetricCalculationServiceImpl.java:75) at com.atlassian.servicedesk.internal.sla.goal.GoalCalculationServiceImpl.calculateRemainingTime(GoalCalculationServiceImpl.java:160) at com.atlassian.servicedesk.internal.sla.goal.GoalCalculationServiceImpl.getRemainingTime(GoalCalculationServiceImpl.java:103) at com.atlassian.servicedesk.internal.sla.goal.SlaThresholdDataManagerImpl.updateThresholdData(SlaThresholdDataManagerImpl.java:43) at com.atlassian.servicedesk.internal.sla.data.SlaDataManagerImpl.updateThresholdData(SlaDataManagerImpl.java:542) at com.atlassian.servicedesk.internal.sla.data.SlaDataManagerImpl.processSlaDataUpdate(SlaDataManagerImpl.java:285) at com.atlassian.servicedesk.internal.sla.data.SlaDataManagerImpl.processSlasFromIssueEvent(SlaDataManagerImpl.java:137) at com.atlassian.servicedesk.internal.sla.listener.SlaCycleUpdaterImpl.processServiceDeskProjectEvent(SlaCycleUpdaterImpl.java:261) at com.atlassian.servicedesk.internal.sla.listener.SlaCycleUpdaterImpl.lambda$processEvent$13(SlaCycleUpdaterImpl.java:234) at io.atlassian.fugue.Option$Some.fold(Option.java:444) at com.atlassian.servicedesk.internal.sla.listener.SlaCycleUpdaterImpl.processEvent(SlaCycleUpdaterImpl.java:232) at com.atlassian.servicedesk.internal.sla.listener.SlaCycleUpdaterImpl.lambda$onIssueChangedEvent$2(SlaCycleUpdaterImpl.java:83) at com.atlassian.servicedesk.internal.util.SafeRunner.runAlways(SafeRunner.java:58) at com.atlassian.servicedesk.internal.sla.listener.SlaCycleUpdaterImpl.onIssueChangedEvent(SlaCycleUpdaterImpl.java:79) at com.atlassian.servicedesk.bootstrap.listener.IssueChangedEventHandler.lambda$handleIssueChangedEventOffThreadable$1(IssueChangedEventHandler.java:147) at com.atlassian.ozymandias.SafePluginPointAccess.runnable(SafePluginPointAccess.java:404) at com.atlassian.servicedesk.bootstrap.listener.AbstractEventHandler.safeRun(AbstractEventHandler.java:143)
Similar to:
Workaround
Running a forced recalculation on the issue (versions 4.9.1+) should fix the issue for the specific ticket. See more details about how to do it in Missing or corrupted SLA data in Jira Service Management
Form Name |
---|