数据库连接
Closed this issue · 1 comments
XerWandeRer commented
短时间记录多个事件会造成 java.lang.IllegalStateException: #Cannot perform this operation because the connection pool has been closed.
的问题,并提示 SA.AnalyticsMessages: SensorsData will not process any more analytics messages
,之后每次尝试记录事件均会提示 SA.AnalyticsMessages: Dead worker dropping a message: 3
。重启应用恢复正常。
Full log:
06-17 11:26:59.344 9709-9758/com.example.test E/SA.AnalyticsMessages: Worker threw an unhandled exception
java.lang.IllegalStateException: Cannot perform this operation because the connection pool has been closed.
at android.database.sqlite.SQLiteConnectionPool.throwIfClosedLocked(SQLiteConnectionPool.java:962)
at android.database.sqlite.SQLiteConnectionPool.waitForConnection(SQLiteConnectionPool.java:599)
at android.database.sqlite.SQLiteConnectionPool.acquireConnection(SQLiteConnectionPool.java:348)
at android.database.sqlite.SQLiteSession.acquireConnection(SQLiteSession.java:894)
at android.database.sqlite.SQLiteSession.executeForCursorWindow(SQLiteSession.java:834)
at android.database.sqlite.SQLiteQuery.fillWindow(SQLiteQuery.java:62)
at android.database.sqlite.SQLiteCursor.fillWindow(SQLiteCursor.java:144)
at android.database.sqlite.SQLiteCursor.getCount(SQLiteCursor.java:133)
at android.database.AbstractCursor.moveToPosition(AbstractCursor.java:197)
at android.database.AbstractCursor.moveToFirst(AbstractCursor.java:237)
at com.sensorsdata.analytics.android.sdk.DbAdapter.cleanupEvents(DbAdapter.java:180)
at com.sensorsdata.analytics.android.sdk.AnalyticsMessages.sendData(AnalyticsMessages.java:201)
at com.sensorsdata.analytics.android.sdk.AnalyticsMessages$Worker$AnalyticsMessageHandler.handleMessage(AnalyticsMessages.java:304)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:135)
at android.os.HandlerThread.run(HandlerThread.java:61)
06-17 11:26:59.344 9709-9758/com.example.test E/SA.AnalyticsMessages: SensorsData will not process any more analytics messages
java.lang.IllegalStateException: Cannot perform this operation because the connection pool has been closed.
at android.database.sqlite.SQLiteConnectionPool.throwIfClosedLocked(SQLiteConnectionPool.java:962)
at android.database.sqlite.SQLiteConnectionPool.waitForConnection(SQLiteConnectionPool.java:599)
at android.database.sqlite.SQLiteConnectionPool.acquireConnection(SQLiteConnectionPool.java:348)
at android.database.sqlite.SQLiteSession.acquireConnection(SQLiteSession.java:894)
at android.database.sqlite.SQLiteSession.executeForCursorWindow(SQLiteSession.java:834)
at android.database.sqlite.SQLiteQuery.fillWindow(SQLiteQuery.java:62)
at android.database.sqlite.SQLiteCursor.fillWindow(SQLiteCursor.java:144)
at android.database.sqlite.SQLiteCursor.getCount(SQLiteCursor.java:133)
at android.database.AbstractCursor.moveToPosition(AbstractCursor.java:197)
at android.database.AbstractCursor.moveToFirst(AbstractCursor.java:237)
at com.sensorsdata.analytics.android.sdk.DbAdapter.cleanupEvents(DbAdapter.java:180)
at com.sensorsdata.analytics.android.sdk.AnalyticsMessages.sendData(AnalyticsMessages.java:201)
at com.sensorsdata.analytics.android.sdk.AnalyticsMessages$Worker$AnalyticsMessageHandler.handleMessage(AnalyticsMessages.java:304)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:135)
at android.os.HandlerThread.run(HandlerThread.java:61)
XerWandeRer commented
Fixed in 1.51