> **Problem** > `discardRequestBody` calls `InputStream::readAllBytes` to read and discard > all the request body bytes. This is somewhat wasteful as they can instead be > skipped. > > **Changes** > - Updated `FileServerHandler::discardRequestBody` to use `InputStream::skip`. > - Created skip in `LeftOverInputStream` based on > [InputStream](https://github.com/openjdk/jdk/blob/c9657cad124d2be10b8d6006d0ca9a038b1c5945/src/java.base/share/classes/java/io/InputStream.java#L540). > This gets used by `FixedLengthInputStream` and `ChunkedInputStream` which > previously had been using the skip implementation from `FilteredInputStream` > which would have caused blocking. > > - Also made a minor change to `LeftOverInputStream::Drain` to change bufSize. > > > I ran test tiers 1-3 and all tests are passing with these changes
Darragh Clarke has updated the pull request incrementally with one additional commit since the last revision: Update src/jdk.httpserver/share/classes/sun/net/httpserver/LeftOverInputStream.java Co-authored-by: Daniel Fuchs <[email protected]> ------------- Changes: - all: https://git.openjdk.org/jdk/pull/16616/files - new: https://git.openjdk.org/jdk/pull/16616/files/2df93141..8ebf6e09 Webrevs: - full: https://webrevs.openjdk.org/?repo=jdk&pr=16616&range=01 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=16616&range=00-01 Stats: 3 lines in 1 file changed: 3 ins; 0 del; 0 mod Patch: https://git.openjdk.org/jdk/pull/16616.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/16616/head:pull/16616 PR: https://git.openjdk.org/jdk/pull/16616
