RFR: 8222532: (zipfs) Performance regression when writing ZipFileSystem entries in parallel
Lance Andersen
lance.andersen at oracle.com
Mon Apr 22 19:26:33 UTC 2019
Hi Claes,
Thank you for your efforts here.
I have gone through your changes, comparing to the original code prior to JDK-8034802 and your changes look good. It would be good if someone else can also help sanity check but you did a nice job of adding the functionality back.
Before you push, please update the copyright for ZipFileSystemProvider.
Best,
Lance
> On Apr 18, 2019, at 9:10 AM, Claes Redestad <claes.redestad at oracle.com> wrote:
>
> Hi,
>
> JDK-8034802 changed zipfs to defer deflation to only happen when
> closing/syncing the ZipFileSystem. Previously it happened eagerly when
> closing output streams retrieved via Files.newOutputStream. While this
> behavior change could have positive effects in some cases (since
> reading/writing entries don't need to inflate/deflate on the fly), it
> also broke the ability to deflate entries in parallel.
>
> This patch reverts the behavior so that entries are deflated (by
> default) when individual entry output streams are closed. File channels
> retain the behavior that entries are inflated into an internal byte
> array.
>
> Bug: https://bugs.openjdk.java.net/browse/JDK-8222532
> Webrev: http://cr.openjdk.java.net/~redestad/8222532/open.00/
>
> Testing: tier1-3, verified recuperation of performance in reproducer to
> pre-JDK-8034802 levels.
>
> Thanks!
>
> /Claes
<http://oracle.com/us/design/oracle-email-sig-198324.gif>
<http://oracle.com/us/design/oracle-email-sig-198324.gif> <http://oracle.com/us/design/oracle-email-sig-198324.gif>
<http://oracle.com/us/design/oracle-email-sig-198324.gif>Lance Andersen| Principal Member of Technical Staff | +1.781.442.2037
Oracle Java Engineering
1 Network Drive
Burlington, MA 01803
Lance.Andersen at oracle.com <mailto:Lance.Andersen at oracle.com>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://mail.openjdk.java.net/pipermail/nio-dev/attachments/20190422/f07ad08f/attachment-0001.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: oracle_sig_logo.gif
Type: image/gif
Size: 658 bytes
Desc: not available
URL: <https://mail.openjdk.java.net/pipermail/nio-dev/attachments/20190422/f07ad08f/oracle_sig_logo-0001.gif>
More information about the nio-dev
mailing list