|
| 1 | +import type { Prisma } from "@/generated/prisma/client"; |
1 | 2 | import { getClickhouseAdminClient, isClickhouseConfigured } from "@/lib/clickhouse"; |
2 | 3 | import { DEFAULT_BRANCH_ID } from "@/lib/tenancies"; |
3 | 4 | import { globalPrismaClient } from "@/prisma-client"; |
4 | 5 | import { createSmartRouteHandler } from "@/route-handlers/smart-route-handler"; |
5 | 6 | import { yupNumber, yupObject, yupString } from "@stackframe/stack-shared/dist/schema-fields"; |
6 | 7 | import { StatusError } from "@stackframe/stack-shared/dist/utils/errors"; |
7 | | -import type { Prisma } from "@/generated/prisma/client"; |
8 | 8 |
|
9 | 9 | type Cursor = { |
10 | 10 | created_at_millis: number, |
@@ -88,13 +88,8 @@ export const POST = createSmartRouteHandler({ |
88 | 88 | statusCode: yupNumber().oneOf([200]).defined(), |
89 | 89 | bodyType: yupString().oneOf(["json"]).defined(), |
90 | 90 | body: yupObject({ |
91 | | - total_events: yupNumber().defined(), |
92 | | - processed_events: yupNumber().defined(), |
93 | | - remaining_events: yupNumber().defined(), |
94 | 91 | migrated_events: yupNumber().defined(), |
95 | | - skipped_existing_events: yupNumber().defined(), |
96 | 92 | inserted_rows: yupNumber().defined(), |
97 | | - progress: yupNumber().min(0).max(1).defined(), |
98 | 93 | next_cursor: yupObject({ |
99 | 94 | created_at_millis: yupNumber().integer().defined(), |
100 | 95 | id: yupString().defined(), |
@@ -129,8 +124,6 @@ export const POST = createSmartRouteHandler({ |
129 | 124 | ? { AND: [baseWhere, cursorFilter] } |
130 | 125 | : baseWhere; |
131 | 126 |
|
132 | | - const totalEvents = await globalPrismaClient.event.count({ where: baseWhere }); |
133 | | - |
134 | 127 | const events = await globalPrismaClient.event.findMany({ |
135 | 128 | where, |
136 | 129 | orderBy: [ |
@@ -171,39 +164,13 @@ export const POST = createSmartRouteHandler({ |
171 | 164 | created_at_millis: lastEvent.createdAt.getTime(), |
172 | 165 | id: lastEvent.id, |
173 | 166 | } : null; |
174 | | - const progressCursor: Cursor | null = nextCursor ?? (cursorCreatedAt && body.cursor ? { |
175 | | - created_at_millis: body.cursor.created_at_millis, |
176 | | - id: body.cursor.id, |
177 | | - } : null); |
178 | | - |
179 | | - const progressCursorCreatedAt = progressCursor ? new Date(progressCursor.created_at_millis) : null; |
180 | | - const remainingWhere = progressCursor ? { |
181 | | - AND: [ |
182 | | - baseWhere, |
183 | | - { |
184 | | - OR: [ |
185 | | - { createdAt: { gt: progressCursorCreatedAt! } }, |
186 | | - { createdAt: progressCursorCreatedAt!, id: { gt: progressCursor.id } }, |
187 | | - ], |
188 | | - }, |
189 | | - ], |
190 | | - } : baseWhere; |
191 | | - |
192 | | - const remainingEvents = await globalPrismaClient.event.count({ where: remainingWhere }); |
193 | | - const processedEvents = totalEvents - remainingEvents; |
194 | | - const progress = totalEvents === 0 ? 1 : processedEvents / totalEvents; |
195 | 167 |
|
196 | 168 | return { |
197 | 169 | statusCode: 200, |
198 | 170 | bodyType: "json", |
199 | 171 | body: { |
200 | | - total_events: totalEvents, |
201 | | - processed_events: processedEvents, |
202 | | - remaining_events: remainingEvents, |
203 | 172 | migrated_events: migratedEvents, |
204 | | - skipped_existing_events: 0, |
205 | 173 | inserted_rows: insertedRows, |
206 | | - progress, |
207 | 174 | next_cursor: nextCursor, |
208 | 175 | }, |
209 | 176 | }; |
|
0 commit comments