From b15c34fef3bfa69aae16aaa6546188fc55bcfad5 Mon Sep 17 00:00:00 2001 From: Damyan Ivanov Date: Sun, 20 Sep 2020 15:30:49 +0300 Subject: [PATCH] enable the foreign_keys PRAGMA only in debug builds hopefully will help iron out all the caveats --- .../ktnx/mobileledger/utils/MobileLedgerDatabase.java | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/app/src/main/java/net/ktnx/mobileledger/utils/MobileLedgerDatabase.java b/app/src/main/java/net/ktnx/mobileledger/utils/MobileLedgerDatabase.java index 3e1919e1..29d650a5 100644 --- a/app/src/main/java/net/ktnx/mobileledger/utils/MobileLedgerDatabase.java +++ b/app/src/main/java/net/ktnx/mobileledger/utils/MobileLedgerDatabase.java @@ -24,6 +24,8 @@ import android.database.sqlite.SQLiteDatabase; import android.database.sqlite.SQLiteOpenHelper; import android.util.Log; +import net.ktnx.mobileledger.BuildConfig; + import java.io.BufferedReader; import java.io.IOException; import java.io.InputStream; @@ -34,7 +36,7 @@ import static net.ktnx.mobileledger.utils.Logger.debug; public class MobileLedgerDatabase extends SQLiteOpenHelper { private static final String DB_NAME = "MoLe.db"; - private static final int LATEST_REVISION = 39; + private static final int LATEST_REVISION = 40; private static final String CREATE_DB_SQL = "create_db"; private final Application mContext; @@ -54,7 +56,9 @@ public class MobileLedgerDatabase extends SQLiteOpenHelper { @Override public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) { - debug("db", "onUpgrade called"); + debug("db", + String.format(Locale.US, "needs upgrade from version %d to version %d", oldVersion, + newVersion)); for (int i = oldVersion + 1; i <= newVersion; i++) applyRevision(db, i); } @@ -62,7 +66,8 @@ public class MobileLedgerDatabase extends SQLiteOpenHelper { public void onOpen(SQLiteDatabase db) { super.onOpen(db); db.execSQL("pragma case_sensitive_like=ON;"); - db.execSQL("PRAGMA foreign_keys=ON"); + if (BuildConfig.DEBUG) + db.execSQL("PRAGMA foreign_keys=ON"); } private void applyRevision(SQLiteDatabase db, int rev_no) { -- 2.39.2