From d7b52abf43aa7f04bc56d2cfdcc6fd9d0ac6ae85 Mon Sep 17 00:00:00 2001 From: Torsten Grote Date: Thu, 6 Apr 2023 08:34:02 -0300 Subject: [PATCH] [db] Clarify method documentation for clearing/resetting --- libs/database/src/main/java/org/fdroid/database/AppDao.kt | 5 +++++ .../src/main/java/org/fdroid/database/RepositoryDao.kt | 4 +++- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/libs/database/src/main/java/org/fdroid/database/AppDao.kt b/libs/database/src/main/java/org/fdroid/database/AppDao.kt index 66c877080..ef6f20719 100644 --- a/libs/database/src/main/java/org/fdroid/database/AppDao.kt +++ b/libs/database/src/main/java/org/fdroid/database/AppDao.kt @@ -592,6 +592,11 @@ internal interface AppDaoInt : AppDao { @Query("SELECT COUNT(*) FROM ${LocalizedFileList.TABLE}") fun countLocalizedFileLists(): Int + /** + * Removes all apps and associated data such as versions from the database. + * Careful: Doing this without other measures such as calling [RepositoryDaoInt.resetTimestamps] + * will cause application of diffs to fail. + */ @Query("DELETE FROM ${AppMetadata.TABLE}") fun clearAll() } diff --git a/libs/database/src/main/java/org/fdroid/database/RepositoryDao.kt b/libs/database/src/main/java/org/fdroid/database/RepositoryDao.kt index 0605db02b..db78e78a5 100644 --- a/libs/database/src/main/java/org/fdroid/database/RepositoryDao.kt +++ b/libs/database/src/main/java/org/fdroid/database/RepositoryDao.kt @@ -15,6 +15,7 @@ import org.fdroid.database.DbDiffUtils.diffAndUpdateListTable import org.fdroid.database.DbDiffUtils.diffAndUpdateTable import org.fdroid.index.IndexFormatVersion import org.fdroid.index.IndexParser.json +import org.fdroid.index.v2.IndexV2Updater import org.fdroid.index.v2.MirrorV2 import org.fdroid.index.v2.ReflectionDiffer.applyDiff import org.fdroid.index.v2.RepoV2 @@ -380,7 +381,8 @@ internal interface RepositoryDaoInt : RepositoryDao { /** * Resets timestamps for *all* repos in the database. - * This will cause + * This will use a full index instead of diffs + * when updating the repository via [IndexV2Updater]. */ @Query("UPDATE ${CoreRepository.TABLE} SET timestamp = -1") fun resetTimestamps()