Skip to content

Commit ed39b4f

Browse files
authored
Add columns param to parquetQueryWorker (#269)
1 parent af94527 commit ed39b4f

File tree

3 files changed

+5
-4
lines changed

3 files changed

+5
-4
lines changed

src/lib/workers/parquetWorker.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -51,10 +51,10 @@ self.onmessage = async ({ data }: { data: ClientMessage }) => {
5151
postErrorMessage({ error: error as Error, queryId })
5252
}
5353
} else {
54-
const { rowStart, rowEnd, orderBy, filter, chunks } = data
54+
const { rowStart, rowEnd, columns, orderBy, filter, chunks } = data
5555
const onChunk = chunks ? (chunk: ColumnData) => { postChunkMessage({ chunk, queryId }) } : undefined
5656
try {
57-
const result = await parquetQuery({ metadata, file, rowStart, rowEnd, orderBy, filter, compressors, onChunk })
57+
const result = await parquetQuery({ metadata, file, rowStart, rowEnd, columns, orderBy, filter, compressors, onChunk })
5858
postResultMessage({ result, queryId })
5959
} catch (error) {
6060
postErrorMessage({ error: error as Error, queryId })

src/lib/workers/parquetWorkerClient.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -66,7 +66,7 @@ function getWorker() {
6666
* Instead of taking an AsyncBuffer, it takes a AsyncBufferFrom, because it needs
6767
* to be serialized to the worker.
6868
*/
69-
export function parquetQueryWorker({ metadata, from, rowStart, rowEnd, orderBy, filter, onChunk }: QueryWorkerOptions): Promise<Cells[]> {
69+
export function parquetQueryWorker({ metadata, from, rowStart, rowEnd, columns, orderBy, filter, onChunk }: QueryWorkerOptions): Promise<Cells[]> {
7070
// TODO(SL) Support passing columns?
7171
return new Promise((resolve, reject) => {
7272
const queryId = nextQueryId++
@@ -75,7 +75,7 @@ export function parquetQueryWorker({ metadata, from, rowStart, rowEnd, orderBy,
7575

7676
// If caller provided an onChunk callback, worker will send chunks as they are parsed
7777
const chunks = onChunk !== undefined
78-
const message: QueryClientMessage = { queryId, metadata, from, rowStart, rowEnd, orderBy, filter, chunks, kind: 'query' }
78+
const message: QueryClientMessage = { queryId, metadata, from, rowStart, rowEnd, columns, orderBy, filter, chunks, kind: 'query' }
7979
worker.postMessage(message)
8080
})
8181
}

src/lib/workers/types.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,7 @@ export interface ErrorMessage extends Message {
3030
export interface QueryWorkerOptions extends CommonWorkerOptions {
3131
rowStart?: number,
3232
rowEnd?: number,
33+
columns?: string[],
3334
orderBy?: string,
3435
filter?: ParquetQueryFilter,
3536
onChunk?: (chunk: ColumnData) => void

0 commit comments

Comments
 (0)