CPU Spike and persist in single I/O thread (xnio) in EAP 7 until restart
Issue
Application running on EAP 7.3 Update 8 on Windows has for a long time seen CPU spike and persist in a single I/O thread till restart. For instance, in example data here, CPU seems to persist on thread 1660 (nid=0x67c). We see that in thread dumps just in typical poll states or JsseSslConduitEngine handshake calls:
"default I/O-7" #120 prio=5 os_prio=0 tid=0x000000003a8f8000 nid=0x67c runnable [0x00000000405be000]
java.lang.Thread.State: RUNNABLE
at sun.nio.ch.SocketDispatcher.read0(Native Method)
at sun.nio.ch.SocketDispatcher.read(SocketDispatcher.java:43)
at sun.nio.ch.IOUtil.readIntoNativeBuffer(IOUtil.java:223)
at sun.nio.ch.IOUtil.read(IOUtil.java:192)
at sun.nio.ch.SocketChannelImpl.read(SocketChannelImpl.java:379)
- locked <0x000000065fc82300> (a java.lang.Object)
at org.xnio.nio.NioSocketConduit.read(NioSocketConduit.java:289)
at org.xnio.ssl.JsseSslConduitEngine.engineUnwrap(JsseSslConduitEngine.java:692)
at org.xnio.ssl.JsseSslConduitEngine.handleHandshake(JsseSslConduitEngine.java:519)
- locked <0x0000000642b54a80> (a org.xnio.ByteBufferSlicePool$PooledByteBuffer)
at org.xnio.ssl.JsseSslConduitEngine.wrap(JsseSslConduitEngine.java:244)
at org.xnio.ssl.JsseSslStreamSinkConduit.write(JsseSslStreamSinkConduit.java:113)
at org.xnio.ssl.JsseSslStreamSinkConduit.write(JsseSslStreamSinkConduit.java:77)
at org.xnio.conduits.ConduitStreamSinkChannel.write(ConduitStreamSinkChannel.java:154)
at org.jboss.remoting3.remote.RemoteConnection$RemoteWriteListener.handleEvent(RemoteConnection.java:264)
- locked <0x000000064875de88> (a java.util.ArrayDeque)
at org.jboss.remoting3.remote.RemoteConnection$RemoteWriteListener.handleEvent(RemoteConnection.java:243)
at org.xnio.ChannelListeners.invokeChannelListener(ChannelListeners.java:92)
at org.xnio.conduits.WriteReadyHandler$ChannelListenerHandler.writeReady(WriteReadyHandler.java:65)
at org.xnio.nio.NioSocketConduit.handleReady(NioSocketConduit.java:94)
at org.xnio.nio.WorkerThread.run(WorkerThread.java:591)
Environment
- Red Hat JBoss Enterprise Application Platform (EAP)
- 7.4
- 7.3
Subscriber exclusive content
A Red Hat subscription provides unlimited access to our knowledgebase, tools, and much more.