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

John Kodis commented on COMPRESS-16:
------------------------------------

I've attached two patch files against commons-compress-1.3-src which add 
support for reading (patch 0001) and writing (patch 0002) tar archives which 
contain files larger than the 8GB limit imposed by the use of a 12 character 
octal size field in the tar header.

I've followed the approach taken by the GNU tar utility: for files larger than 
the 8GB limit, continue to use the same size field, but switch to a binary size 
representation, noting this change by detecting (on read) or setting (on write) 
the most significant bit of the first byte of the size field.

                
> unable to extract a TAR file that contains an entry which is 10 GB in size
> --------------------------------------------------------------------------
>
>                 Key: COMPRESS-16
>                 URL: https://issues.apache.org/jira/browse/COMPRESS-16
>             Project: Commons Compress
>          Issue Type: Bug
>          Components: Archivers
>         Environment: I am using win xp sp3, but this should be platform 
> independent.
>            Reporter: Sam Smith
>         Attachments: 
> 0001-Accept-GNU-tar-files-with-entries-over-8GB-in-size.patch, 
> 0002-Allow-creating-tar-archives-with-files-over-8GB.patch, 
> ant-8GB-tar.patch, patch-for-compress.txt
>
>
> I made a TAR file which contains a file entry where the file is 10 GB in size.
> When I attempt to extract the file using TarInputStream, it fails with the 
> following stack trace:
>       java.io.IOException: unexpected EOF with 24064 bytes unread
>               at 
> org.apache.commons.compress.archivers.tar.TarInputStream.read(TarInputStream.java:348)
>               at 
> org.apache.commons.compress.archivers.tar.TarInputStream.copyEntryContents(TarInputStream.java:388)
> So, TarInputStream does not seem to support large (> 8 GB?) files.
> Here is something else to note: I created that TAR file using TarOutputStream 
> , which did not complain when asked to write a 10 GB file into the TAR file, 
> so I assume that TarOutputStream has no file size limits?  That, or does it 
> silently create corrupted TAR files (which would be the worst situation of 
> all...)?

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to