Explorar o código

chore: generate

opencode-agent[bot] hai 1 mes
pai
achega
d09d5612f3
Modificáronse 1 ficheiros con 26 adicións e 31 borrados
  1. 26 31
      packages/stats/core/src/athena.ts

+ 26 - 31
packages/stats/core/src/athena.ts

@@ -113,37 +113,32 @@ const poll: (
   return yield* poll(client, queryExecutionId, attempt + 1)
   return yield* poll(client, queryExecutionId, attempt + 1)
 })
 })
 
 
-const results: (
-  client: AwsAthenaClient,
-  queryExecutionId: string,
-) => Effect.Effect<AthenaData[], AthenaQueryError> = Effect.fn("Athena.results")(function* (
-  client: AwsAthenaClient,
-  queryExecutionId: string,
-) {
-  // Accumulate pages iteratively; recursive spreads copied every previously
-  // fetched row per page and blew up memory on large result sets.
-  const rows: AthenaData[] = []
-  let nextToken: string | undefined
-  while (true) {
-    const result = yield* Effect.tryPromise({
-      try: () =>
-        client.send(
-          new GetQueryResultsCommand({
-            QueryExecutionId: queryExecutionId,
-            NextToken: nextToken,
-            MaxResults: ATHENA_PAGE_SIZE,
-          }),
-        ),
-      catch: (cause) =>
-        new AthenaQueryError({ message: "Failed to read Athena stats results", queryExecutionId, cause }),
-    })
-    const columns = result.ResultSet?.ResultSetMetadata?.ColumnInfo?.map((item) => item.Name ?? "") ?? []
-    // The first page starts with the header row.
-    for (const row of (result.ResultSet?.Rows ?? []).slice(nextToken ? 0 : 1)) rows.push(rowData(columns, row))
-    if (!result.NextToken) return rows
-    nextToken = result.NextToken
-  }
-})
+const results: (client: AwsAthenaClient, queryExecutionId: string) => Effect.Effect<AthenaData[], AthenaQueryError> =
+  Effect.fn("Athena.results")(function* (client: AwsAthenaClient, queryExecutionId: string) {
+    // Accumulate pages iteratively; recursive spreads copied every previously
+    // fetched row per page and blew up memory on large result sets.
+    const rows: AthenaData[] = []
+    let nextToken: string | undefined
+    while (true) {
+      const result = yield* Effect.tryPromise({
+        try: () =>
+          client.send(
+            new GetQueryResultsCommand({
+              QueryExecutionId: queryExecutionId,
+              NextToken: nextToken,
+              MaxResults: ATHENA_PAGE_SIZE,
+            }),
+          ),
+        catch: (cause) =>
+          new AthenaQueryError({ message: "Failed to read Athena stats results", queryExecutionId, cause }),
+      })
+      const columns = result.ResultSet?.ResultSetMetadata?.ColumnInfo?.map((item) => item.Name ?? "") ?? []
+      // The first page starts with the header row.
+      for (const row of (result.ResultSet?.Rows ?? []).slice(nextToken ? 0 : 1)) rows.push(rowData(columns, row))
+      if (!result.NextToken) return rows
+      nextToken = result.NextToken
+    }
+  })
 
 
 function rowData(columns: string[], row: Row): AthenaData {
 function rowData(columns: string[], row: Row): AthenaData {
   return Object.fromEntries(
   return Object.fromEntries(