commons-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Dawid Weiss (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (COMPRESS-380) Support for ENHANCED_DEFLATED (Deflate64) in ZIP files
Date Mon, 08 Jan 2018 22:07:00 GMT

    [ https://issues.apache.org/jira/browse/COMPRESS-380?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16317182#comment-16317182
] 

Dawid Weiss commented on COMPRESS-380:
--------------------------------------

I've decompressed the entire ~6GB archive without any errors with the code from the current
head of COMPRESS-380 branch (I just decompressed it, didn't diff against the original!). This
is great, although the performance penalty is huge at the moment (read: it takes forever...
an order of magnitude slower than the C version; the archive took ~3 hours to just decompress
while total commander manages the same in a few minutes). I looked at zlib implementation
of inflate (they create smart lookup tables for larger bit windows) and found a Java implementation
of this concept in [1]. The speed this implementation achieves is quite nice (see [2]); could
be something to think about in the future as an improvement. For the time being, even a slow
implementation is better than none (although this seems almost suspiciously slow).

[1] https://github.com/nayuki/DEFLATE-library-Java/blob/master/src/io/nayuki/deflate/InflaterInputStream.java
[2] https://www.nayuki.io/page/deflate-library-java


> Support for ENHANCED_DEFLATED (Deflate64) in ZIP files
> ------------------------------------------------------
>
>                 Key: COMPRESS-380
>                 URL: https://issues.apache.org/jira/browse/COMPRESS-380
>             Project: Commons Compress
>          Issue Type: New Feature
>            Reporter: Dawid Weiss
>             Fix For: 1.16
>
>         Attachments: archive-deflate.zip, archive-deflate64.zip, archive.zip, archive64.zip,
compress-380.diff, hello.world, input2
>
>
> Some of the (large) ZIP files we try to process currently will throw this:
> {code}
> UnsupportedZipFeatureException: unsupported feature method 'ENHANCED_DEFLATED' 
> {code}
> which is a bummer since JDK's implementation also doesn't support Deflate64. This seems
to be PKWare's extensions, although code to decrypt it exists in zlib (and is appropriately
licensed, I believe).
> https://github.com/madler/zlib/tree/master/contrib/infback9



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Mime
View raw message