RFR: 8307403: java/util/zip/DeInflate.java timed out

Jaikiran Pai jpai at openjdk.org
Fri May 12 12:55:37 UTC 2023


Can I please get a review of this test only change which addresses the issue noted in https://bugs.openjdk.org/browse/JDK-8307403?

When we recently did a change in https://bugs.openjdk.org/browse/JDK-8299748, there was a oversight that the `deflate.deflate(tempBuffer)` could potentially end up taking in a zero sized array. That would then mean the loop in which this `deflate` happens, would never exit leading to the test timing out.
I've added additional details as a comment to the JBS issue https://bugs.openjdk.org/browse/JDK-8307403?focusedCommentId=14581202&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-14581202.

The commit in this PR uses a fixed size temporary buffer, unrelated to the input length, to get past this problem. The use of fixed size here will not re-introduce the original issue which https://bugs.openjdk.org/browse/JDK-8299748 fixed, because unlike previously, this is just a temporary size and we continue to deflate the content into a dynamically growing `ByteArrayOutputStream` till the deflater is "finished".

Additionally I've added a log message to help debug any future issues in this call.

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

Commit messages:
 - 8307403: java/util/zip/DeInflate.java timed out

Changes: https://git.openjdk.org/jdk/pull/13955/files
 Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=13955&range=00
  Issue: https://bugs.openjdk.org/browse/JDK-8307403
  Stats: 4 lines in 1 file changed: 1 ins; 1 del; 2 mod
  Patch: https://git.openjdk.org/jdk/pull/13955.diff
  Fetch: git fetch https://git.openjdk.org/jdk.git pull/13955/head:pull/13955

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


More information about the core-libs-dev mailing list