JNLPv4 Thread storm

This issue is archived. You can view it, but you can't modify it. Learn more

XMLWordPrintable

      When JNLP v4 protocol is in use with non blocking IO when there is more than one buffers worth of data to read we re-add the OP_READ to the selector for each read buffer even though we drain until we have read all the data available.
      This causes a new Thread to be created to handles the callback (when the selector wakes up) - but each thread will be blocked as the current thread is still reading and holding the read lock.

      see https://github.com/jenkinsci/remoting/blob/c3e675c9f1dc29a8fd99eca191c1ce1e5ebb2a7e/src/main/java/org/jenkinsci/remoting/protocol/impl/NIONetworkLayer.java#L150-L155

            Assignee:
            Unassigned
            Reporter:
            James Nord
            Archiver:
            Jenkins Service Account

              Created:
              Updated:
              Resolved:
              Archived: