diff --git a/src/com/android/providers/telephony/MmsSmsDatabaseHelper.java b/src/com/android/providers/telephony/MmsSmsDatabaseHelper.java
index 6139015..97967ed 100644
--- a/src/com/android/providers/telephony/MmsSmsDatabaseHelper.java
+++ b/src/com/android/providers/telephony/MmsSmsDatabaseHelper.java
@@ -1673,6 +1673,26 @@
         onCreate(db);
     }
 
+    @Override
+    public void onDowngrade(SQLiteDatabase db, int oldVersion, int currentVersion) {
+        Log.w(TAG, "Downgrading database from version " + oldVersion
+                + " to " + currentVersion + ".");
+
+        if (oldVersion == 68) {
+            // 68 was adding cm-14.1 migration, but that was removed.
+            db.beginTransaction();
+            try {
+                db.setVersion(currentVersion);
+                db.setTransactionSuccessful();
+            } finally {
+                db.endTransaction();
+            }
+            return;
+        }
+        throw new SQLiteException("Can't downgrade database from version " +
+                oldVersion + " to " + currentVersion);
+    }
+
     private void dropAll(SQLiteDatabase db) {
         // Clean the database out in order to start over from scratch.
         // We don't need to drop our triggers here because SQLite automatically
diff --git a/src/com/android/providers/telephony/TelephonyProvider.java b/src/com/android/providers/telephony/TelephonyProvider.java
index c0faeee..62396af 100644
--- a/src/com/android/providers/telephony/TelephonyProvider.java
+++ b/src/com/android/providers/telephony/TelephonyProvider.java
@@ -1527,7 +1527,9 @@
                 oldVersion = 41 << 16 | 6;
             }
 
-            if (oldVersion < (42 << 16 | 6)) {
+            if (oldVersion < (44 << 16 | 6)) {
+                // In Lineage 17.1, we changed the version to 43
+                // so the AOSP version 42 and 43 upgrade would be skipped
                 try {
                     // Try to update the siminfo table. It might not be there.
                     db.execSQL("ALTER TABLE " + SIMINFO_TABLE + " ADD COLUMN " +
@@ -1538,9 +1540,7 @@
                                 "The table will get created in onOpen.");
                     }
                 }
-            }
 
-            if (oldVersion < (43 << 16 | 6)) {
                 try {
                     // Try to update the siminfo table. It might not be there.
                     db.execSQL("ALTER TABLE " + SIMINFO_TABLE + " ADD COLUMN "
@@ -1552,10 +1552,7 @@
                                 "The table will get created in onOpen.");
                     }
                 }
-                oldVersion = 43 << 16 | 6;
-            }
 
-            if (oldVersion < (44 << 16 | 6)) {
                 try {
                     // Try to update the siminfo table. It might not be there.
                     db.execSQL("ALTER TABLE " + SIMINFO_TABLE + " ADD COLUMN "
