-
Bug
-
Resolution: Fixed
-
Medium
-
2.0.1
I believe this might be a bug in the Service Desk Mail handler. If a user responds to a JIRA Service Desk email notification using Touchdown for Android that's connected through Exchange Active Sync (EAS), an exception will be recorded in the log files and the comment will not be added to the issue.
Note: Touchdown is a common Android application for interfacing with Microsoft Exchange for email, calendar, and contacts.
As a result, the issue is not updated with the comment and the assignee does not know the user commented. As you might imagine, that could lead to operational issues in responding to user requests in a timely manner.
To reproduce the issue, do the following:
1. Service Desk Customer submits a request through the customer portal
2. Service Desk Team adds comment to request
3. Service Desk Customer receives email notification containing comment and replies from an Android device using Touchdown that's connected through EAS
4. Log file will contain error message indicating the mail handler "failed due to binary incompatibilities"
I've included the error below. A non-trivial number of our users use Touchdown, so it's a significant issue for us. Our current workaround is to monitor all emails that come into the IMAP folder and verify that the comment was created in the issue.
2014-09-30 15:39:50,894 atlassian-scheduler-quartz1.clustered_Worker-2 ERROR ServiceRunner [atlassian.scheduler.core.JobLauncher] Scheduled job with ID 'com.atlassian.jira.service.JiraService:14200' failed due to binary incompatibilities java.lang.NoClassDefFoundError: org/apache/commons/lang3/StringUtils at com.atlassian.servicedesk.squalor.email.ServiceDeskMailUtils.stripQuotedLines(ServiceDeskMailUtils.java:182) at com.atlassian.servicedesk.internal.feature.incomingemail.IncomingEmailManager.addCommentFromEmail(IncomingEmailManager.scala:54) at com.atlassian.servicedesk.internal.feature.incomingemail.IncomingEmailService$$anonfun$addCommentIntoIssue$1$$anonfun$apply$8$$anonfun$apply$9$$anonfun$apply$10.apply(IncomingEmailService.scala:81) at com.atlassian.servicedesk.internal.feature.incomingemail.IncomingEmailService$$anonfun$addCommentIntoIssue$1$$anonfun$apply$8$$anonfun$apply$9$$anonfun$apply$10.apply(IncomingEmailService.scala:81) at com.atlassian.servicedesk.internal.feature.incomingemail.IncomingEmailService$$anonfun$com$$$$$b964c765cf7c52d46b2e78e0cf72fae$$$$inEmailContext$1$$anonfun$apply$15.apply(IncomingEmailService.scala:119) at com.atlassian.servicedesk.internal.utils.context.PortalContextUtil$.inPortalContextWithParam(PortalContextUtil.scala:32) at com.atlassian.servicedesk.internal.feature.incomingemail.IncomingEmailService$$anonfun$com$atlassian$servicedesk$internal$feature$incomingemail$IncomingEmailService$$inEmailContext$1.apply(IncomingEmailService.scala:118) at com.atlassian.servicedesk.internal.utils.context.AuthenticationContextUtil$.runAsUser(AuthenticationContextUtil.scala:15) at com.atlassian.servicedesk.internal.feature.incomingemail.IncomingEmailService.com$atlassian$servicedesk$internal$feature$incomingemail$IncomingEmailService$$inEmailContext(IncomingEmailService.scala:116) at com.atlassian.servicedesk.internal.feature.incomingemail.IncomingEmailService$$anonfun$addCommentIntoIssue$1$$anonfun$apply$8$$anonfun$apply$9.apply(IncomingEmailService.scala:79) at com.atlassian.servicedesk.internal.feature.incomingemail.IncomingEmailService$$anonfun$addCommentIntoIssue$1$$anonfun$apply$8$$anonfun$apply$9.apply(IncomingEmailService.scala:78) at scala.util.Either$RightProjection.flatMap(Either.scala:523) at com.atlassian.servicedesk.internal.feature.incomingemail.IncomingEmailService$$anonfun$addCommentIntoIssue$1$$anonfun$apply$8.apply(IncomingEmailService.scala:78) at com.atlassian.servicedesk.internal.feature.incomingemail.IncomingEmailService$$anonfun$addCommentIntoIssue$1$$anonfun$apply$8.apply(IncomingEmailService.scala:77) at scala.util.Either$RightProjection.flatMap(Either.scala:523) at com.atlassian.servicedesk.internal.feature.incomingemail.IncomingEmailService$$anonfun$addCommentIntoIssue$1.apply(IncomingEmailService.scala:77) at com.atlassian.servicedesk.internal.feature.incomingemail.IncomingEmailService$$anonfun$addCommentIntoIssue$1.apply(IncomingEmailService.scala:76) at scala.util.Either$RightProjection.flatMap(Either.scala:523) at com.atlassian.servicedesk.internal.feature.incomingemail.IncomingEmailService.addCommentIntoIssue(IncomingEmailService.scala:76) at com.atlassian.servicedesk.internal.feature.incomingemail.IncomingEmailService.processEmail(IncomingEmailService.scala:49) at com.atlassian.servicedesk.internal.email.SDMailHandler.processMessage(SDMailHandler.java:36) at com.atlassian.servicedesk.squalor.email.AbstractMailHandler.handleMessage(AbstractMailHandler.java:100) at com.atlassian.servicedesk.squalor.email.SDMessageProcessor.execute(SDMessageProcessor.java:77) at com.atlassian.servicedesk.squalor.email.ServiceDeskMailFetcherService.runImpl(ServiceDeskMailFetcherService.java:71) at com.atlassian.jira.service.services.file.AbstractMessageHandlingService.run(AbstractMessageHandlingService.java:261) at com.atlassian.jira.service.JiraServiceContainerImpl.run(JiraServiceContainerImpl.java:66) at com.atlassian.jira.service.ServiceRunner.runService(ServiceRunner.java:75) at com.atlassian.jira.service.ServiceRunner.runServiceId(ServiceRunner.java:53) at com.atlassian.jira.service.ServiceRunner.runJob(ServiceRunner.java:36) at com.atlassian.scheduler.core.JobLauncher.runJob(JobLauncher.java:135) at com.atlassian.scheduler.core.JobLauncher.launchAndBuildResponse(JobLauncher.java:101) at com.atlassian.scheduler.core.JobLauncher.launch(JobLauncher.java:80) at com.atlassian.scheduler.quartz1.Quartz1Job.execute(Quartz1Job.java:32) at org.quartz.core.JobRunShell.run(JobRunShell.java:223) at org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:549) Caused by: java.lang.ClassNotFoundException: org.apache.commons.lang3.StringUtils at org.apache.felix.framework.ModuleImpl.findClassOrResourceByDelegation(ModuleImpl.java:772) at org.apache.felix.framework.ModuleImpl.access$200(ModuleImpl.java:73) at org.apache.felix.framework.ModuleImpl$ModuleClassLoader.loadClass(ModuleImpl.java:1690) at java.lang.ClassLoader.loadClass(ClassLoader.java:358) ... 35 more
[JSDSERVER-888] JIRA Service Desk mail handler fails to process email replies to email notifications in some circumstances
Workflow | Original: JSD Bug Workflow v5 - TEMP [ 2304088 ] | New: JAC Bug Workflow v3 [ 3125190 ] |
Status | Original: Done [ 10044 ] | New: Closed [ 6 ] |
Workflow | Original: JSD Bug Workflow v5 [ 2058047 ] | New: JSD Bug Workflow v5 - TEMP [ 2304088 ] |
Workflow | Original: JSD Bug Workflow v5 - TEMP [ 2055565 ] | New: JSD Bug Workflow v5 [ 2058047 ] |
Workflow | Original: JSD Bug Workflow v5 [ 1955206 ] | New: JSD Bug Workflow v5 - TEMP [ 2055565 ] |
Workflow | Original: JSD Bug Workflow v4 [ 1614819 ] | New: JSD Bug Workflow v5 [ 1955206 ] |
Labels | New: affects-server |
Workflow | Original: JSD Bug Workflow v2 [ 1602139 ] | New: JSD Bug Workflow v4 [ 1614819 ] |
Workflow | Original: JSD Bug Workflow [ 1398194 ] | New: JSD Bug Workflow v2 [ 1602139 ] |
Workflow | Original: TTT: Simple Issue Tracking Workflow [ 732872 ] | New: JSD Bug Workflow [ 1398194 ] |
Assignee | Original: Dave C [ dcurrie@atlassian.com ] |