From f4398d82c650a4ea7a448430998ca510abbfce3a Mon Sep 17 00:00:00 2001 From: Alex Baker Date: Fri, 11 Mar 2022 08:03:30 -0600 Subject: [PATCH] Chunk tasks when updating modified time --- app/src/main/java/org/tasks/data/TaskDao.kt | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/app/src/main/java/org/tasks/data/TaskDao.kt b/app/src/main/java/org/tasks/data/TaskDao.kt index e77fe22e9..562190375 100644 --- a/app/src/main/java/org/tasks/data/TaskDao.kt +++ b/app/src/main/java/org/tasks/data/TaskDao.kt @@ -145,8 +145,11 @@ SELECT EXISTS(SELECT 1 FROM tasks WHERE parent > 0 AND deleted = 0) AS hasSubtas @RawQuery(observedEntities = [Place::class]) abstract fun getTaskFactory(query: SimpleSQLiteQuery): DataSource.Factory + suspend fun touch(ids: List, now: Long = currentTimeMillis()) = + ids.eachChunk { internalTouch(it, now) } + @Query("UPDATE tasks SET modified = :now WHERE _id in (:ids)") - abstract suspend fun touch(ids: List, now: Long = currentTimeMillis()) + internal abstract suspend fun internalTouch(ids: List, now: Long = currentTimeMillis()) suspend fun setParent(parent: Long, tasks: List) = tasks.eachChunk { setParentInternal(parent, it) }