Skip to content

Commit c80586d

Browse files
authored
Merge pull request #29 from topcoder-platform/performance
Additional indices for performance issues noted
2 parents 0b8dc13 + 9fe2350 commit c80586d

File tree

2 files changed

+16
-0
lines changed

2 files changed

+16
-0
lines changed
Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
-- Add indexes to support faster `/v6/my-reviews` queries.
2+
3+
CREATE EXTENSION IF NOT EXISTS pg_trgm;
4+
5+
CREATE INDEX IF NOT EXISTS "challenge_status_type_track_created_at_idx"
6+
ON "Challenge" ("status", "typeId", "trackId", "createdAt" DESC);
7+
8+
CREATE INDEX IF NOT EXISTS "challenge_phase_challenge_open_end_idx"
9+
ON "ChallengePhase" ("challengeId", "isOpen", "scheduledEndDate", "actualEndDate");
10+
11+
CREATE INDEX IF NOT EXISTS "challenge_name_trgm_idx"
12+
ON "Challenge"
13+
USING gin ("name" gin_trgm_ops);

prisma/schema.prisma

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -155,6 +155,8 @@ model Challenge {
155155
@@index([endDate])
156156
@@index([status, startDate])
157157
@@index([trackId, typeId, status])
158+
@@index([status, typeId, trackId, createdAt(sort: Desc)], map: "challenge_status_type_track_created_at_idx")
159+
@@index([name], type: Gin, ops: [gin_trgm_ops], map: "challenge_name_trgm_idx")
158160
@@index([legacyId])
159161
@@index([projectId, status])
160162
}
@@ -540,6 +542,7 @@ model ChallengePhase {
540542
@@index([challengeId])
541543
@@index([challengeId, isOpen])
542544
@@index([challengeId, name])
545+
@@index([challengeId, isOpen, scheduledEndDate, actualEndDate], map: "challenge_phase_challenge_open_end_idx")
543546
}
544547

545548
//////////////////////////////////////////

0 commit comments

Comments
 (0)