diff --git a/mobile/lib/db/files_db.dart b/mobile/lib/db/files_db.dart index 35a2565d10..28ed7be821 100644 --- a/mobile/lib/db/files_db.dart +++ b/mobile/lib/db/files_db.dart @@ -1661,19 +1661,6 @@ class FilesDB with SqlDbBase { return FileLoadResult(filteredFiles, files.length == limit); } - Future remoteFileCount() async { - final db = await instance.sqliteAsyncDB; - final results = await db.getAll(''' - SELECT DISTINCT $columnUploadedFileID FROM $filesTable - WHERE $columnUploadedFileID IS NOT NULL AND $columnUploadedFileID IS NOT -1 - '''); - final ids = {}; - for (final result in results) { - ids.add(result[columnUploadedFileID] as int); - } - return ids.length; - } - ///Returns "columnName1 = ?, columnName2 = ?, ..." String _generateUpdateAssignmentsWithPlaceholders({ required int? fileGenId, diff --git a/mobile/lib/db/remote/db.dart b/mobile/lib/db/remote/db.dart index 2f2ededd93..d511e49302 100644 --- a/mobile/lib/db/remote/db.dart +++ b/mobile/lib/db/remote/db.dart @@ -115,6 +115,15 @@ class RemoteDB with SqlDbBase { ); } + Future rowCount( + RemoteTable table, + ) async { + final row = await _sqliteDB.get( + 'SELECT COUNT(*) as count FROM ${table.name}', + ); + return row['count'] as int; + } + Future> _getByIds( Set ids, String table, diff --git a/mobile/lib/utils/ml_util.dart b/mobile/lib/utils/ml_util.dart index b0f738d9a1..e311b80977 100644 --- a/mobile/lib/utils/ml_util.dart +++ b/mobile/lib/utils/ml_util.dart @@ -7,6 +7,7 @@ import "package:photos/db/files_db.dart"; import "package:photos/db/ml/db.dart"; import "package:photos/db/ml/filedata.dart"; import "package:photos/db/ml/offlinedb.dart"; +import "package:photos/db/remote/db.dart"; import "package:photos/extensions/list.dart"; import "package:photos/models/file/extensions/file_props.dart"; import "package:photos/models/file/file.dart"; @@ -370,7 +371,7 @@ bool _shouldDiscardRemoteEmbedding(FileDataEntity fileML) { } Future getIndexableFileCount() async { - return FilesDB.instance.remoteFileCount(); + return remoteDB.rowCount(RemoteTable.files); } Future getImagePathForML(EnteFile enteFile) async {