In my app I'm using DB in many situations, but there is one situation in which I'm getting an exception, not every time and could reproduce it (yet).
This is happening only on OS versions 2.3.7 and 2.1-update-1.
The code:
public void removeOldOccurrences() {
SQLiteDatabase db = dbHelper.getWritableDatabase();
Long oldTime = System.currentTimeMillis() - VALID_OCCURRENCE_TIME;
String query = "";
try {
query = "DELETE FROM " + LOCATIONS_TABLE + " WHERE not ("
+ REMEMBERED_FIELD + "=1) " + "and (" + LAST_FIELD + "<"
+ oldTime + ");";
db.execSQL(query);
} catch (Exception e) {
Log.e(TAG, query);
e.printStackTrace();
} finally {
if (db != null) {
db.close();
}
}
}
The exception trace is:
android.database.sqlite.SQLiteException: not an error
at android.database.sqlite.SQLiteDatabase.dbopen(Native Method)
at android.database.sqlite.SQLiteDatabase.(SQLiteDatabase.java:1849)
at android.database.sqlite.SQLiteDatabase.openDatabase(SQLiteDatabase.java:820)
at android.database.sqlite.SQLiteDatabase.openOrCreateDatabase(SQLiteDatabase.java:854)
at android.database.sqlite.SQLiteDatabase.openOrCreateDatabase(SQLiteDatabase.java:847)
at android.app.ContextImpl.openOrCreateDatabase(ContextImpl.java:573)
at android.content.ContextWrapper.openOrCreateDatabase(ContextWrapper.java:203)
at android.database.sqlite.SQLiteOpenHelper.getWritableDatabase(SQLiteOpenHelper.java:118)
please help.