Skip to content

Commit 64d90a6

Browse files
authored
Merge pull request dubinc#2423 from dubinc/tenantId-index
Add index on tenantId on Link table
2 parents c2b7cb4 + ab5321b commit 64d90a6

2 files changed

Lines changed: 8 additions & 7 deletions

File tree

apps/web/lib/api/links/get-links-for-workspace.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -59,7 +59,9 @@ export async function getLinksForWorkspace({
5959

6060
const links = await prisma.link.findMany({
6161
where: {
62+
...(linkIds && { id: { in: linkIds } }),
6263
projectId: workspaceId,
64+
...(tenantId && { tenantId }),
6365
AND: [
6466
...(folderIds
6567
? [
@@ -125,10 +127,8 @@ export async function getLinksForWorkspace({
125127
},
126128
}
127129
: {}),
128-
...(tenantId && { tenantId }),
129130
...(partnerId && { partnerId }),
130131
...(userId && { userId }),
131-
...(linkIds && { id: { in: linkIds } }),
132132
},
133133
include: {
134134
tags: {

packages/prisma/schema/link.prisma

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -82,11 +82,12 @@ model Link {
8282
customers Customer[]
8383
commissions Commission[]
8484
85-
@@unique([domain, key])
86-
@@unique([projectId, externalId])
87-
@@index([projectId, url(length: 500)])
88-
@@index([projectId, folderId, archived, createdAt(sort: Desc)])
89-
@@index([programId, partnerId])
85+
@@unique([domain, key]) // for getting a link by domain and key
86+
@@unique([projectId, externalId]) // for getting a link by externalId
87+
@@index([projectId, tenantId]) // for filtering by tenantId
88+
@@index([projectId, url(length: 500)]) // for upserting a link by URL
89+
@@index([projectId, folderId, archived, createdAt(sort: Desc)]) // most getLinksForWorkspace queries
90+
@@index([programId, partnerId]) // for getting a referral link (programId + partnerId)
9091
@@index(folderId) // used in /api/folders
9192
@@index(userId) // for relation to User table
9293
}

0 commit comments

Comments
 (0)