Hi, i used github sqllite3 sample for database support,
some times my app crashes, crash is not stable, sometimes occurs, it is not generated at the same point but it occurs while read or write to db, crash log is below, what can cause that exception ?
Thanks.
Aug 29, 2016 1:53:03 AM com.mycompany.ui.db.DBAdapterV1 callSelect
SEVERE: DATABASE_CHECK filldvo:0
art I 399 51101 /teamcity/workdir/moe_repo_build/moe_repo/art/runtime/gc/heap.cc:2713] Background sticky concurrent mark sweep GC freed 46814(2MB) AllocSpace objects, 13(260KB) LOS objects, 13% free, 18MB/21MB, paused 7.425ms total 105.883ms
art F 399 52072 /teamcity/workdir/moe_repo_build/moe_repo/art/runtime/indirect_reference_table.cc:115] JNI ERROR (app bug): global reference table overflow (max=51200)
art F 399 52072 /teamcity/workdir/moe_repo_build/moe_repo/art/runtime/indirect_reference_table.cc:115] global reference table dump:
art F 399 52072 /teamcity/workdir/moe_repo_build/moe_repo/art/runtime/indirect_reference_table.cc:115] Last 10 entries (of 51200):
art F 399 52072 /teamcity/workdir/moe_repo_build/moe_repo/art/runtime/indirect_reference_table.cc:115] 51199: 0xc648e60 com.mycompany.ui.db.SQLiteStatement$1
art F 399 52072 /teamcity/workdir/moe_repo_build/moe_repo/art/runtime/indirect_reference_table.cc:115] 51198: 0xc36fac0 java.lang.Class<com.mycompany.ui.db.SQLiteStatement$1>
art F 399 52072 /teamcity/workdir/moe_repo_build/moe_repo/art/runtime/indirect_reference_table.cc:115] 51197: 0xcb5e6c0 com.intel.moe.natj.general.NatJ$JavaObjectConstructionInfo
art F 399 52072 /teamcity/workdir/moe_repo_build/moe_repo/art/runtime/indirect_reference_table.cc:115] 51196: 0xc641fd0 com.mycompany.ui.db.SQLiteStatement$1
art F 399 52072 /teamcity/workdir/moe_repo_build/moe_repo/art/runtime/indirect_reference_table.cc:115] 51195: 0xc36fac0 java.lang.Class<com.mycompany.ui.db.SQLiteStatement$1>
art F 399 52072 /teamcity/workdir/moe_repo_build/moe_repo/art/runtime/indirect_reference_table.cc:115] 51194: 0xc7fec10 java.lang.reflect.Method
art F 399 52072 /teamcity/workdir/moe_repo_build/moe_repo/art/runtime/indirect_reference_table.cc:115] 51193: 0xc638680 com.mycompany.ui.db.SQLiteStatement$1
art F 399 52072 /teamcity/workdir/moe_repo_build/moe_repo/art/runtime/indirect_reference_table.cc:115] 51192: 0xc36fac0 java.lang.Class<com.mycompany.ui.db.SQLiteStatement$1>
art F 399 52072 /teamcity/workdir/moe_repo_build/moe_repo/art/runtime/indirect_reference_table.cc:115] 51191: 0xcb26180 com.intel.moe.natj.general.NatJ$JavaObjectConstructionInfo
art F 399 52072 /teamcity/workdir/moe_repo_build/moe_repo/art/runtime/indirect_reference_table.cc:115] 51190: 0xc608a30 com.mycompany.ui.db.SQLiteStatement$1
art F 399 52072 /teamcity/workdir/moe_repo_build/moe_repo/art/runtime/indirect_reference_table.cc:115] Summary:
art F 399 52072 /teamcity/workdir/moe_repo_build/moe_repo/art/runtime/indirect_reference_table.cc:115] 14738 of java.lang.Class (392 unique instances)
art F 399 52072 /teamcity/workdir/moe_repo_build/moe_repo/art/runtime/indirect_reference_table.cc:115] 2 of java.lang.String (2 unique instances)
art F 399 52072 /teamcity/workdir/moe_repo_build/moe_repo/art/runtime/indirect_reference_table.cc:115] 10518 of java.lang.reflect.Method (10518 unique instances)
art F 399 52072 /teamcity/workdir/moe_repo_build/moe_repo/art/runtime/indirect_reference_table.cc:115] 2 of java.lang.ThreadGroup (2 unique instances)
art F 399 52072 /teamcity/workdir/moe_repo_build/moe_repo/art/runtime/indirect_reference_table.cc:115] 2 of dalvik.system.PathClassLoader (1 unique instances)
art F 399 52072 /teamcity/workdir/moe_repo_build/moe_repo/art/runtime/indirect_reference_table.cc:115] 166 of com.intel.moe.natj.objc.ObjCSelectorsFinder (166 unique instances)
art F 399 52072 /teamcity/workdir/moe_repo_build/moe_repo/art/runtime/indirect_reference_table.cc:115] 13355 of com.mycompany.ui.db.SQLiteStatement$1 (13355 unique instances)
art F 399 52072 /teamcity/workdir/moe_repo_build/moe_repo/art/runtime/indirect_reference_table.cc:115] 1 of com.intel.moe.natj.c.CRuntime
art F 399 52072 /teamcity/workdir/moe_repo_build/moe_repo/art/runtime/indirect_reference_table.cc:115] 1 of com.intel.moe.natj.objc.ObjCRuntime
art F 399 52072 /teamcity/workdir/moe_repo_build/moe_repo/art/runtime/indirect_reference_table.cc:115] 2 of com.intel.moe.natj.general.NilException (2 unique instances)
art F 399 52072 /teamcity/workdir/moe_repo_build/moe_repo/art/runtime/indirect_reference_table.cc:115] 12110 of com.intel.moe.natj.general.NatJ$JavaObjectConstructionInfo (12110 unique instances)
art F 399 52072 /teamcity/workdir/moe_repo_build/moe_repo/art/runtime/indirect_reference_table.cc:115] 303 of com.intel.moe.natj.general.NatJ$NativeObjectConstructionInfo (303 unique instances)
art F 399 52072 /teamcity/workdir/moe_repo_build/moe_repo/art/runtime/indirect_reference_table.cc:115]
art F 399 52072 /teamcity/workdir/moe_repo_build/moe_repo/art/runtime/runtime.cc:448]Runtime aborting...
Aborting thread:
"Thread-134" prio=5 tid=7 Runnable
| group="" sCount=0 dsCount=0 obj=0xd151d60 self=0x15ba9600
| sysTid=52072 nice=-1 cgrp=default sched=1/31 handle=0x45379000
| state=? schedstat=( 0 0 0 ) utm=0 stm=0 core=0 HZ=100
| stack=0x452fa000-0x45302000 stackSize=508KB
| held mutexes= "abort lock" "JNI global reference table lock"(exclusive held) "mutator lock"(shared held)
at com.intel.moe.natj.c.CRuntime.allocNativeCallback(Native method)
at com.intel.moe.natj.c.map.CCallbackMapper.toNative(CCallbackMapper.java:138)
- locked <0x061e0029> (a com.intel.moe.natj.c.map.CCallbackMapper$CallbackInfo[])
at com.intel.moe.natj.general.NatJ.toNative(NatJ.java:1068)
at org.sqlite.c.Globals.sqlite3_bind_text(Native method)
at com.mycompany.ui.db.SQLiteStatement.prepare(SQLiteStatement.java:94)
at com.mycompany.ui.db.SQLiteDatabase.rawQuery(SQLiteDatabase.java:97)
at com.mycompany.ui.db.DBAdapterV1.callSelect(DBAdapterV1.java:266)
at com.mycompany.ui.db.DBAdapterV1.getFile(DBAdapterV1.java:701)
at com.mycompany.ui.db.DBSettingsManager.getFile(DBSettingsManager.java:224)
at com.mycompany.ui.tasks.process.ProcessFiles.process(ProcessFiles.java:169)
at com.mycompany.ui.tasks.TaskMultipleService.doInBackground(TaskMultipleService.java:324)
at com.mycompany.ui.asycntasks.AsyncTask$1.call_dispatch_async(AsyncTask.java:39)
Dumping all threads without appropriate locks held: thread list lock
All threads:
DALVIK THREADS (9):
"Thread-134" prio=5 tid=7 Runnable
| group="" sCount=0 dsCount=0 obj=0xd151d60 self=0x15ba9600
| sysTid=52072 nice=-1 cgrp=default sched=1/31 handle=0x45379000
| state=? schedstat=( 0 0 0 ) utm=0 stm=0 core=0 HZ=100
| stack=0x452fa000-0x45302000 stackSize=508KB
| held mutexes= "abort lock" "JNI global reference table lock"(exclusive held) "mutator lock"(shared held)
at com.intel.moe.natj.c.CRuntime.allocNativeCallback(Native method)
at com.intel.moe.natj.c.map.CCallbackMapper.toNative(CCallbackMapper.java:138)
- locked <0x061e0029> (a com.intel.moe.natj.c.map.CCallbackMapper$CallbackInfo[])
at com.intel.moe.natj.general.NatJ.toNative(NatJ.java:1068)
at org.sqlite.c.Globals.sqlite3_bind_text(Native method)
at com.mycompany.ui.db.SQLiteStatement.prepare(SQLiteStatement.java:94)
at com.mycompany.ui.db.SQLiteDatabase.rawQuery(SQLiteDatabase.java:97)
at com.mycompany.ui.db.DBAdapterV1.callSelect(DBAdapterV1.java:266)
at com.mycompany.ui.db.DBAdapterV1.getFile(DBAdapterV1.java:701)
at com.mycompany.ui.db.DBSettingsManager.getFile(DBSettingsManager.java:224)
at com.mycompany.ui.tasks.process.ProcessFiles.process(ProcessFiles.java:169)
at com.mycompany.ui.tasks.TaskMultipleService.doInBackground(TaskMultipleService.java:324)
at com.mycompany.ui.asycntasks.AsyncTask$1.call_dispatch_async(AsyncTask.java:39)
"main" prio=5 tid=1 Native
| group="" sCount=1 dsCount=0 obj=0xc3cc0a0 self=0x1582fa00
| sysTid=51062 nice=-1 cgrp=default sched=1/31 handle=0x38315000
| state=? schedstat=( 0 0 0 ) utm=0 stm=0 core=0 HZ=100
| stack=0x3aa5000-0x3aad000 stackSize=1004KB
| held mutexes=
at ios.uikit.c.UIKit.UIApplicationMain(Native method)
at com.mycompany.Main.main(Main.java:42)
"Signal Catcher" prio=5 tid=2 WaitingInMainSignalCatcherLoop
| group="" sCount=1 dsCount=0 obj=0xc3ce0a0 self=0x16030c00
| sysTid=51097 nice=-1 cgrp=default sched=1/31 handle=0x40103000
| state=? schedstat=( 0 0 0 ) utm=0 stm=0 core=0 HZ=100
| stack=0x40084000-0x4008c000 stackSize=508KB
| held mutexes=
(no managed stack frames)
"ReferenceQueueDaemon" prio=5 tid=3 Waiting
| group="" sCount=1 dsCount=0 obj=0xc3cc160 self=0x15830400
| sysTid=51098 nice=-1 cgrp=default sched=1/31 handle=0x40215000
| state=? schedstat=( 0 0 0 ) utm=0 stm=0 core=0 HZ=100
| stack=0x40106000-0x4010e000 stackSize=1084KB
| held mutexes= "a thread wait mutex"
at java.lang.Object.wait!(Native method)
- waiting on <0x0788bfae> (a java.lang.Class<java.lang.ref.ReferenceQueue>)
at java.lang.Daemons$ReferenceQueueDaemon.run(Daemons.java:149)
- locked <0x0788bfae> (a java.lang.Class<java.lang.ref.ReferenceQueue>)
at java.lang.Thread.run(Thread.java:818)
"FinalizerDaemon" prio=5 tid=4 Waiting
| group="" sCount=1 dsCount=0 obj=0xc3cc1c0 self=0x15830a00
| sysTid=51099 nice=-1 cgrp=default sched=1/31 handle=0x40327000
| state=? schedstat=( 0 0 0 ) utm=0 stm=0 core=0 HZ=100
| stack=0x40218000-0x40220000 stackSize=1084KB
| held mutexes= "a thread wait mutex"
at java.lang.Object.wait!(Native method)
- waiting on <0x0e34d14f> (a java.lang.ref.ReferenceQueue)
at java.lang.Object.wait(Object.java:423)
at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:101)
- locked <0x0e34d14f> (a java.lang.ref.ReferenceQueue)
at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:72)
at java.lang.Daemons$FinalizerDaemon.run(Daemons.java:189)
at java.lang.Thread.run(Thread.java:818)
"FinalizerWatchdogDaemon" prio=5 tid=5 Sleeping
| group="" sCount=1 dsCount=0 obj=0xc3cc220 self=0x15831000
| sysTid=51100 nice=-1 cgrp=default sched=1/31 handle=0x40439000
| state=? schedstat=( 0 0 0 ) utm=0 stm=0 core=0 HZ=100
| stack=0x4032a000-0x40332000 stackSize=1084KB
| held mutexes= "a thread wait mutex"
at java.lang.Thread.sleep!(Native method)
- sleeping on <0x065d60dc> (a java.lang.Object)
at java.lang.Thread.sleep(Thread.java:1031)
- locked <0x065d60dc> (a java.lang.Object)
at java.lang.Thread.sleep(Thread.java:985)
at java.lang.Daemons$FinalizerWatchdogDaemon.sleepFor(Daemons.java:280)
at java.lang.Daemons$FinalizerWatchdogDaemon.waitForFinalization(Daemons.java:295)
at java.lang.Daemons$FinalizerWatchdogDaemon.run(Daemons.java:237)
at java.lang.Thread.run(Thread.java:818)
"HeapTaskDaemon" prio=5 tid=6 Blocked
| group="" sCount=1 dsCount=0 obj=0xc3cc280 self=0x16031200
| sysTid=51101 nice=-1 cgrp=default sched=1/31 handle=0x4054b000
| state=? schedstat=( 0 0 0 ) utm=0 stm=0 core=0 HZ=100
| stack=0x4043c000-0x40444000 stackSize=1084KB
| held mutexes= "Task processor lock"
at dalvik.system.VMRuntime.runHeapTasks(Native method)
- waiting to lock an unknown object
at java.lang.Daemons$HeapTaskDaemon.run(Daemons.java:368)
at java.lang.Thread.run(Thread.java:818)
"Okio Watchdog" prio=5 tid=8 Waiting
| group="" sCount=1 dsCount=0 obj=0xc84eca0 self=0x16118600
| sysTid=51297 nice=-1 cgrp=default sched=1/31 handle=0x42e11000
| state=? schedstat=( 0 0 0 ) utm=0 stm=0 core=0 HZ=100
| stack=0x42d02000-0x42d0a000 stackSize=1084KB
| held mutexes= "a thread wait mutex"
at java.lang.Object.wait!(Native method)
- waiting on <0x0f6d75e5> (a java.lang.Class<com.android.okio.AsyncTimeout>)
at com.android.okio.AsyncTimeout.awaitTimeout(AsyncTimeout.java:311)
- locked <0x0f6d75e5> (a java.lang.Class<com.android.okio.AsyncTimeout>)
at com.android.okio.AsyncTimeout.access$000(AsyncTimeout.java:40)
at com.android.okio.AsyncTimeout$Watchdog.run(AsyncTimeout.java:286)
"OkHttp ConnectionPool" prio=5 tid=9 TimedWaiting
| group="" sCount=1 dsCount=0 obj=0xc86b4c0 self=0x1611e800
| sysTid=51298 nice=-1 cgrp=default sched=1/31 handle=0x42f23000
| state=? schedstat=( 0 0 0 ) utm=0 stm=0 core=0 HZ=100
| stack=0x42e14000-0x42e1c000 stackSize=1084KB
| held mutexes= "a thread wait mutex"
at java.lang.Object.wait!(Native method)
- waiting on <0x0fa528ba> (a com.android.okhttp.ConnectionPool)
at com.android.okhttp.ConnectionPool.performCleanup(ConnectionPool.java:305)
- locked <0x0fa528ba> (a com.android.okhttp.ConnectionPool)
at com.android.okhttp.ConnectionPool.runCleanupUntilPoolIsEmpty(ConnectionPool.java:242)
at com.android.okhttp.ConnectionPool.access$000(ConnectionPool.java:54)
at com.android.okhttp.ConnectionPool$1.run(ConnectionPool.java:97)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1113)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:588)
at java.lang.Thread.run(Thread.java:818)
art W 399 52072 /teamcity/workdir/moe_repo_build/moe_repo/art/runtime/barrier.cc:96] Attempted to destroy barrier with non zero count -1