> Can I please get a review of this test-only change which addresses an 
> intermittent failure in `test/jdk/com/sun/net/httpserver/Test12.java`? This 
> fixes https://bugs.openjdk.org/browse/JDK-8359477.
> 
> In the linked JBS issue I've added a comment which explains what causes this 
> intermittent failure. The issue is a bug/race within the test. There are 2 
> commits in this PR and only of them is necessary for addressing this issue. 
> The other one is a general cleanup of the test. I am willing to revert the 
> general cleanup commit from this test if others feel that it shouldn't be 
> done in this PR.
> 
> The actual fix is this commit 
> https://github.com/openjdk/jdk/commit/a0f8fc806e1682ef909cb7b4a449be855072fe48
>  which stops deleting the input files upon test completion. That should be OK 
> because the jtreg test infrastructure will clean them up from the scratch 
> directory after the completion of the test run (if the test succeeds). There 
> are other ways to address this race condition and continue to delete these 
> files (for example, co-ordinating between the test and the test specific 
> `FileServerHandler`), but to me it didn't seem worthwhile doing that.
> 
> I've run this change around a 1000 times and haven't seen it fail.
> 
> P.S: The `test/jdk/com/sun/net/httpserver/Test1.java` does the same things as 
> this test, but does it sequentially. I'm pretty sure that we should be able 
> to trigger this intermittent test failure in that test too if I reorder the 
> `test()` calls in that test to have a fixed length test be the last one to 
> execute (i.e. `test (true, ...)` instead of the current `test(false, ...)`).

Jaikiran Pai has updated the pull request with a new target base due to a merge 
or a rebase. The incremental webrev excludes the unrelated changes brought in 
by the merge/rebase. The pull request contains eight additional commits since 
the last revision:

 - use ExecutorService.close() instead of ExecutorService.shutdown() to wait 
for the server side handlers to complete execution
 - use try-with-resource in test's FileServerHandler
 - Revert "8359477: com/sun/net/httpserver/Test12.java appears to have a temp 
file race"
   
   This reverts commit a0f8fc806e1682ef909cb7b4a449be855072fe48.
 - merge latest master branch changes
 - minor change to test's log message
 - add a log message in the test
 - 8359477: com/sun/net/httpserver/Test12.java appears to have a temp file race
 - 8359477: general cleanup of the test

-------------

Changes:
  - all: https://git.openjdk.org/jdk/pull/25820/files
  - new: https://git.openjdk.org/jdk/pull/25820/files/42b86dee..7f03aa43

Webrevs:
 - full: https://webrevs.openjdk.org/?repo=jdk&pr=25820&range=03
 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=25820&range=02-03

  Stats: 21265 lines in 805 files changed: 9166 ins; 7793 del; 4306 mod
  Patch: https://git.openjdk.org/jdk/pull/25820.diff
  Fetch: git fetch https://git.openjdk.org/jdk.git pull/25820/head:pull/25820

PR: https://git.openjdk.org/jdk/pull/25820

Reply via email to