We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
2 parents 38be0b4 + 1e036ba commit cea1fa0Copy full SHA for cea1fa0
2 files changed
prisma/postgresql-migrations/20251122003044_add_chat_instance_remotejid_unique/migration.sql
@@ -0,0 +1,16 @@
1
+-- 1. Cleanup: Remove duplicate chats, keeping the most recently updated one
2
+DELETE FROM "Chat"
3
+WHERE id IN (
4
+ SELECT id FROM (
5
+ SELECT id,
6
+ ROW_NUMBER() OVER (
7
+ PARTITION BY "instanceId", "remoteJid"
8
+ ORDER BY "updatedAt" DESC
9
+ ) as row_num
10
+ FROM "Chat"
11
+ ) t
12
+ WHERE t.row_num > 1
13
+);
14
+
15
+-- 2. Create the unique index (Constraint)
16
+CREATE UNIQUE INDEX "Chat_instanceId_remoteJid_key" ON "Chat"("instanceId", "remoteJid");
prisma/postgresql-schema.prisma
@@ -132,6 +132,7 @@ model Chat {
132
instanceId String
133
unreadMessages Int @default(0)
134
135
+ @@unique([instanceId, remoteJid])
136
@@index([instanceId])
137
@@index([remoteJid])
138
}
0 commit comments