-
Type:
Bug
-
Resolution: Fixed
-
Priority:
Medium
-
Affects Version/s: 8.20.1, 8.20.2, 8.20.6
-
Component/s: DVCS Connector
-
None
-
8.2
-
4
-
Severity 2 - Major
-
52
Issue Summary
Gitlab merge request softsync operation breaks due to UnsupportedTemporalTypeException.
This is reproducible on Data Center: (yes)
Steps to Reproduce
- Integrate Jira with Gitlab.
- Create a merge request.
- Wait for an hourly sync or manually trigger softsync for the repo containing the merge request.
Expected Results
Scheduled and manually triggered softsync should be successful with no error and all merge requests made since the last sync should reflect in Jira.
Actual Results
New merge requests, or changes to existing merge requests are not present in Jira, and the below exception is thrown in the atlassian-jira.log file if package
com.atlassian.jira.plugins.dvcs is enabled for DEBUG:
2022-03-23 16:02:12,994+0000 DVCSConnector.MessageExecutor:thread-10 DEBUG ServiceRunner [c.a.j.p.d.gitlab.impl.GitLabRestClientImpl] Failed to get merge requests java.time.temporal.UnsupportedTemporalTypeException: Unsupported field: Year at java.base/java.time.Instant.getLong(Instant.java:602) at java.base/java.time.format.DateTimePrintContext$1.getLong(DateTimePrintContext.java:205) at java.base/java.time.format.DateTimePrintContext.getValue(DateTimePrintContext.java:308) at java.base/java.time.format.DateTimeFormatterBuilder$NumberPrinterParser.format(DateTimeFormatterBuilder.java:2702) at java.base/java.time.format.DateTimeFormatterBuilder$CompositePrinterParser.format(DateTimeFormatterBuilder.java:2341) at java.base/java.time.format.DateTimeFormatterBuilder$CompositePrinterParser.format(DateTimeFormatterBuilder.java:2341) at java.base/java.time.format.DateTimeFormatterBuilder$CompositePrinterParser.format(DateTimeFormatterBuilder.java:2341) at java.base/java.time.format.DateTimeFormatter.formatTo(DateTimeFormatter.java:1843) at java.base/java.time.format.DateTimeFormatter.format(DateTimeFormatter.java:1817) at com.atlassian.jira.plugins.dvcs.gitlab.api.model.GitLabDateFormat.format(GitLabDateFormat.java:80) at com.atlassian.jira.plugins.dvcs.gitlab.impl.GitLabRestClientImpl.getMergeRequests(GitLabRestClientImpl.java:227) at com.atlassian.jira.plugins.dvcs.sync.GitLabSynchronizePullRequestMessageConsumer.onReceive(GitLabSynchronizePullRequestMessageConsumer.java:55) at com.atlassian.jira.plugins.dvcs.sync.GitLabSynchronizePullRequestMessageConsumer.onReceive(GitLabSynchronizePullRequestMessageConsumer.java:20) at com.atlassian.jira.plugins.dvcs.service.MessageExecutor$MessageRunnable.doRun(MessageExecutor.java:345) at com.atlassian.jira.plugins.dvcs.service.MessageExecutor$ReleaseTokenAndEnqueueNextMessage.run(MessageExecutor.java:259) 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:829)
Workaround
While there is no workaround to get softsync to function when the repository contains a merge request, a full forced sync will be successful without error.