lingochamp / lingochamp/FileDownloader
SQLiteDatabaseLockedException 1.7.5版本崩溃
Nobody has claimed this yet.
- Dominant language
- Java
- Stars
- 11.1k
- Forks
- 2.2k
- PR merge metrics
- No merged PRs in 30d
Description
老师您好:
我在使用1.7.5版本的时候发生了多次上报的崩溃现象,我是在单任务执行的情况下同时下载两个文件。日志如下 该问题主要集中在4.2.2和4.4.2中,还有我在下载过程中会有个极小概率的crash空指针问题,是否会对此造成影响
Caused by: android.database.sqlite.SQLiteDatabaseLockedException: database is locked (code 5)
2.at android.database.sqlite.SQLiteConnection.nativeExecuteForChangedRowCount(Native Method)
3.at android.database.sqlite.SQLiteConnection.executeForChangedRowCount(SQLiteConnection.java:734)
4.at android.database.sqlite.SQLiteSession.executeForChangedRowCount(SQLiteSession.java:754)
5.at android.database.sqlite.SQLiteStatement.executeUpdateDelete(SQLiteStatement.java:64)
6.at android.database.sqlite.SQLiteDatabase.executeSql(SQLiteDatabase.java:1674)
7.at android.database.sqlite.SQLiteDatabase.execSQL(SQLiteDatabase.java:1603)
8.at com.networkbench.agent.impl.instrumentation.NBSSQLiteInstrumentation.execSQL(SourceFile:2)
9.at com.liulishuo.filedownloader.h0.d.q(SourceFile:1)
10.at com.liulishuo.filedownloader.h0.c.z(SourceFile:5)
11.at com.liulishuo.filedownloader.h0.c.v(SourceFile:1)
12.at com.liulishuo.filedownloader.h0.c$a.handleMessage(SourceFile:6)
13.at android.os.Handler.dispatchMessage(Handler.java:95)
14.at android.os.Looper.loop(Looper.java:137)
15.at android.os.HandlerThread.run(HandlerThread.java:61)
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reproducing two simultaneous downloads on Android 4.2.2 and 4.4.2, then trace the reported stack from h0.d.q through h0.c and its Handler message handling. Confirm whether the SQLiteDatabaseLockedException can be reproduced and determine whether the separately mentioned null-pointer crash is related; done means both failure conditions are understood and separately addressed.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- android, java, sqlite
- Domain
- databases, mobile
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100