Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

HTTP/2 connection termination performance #12599

Closed
wtlucy opened this issue Jun 12, 2020 · 0 comments
Closed

HTTP/2 connection termination performance #12599

wtlucy opened this issue Jun 12, 2020 · 0 comments
Assignees
Labels
in:Transport release bug This bug is present in a released version of Open Liberty release:20007 team:Sirius

Comments

@wtlucy
Copy link
Contributor

wtlucy commented Jun 12, 2020

An Open Liberty server can experience excess CPU consumption issues when remote HTTP/2 clients do not terminate HTTP/2 connections gracefully. A javacore stack for this issue is similar to the following:

3XMTHREADINFO3           Java callstack:
4XESTACKTRACE                at sun/security/ssl/TransportContext.getHandshakeStatus(TransportContext.java:592(Compiled Code))
4XESTACKTRACE                at sun/security/ssl/SSLEngineImpl.getHandshakeStatus(SSLEngineImpl.java:801(Compiled Code))
5XESTACKTRACE                   (entered lock: sun/security/ssl/SSLEngineImpl@0x00000000FA9CABF0, entry count: 3)
4XESTACKTRACE                at sun/security/ssl/SSLEngineImpl.writeRecord(SSLEngineImpl.java:249(Compiled Code))
4XESTACKTRACE                at sun/security/ssl/SSLEngineImpl.wrap(SSLEngineImpl.java:136(Compiled Code))
5XESTACKTRACE                   (entered lock: sun/security/ssl/SSLEngineImpl@0x00000000FA9CABF0, entry count: 2)
4XESTACKTRACE                at sun/security/ssl/SSLEngineImpl.wrap(SSLEngineImpl.java:116(Compiled Code))
5XESTACKTRACE                   (entered lock: sun/security/ssl/SSLEngineImpl@0x00000000FA9CABF0, entry count: 1)
4XESTACKTRACE                at javax/net/ssl/SSLEngine.wrap(SSLEngine.java:479(Compiled Code))
4XESTACKTRACE                at com/ibm/ws/channel/ssl/internal/SSLUtils.handleHandshake(SSLUtils.java:694(Compiled Code))
4XESTACKTRACE                at com/ibm/ws/channel/ssl/internal/SSLWriteServiceContext.doHandshake(SSLWriteServiceContext.java:648)
4XESTACKTRACE                at com/ibm/ws/channel/ssl/internal/SSLWriteServiceContext.write(SSLWriteServiceContext.java:308)
4XESTACKTRACE                at com/ibm/ws/channel/ssl/internal/SSLWriteServiceContext.write(SSLWriteServiceContext.java:204)
4XESTACKTRACE                at com/ibm/ws/http/channel/h2internal/H2WriteTree.writeEntry(H2WriteTree.java:254)
4XESTACKTRACE                at com/ibm/ws/http/channel/h2internal/H2WriteTree.writeOrAddToQ(H2WriteTree.java:168)
4XESTACKTRACE                at com/ibm/ws/http/channel/h2internal/H2InboundLink.writeSync(H2InboundLink.java:759)
4XESTACKTRACE                at com/ibm/ws/http/channel/h2internal/H2StreamProcessor.writeFrameSync(H2StreamProcessor.java:1791)
4XESTACKTRACE                at com/ibm/ws/http/channel/h2internal/H2StreamProcessor.readWriteTransitionState(H2StreamProcessor.java:557)
4XESTACKTRACE                at com/ibm/ws/http/channel/h2internal/H2StreamProcessor.processNextFrame(H2StreamProcessor.java:506)
5XESTACKTRACE                   (entered lock: com/ibm/ws/http/channel/h2internal/H2StreamProcessor@0x00000000FA97B9B0, entry count: 1)
4XESTACKTRACE                at com/ibm/ws/http/channel/h2internal/H2StreamProcessor.sendGOAWAYFrame(H2StreamProcessor.java:850)
4XESTACKTRACE                at com/ibm/ws/http/channel/h2internal/H2InboundLink$H2ConnectionTimeout.run(H2InboundLink.java:1205)
4XESTACKTRACE                at com/ibm/ws/http/channel/h2internal/H2InboundLink.close(H2InboundLink.java:1162)
5XESTACKTRACE                   (entered lock: com/ibm/ws/http/channel/h2internal/H2InboundLink$1@0x00000000FA97B718, entry count: 1)
4XESTACKTRACE                at com/ibm/wsspi/channelfw/base/InboundApplicationLink.close(InboundApplicationLink.java:105)
4XESTACKTRACE                at com/ibm/ws/http/dispatcher/internal/channel/HttpDispatcherLink.close(HttpDispatcherLink.java:241)
4XESTACKTRACE                at com/ibm/ws/http/channel/h2internal/H2InboundLink.closeConnectionLink(H2InboundLink.java:962)
4XESTACKTRACE                at com/ibm/ws/http/channel/h2internal/H2MuxTCPReadCallback.error(H2MuxTCPReadCallback.java:102)
4XESTACKTRACE                at com/ibm/ws/channel/ssl/internal/SSLReadServiceContext$SSLReadCompletedCallback.complete(SSLReadServiceContext.java:1825)
4XESTACKTRACE                at com/ibm/ws/tcpchannel/internal/WorkQueueManager.requestComplete(WorkQueueManager.java:503)
4XESTACKTRACE                at com/ibm/ws/tcpchannel/internal/WorkQueueManager.attemptIO(WorkQueueManager.java:573)
4XESTACKTRACE                at com/ibm/ws/tcpchannel/internal/WorkQueueManager.workerRun(WorkQueueManager.java:954)
4XESTACKTRACE                at com/ibm/ws/tcpchannel/internal/WorkQueueManager$Worker.run(WorkQueueManager.java:1043)
4XESTACKTRACE                at com/ibm/ws/threading/internal/ExecutorServiceImpl$RunnableWrapper.run(ExecutorServiceImpl.java:239(Compiled Code))
4XESTACKTRACE                at java/util/concurrent/ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128(Compiled Code))
4XESTACKTRACE                at java/util/concurrent/ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628(Compiled Code))
4XESTACKTRACE                at java/lang/Thread.run(Thread.java:834(Compiled Code))
3XMTHREADINFO3           No native callstack available for this thread
@wtlucy wtlucy added bug This bug is not present in a released version of Open Liberty in:Transport team:Sirius labels Jun 12, 2020
@wtlucy wtlucy self-assigned this Jun 12, 2020
@wtlucy wtlucy added release bug This bug is present in a released version of Open Liberty and removed bug This bug is not present in a released version of Open Liberty labels Jun 12, 2020
@wtlucy wtlucy closed this as completed Jun 15, 2020
@pnicolucci pnicolucci added this to General Issues in Web Tier Team via automation Jun 25, 2020
@pnicolucci pnicolucci moved this from General Issues to Completed Tasks in Web Tier Team Jun 25, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
in:Transport release bug This bug is present in a released version of Open Liberty release:20007 team:Sirius
Projects
Archived in project
Web Tier Team
  
Completed Tasks
Development

No branches or pull requests

2 participants