RFR (testbug): 8216562: UnknownBodyLength sometimes fails due to "Connection reset by peer"

2019-01-29 Thread Daniel Fuchs
Hi, Please find below a fix for: 8216562: UnknownBodyLength sometimes fails due to "Connection reset by peer" https://bugs.openjdk.java.net/browse/JDK-8216562 webrev: http://cr.openjdk.java.net/~dfuchs/webrev_8216562/webrev.00/ My previous attempt at at fixing this test proved unsucce

Re: RFR [13] 8217976: test/jdk/java/net/httpclient/websocket/WebSocketProxyTest.java fails intermittently

2019-01-29 Thread Daniel Fuchs
Looks good. While you're at it you could make: 123 CopyOnWriteArrayList connections; final. No need for a new webrev. best regards, -- daniel On 29/01/2019 12:53, Chris Hegarty wrote: Agreed. Should be good enough for test cleanup. http://cr.openjdk.java.net/~chegar/8217976/webrev.01/

Re: RFR [13] 8217976: test/jdk/java/net/httpclient/websocket/WebSocketProxyTest.java fails intermittently

2019-01-29 Thread Chris Hegarty
> On 29 Jan 2019, at 12:31, Daniel Fuchs wrote: > > ... > The best would be to use CopyOnWriteArrayList instead > of synchronizedList(). Otherwise you'd still need to copy the list > within a synchronize(connections) { } block to prevent CME. Agreed. Should be good enough for test cleanup. ht

Re: RFR [13] 8217976: test/jdk/java/net/httpclient/websocket/WebSocketProxyTest.java fails intermittently

2019-01-29 Thread Daniel Fuchs
Hi Chris, 116 List localList = List.copyOf(connections); I think it is still possible for CME to happen during the copyOf operation, even though it can reduce the window in which that might happen. The best would be to use CopyOnWriteArrayList instead of synchronizedList(). Otherwise

RFR [13] 8217976: test/jdk/java/net/httpclient/websocket/WebSocketProxyTest.java fails intermittently

2019-01-29 Thread Chris Hegarty
WebSocketProxyTest is a new test that was added recently. It fails once in every few hundred runs. The test uses a preexisting test-only proxy server. There is a race when closing the server; the close method iterates over all connections while another thread may be adding a new connection. The sol

Re: NIO based SocketImpl to replace legacy PlainSocketImpl

2019-01-29 Thread Alan Bateman
On 29/01/2019 10:21, Bernd Eckenfels wrote: How will that look like on Windows, will it use IO Completion Ports? I guess scalability becomes much more of an issue with typical thousands of classic sockets. What’s the expected performance of this? The blocking IO had a lot less latency compare

Re: NIO based SocketImpl to replace legacy PlainSocketImpl

2019-01-29 Thread Bernd Eckenfels
How will that look like on Windows, will it use IO Completion Ports? I guess scalability becomes much more of an issue with typical thousands of classic sockets. What’s the expected performance of this? The blocking IO had a lot less latency compared to Channels, is there some regression expect

Re: NIO based SocketImpl to replace legacy PlainSocketImpl

2019-01-29 Thread Ismael Juma
Nice to see this, hope it works out. Ismael On Fri, Jan 25, 2019, 6:11 AM Alan Bateman > I've created a branch in the sandbox, named "niosocketimpl-branch", with > a prototype SocketImpl implementation based on the infrastructure in > sun.nio.ch package that supports the NIO channel implementati