9 RFR: 8178147: Race conditions in timeout handling code in http/2 incubator client
Daniel Fuchs
daniel.fuchs at oracle.com
Thu Apr 6 10:32:54 UTC 2017
Hi,
While analyzing some of the later failure traces reported for
https://bugs.openjdk.java.net/browse/JDK-8170940
8170940: test/java/net/httpclient/TimeoutOrdering.java
failing intermittently
I began to suspect that this was not caused by a test bug.
Looking at the timeout handling code in httpclient,
I have identified a number of race conditions
in the http/2 client timeout logic.
The races can be observed quite easily by supplying a very
small timeout (1ms). In that case the new SmallTimeout test
in the webrev below, which is a modified clone
of TimeOrdering, will always hang.
webrev:
http://cr.openjdk.java.net/~dfuchs/webrev_8170940/webrev.00/
I also suspect these races to be at the root cause of
https://bugs.openjdk.java.net/browse/JDK-8170940
8170940: test/java/net/httpclient/TimeoutOrdering.java
failing intermittently
so I am planning to close 8170940 as a duplicate of 8178147
when 8178147 is pushed.
I would like to propose this be fixed for JDK 9.
best regards,
-- daniel
More information about the net-dev
mailing list