Page editor becomes unresponsive when editing pages
プラットフォームについて: Server および Data Center のみ。この記事は、Server および Data Center プラットフォームのアトラシアン製品にのみ適用されます。
Support for Server* products ended on February 15th 2024. If you are running a Server product, you can visit the Atlassian Server end of support announcement to review your migration options.
*Fisheye および Crucible は除く
問題
The page editor or Confluence as a whole becomes unresponsive and the following appears in the atlassian-synchrony-proxy.log
ERROR c.a.s.p.w.WebSocketProxy:49 afterConnectionEstablished - Handshake error
The following appears in catalina.out
SEVERE [http-nio-8090-exec-41] org.springframework.web.socket.handler.ExceptionWebSocketHandlerDecorator.afterConnectionClosed Unhandled error for ExceptionWebSocketHandlerDecorator [delegate=LoggingWebSocketHandlerDecorator [delegate=PerConnectionWebSocketHandlerProxy[handlerType=class com.atlassian.synchrony.proxy.websocket.WebSocketProxy]]]
java.util.concurrent.TimeoutException
at java.util.concurrent.CompletableFuture.timedGet(CompletableFuture.java:1771)
at java.util.concurrent.CompletableFuture.get(CompletableFuture.java:1915)
at com.atlassian.synchrony.proxy.websocket.WebSocketUpstreamHandler.getSynchronySession(WebSocketUpstreamHandler.java:64)
at com.atlassian.synchrony.proxy.websocket.WebSocketProxy.tryCloseRemoteSession(WebSocketProxy.java:94)
at com.atlassian.synchrony.proxy.websocket.WebSocketProxy.afterConnectionClosed(WebSocketProxy.java:78)
at org.springframework.web.socket.handler.PerConnectionWebSocketHandler.afterConnectionClosed(PerConnectionWebSocketHandler.java:97)
at org.springframework.web.socket.handler.WebSocketHandlerDecorator.afterConnectionClosed(WebSocketHandlerDecorator.java:85)
at org.springframework.web.socket.handler.LoggingWebSocketHandlerDecorator.afterConnectionClosed(LoggingWebSocketHandlerDecorator.java:72)
at org.springframework.web.socket.handler.ExceptionWebSocketHandlerDecorator.afterConnectionClosed(ExceptionWebSocketHandlerDecorator.java:78)
at org.springframework.web.socket.adapter.standard.StandardWebSocketHandlerAdapter.onClose(StandardWebSocketHandlerAdapter.java:141)
at org.apache.tomcat.websocket.WsSession.fireEndpointOnClose(WsSession.java:535)
at org.apache.tomcat.websocket.WsSession.doClose(WsSession.java:481)
at org.apache.tomcat.websocket.WsSession.close(WsSession.java:445)
at org.springframework.web.socket.adapter.standard.StandardWebSocketSession.closeInternal(StandardWebSocketSession.java:217)
at org.springframework.web.socket.adapter.AbstractWebSocketSession.close(AbstractWebSocketSession.java:140)
at org.springframework.web.socket.handler.ExceptionWebSocketHandlerDecorator.tryCloseWithError(ExceptionWebSocketHandlerDecorator.java:94)
at org.springframework.web.socket.handler.ExceptionWebSocketHandlerDecorator.afterConnectionEstablished(ExceptionWebSocketHandlerDecorator.java:51)
at org.springframework.web.socket.adapter.standard.StandardWebSocketHandlerAdapter.onOpen(StandardWebSocketHandlerAdapter.java:100)
at org.apache.tomcat.websocket.server.WsHttpUpgradeHandler.init(WsHttpUpgradeHandler.java:133)
at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:816)
at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1415)
at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
at java.lang.Thread.run(Thread.java:748)
診断
環境
Confluence Server 6.x
- Collaborative Editing is enabled
原因
This issue is caused by websockets session being terminated during or after the handshake, leaving the session open on the server when it's not actually connected to the client.
Some environments such as those that use an F5 Load Balancer may encounter as described as in the following articles:
- https://support.f5.com/csp/article/K15357
- https://support.f5.com/csp/article/K14814
- https://access.redhat.com/solutions/3133411
However this is not limited to one specific vendor and is exacerbated by Confluence not detecting and closing these connections.
A product bug has been opened to determine how to fix the root cause of the problem:
ソリューション
This issue is fixed in Confluence 7.0.1. You should upgrade to Confluence 7.0 or later.
回避策
If you're unable to upgrade to Confluence 7.0 or later, a temporary workaround is to switch Synchrony into "Limited" mode.
Follow the steps below to perform the workaround (if Confluence is unresponsive, perform a restart before proceeding).
The Administering Collaborative Editing article describes how to change Synchrony's operating modes
- Go to > Collaborative editing. > General Configuration
- [モードの変更] を選択します。
- Select "Limited" and choose Change.
Synchrony can also be changed to "Off" mode, but any shared drafts will become unavailable while in "Off" mode.
- See How Do Drafts Work on Confluence for more information
Please open a support request if further assistance or help diagnosing the is needed.