From 1485971cb7dbf3f22d3bfe46e7dc3eaf9f9bcb7c Mon Sep 17 00:00:00 2001 From: Rafi Arrafif Date: Thu, 29 Jan 2026 03:31:21 +0700 Subject: [PATCH] =?UTF-8?q?=F0=9F=90=9B=20fix:=20race=20condition=20in=20s?= =?UTF-8?q?eeding?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- prisma/seed/index.ts | 4 ++-- prisma/seed/userRole.seed.ts | 5 ++--- src/modules/internal/services/bulkInsertAnime.service.ts | 3 ++- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/prisma/seed/index.ts b/prisma/seed/index.ts index c526df4..6302203 100644 --- a/prisma/seed/index.ts +++ b/prisma/seed/index.ts @@ -6,8 +6,8 @@ async function main() { console.log("🌱 Running all seeds..."); console.log("🔌 Connecting to database..."); - await userSystemSeed(); - await userRoleSeed(); + const userSystemSeedResult = await userSystemSeed(); + const userRoleSeedResult = await userRoleSeed(userSystemSeedResult.id); console.log("🌳 All seeds completed"); } diff --git a/prisma/seed/userRole.seed.ts b/prisma/seed/userRole.seed.ts index 9ca0804..f669597 100644 --- a/prisma/seed/userRole.seed.ts +++ b/prisma/seed/userRole.seed.ts @@ -1,9 +1,8 @@ -import { SystemAccountId } from "../../src/config/account/system"; import { generateUUIDv7 } from "../../src/helpers/databases/uuidv7"; import { prisma } from "../../src/utils/databases/prisma/connection"; -export const userRoleSeed = async () => { - console.log("🔃 Seeding user roles...", SystemAccountId); +export const userRoleSeed = async (SystemAccountId: string) => { + console.log("🔃 Seeding user roles..."); const roles = [ { name: "ADMIN", diff --git a/src/modules/internal/services/bulkInsertAnime.service.ts b/src/modules/internal/services/bulkInsertAnime.service.ts index 99f5ea4..2c3cef1 100644 --- a/src/modules/internal/services/bulkInsertAnime.service.ts +++ b/src/modules/internal/services/bulkInsertAnime.service.ts @@ -8,6 +8,7 @@ import { MediaFullInfoResponse } from "../types/mediaFullInfo.type"; import { generateSlug } from "../../../helpers/characters/generateSlug"; import { bulkInsertCharWithVAService } from "./internal/bulkInsertCharWithVA.service"; import { generateUUIDv7 } from "../../../helpers/databases/uuidv7"; +import { SystemAccountId } from "../../../config/account/system"; export const bulkInsertAnimeService = async (malId: number) => { try { @@ -50,7 +51,7 @@ export const bulkInsertAnimeService = async (malId: number) => { mediaType: mediaFullInfo.data.type, source: mediaFullInfo.data.source, onDraft: false, - uploadedBy: "b734b9bc-b4ea-408f-a80e-0a837ce884da", + uploadedBy: SystemAccountId, }; const insertedMedia = await InsertMediaRepository({ malId: mediaFullInfo.data.mal_id,