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

Hudson commented on TIKA-2101:
------------------------------

SUCCESS: Integrated in Jenkins build tika-2.x #154 (See 
[https://builds.apache.org/job/tika-2.x/154/])
TIKA-2101 -- don't call MAPIMessage's close() (tallison: rev 
b84fcc5842c10af3c41181eae01a127ef438eb88)
* (edit) 
tika-parser-modules/tika-parser-office-module/src/main/java/org/apache/tika/parser/microsoft/OutlookExtractor.java


> Don't use MAPIMessage.close()
> -----------------------------
>
>                 Key: TIKA-2101
>                 URL: https://issues.apache.org/jira/browse/TIKA-2101
>             Project: Tika
>          Issue Type: Bug
>            Reporter: Tim Allison
>            Priority: Minor
>             Fix For: 1.14
>
>         Attachments: CFIGD37LXW6YJLE66KCQUV55SDU5YO5S.zip
>
>
> Regression found during comparison of 1.14 trunk and 1.13.  I added a call to 
> the new MAPIMessage.close() after the parse.  This causes problems if an MSG 
> file has multiple MSG files attached.  They may all be in the same directory. 
>  When the first child MSG is parsed, MAPIMessage.close() closes the directory 
> and the other children can't be read:
> {noformat}
> Caused by: java.lang.RuntimeException: 
> java.nio.channels.ClosedChannelException
>       at 
> org.apache.poi.poifs.filesystem.NPOIFSStream$StreamBlockByteBufferIterator.<init>(NPOIFSStream.java:151)
>       at 
> org.apache.poi.poifs.filesystem.NPOIFSStream.getBlockIterator(NPOIFSStream.java:95)
>       at 
> org.apache.poi.poifs.filesystem.NPOIFSMiniStore.getBlockAt(NPOIFSMiniStore.java:67)
>       at 
> org.apache.poi.poifs.filesystem.NPOIFSStream$StreamBlockByteBufferIterator.next(NPOIFSStream.java:169)
>       at 
> org.apache.poi.poifs.filesystem.NPOIFSStream$StreamBlockByteBufferIterator.next(NPOIFSStream.java:142)
>       at 
> org.apache.poi.poifs.filesystem.NDocumentInputStream.readFully(NDocumentInputStream.java:248)
>       at 
> org.apache.poi.poifs.filesystem.NDocumentInputStream.read(NDocumentInputStream.java:150)
>       at 
> org.apache.poi.poifs.filesystem.DocumentInputStream.read(DocumentInputStream.java:125)
>       at org.apache.poi.util.IOUtils.toByteArray(IOUtils.java:84)
>       at org.apache.poi.util.IOUtils.toByteArray(IOUtils.java:72)
>       at org.apache.poi.hsmf.datatypes.ByteChunk.readValue(ByteChunk.java:51)
>       at 
> org.apache.poi.hsmf.parsers.POIFSChunkParser.process(POIFSChunkParser.java:211)
>       at 
> org.apache.poi.hsmf.parsers.POIFSChunkParser.processChunks(POIFSChunkParser.java:112)
>       at 
> org.apache.poi.hsmf.parsers.POIFSChunkParser.parse(POIFSChunkParser.java:84)
>       at org.apache.poi.hsmf.MAPIMessage.<init>(MAPIMessage.java:142)
>       at 
> org.apache.tika.parser.microsoft.OutlookExtractor.<init>(OutlookExtractor.java:82)
>       at 
> org.apache.tika.parser.microsoft.OfficeParser.parse(OfficeParser.java:190)
>       at 
> org.apache.tika.parser.microsoft.OfficeParser.parse(OfficeParser.java:130)
>       at 
> org.apache.tika.parser.CompositeParser.parse(CompositeParser.java:280)
>       ... 30 more
> Caused by: java.nio.channels.ClosedChannelException
>       at sun.nio.ch.FileChannelImpl.ensureOpen(FileChannelImpl.java:110)
>       at sun.nio.ch.FileChannelImpl.size(FileChannelImpl.java:300)
>       at 
> org.apache.poi.poifs.nio.FileBackedDataSource.size(FileBackedDataSource.java:133)
>       at 
> org.apache.poi.poifs.filesystem.NPOIFSFileSystem.getChainLoopDetector(NPOIFSFileSystem.java:634)
>       at 
> org.apache.poi.poifs.filesystem.NPOIFSStream$StreamBlockByteBufferIterator.<init>(NPOIFSStream.java:149)
>       ... 48 more
> {noformat}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to