maskarade/Android-Orma

Crash on Android 4.1

Closed this issue · 2 comments

Crash on Android 4.1 devices when migration is executed.
New ANTLR may uses java nio package, but it is not available on old Android.

E/AndroidRuntime: FATAL EXCEPTION: main
    java.lang.NoClassDefFoundError: java.nio.charset.StandardCharsets
        at org.antlr.v4.runtime.CodePointCharStream$CodePoint8BitCharStream.getText(CodePointCharStream.java:160)
        at org.antlr.v4.runtime.CommonToken.getText(CommonToken.java:170)
        at org.antlr.v4.runtime.tree.TerminalNodeImpl.getText(TerminalNodeImpl.java:54)
        at org.antlr.v4.runtime.RuleContext.getText(RuleContext.java:137)
        at org.antlr.v4.runtime.RuleContext.getText(RuleContext.java:137)
        at com.github.gfx.android.orma.migration.sqliteparser.SQLiteCreateIndexStatementCollector.exitIndex_name(SQLiteCreateIndexStatementCollector.java:34)
        at com.github.gfx.android.orma.migration.sqliteparser.g.SQLiteParser$Index_nameContext.exitRule(SQLiteParser.java:8853)
        at org.antlr.v4.runtime.Parser.triggerExitRuleEvent(Parser.java:408)
        at org.antlr.v4.runtime.Parser.exitRule(Parser.java:642)
        at com.github.gfx.android.orma.migration.sqliteparser.g.SQLiteParser.parse(SQLiteParser.java:273)
        at com.github.gfx.android.orma.migration.sqliteparser.SQLiteParserUtils.parse(SQLiteParserUtils.java:60)
        at com.github.gfx.android.orma.migration.sqliteparser.SQLiteParserUtils.parseIntoCreateIndexStatement(SQLiteParserUtils.java:79)
        at com.github.gfx.android.orma.migration.SchemaDiffMigration.parseIndexes(SchemaDiffMigration.java:107)
        at com.github.gfx.android.orma.migration.SchemaDiffMigration.indexDiff(SchemaDiffMigration.java:249)
        at com.github.gfx.android.orma.migration.SchemaDiffMigration.diffAll(SchemaDiffMigration.java:229)
        at com.github.gfx.android.orma.migration.SchemaDiffMigration.start(SchemaDiffMigration.java:150)
        at com.github.gfx.android.orma.OrmaConnection.onMigrate(OrmaConnection.java:460)
        at com.github.gfx.android.orma.OrmaConnection.getReadableDatabase(OrmaConnection.java:163)
        at com.github.gfx.android.orma.OrmaConnection.rawQueryForLong(OrmaConnection.java:301)
        at com.github.gfx.android.orma.Selector.count(Selector.java:208)
        at com.github.gfx.android.orma.internal.OrmaIterator.<init>(OrmaIterator.java:42)
        at com.github.gfx.android.orma.Selector.iterator(Selector.java:371)
        at kotlin.collections.CollectionsKt___CollectionsKt.firstOrNull(_Collections.kt:203)
...
gfx commented

Degraded at #400

Will fix it tonight 🙇

gfx commented

Released v4.2.5, reverting #400.