On Fri, 30 Sep 2022 09:57:32 GMT, Jaikiran Pai <[email protected]> wrote:
>> Can I please get a review for this test-only change which proposes to >> improve the test run duration of `java/net/vthread/HttpALot.java` test, on >> Linux? This relates to https://bugs.openjdk.org/browse/JDK-8294610 >> >> Experiments have shown that on Linux, due to delayed TCP ACKs from the >> client (for some previous sent data/packet), the server sent response waits >> for the ACKs before sending the response data (in a TCP packet). Each >> delayed ACK is 40 milli seconds and given the number of requests this test >> (intentionally) issues, the delay accumulates causing the test to take >> longer duration. >> >> With the change in this PR, the test completes in around 6 to 8 seconds on a >> Linux system as compared to 60 odd seconds previously on the same setup. >> This change hasn't shown any negative impact on macos (which continues to >> run this test in around 5 to 6 seconds like previously). I will trigger some >> runs in our CI setup to make sure this works as expected in all other OS too. >> >> As noted in the linked JBS issue, additional experiments to see if anything >> can be improved in the JDK network layer will be carried out separately, >> outside the context of this test. > > Jaikiran Pai has updated the pull request incrementally with one additional > commit since the last revision: > > update test comment to address review comments Marked as reviewed by alanb (Reviewer). test/jdk/java/net/vthread/HttpALot.java line 34: > 32: * @comment This test runs with -Dsun.net.httpserver.nodelay=true > 33: * to enable TCP_NODELAY on the sockets "accept()"ed by the > HttpServer. This is > 34: * to avoid occasional 40ms delays receiving responses from the > server on Linux. Thanks for the update the bug tag and improving the comment. Just a minor nit is that you might want to re-flow it to avoid 1 short line and two longer lines. Ignore if you want. ------------- PR: https://git.openjdk.org/jdk/pull/10504
