lucee / extension-websocket

GNU Lesser General Public License v2.1
0 stars 0 forks source link

Broken pipe #5

Closed webonix closed 3 months ago

webonix commented 5 months ago

Does the WS client need to keep sending messages to keep the connection open?

"ERROR","http-nio-8888-exec-2","04/14/2024","07:40:56","endpoint-factory","java.io.IOException: Broken pipe;lucee.runtime.exp.NativeException: java.io.IOException: Broken pipe at org.apache.tomcat.websocket.WsRemoteEndpointImplBase.sendMessageBlock(WsRemoteEndpointImplBase.java:315) at org.apache.tomcat.websocket.WsRemoteEndpointImplBase.sendMessageBlock(WsRemoteEndpointImplBase.java:250) at org.apache.tomcat.websocket.WsRemoteEndpointImplBase.sendString(WsRemoteEndpointImplBase.java:191) at org.apache.tomcat.websocket.WsRemoteEndpointBasic.sendText(WsRemoteEndpointBasic.java:37) at org.lucee.extension.websocket.util.WSUtil.sendText(WSUtil.java:485) at org.lucee.extension.websocket.util.WSUtil.broadcast(WSUtil.java:173) at org.lucee.extension.websocket.client.WSClients.call(WSClients.java:29) at lucee.runtime.util.VariableUtilImpl.callFunctionWithoutNamedValues(VariableUtilImpl.java:787) at lucee.runtime.PageContextImpl.getFunction(PageContextImpl.java:1998) at events_cfc$cf.udfCall(/events.cfc:150) at lucee.runtime.type.UDFImpl.implementation(UDFImpl.java:112) at lucee.runtime.type.UDFImpl._call(UDFImpl.java:356) at lucee.runtime.type.UDFImpl.call(UDFImpl.java:223) at lucee.runtime.ComponentImpl._call(ComponentImpl.java:667) at lucee.runtime.ComponentImpl._call(ComponentImpl.java:589) at lucee.runtime.ComponentImpl.call(ComponentImpl.java:1993) at org.lucee.extension.websocket.BaseWebSocketEndpoint.invoke(BaseWebSocketEndpoint.java:358) at org.lucee.extension.websocket.BaseWebSocketEndpoint.onClose(BaseWebSocketEndpoint.java:269) at org.lucee.extension.websocket.JavaxWebSocketEndpoint.onClose(JavaxWebSocketEndpoint.java:47) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.base/java.lang.reflect.Method.invoke(Method.java:566) at lucee.runtime.reflection.pairs.MethodInstance.invoke(MethodInstance.java:56) at lucee.runtime.reflection.Reflector.callMethod(Reflector.java:1063) at lucee.runtime.util.ClassUtilImpl.callMethod(ClassUtilImpl.java:189) at org.lucee.extension.websocket.BaseWebSocketEndpoint.on(BaseWebSocketEndpoint.java:81) at org.lucee.extension.websocket.BaseWebSocketEndpoint.onClose(BaseWebSocketEndpoint.java:260) at org.lucee.extension.websocket.JavaxWebSocketEndpoint.onClose(JavaxWebSocketEndpoint.java:47) at jdk.internal.reflect.GeneratedMethodAccessor58.invoke(Unknown Source) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.base/java.lang.reflect.Method.invoke(Method.java:566) at org.apache.tomcat.websocket.pojo.PojoEndpointBase.onClose(PojoEndpointBase.java:103) at org.apache.tomcat.websocket.WsSession.fireEndpointOnClose(WsSession.java:535) at org.apache.tomcat.websocket.WsSession.onClose(WsSession.java:513) at org.apache.tomcat.websocket.server.WsHttpUpgradeHandler.close(WsHttpUpgradeHandler.java:232) at org.apache.tomcat.websocket.server.WsHttpUpgradeHandler.upgradeDispatch(WsHttpUpgradeHandler.java:155) at org.apache.coyote.http11.upgrade.UpgradeProcessorInternal.dispatch(UpgradeProcessorInternal.java:54) at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:53) at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:770) 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.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) at java.base/java.lang.Thread.run(Thread.java:829) Caused by: java.io.IOException: java.io.IOException: Broken pipe ... 46 more Caused by: java.io.IOException: Broken pipe at java.base/sun.nio.ch.FileDispatcherImpl.write0(Native Method) at java.base/sun.nio.ch.SocketDispatcher.write(SocketDispatcher.java:47) at java.base/sun.nio.ch.IOUtil.writeFromNativeBuffer(IOUtil.java:113) at java.base/sun.nio.ch.IOUtil.write(IOUtil.java:79) at java.base/sun.nio.ch.IOUtil.write(IOUtil.java:50) at java.base/sun.nio.ch.SocketChannelImpl.write(SocketChannelImpl.java:462) at org.apache.tomcat.util.net.NioChannel.write(NioChannel.java:134) at org.apache.tomcat.util.net.NioBlockingSelector.write(NioBlockingSelector.java:101) at org.apache.tomcat.util.net.NioSelectorPool.write(NioSelectorPool.java:157) at org.apache.tomcat.util.net.NioEndpoint$NioSocketWrapper.doWrite(NioEndpoint.java:1223) at org.apache.tomcat.util.net.SocketWrapperBase.doWrite(SocketWrapperBase.java:691) at org.apache.tomcat.util.net.SocketWrapperBase.flushBlocking(SocketWrapperBase.java:628) at org.apache.tomcat.util.net.SocketWrapperBase.flush(SocketWrapperBase.java:618) at org.apache.tomcat.websocket.server.WsRemoteEndpointImplServer.doWrite(WsRemoteEndpointImplServer.java:153) at org.apache.tomcat.websocket.WsRemoteEndpointImplBase.writeMessagePart(WsRemoteEndpointImplBase.java:494) at org.apache.tomcat.websocket.WsRemoteEndpointImplBase.sendMessageBlock(WsRemoteEndpointImplBase.java:309) ... 45 more "

michaeloffner commented 4 months ago

see my comments here https://github.com/lucee/extension-websocket/issues/4

michaeloffner commented 3 months ago

see #4