Menu

#150 New Exception in Jackcess 2.2.0 vs previous version

2.2.1
closed
None
1
2019-01-03
2018-12-14
Tim Allison
No

This file was handled without an exception by 2.1.12, but there's an exception w less text in 2.2.0.

3 Attachments

Discussion

  • James Ahlborn

    James Ahlborn - 2018-12-14

    Do you have the full exception?

     
  • Tim Allison

    Tim Allison - 2018-12-14

    Is this useful?

    Exception in thread "main" org.apache.tika.exception.TikaException: Unexpected RuntimeException from org.apache.tika.parser.microsoft.JackcessParser@123f1134
    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.cli.TikaCLI$OutputType.process(TikaCLI.java:209)
    at org.apache.tika.cli.TikaCLI.process(TikaCLI.java:496)
    at org.apache.tika.cli.TikaCLI.main(TikaCLI.java:149)
    Caused by: java.lang.IllegalStateException: invalid page number 243
    at com.healthmarketscience.jackcess.impl.PageChannel.validatePageNumber(PageChannel.java:203)
    at com.healthmarketscience.jackcess.impl.PageChannel.readPage(PageChannel.java:214)
    at com.healthmarketscience.jackcess.impl.LongValueColumnImpl.readLongValue(LongValueColumnImpl.java:204)
    at com.healthmarketscience.jackcess.impl.LongValueColumnImpl.read(LongValueColumnImpl.java:96)
    at com.healthmarketscience.jackcess.impl.ColumnImpl.read(ColumnImpl.java:689)
    at com.healthmarketscience.jackcess.impl.TableImpl.getRowColumn(TableImpl.java:847)
    at com.healthmarketscience.jackcess.impl.TableImpl.getRow(TableImpl.java:753)
    at com.healthmarketscience.jackcess.impl.TableImpl.getRow(TableImpl.java:733)
    at com.healthmarketscience.jackcess.impl.CursorImpl.getCurrentRow(CursorImpl.java:699)
    at com.healthmarketscience.jackcess.impl.DatabaseImpl$TableFinder.getObjectRow(DatabaseImpl.java:2261)
    at com.healthmarketscience.jackcess.impl.DatabaseImpl.getPropertiesForObject(DatabaseImpl.java:1415)
    at com.healthmarketscience.jackcess.impl.TableImpl.getPropertyMaps(TableImpl.java:471)
    at com.healthmarketscience.jackcess.impl.ColumnImpl.getProperties(ColumnImpl.java:647)
    at com.healthmarketscience.jackcess.impl.ColumnImpl.reloadPropertiesValidators(ColumnImpl.java:531)
    at com.healthmarketscience.jackcess.impl.ColumnImpl.initColumnValidator(ColumnImpl.java:498)
    at com.healthmarketscience.jackcess.impl.TableImpl.<init>(TableImpl.java:293)
    at com.healthmarketscience.jackcess.impl.DatabaseImpl.readTable(DatabaseImpl.java:1713)
    at com.healthmarketscience.jackcess.impl.DatabaseImpl.getTable(DatabaseImpl.java:1055)
    at com.healthmarketscience.jackcess.impl.DatabaseImpl.getTable(DatabaseImpl.java:1015)
    at com.healthmarketscience.jackcess.impl.DatabaseImpl$TableIterator.next(DatabaseImpl.java:2225)
    at com.healthmarketscience.jackcess.impl.DatabaseImpl$TableIterator.next(DatabaseImpl.java:2204)
    at org.apache.tika.parser.microsoft.JackcessExtractor.parse(JackcessExtractor.java:149)
    at org.apache.tika.parser.microsoft.JackcessParser.parse(JackcessParser.java:102)
    at org.apache.tika.parser.CompositeParser.parse(CompositeParser.java:280)
    ... 5 more</init>

     
  • James Ahlborn

    James Ahlborn - 2018-12-15

    Yes, that's kind of what i suspected. because jackcess is now using information from the column properties to enforce certain write rules, it is proactively reading the column properties during table init. this didn't happen before. the column properties seem to be in a corrupted section of the database. ugh.

    are #149 and #150 the same bug?

     
  • James Ahlborn

    James Ahlborn - 2018-12-16

    your application only ever reads dbs, right? do you open them read-only? i was thinking that i could skip reading the additional info if the db is opened read-only because it's only necessary when writing.

     
  • Tim Allison

    Tim Allison - 2018-12-17

    Y, we only read, and we do open them read-only.

     
  • James Ahlborn

    James Ahlborn - 2018-12-17

    are #149 and #150 the same bug?

     
  • Tim Allison

    Tim Allison - 2018-12-17

    Y, I think so. Sorry!

     
  • James Ahlborn

    James Ahlborn - 2018-12-17

    no worries!

     
  • James Ahlborn

    James Ahlborn - 2018-12-17
    • status: open --> closed
    • assigned_to: James Ahlborn
    • Group: Unassigned --> 2.2.1
     
  • James Ahlborn

    James Ahlborn - 2018-12-17

    Fixed in trunk, will be in the 2.2.1 release.

     
  • Tim Allison

    Tim Allison - 2019-01-03

    Upgraded Jackcess in Tika to 2.2.1. THANK YOU!

     

Log in to post a comment.

MongoDB Logo MongoDB