diff --git a/packages/backend/server/migrations/20251231172409_workspace_index/migration.sql b/packages/backend/server/migrations/20251231172409_workspace_index/migration.sql index ab06977a7..db4c92372 100644 --- a/packages/backend/server/migrations/20251231172409_workspace_index/migration.sql +++ b/packages/backend/server/migrations/20251231172409_workspace_index/migration.sql @@ -1,11 +1,11 @@ -- CreateIndex -CREATE INDEX "blobs_workspace_id_status_deleted_at_idx" ON "blobs"("workspace_id", "status", "deleted_at"); +CREATE INDEX IF NOT EXISTS "blobs_workspace_id_status_deleted_at_idx" ON "blobs"("workspace_id", "status", "deleted_at"); -- CreateIndex -CREATE INDEX "workspace_pages_workspace_id_public_idx" ON "workspace_pages"("workspace_id", "public"); +CREATE INDEX IF NOT EXISTS "workspace_pages_workspace_id_public_idx" ON "workspace_pages"("workspace_id", "public"); -- CreateIndex -CREATE INDEX "workspace_user_permissions_workspace_id_type_status_idx" ON "workspace_user_permissions"("workspace_id", "type", "status"); +CREATE INDEX IF NOT EXISTS "workspace_user_permissions_workspace_id_type_status_idx" ON "workspace_user_permissions"("workspace_id", "type", "status"); -- CreateIndex -CREATE INDEX "workspaces_created_at_idx" ON "workspaces"("created_at"); \ No newline at end of file +CREATE INDEX IF NOT EXISTS "workspaces_created_at_idx" ON "workspaces"("created_at"); \ No newline at end of file diff --git a/packages/backend/server/src/models/workspace.ts b/packages/backend/server/src/models/workspace.ts index 0a599a632..1528c0672 100644 --- a/packages/backend/server/src/models/workspace.ts +++ b/packages/backend/server/src/models/workspace.ts @@ -247,7 +247,7 @@ export class WorkspaceModel extends BaseModel { } AND ${ features.length - ? Prisma.sql`COALESCE(fs.features, ARRAY[]::text[]) @> ${features}` + ? Prisma.sql`CAST(COALESCE(fs.features, ARRAY[]::text[]) AS text[]) @> ${Prisma.sql`${features}::text[]`}` : Prisma.sql`TRUE` } ORDER BY w.created_at DESC @@ -333,7 +333,7 @@ export class WorkspaceModel extends BaseModel { } AND ${ features.length - ? Prisma.sql`COALESCE(fs.features, ARRAY[]::text[]) @> ${features}` + ? Prisma.sql`CAST(COALESCE(fs.features, ARRAY[]::text[]) AS text[]) @> ${Prisma.sql`${features}::text[]`}` : Prisma.sql`TRUE` } ), @@ -450,7 +450,7 @@ export class WorkspaceModel extends BaseModel { } AND ${ features.length - ? Prisma.sql`COALESCE(fs.features, ARRAY[]::text[]) @> ${features}` + ? Prisma.sql`CAST(COALESCE(fs.features, ARRAY[]::text[]) AS text[]) @> ${Prisma.sql`${features}::text[]`}` : Prisma.sql`TRUE` } `;