Jira source connector DateTime parse error

The datetime value returned from Jira Rest API has Zulu and offset time format (Example 2020-04-17T14:35:41.000-0400). The connector fails while parsing the value. Is there a workaround?

Error

[2021-04-23 17:01:28,464] ERROR WorkerSourceTask{id=Jira_Issues-0} Task threw an uncaught and unrecoverable exception. Task is being killed and will not recover until manually restarted (org.apache.kafka.connect.runtime.WorkerTask)

java.time.format.DateTimeParseException: Text ‘2020-04-17T14:35:41.000-0400’ could not be parsed, unparsed text found at index 23

           at java.base/java.time.format.DateTimeFormatter.parseResolved0(DateTimeFormatter.java:2049)

           at java.base/java.time.format.DateTimeFormatter.parse(DateTimeFormatter.java:1948)

           at java.base/java.time.LocalDateTime.parse(LocalDateTime.java:492)

           at java.base/java.time.LocalDateTime.parse(LocalDateTime.java:477)

           at io.confluent.connect.jira.util.DateUtils.toJiraDateFormat(DateUtils.java:28)

           at io.confluent.connect.jira.operation.GetIssues.setNextPageUrlUsingLastIssue(GetIssues.java:115)

           at io.confluent.connect.jira.operation.GetIssues.createNextOperations(GetIssues.java:106)

           at io.confluent.connect.operations.Operation.nextOperations(Operation.java:244)

           at io.confluent.connect.operations.OperationExecutor.removeAllCompletedOperations(OperationExecutor.java:504)

           at io.confluent.connect.operations.OperationExecutor.pollForRecords(OperationExecutor.java:298)

           at io.confluent.connect.operations.OperationExecutor.pollForRecords(OperationExecutor.java:276)

           at io.confluent.connect.jira.JiraSourceTask.poll(JiraSourceTask.java:204)

           at org.apache.kafka.connect.runtime.WorkerSourceTask.poll(WorkerSourceTask.java:289)

           at org.apache.kafka.connect.runtime.WorkerSourceTask.execute(WorkerSourceTask.java:256)

           at org.apache.kafka.connect.runtime.WorkerTask.doRun(WorkerTask.java:185)

           at org.apache.kafka.connect.runtime.WorkerTask.run(WorkerTask.java:234)

           at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515)

           at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)

           at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)

           at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)

           at java.base/java.lang.Thread.run(Thread.java:834)

[2021-04-23 17:01:28,464] INFO Stopping task and cancelling any currently running operations (io.confluent.connect.jira.JiraSourceTask)

@beyenemekk I’m investgating this and will get back to you

@beyenemekk I’ve filed a bug internally on this issue with the Jira Source connector. Unfortunately I don’t have a good workaround for you right now unless you’re willing to set your Jira instance timezone to UTC.

Thank you! Since the Jira instance is shared across many teams, it may not be easy. Any ETA for the fix?

I’m sorry @beyenemekk, I cannot provide an ETA, the issue needs to be triaged and prioritized by the team. I’ve linked your issue into the issue tracking so they are aware of blocker for you.