From 241387101cab0e51bd366ae4b09db90ff04b60dc Mon Sep 17 00:00:00 2001 From: chenchen <chenchen310@huawei.com> Date: Wed, 27 Nov 2024 16:52:37 +0800 Subject: [PATCH] after ota reset the thumbs flag Signed-off-by: chenchen <chenchen310@huawei.com> --- .../clouddisk_database/include/clouddisk_db_const.h | 3 ++- services/clouddisk_database/include/file_column.h | 2 ++ .../clouddisk_database/src/clouddisk_rdbstore.cpp | 12 ++++++++++++ services/clouddisk_database/src/file_column.cpp | 3 +++ 4 files changed, 19 insertions(+), 1 deletion(-) diff --git a/services/clouddisk_database/include/clouddisk_db_const.h b/services/clouddisk_database/include/clouddisk_db_const.h index 39fb2710..db6ab3b7 100644 --- a/services/clouddisk_database/include/clouddisk_db_const.h +++ b/services/clouddisk_database/include/clouddisk_db_const.h @@ -25,7 +25,7 @@ namespace CloudDisk { //rdb const std::string CLOUD_DISK_DATABASE_NAME = "clouddisk.db"; //rdb version -const int32_t CLOUD_DISK_RDB_VERSION = 14; +const int32_t CLOUD_DISK_RDB_VERSION = 15; enum { VERSION_ADD_PARENT_CLOUD_ID_INDEX = 2, VERSION_FIX_FILE_TRIGGER = 3, @@ -40,6 +40,7 @@ enum { VERSION_REMOVE_CLOUD_SYNC_FUNC_TRIGGER = 12, VERSION_ADD_ATTRIBUTE = 13, VERSION_ADD_THM_FLAG = 14, + VERSION_RESET_THUMBS_FLAG = 15, }; // drive kit const std::string DK_FILE_NAME = "fileName"; diff --git a/services/clouddisk_database/include/file_column.h b/services/clouddisk_database/include/file_column.h index e43a2d37..a2e9d62d 100644 --- a/services/clouddisk_database/include/file_column.h +++ b/services/clouddisk_database/include/file_column.h @@ -91,6 +91,8 @@ public: static const std::string ADD_UPLOAD_FLAG; + static const std::string RESET_THUMBS_FLAG; + // Query FILES_TABLE for FileSystem static const std::vector<std::string> FILE_SYSTEM_QUERY_COLUMNS; diff --git a/services/clouddisk_database/src/clouddisk_rdbstore.cpp b/services/clouddisk_database/src/clouddisk_rdbstore.cpp index b1601f8f..08ee64bd 100644 --- a/services/clouddisk_database/src/clouddisk_rdbstore.cpp +++ b/services/clouddisk_database/src/clouddisk_rdbstore.cpp @@ -1681,6 +1681,15 @@ static void VersionAddThmFlag(RdbStore &store) } } +static void VersionResetThmFlag(RdbStore &store) +{ + const string resetThmFlag = FileColumn::RESET_THUMBS_FLAG; + int32_t ret = store.ExecuteSql(resetThmFlag); + if (ret != NativeRdb::E_OK) { + LOGE("reset thm_flag fail, err %{public}d", ret); + } +} + static int32_t GetMetaBaseData(CloudDiskFileInfo &info, const shared_ptr<ResultSet> resultSet) { RETURN_ON_ERR(CloudDiskRdbUtils::GetString(FileColumn::CLOUD_ID, info.cloudId, resultSet)); @@ -1910,6 +1919,9 @@ int32_t CloudDiskDataCallBack::OnUpgrade(RdbStore &store, int32_t oldVersion, in if (oldVersion < VERSION_ADD_THM_FLAG) { VersionAddThmFlag(store); } + if (oldVersion < VERSION_RESET_THUMBS_FLAG) { + VersionResetThmFlag(store); + } return NativeRdb::E_OK; } } \ No newline at end of file diff --git a/services/clouddisk_database/src/file_column.cpp b/services/clouddisk_database/src/file_column.cpp index 1ac03ad1..3d7b0912 100644 --- a/services/clouddisk_database/src/file_column.cpp +++ b/services/clouddisk_database/src/file_column.cpp @@ -109,6 +109,9 @@ const std::string FileColumn::ADD_LCD_FLAG = "ALTER Table " + FILES_TABLE + const std::string FileColumn::ADD_UPLOAD_FLAG = "ALTER Table " + FILES_TABLE + " ADD COLUMN " + NO_NEED_UPLOAD + " INT DEFAULT 0"; +const std::string FileColumn::RESET_THUMBS_FLAG = "UPDATE " + FILES_TABLE + + " SET " + THM_FLAG + " = 0, " + LCD_FLAG + " = 0 WHERE " + NO_NEED_UPLOAD + " = 0"; + const std::vector<std::string> FileColumn::FILE_SYSTEM_QUERY_COLUMNS = { FILE_NAME, CLOUD_ID, -- Gitee