XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Unresolved
    • Icon: Major Major
    • None
    • 2.0.27.Final
    • SSL
    • None

      Setup :

      JDK-13.0.1
      One way SSL
      HTTP/2
      TLS 1.3

      JVM network / TLS related option

      -Dsun.net.inetaddr.ttl=60
      -Dnetworkaddress.cache.negative.ttl=10
      -Djava.net.preferIPv6Addresses=true
      -Dsun.net.client.defaultConnectTimeout=10000
      -Dsun.net.client.defaultReadTimeout=600000
      -Djdk.certpath.disabledAlgorithms=MD2
      -Djdk.tls.disabledAlgorithms=SSL,SSLv2,SSLv3,TLSv1,TLSv1.1,MD5,RC4,DSA
      -Djdk.tls.acknowledgeCloseNotify=true

      See issues for related similar problem :

      https://issues.redhat.com/browse/UNDERTOW-1406
      https://issues.jboss.org/projects/UNDERTOW/issues/UNDERTOW-1493?filter=allopenissues

      I open a new issues in redhat/JBoss because the stack trace now seems different

      One reason could be the upgrade to JDK 13

      The feature allows for the server-side of JSSE to operate stateless. As described in RFC 50771 for TLS 1.2 and below, and RFC 84462 for TLS 1.3, the TLS server sends internal session information in the form of an encrypted session ticket to a client that supports stateless.

      https://www.oracle.com/technetwork/java/javase/13all-relnotes-5461743.html#NewFeature
      https://bugs.java.com/bugdatabase/view_bug.do?bug_id=JDK-8211018

      --------------------

      top -H -u icwrk
      top - 15:27:02 up 1 day, 15 min, 1 user, load average: 4.19, 3.54, 1.95
      Tasks: 398 total, 3 running, 349 sleeping, 0 stopped, 0 zombie
      Cpu(s): 71.3%us, 25.6%sy, 0.0%ni, 3.0%id, 0.0%wa, 0.0%hi, 0.0%si, 0.1%st
      Mem: 16426368k total, 5928624k used, 10497744k free, 105548k buffers
      Swap: 0k total, 0k used, 0k free, 4033788k cached

      PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
      27939 icwrk 20 0 4356m 1.0g 33m S 93.3 6.5 8:23.39 XNIO-2 I/O-1
      27941 icwrk 20 0 4356m 1.0g 33m S 92.7 6.5 8:19.51 XNIO-2 I/O-3
      27942 icwrk 20 0 4356m 1.0g 33m S 92.3 6.5 8:51.37 XNIO-2 I/O-4
      27940 icwrk 20 0 4356m 1.0g 33m S 91.3 6.5 8:53.02 XNIO-2 I/O-2


      Thread stack trace for thread consuming a lot of CPU looks like :

      egrep -A15 "XNIO.*cpu=[0-9]

      {8,9}

      " icarius-internal-api.out
      "XNIO-2 I/O-1" #43 prio=5 os_prio=0 cpu=53042617.07ms elapsed=154293.94s tid=0x00007f03552b5000 nid=0x6953 runnable [0x00007f02b87f9000]
      java.lang.Thread.State: RUNNABLE
      at java.lang.reflect.AccessibleObject.checkAccess(java.base@13.0.1/AccessibleObject.java:641)
      at java.lang.reflect.Method.invoke(java.base@13.0.1/Method.java:559)
      at io.undertow.protocols.alpn.JDK9AlpnProvider.getSelectedProtocol(JDK9AlpnProvider.java:97)
      at io.undertow.server.protocol.http.AlpnOpenListener$AlpnConnectionListener.handleEvent(AlpnOpenListener.java:359)
      at io.undertow.server.protocol.http.AlpnOpenListener$AlpnConnectionListener.handleEvent(AlpnOpenListener.java:335)
      at org.xnio.ChannelListeners.invokeChannelListener(ChannelListeners.java:92)
      at org.xnio.conduits.ReadReadyHandler$ChannelListenerHandler.readReady(ReadReadyHandler.java:66)
      at io.undertow.protocols.ssl.SslConduit$SslReadReadyHandler.readReady(SslConduit.java:1176)
      at org.xnio.nio.NioSocketConduit.handleReady(NioSocketConduit.java:88)
      at org.xnio.nio.WorkerThread.run(WorkerThread.java:561)

      Locked ownable synchronizers:

      • None

      "XNIO-2 I/O-2" #44 prio=5 os_prio=0 cpu=52925630.09ms elapsed=154293.94s tid=0x00007f0355c29800 nid=0x6954 runnable [0x00007f02b86f8000]
      java.lang.Thread.State: RUNNABLE
      at org.xnio.conduits.ConduitStreamSourceChannel.resumeReads(ConduitStreamSourceChannel.java:135)
      at io.undertow.server.protocol.http.AlpnOpenListener$AlpnConnectionListener.handleEvent(AlpnOpenListener.java:392)
      at io.undertow.server.protocol.http.AlpnOpenListener$AlpnConnectionListener.handleEvent(AlpnOpenListener.java:335)
      at org.xnio.ChannelListeners.invokeChannelListener(ChannelListeners.java:92)
      at org.xnio.conduits.ReadReadyHandler$ChannelListenerHandler.readReady(ReadReadyHandler.java:66)
      at io.undertow.protocols.ssl.SslConduit$SslReadReadyHandler.readReady(SslConduit.java:1176)
      at org.xnio.nio.NioSocketConduit.handleReady(NioSocketConduit.java:88)
      at org.xnio.nio.WorkerThread.run(WorkerThread.java:561)

      Locked ownable synchronizers:

      • None

      "XNIO-2 I/O-3" #45 prio=5 os_prio=0 cpu=52928471.31ms elapsed=154293.94s tid=0x00007f035534a800 nid=0x6955 runnable [0x00007f02b85f8000]
      java.lang.Thread.State: RUNNABLE
      at sun.nio.ch.EPoll.wait(java.base@13.0.1/Native Method)
      at sun.nio.ch.EPollSelectorImpl.doSelect(java.base@13.0.1/EPollSelectorImpl.java:120)
      at sun.nio.ch.SelectorImpl.lockAndDoSelect(java.base@13.0.1/SelectorImpl.java:124)

      • locked <0x00000000e2b4c6a8> (a sun.nio.ch.Util$2)
      • locked <0x00000000e2b4c650> (a sun.nio.ch.EPollSelectorImpl)
        at sun.nio.ch.SelectorImpl.select(java.base@13.0.1/SelectorImpl.java:141)
        at org.xnio.nio.WorkerThread.run(WorkerThread.java:511)

      Locked ownable synchronizers:

      • None

      "XNIO-2 I/O-4" #46 prio=5 os_prio=0 cpu=52905847.46ms elapsed=154293.94s tid=0x00007f0355d77000 nid=0x6956 runnable [0x00007f02b84f6000]
      java.lang.Thread.State: RUNNABLE
      at io.undertow.server.protocol.http.AlpnOpenListener$AlpnConnectionListener.handleEvent(AlpnOpenListener.java:346)
      at io.undertow.server.protocol.http.AlpnOpenListener$AlpnConnectionListener.handleEvent(AlpnOpenListener.java:335)
      at org.xnio.ChannelListeners.invokeChannelListener(ChannelListeners.java:92)
      at org.xnio.conduits.ReadReadyHandler$ChannelListenerHandler.readReady(ReadReadyHandler.java:66)
      at io.undertow.protocols.ssl.SslConduit$SslReadReadyHandler.readReady(SslConduit.java:1176)
      at org.xnio.nio.NioSocketConduit.handleReady(NioSocketConduit.java:88)
      at org.xnio.nio.WorkerThread.run(WorkerThread.java:561)

            flaviarnn Flavia Rainone
            giguereth Thierry Giguère (Inactive)
            Votes:
            1 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated: