diff options
author | Makoto Onuki <omakoto@google.com> | 2015-06-23 00:19:50 +0000 |
---|---|---|
committer | Android Git Automerger <android-git-automerger@android.com> | 2015-06-23 00:19:50 +0000 |
commit | 9654188540a5a900ba5d80f5f955c46887c3f398 (patch) | |
tree | 2b8ca1c19ba9d6a7aec6fae22a38f14dc9698447 | |
parent | 839eddd7ba394dad1d14a84fda49415335961372 (diff) | |
parent | e090212bd2ff31a8f79a11e1e9b0980f7f6079fe (diff) | |
download | packages_providers_ContactsProvider-9654188540a5a900ba5d80f5f955c46887c3f398.tar.gz packages_providers_ContactsProvider-9654188540a5a900ba5d80f5f955c46887c3f398.tar.bz2 packages_providers_ContactsProvider-9654188540a5a900ba5d80f5f955c46887c3f398.zip |
am e090212b: Always atomically drop & create search index.
* commit 'e090212bd2ff31a8f79a11e1e9b0980f7f6079fe':
Always atomically drop & create search index.
-rw-r--r-- | src/com/android/providers/contacts/ContactsDatabaseHelper.java | 18 |
1 files changed, 12 insertions, 6 deletions
diff --git a/src/com/android/providers/contacts/ContactsDatabaseHelper.java b/src/com/android/providers/contacts/ContactsDatabaseHelper.java index fc81fa5b..aac37baf 100644 --- a/src/com/android/providers/contacts/ContactsDatabaseHelper.java +++ b/src/com/android/providers/contacts/ContactsDatabaseHelper.java @@ -1646,16 +1646,22 @@ public class ContactsDatabaseHelper extends SQLiteOpenHelper { } public void createSearchIndexTable(SQLiteDatabase db, boolean rebuildSqliteStats) { - db.execSQL("DROP TABLE IF EXISTS " + Tables.SEARCH_INDEX); - db.execSQL("CREATE VIRTUAL TABLE " + Tables.SEARCH_INDEX - + " USING FTS4 (" + db.beginTransaction(); + try { + db.execSQL("DROP TABLE IF EXISTS " + Tables.SEARCH_INDEX); + db.execSQL("CREATE VIRTUAL TABLE " + Tables.SEARCH_INDEX + + " USING FTS4 (" + SearchIndexColumns.CONTACT_ID + " INTEGER REFERENCES contacts(_id) NOT NULL," + SearchIndexColumns.CONTENT + " TEXT, " + SearchIndexColumns.NAME + " TEXT, " + SearchIndexColumns.TOKENS + " TEXT" - + ")"); - if (rebuildSqliteStats) { - updateSqliteStats(db); + + ")"); + if (rebuildSqliteStats) { + updateSqliteStats(db); + } + db.setTransactionSuccessful(); + } finally { + db.endTransaction(); } } |