The following tests failed in the JDK17 CI on macos-aarch46:
java/net/httpclient/websocket/PendingBinaryPongClose.java
java/net/httpclient/websocket/PendingBinaryPingClose.java
java/net/httpclient/websocket/PendingPongBinaryClose.java
Here's a log file snippet from PendingBinaryPongClose.java:
DEBUG: [HttpClient-2-SelectorManager] [25s 573ms] SelectorAttachment Registering jdk.internal.net.http.SocketTube$InternalWriteSubscriber$WriteEvent@46af4dd3 for 0 (false)
DEBUG: [HttpClient-2-SelectorManager] [25s 573ms] SocketTube(2) channel is writable
DEBUG: [HttpClient-2-SelectorManager] [25s 573ms] SocketTube(2) trying to write: 562
DEBUG: [HttpClient-2-SelectorManager] [25s 573ms] SocketTube(2) write error: java.io.IOException: No buffer space available
DEBUG: [HttpClient-2-SelectorManager] [25s 573ms] SocketTube(2) error signalled java.io.IOException: No buffer space available
DEBUG: [HttpClient-2-SelectorManager] [25s 573ms] SocketTube(2) pausing read event
DEBUG: [HttpClient-2-SelectorManager] [25s 573ms] SelectorAttachment Registering jdk.internal.net.http.SocketTube$InternalReadPublisher$ReadEvent@12d89d80 for 0 (false)
DEBUG: [HttpClient-2-SelectorManager] [25s 573ms] SocketTube(2) Sending error java.io.IOException: No buffer space available to subscriber jdk.internal.net.http.RawChannelTube$ReadSubscriber@431e8783
DEBUG: [HttpClient-2-SelectorManager] [25s 573ms] SocketTube(2) forwarding error to subscriber: java.io.IOException: No buffer space available
DEBUG: [HttpClient-2-SelectorManager] [25s 573ms] [WebSocket] RawChannelTube(SocketTube(2)) ReadSubscriber::onError java.io.IOException: No buffer space available
java.io.IOException: No buffer space available
at java.base/sun.nio.ch.FileDispatcherImpl.writev0(Native Method)
at java.base/sun.nio.ch.SocketDispatcher.writev(SocketDispatcher.java:66)
at java.base/sun.nio.ch.IOUtil.write(IOUtil.java:182)
at java.base/sun.nio.ch.IOUtil.write(IOUtil.java:130)
at java.base/sun.nio.ch.SocketChannelImpl.write(SocketChannelImpl.java:563)
at java.base/java.nio.channels.SocketChannel.write(SocketChannel.java:642)
at java.net.http/jdk.internal.net.http.SocketTube.writeAvailable(SocketTube.java:1228)
at java.net.http/jdk.internal.net.http.SocketTube$InternalWriteSubscriber.tryFlushCurrent(SocketTube.java:342)
at java.net.http/jdk.internal.net.http.SocketTube$InternalWriteSubscriber.signalWritable(SocketTube.java:415)
at java.net.http/jdk.internal.net.http.SocketTube$InternalWriteSubscriber$WriteEvent.signalEvent(SocketTube.java:442)
at java.net.http/jdk.internal.net.http.SocketTube$SocketFlowEvent.handle(SocketTube.java:245)
at java.net.http/jdk.internal.net.http.HttpClientImpl$SelectorManager.handleEvent(HttpClientImpl.java:975)
at java.net.http/jdk.internal.net.http.HttpClientImpl$SelectorManager.lambda$run$3(HttpClientImpl.java:930)
at java.base/java.util.ArrayList.forEach(ArrayList.java:1511)
at java.net.http/jdk.internal.net.http.HttpClientImpl$SelectorManager.run(HttpClientImpl.java:930)
Here's a log file snippet from PendingBinaryPingClose.java:
DEBUG: [HttpClient-2-SelectorManager] [25s 695ms] SelectorAttachment Registering jdk.internal.net.http.SocketTube$InternalWriteSubscriber$WriteEvent@4e675a34 for 0 (false)
DEBUG: [HttpClient-2-SelectorManager] [25s 695ms] SocketTube(2) channel is writable
DEBUG: [HttpClient-2-SelectorManager] [25s 695ms] SocketTube(2) trying to write: 562
DEBUG: [HttpClient-2-SelectorManager] [25s 696ms] SocketTube(2) write error: java.io.IOException: No buffer space available
DEBUG: [HttpClient-2-SelectorManager] [25s 696ms] SocketTube(2) error signalled java.io.IOException: No buffer space available
DEBUG: [HttpClient-2-SelectorManager] [25s 696ms] SocketTube(2) pausing read event
DEBUG: [HttpClient-2-SelectorManager] [25s 696ms] SelectorAttachment Registering jdk.internal.net.http.SocketTube$InternalReadPublisher$ReadEvent@5de107c9 for 0 (false)
DEBUG: [HttpClient-2-SelectorManager] [25s 696ms] SocketTube(2) Sending error java.io.IOException: No buffer space available to subscriber jdk.internal.net.http.RawChannelTube$ReadSubscriber@256f509f
DEBUG: [HttpClient-2-SelectorManager] [25s 696ms] SocketTube(2) forwarding error to subscriber: java.io.IOException: No buffer space available
DEBUG: [HttpClient-2-SelectorManager] [25s 696ms] [WebSocket] RawChannelTube(SocketTube(2)) ReadSubscriber::onError java.io.IOException: No buffer space available
java.io.IOException: No buffer space available
at java.base/sun.nio.ch.FileDispatcherImpl.writev0(Native Method)
at java.base/sun.nio.ch.SocketDispatcher.writev(SocketDispatcher.java:66)
at java.base/sun.nio.ch.IOUtil.write(IOUtil.java:182)
at java.base/sun.nio.ch.IOUtil.write(IOUtil.java:130)
at java.base/sun.nio.ch.SocketChannelImpl.write(SocketChannelImpl.java:563)
at java.base/java.nio.channels.SocketChannel.write(SocketChannel.java:642)
at java.net.http/jdk.internal.net.http.SocketTube.writeAvailable(SocketTube.java:1228)
at java.net.http/jdk.internal.net.http.SocketTube$InternalWriteSubscriber.tryFlushCurrent(SocketTube.java:342)
at java.net.http/jdk.internal.net.http.SocketTube$InternalWriteSubscriber.signalWritable(SocketTube.java:415)
at java.net.http/jdk.internal.net.http.SocketTube$InternalWriteSubscriber$WriteEvent.signalEvent(SocketTube.java:442)
at java.net.http/jdk.internal.net.http.SocketTube$SocketFlowEvent.handle(SocketTube.java:245)
at java.net.http/jdk.internal.net.http.HttpClientImpl$SelectorManager.handleEvent(HttpClientImpl.java:975)
at java.net.http/jdk.internal.net.http.HttpClientImpl$SelectorManager.lambda$run$3(HttpClientImpl.java:930)
at java.base/java.util.ArrayList.forEach(ArrayList.java:1511)
at java.net.http/jdk.internal.net.http.HttpClientImpl$SelectorManager.run(HttpClientImpl.java:930)
Here's a log file snippet from PendingPongBinaryClose.java:
result: Error. Agent communication error: java.net.SocketException: No buffer space available; check console log for any additional details
Please note that this "No buffer space available" appears to
have come from a JTREG agent, but I'm not sure about that.