Uploaded image for project: 'Jira Data Center'
  1. Jira Data Center
  2. JRASERVER-44769

Webhooks become non-responsive due to possible bug in atlassian-httpclient

    XMLWordPrintable

Details

    Description

      Summary

      HTTPS WebHooks fail to alert remote applications when an issue has changed in JIRA.

      This is likely caused caused by the fact that JIRA uses Third Party libraries that are affected by the issue in: HTTPCORE-322.

      Environment

      JIRA Versions less than 6.4.0 that are using HTTPS WebHooks.

      Steps to Reproduce

      1. Observe that External Applications are not receiving notifications
      2. Reviewing a Thread dump indicates threads on apache code:
      3. "httpclient-io:thread-7" #75 daemon prio=5 os_prio=0 tid=0x0000000004c4e000 nid=0x9f3b runnable [0x00007f8e6503f000]
           java.lang.Thread.State: RUNNABLE
                at sun.security.ssl.SSLEngineImpl.readNetRecord(SSLEngineImpl.java:829)
                - locked <0x00007f910aecc330> (a sun.security.ssl.SSLEngineImpl)
                at sun.security.ssl.SSLEngineImpl.unwrap(SSLEngineImpl.java:781)
                - locked <0x00007f9320e8e9c8> (a java.lang.Object)
                at javax.net.ssl.SSLEngine.unwrap(SSLEngine.java:624)
                at org.apache.http.nio.reactor.ssl.SSLIOSession.doUnwrap(SSLIOSession.java:228)
                at org.apache.http.nio.reactor.ssl.SSLIOSession.decryptData(SSLIOSession.java:348)
                at org.apache.http.nio.reactor.ssl.SSLIOSession.isAppInputReady(SSLIOSession.java:371)
                - locked <0x00007f92abfaada0> (a org.apache.http.nio.reactor.ssl.SSLIOSession)
                at org.apache.http.impl.nio.reactor.AbstractIODispatch.inputReady(AbstractIODispatch.java:118)
                at org.apache.http.impl.nio.reactor.BaseIOReactor.readable(BaseIOReactor.java:160)
                at org.apache.http.impl.nio.reactor.AbstractIOReactor.processEvent(AbstractIOReactor.java:342)
                at org.apache.http.impl.nio.reactor.AbstractIOReactor.processEvents(AbstractIOReactor.java:320)
                at org.apache.http.impl.nio.reactor.AbstractIOReactor.execute(AbstractIOReactor.java:280)
                at org.apache.http.impl.nio.reactor.BaseIOReactor.execute(BaseIOReactor.java:106)
                at org.apache.http.impl.nio.reactor.AbstractMultiworkerIOReactor$Worker.run(AbstractMultiworkerIOReactor.java:604)
                at java.lang.Thread.run(Thread.java:745)
        
      1. Restarting the JIRA instance temporarily 'stops' this issue.

      Expected Results

      When a Webhook is triggered, it is expected to publish a message over HTTPS. The debug logging in JIRA:

      2015-08-12 23:31:40,968 pool-11-thread-2 DEBUG anonymous 982x3062x2 1ujddof 192.168.0.1 /secure/CommentAssignIssue.jspa [atlassian.webhooks.plugin.PublishTaskFactoryImpl$PublishTaskImpl] Posting to web hook at https://<URL>...
      

      Actual Results

      JIRA Debug logging reports the WebHook is posting a message
      No network activity towards the External Service is observed.

      Notes

      This behavior has not been reproduced by Atlassian.

      Workarounds

      • Upgrade JIRA to JIRA 6.4.X version or higher where the version of httpcore-nio was increased to bumped to 4.3.2
      • Restart JIRA as a temporary measure.

      Attachments

        Activity

          People

            smeshkov Sergey Meshkov
            a38518e05741 David Yu
            Votes:
            1 Vote for this issue
            Watchers:
            8 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: