On Mon, Jan 5, 2026 at 4:07 PM <[email protected]> wrote: > > Build status: BUILD FAILED: failed compile (failure) > Worker used: bb_worker2_ubuntu > URL: https://ci2.apache.org/#builders/112/builds/1929 > Blamelist: remm <[email protected]> > Build Text: failed compile (failure) > Status Detected: new failure > Build Source Stamp: [branch 11.0.x] 0727a95cd9a557a720481d482011bbef84697adc
This is clearly related to my change that resets the channel to null, as the WS does close stuff on stop. I didn't see it locally on my testsuite runs. 05-Jan-2026 14:46:54.984 SEVERE [main] org.apache.catalina.core.StandardContext.listenerStop Exception sending context destroyed event to listener instance of class [org.apache.tomcat.websocket.TesterEchoServer$Config] java.lang.NullPointerException: Cannot invoke "java.nio.channels.SocketChannel.write(java.nio.ByteBuffer[], int, int)" because "this.sc" is null at org.apache.tomcat.util.net.NioChannel.write(NioChannel.java:136) at org.apache.tomcat.util.net.NioEndpoint$NioSocketWrapper$NioOperationState.run(NioEndpoint.java:1675) at org.apache.tomcat.util.net.SocketWrapperBase$OperationState.start(SocketWrapperBase.java:1002) at org.apache.tomcat.util.net.SocketWrapperBase.vectoredOperation(SocketWrapperBase.java:1373) at org.apache.tomcat.util.net.SocketWrapperBase.write(SocketWrapperBase.java:1302) at org.apache.tomcat.util.net.SocketWrapperBase.write(SocketWrapperBase.java:1277) at org.apache.tomcat.websocket.server.WsRemoteEndpointImplServer.doWrite(WsRemoteEndpointImplServer.java:167) at org.apache.tomcat.websocket.WsRemoteEndpointImplBase.writeMessagePart(WsRemoteEndpointImplBase.java:524) at org.apache.tomcat.websocket.WsRemoteEndpointImplBase.sendMessageBlockInternal(WsRemoteEndpointImplBase.java:316) at org.apache.tomcat.websocket.WsRemoteEndpointImplBase.sendMessageBlock(WsRemoteEndpointImplBase.java:269) at org.apache.tomcat.websocket.WsSession.sendCloseMessage(WsSession.java:777) at org.apache.tomcat.websocket.WsSession.doClose(WsSession.java:574) at org.apache.tomcat.websocket.WsSession.doClose(WsSession.java:541) at org.apache.tomcat.websocket.WsSession.close(WsSession.java:529) at org.apache.tomcat.websocket.WsWebSocketContainer.destroy(WsWebSocketContainer.java:992) at org.apache.tomcat.websocket.server.WsContextListener.contextDestroyed(WsContextListener.java:46) at org.apache.catalina.core.StandardContext.listenerStop(StandardContext.java:4048) at org.apache.catalina.core.StandardContext.stopInternal(StandardContext.java:4652) at org.apache.catalina.util.LifecycleBase.stop(LifecycleBase.java:235) I don't think the change should be reverted, maybe add a null check or some other trick instead. Leaving in the reference to the socket and the socket wrapper could be a way to go. Rémy > > Steps: > > worker_preparation: 0 > > git: 0 > > shell: 0 > > shell_1: 0 > > shell_2: 0 > > shell_3: 0 > > shell_4: 0 > > shell_5: 0 > > shell_6: 0 > > shell_7: 0 > > compile: 1 > > shell_8: 0 > > shell_9: 0 > > shell_10: 0 > > shell_11: 0 > > Rsync docs to nightlies.apache.org: 0 > > shell_12: 0 > > Rsync RAT to nightlies.apache.org: 0 > > compile_1: 2 > > shell_13: 0 > > Rsync Logs to nightlies.apache.org: 0 > > > -- ASF Buildbot > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [email protected] > For additional commands, e-mail: [email protected] > --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
