Browse Source

Add missing database indexes

pull/3033/head
Thomas Kaul 2 years ago
parent
commit
1ccd684bdc
  1. 2
      package.json
  2. 27
      prisma/migrations/20240221201438_added_missing_indexes/migration.sql
  3. 12
      prisma/schema.prisma

2
package.json

@ -25,7 +25,7 @@
"database:push": "prisma db push", "database:push": "prisma db push",
"database:seed": "prisma db seed", "database:seed": "prisma db seed",
"database:setup": "yarn database:push && yarn database:seed", "database:setup": "yarn database:push && yarn database:seed",
"database:validate": "prisma validate", "database:validate-schema": "prisma validate",
"dep-graph": "nx dep-graph", "dep-graph": "nx dep-graph",
"e2e": "ng e2e", "e2e": "ng e2e",
"extract-locales": "nx run client:extract-i18n --output-path ./apps/client/src/locales", "extract-locales": "nx run client:extract-i18n --output-path ./apps/client/src/locales",

27
prisma/migrations/20240221201438_add_missing_indexes/migration.sql → prisma/migrations/20240221201438_added_missing_indexes/migration.sql

@ -1,3 +1,6 @@
-- CreateIndex
CREATE INDEX "Access_alias_idx" ON "Access"("alias");
-- CreateIndex -- CreateIndex
CREATE INDEX "Access_granteeUserId_idx" ON "Access"("granteeUserId"); CREATE INDEX "Access_granteeUserId_idx" ON "Access"("granteeUserId");
@ -7,30 +10,51 @@ CREATE INDEX "Access_userId_idx" ON "Access"("userId");
-- CreateIndex -- CreateIndex
CREATE INDEX "Account_currency_idx" ON "Account"("currency"); CREATE INDEX "Account_currency_idx" ON "Account"("currency");
-- CreateIndex
CREATE INDEX "Account_name_idx" ON "Account"("name");
-- CreateIndex -- CreateIndex
CREATE INDEX "Account_userId_idx" ON "Account"("userId"); CREATE INDEX "Account_userId_idx" ON "Account"("userId");
-- CreateIndex -- CreateIndex
CREATE INDEX "AccountBalance_accountId_idx" ON "AccountBalance"("accountId"); CREATE INDEX "AccountBalance_accountId_idx" ON "AccountBalance"("accountId");
-- CreateIndex
CREATE INDEX "AccountBalance_date_idx" ON "AccountBalance"("date");
-- CreateIndex
CREATE INDEX "Analytics_updatedAt_idx" ON "Analytics"("updatedAt");
-- CreateIndex -- CreateIndex
CREATE INDEX "AuthDevice_userId_idx" ON "AuthDevice"("userId"); CREATE INDEX "AuthDevice_userId_idx" ON "AuthDevice"("userId");
-- CreateIndex
CREATE INDEX "MarketData_marketPrice_idx" ON "MarketData"("marketPrice");
-- CreateIndex -- CreateIndex
CREATE INDEX "MarketData_state_idx" ON "MarketData"("state"); CREATE INDEX "MarketData_state_idx" ON "MarketData"("state");
-- CreateIndex
CREATE INDEX "Order_date_idx" ON "Order"("date");
-- CreateIndex -- CreateIndex
CREATE INDEX "Order_isDraft_idx" ON "Order"("isDraft"); CREATE INDEX "Order_isDraft_idx" ON "Order"("isDraft");
-- CreateIndex -- CreateIndex
CREATE INDEX "Order_userId_idx" ON "Order"("userId"); CREATE INDEX "Order_userId_idx" ON "Order"("userId");
-- CreateIndex
CREATE INDEX "Platform_name_idx" ON "Platform"("name");
-- CreateIndex -- CreateIndex
CREATE INDEX "Subscription_userId_idx" ON "Subscription"("userId"); CREATE INDEX "Subscription_userId_idx" ON "Subscription"("userId");
-- CreateIndex -- CreateIndex
CREATE INDEX "SymbolProfile_assetClass_idx" ON "SymbolProfile"("assetClass"); CREATE INDEX "SymbolProfile_assetClass_idx" ON "SymbolProfile"("assetClass");
-- CreateIndex
CREATE INDEX "SymbolProfile_currency_idx" ON "SymbolProfile"("currency");
-- CreateIndex -- CreateIndex
CREATE INDEX "SymbolProfile_dataSource_idx" ON "SymbolProfile"("dataSource"); CREATE INDEX "SymbolProfile_dataSource_idx" ON "SymbolProfile"("dataSource");
@ -43,6 +67,9 @@ CREATE INDEX "SymbolProfile_name_idx" ON "SymbolProfile"("name");
-- CreateIndex -- CreateIndex
CREATE INDEX "SymbolProfile_symbol_idx" ON "SymbolProfile"("symbol"); CREATE INDEX "SymbolProfile_symbol_idx" ON "SymbolProfile"("symbol");
-- CreateIndex
CREATE INDEX "Tag_name_idx" ON "Tag"("name");
-- CreateIndex -- CreateIndex
CREATE INDEX "User_accessToken_idx" ON "User"("accessToken"); CREATE INDEX "User_accessToken_idx" ON "User"("accessToken");

12
prisma/schema.prisma

@ -20,6 +20,7 @@ model Access {
GranteeUser User? @relation("accessGet", fields: [granteeUserId], references: [id]) GranteeUser User? @relation("accessGet", fields: [granteeUserId], references: [id])
User User @relation("accessGive", fields: [userId], references: [id]) User User @relation("accessGive", fields: [userId], references: [id])
@@index([alias])
@@index([granteeUserId]) @@index([granteeUserId])
@@index([userId]) @@index([userId])
} }
@ -44,6 +45,7 @@ model Account {
@@id([id, userId]) @@id([id, userId])
@@index([currency]) @@index([currency])
@@index([id]) @@index([id])
@@index([name])
@@index([userId]) @@index([userId])
} }
@ -58,6 +60,7 @@ model AccountBalance {
Account Account @relation(fields: [accountId, userId], onDelete: Cascade, references: [id, userId]) Account Account @relation(fields: [accountId, userId], onDelete: Cascade, references: [id, userId])
@@index([accountId]) @@index([accountId])
@@index([date])
} }
model Analytics { model Analytics {
@ -66,6 +69,8 @@ model Analytics {
updatedAt DateTime @updatedAt updatedAt DateTime @updatedAt
userId String @id userId String @id
User User @relation(fields: [userId], references: [id]) User User @relation(fields: [userId], references: [id])
@@index([updatedAt])
} }
model AuthDevice { model AuthDevice {
@ -93,6 +98,7 @@ model MarketData {
@@unique([dataSource, date, symbol]) @@unique([dataSource, date, symbol])
@@index([dataSource]) @@index([dataSource])
@@index([date]) @@index([date])
@@index([marketPrice])
@@index([state]) @@index([state])
@@index([symbol]) @@index([symbol])
} }
@ -118,6 +124,7 @@ model Order {
tags Tag[] tags Tag[]
@@index([accountId]) @@index([accountId])
@@index([date])
@@index([isDraft]) @@index([isDraft])
@@index([userId]) @@index([userId])
} }
@ -127,6 +134,8 @@ model Platform {
name String? name String?
url String @unique url String @unique
Account Account[] Account Account[]
@@index([name])
} }
model Property { model Property {
@ -166,6 +175,7 @@ model SymbolProfile {
@@unique([dataSource, symbol]) @@unique([dataSource, symbol])
@@index([assetClass]) @@index([assetClass])
@@index([currency])
@@index([dataSource]) @@index([dataSource])
@@index([isin]) @@index([isin])
@@index([name]) @@index([name])
@ -200,6 +210,8 @@ model Tag {
id String @id @default(uuid()) id String @id @default(uuid())
name String @unique name String @unique
orders Order[] orders Order[]
@@index([name])
} }
model User { model User {

Loading…
Cancel
Save