[jira] [Commented] (TIKA-3063) Tika parser / POI crash with IndexOutOfBoundsException error

classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

[jira] [Commented] (TIKA-3063) Tika parser / POI crash with IndexOutOfBoundsException error

Radim Rehurek (Jira)

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

MRIT64 commented on TIKA-3063:
------------------------------

I am not using AutoDetectParser but ParsingReader which is supposed to "_uses a background parsing task with a Parser (*AutoDetectParser* by default)",_ according to the doc.

This my very basic test program :

 
{code:java}
public class TikaFileParser {
  public static void main(String[] args) throws Exception {
      File inputFile;
      int c;   
      ParsingReader tikaParsingReader;
      if (args.length>0) {
            System.out.println("Parsing file "+args[0]);
            inputFile = new File(args[0]);
            if (inputFile.isFile()) {
              tikaParsingReader = new ParsingReader(inputFile);
              c = tikaParsingReader.read();
              while (c > 0) {
               System.out.print((char) c);
               c = tikaParsingReader.read();       
              }       
              tikaParsingReader.close();
            }     
          else       
            System.out.println("File not found or invalid file");
      }
  }
}{code}
 

Regards

 

 

> Tika parser / POI crash with IndexOutOfBoundsException error
> ------------------------------------------------------------
>
>                 Key: TIKA-3063
>                 URL: https://issues.apache.org/jira/browse/TIKA-3063
>             Project: Tika
>          Issue Type: Bug
>          Components: parser
>    Affects Versions: 1.23
>         Environment: Windows 10 / java 1.8 / tika-app-1.23.jar
>            Reporter: MRIT64
>            Priority: Major
>         Attachments: tika_23_POI_issue.doc
>
>
> Exception duing parsing caused by an IndexOutOfBoundsException error in module poi.poifs.
> This was not happenig with tika 19, the previous version i used.
> A test file that causes the crash is attached.
> Regards
> Complete stack trace :
> Exception in thread "main" java.io.IOException:
>  at org.apache.tika.parser.ParsingReader.read(ParsingReader.java:277)
>  at java.io.Reader.read(Unknown Source)
>  at doxi.test.TikaFileParser.main(TikaFileParser.java:42)
>  Caused by: org.apache.tika.exception.TikaException: Unexpected RuntimeException from org.apache.tika.parser.microsoft.OfficeParser@5520942a
>  at org.apache.tika.parser.CompositeParser.parse(CompositeParser.java:282)
>  at org.apache.tika.parser.CompositeParser.parse(CompositeParser.java:280)
>  at org.apache.tika.parser.AutoDetectParser.parse(AutoDetectParser.java:143)
>  at org.apache.tika.parser.ParsingReader$ParsingTask.run(ParsingReader.java:236)
>  at java.lang.Thread.run(Unknown Source)
>  Caused by: java.lang.IndexOutOfBoundsException: Block 40394 not found
>  at org.apache.poi.poifs.filesystem.POIFSFileSystem.getBlockAt(POIFSFileSystem.java:429)
>  at org.apache.poi.poifs.filesystem.POIFSFileSystem.readBAT(POIFSFileSystem.java:399)
>  at org.apache.poi.poifs.filesystem.POIFSFileSystem.readCoreContents(POIFSFileSystem.java:373)
>  at org.apache.poi.poifs.filesystem.POIFSFileSystem.<init>(POIFSFileSystem.java:232)
>  at org.apache.poi.poifs.filesystem.POIFSFileSystem.<init>(POIFSFileSystem.java:170)
>  at org.apache.tika.parser.microsoft.OfficeParser.parse(OfficeParser.java:121)
>  at org.apache.tika.parser.CompositeParser.parse(CompositeParser.java:280)
>  ... 4 more
>  Caused by: java.lang.IndexOutOfBoundsException: Position 20682240 past the end of the file
>  at org.apache.poi.poifs.nio.FileBackedDataSource.read(FileBackedDataSource.java:84)
>  at org.apache.poi.poifs.filesystem.POIFSFileSystem.getBlockAt(POIFSFileSystem.java:427)
>  ... 10 more



--
This message was sent by Atlassian Jira
(v8.3.4#803005)