From 6e2ee1f001a4864373510e5af71420a61d57631c Mon Sep 17 00:00:00 2001 From: Marcel Hibbe Date: Mon, 12 Aug 2024 15:21:11 +0200 Subject: [PATCH] add index to ChatBlockEntity Signed-off-by: Marcel Hibbe --- .../data/database/model/ChatBlockEntity.kt | 21 +++++++++++-------- .../data/database/model/ConversationEntity.kt | 3 ++- 2 files changed, 14 insertions(+), 10 deletions(-) diff --git a/app/src/main/java/com/nextcloud/talk/data/database/model/ChatBlockEntity.kt b/app/src/main/java/com/nextcloud/talk/data/database/model/ChatBlockEntity.kt index 75ef7627b..15b200879 100644 --- a/app/src/main/java/com/nextcloud/talk/data/database/model/ChatBlockEntity.kt +++ b/app/src/main/java/com/nextcloud/talk/data/database/model/ChatBlockEntity.kt @@ -9,21 +9,24 @@ package com.nextcloud.talk.data.database.model import androidx.room.ColumnInfo import androidx.room.Entity +import androidx.room.ForeignKey +import androidx.room.Index import androidx.room.PrimaryKey -// ChatBlockEntity.kt:26: internalConversationId column references a foreign key but it is not part of an index. This may trigger full table scans whenever parent table is modified so you are highly advised to create an index that covers this column. - @Entity( tableName = "ChatBlocks", foreignKeys = [ - androidx.room.ForeignKey( - entity = ConversationEntity::class, - parentColumns = arrayOf("internalId"), - childColumns = arrayOf("internalConversationId"), - onDelete = androidx.room.ForeignKey.CASCADE, - onUpdate = androidx.room.ForeignKey.CASCADE - ) + ForeignKey( + entity = ConversationEntity::class, + parentColumns = arrayOf("internalId"), + childColumns = arrayOf("internalConversationId"), + onDelete = ForeignKey.CASCADE, + onUpdate = ForeignKey.CASCADE + ) ], + indices = [ + Index(value = ["internalConversationId"]) + ] ) data class ChatBlockEntity( @PrimaryKey(autoGenerate = true) diff --git a/app/src/main/java/com/nextcloud/talk/data/database/model/ConversationEntity.kt b/app/src/main/java/com/nextcloud/talk/data/database/model/ConversationEntity.kt index 6c165b17f..56d840c8d 100644 --- a/app/src/main/java/com/nextcloud/talk/data/database/model/ConversationEntity.kt +++ b/app/src/main/java/com/nextcloud/talk/data/database/model/ConversationEntity.kt @@ -10,6 +10,7 @@ package com.nextcloud.talk.data.database.model import androidx.room.ColumnInfo import androidx.room.Entity import androidx.room.ForeignKey +import androidx.room.Index import androidx.room.PrimaryKey import com.nextcloud.talk.data.user.model.UserEntity import com.nextcloud.talk.models.json.conversations.ConversationEnums @@ -27,7 +28,7 @@ import com.nextcloud.talk.models.json.participants.Participant ) ], indices = [ - androidx.room.Index(value = ["accountId"]) + Index(value = ["accountId"]) ] ) data class ConversationEntity(