[ 
https://issues.apache.org/jira/browse/TIKA-853?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

John Mastarone updated TIKA-853:
--------------------------------

    Attachment: TIKA-853.patch

I've attached a potential patch for the MP4Parser class that prevents the 
occurrence of the IOException.  The things I speculated about in my previous 
two comments concerning the external parser were incorrect.  In the MP4Parser's 
parse method, I moved the closing of the TikaInputStream to the very end, and 
before that, I set a number of object references to null, and then call 
System.gc().  If I set one fewer object reference to null from the collection 
of those that I included, or if I don't garbage collect, my IOException 
remains.  
                
> java.io.IOException with TikaGUI and testMP4.m4a
> ------------------------------------------------
>
>                 Key: TIKA-853
>                 URL: https://issues.apache.org/jira/browse/TIKA-853
>             Project: Tika
>          Issue Type: Bug
>          Components: gui, parser
>    Affects Versions: 1.1
>         Environment: Windows 7
>            Reporter: John Mastarone
>         Attachments: TIKA-853.patch
>
>
> Using a latest build: when attempting to drop the new testMP4.m4a file into 
> the Tika GUI, a TikaException / IOException occurs:  
> org.apache.tika.exception.TikaException: Failed to close temporary resources
>       at 
> org.apache.tika.io.TemporaryResources.dispose(TemporaryResources.java:152)
>       at 
> org.apache.tika.parser.AutoDetectParser.parse(AutoDetectParser.java:127)
>       at org.apache.tika.gui.TikaGUI.handleStream(TikaGUI.java:320)
>       at org.apache.tika.gui.TikaGUI.openFile(TikaGUI.java:279)
>       at 
> org.apache.tika.gui.ParsingTransferHandler.importFiles(ParsingTransferHandler.java:94)
>       at 
> org.apache.tika.gui.ParsingTransferHandler.importData(ParsingTransferHandler.java:77)
>       at javax.swing.TransferHandler.importData(Unknown Source)
>       at javax.swing.TransferHandler$DropHandler.drop(Unknown Source)
> ....
> Caused by: java.io.IOException: Could not delete temporary file 
> C:\Users\john\AppData\Local\Temp\apache-tika-693752014807275949.tmp
>       at 
> org.apache.tika.io.TemporaryResources$1.close(TemporaryResources.java:70)
>       at 
> org.apache.tika.io.TemporaryResources.close(TemporaryResources.java:121)
>       at 
> org.apache.tika.io.TemporaryResources.dispose(TemporaryResources.java:150)
>       ... 40 more
> I know that the parser for this file is new and its external source parser 
> has some potential bugs, but this exception does not occur when using Tika 
> CLI to detect / parse the test file.  

--
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