MCPcopy
hub / github.com/CapSoftware/Cap / getInitialStats

Function getInitialStats

packages/database/migrations/orgid_backfill.ts:133โ€“179  ยท  view source on GitHub โ†—
()

Source from the content-addressed store, hash-verified

131}
132
133async function getInitialStats(): Promise<void> {
134 console.log("๐Ÿ“ˆ Getting initial stats...");
135
136 const totalVideos = await db()
137 .select({ count: sql<number>`count(*)` })
138 .from(videos);
139
140 const videosWithOrgId = await db()
141 .select({ count: sql<number>`count(*)` })
142 .from(videos)
143 .where(isNotNull(videos.orgId));
144
145 const videosNeedingOrgId = await db()
146 .select({ count: sql<number>`count(*)` })
147 .from(videos)
148 .innerJoin(users, eq(videos.ownerId, users.id))
149 .where(and(isNull(videos.orgId), isNotNull(users.activeOrganizationId)));
150
151 const totalUsers = await db()
152 .select({ count: sql<number>`count(*)` })
153 .from(users);
154
155 const usersWithDefaultOrgId = await db()
156 .select({ count: sql<number>`count(*)` })
157 .from(users)
158 .where(isNotNull(users.defaultOrgId));
159
160 const usersNeedingDefaultOrgId = await db()
161 .select({ count: sql<number>`count(*)` })
162 .from(users)
163 .where(
164 and(isNull(users.defaultOrgId), isNotNull(users.activeOrganizationId)),
165 );
166
167 console.log("๐Ÿ“Š Initial stats:");
168 console.log(` Total videos: ${totalVideos[0]?.count || 0}`);
169 console.log(` Videos with orgId: ${videosWithOrgId[0]?.count || 0}`);
170 console.log(` Videos needing orgId: ${videosNeedingOrgId[0]?.count || 0}`);
171 console.log(` Total users: ${totalUsers[0]?.count || 0}`);
172 console.log(
173 ` Users with defaultOrgId: ${usersWithDefaultOrgId[0]?.count || 0}`,
174 );
175 console.log(
176 ` Users needing defaultOrgId: ${usersNeedingDefaultOrgId[0]?.count || 0}`,
177 );
178 console.log("");
179}
180
181export async function runOrgIdBackfill() {
182 console.log("๐Ÿš€ Starting orgId backfill script");

Callers 1

runOrgIdBackfillFunction ยท 0.85

Calls 1

dbFunction ยท 0.90

Tested by

no test coverage detected