@qualithm/arrow-flight-sql-js 1.4.0 → 1.5.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -1,13 +1,126 @@
1
- # NPM Example
1
+ # Arrow Flight SQL JS
2
2
 
3
- Production-ready template for NPM packages.
3
+ Arrow Flight SQL client for JavaScript and TypeScript runtimes.
4
4
 
5
- ## Usage
5
+ SQL-specific functionality on top of Arrow Flight for database interactions. Built on
6
+ [`@qualithm/arrow-flight-js`](https://github.com/qualithm/arrow-flight-js) as a peer dependency.
6
7
 
7
- 1. Use this template to create a new repository
8
- 2. Update `name` in `package.json` to your package name
9
- 3. Update `CONTEXT.md` with your project's intent
10
- 4. Start building in `src/`
8
+ ## Features
9
+
10
+ - Full Arrow Flight SQL protocol support
11
+ - Query execution with Apache Arrow result sets
12
+ - Prepared statements with parameter binding
13
+ - Transaction support (begin, commit, rollback)
14
+ - Database metadata queries (catalogs, schemas, tables, keys)
15
+ - Query cancellation
16
+ - TypeScript-first with comprehensive type definitions
17
+ - Streaming results with async iterables
18
+ - Comprehensive error handling with typed error codes
19
+ - ESM-only, tree-shakeable
20
+
21
+ ## Installation
22
+
23
+ ```bash
24
+ npm install @qualithm/arrow-flight-sql-js @qualithm/arrow-flight-js apache-arrow
25
+ # or
26
+ bun add @qualithm/arrow-flight-sql-js @qualithm/arrow-flight-js apache-arrow
27
+ ```
28
+
29
+ > **Note:** `@qualithm/arrow-flight-js` is a peer dependency and must be installed separately.
30
+
31
+ ## Quick Start
32
+
33
+ ```typescript
34
+ import { createFlightSqlClient, queryToTable } from "@qualithm/arrow-flight-sql-js"
35
+
36
+ const client = await createFlightSqlClient({
37
+ host: "localhost",
38
+ port: 8815,
39
+ tls: false
40
+ })
41
+
42
+ const table = await queryToTable(client, "SELECT * FROM users WHERE active = true")
43
+ console.log("Rows:", table.numRows)
44
+
45
+ for (const row of table) {
46
+ console.log(JSON.stringify(row))
47
+ }
48
+
49
+ client.close()
50
+ ```
51
+
52
+ See the [examples](./examples) directory for complete, runnable demonstrations.
53
+
54
+ ## Examples
55
+
56
+ | Example | Description |
57
+ | ----------------------------------------------------------- | ---------------------------------------------- |
58
+ | [basic-query.ts](./examples/basic-query.ts) | Simple query execution with `queryToTable()` |
59
+ | [authentication.ts](./examples/authentication.ts) | Basic auth, bearer tokens, connection patterns |
60
+ | [updates.ts](./examples/updates.ts) | INSERT, UPDATE, DELETE operations |
61
+ | [streaming-results.ts](./examples/streaming-results.ts) | Process large datasets with `iterateResults()` |
62
+ | [prepared-statements.ts](./examples/prepared-statements.ts) | Parameterised queries and updates |
63
+ | [transactions.ts](./examples/transactions.ts) | Atomic operations with commit/rollback |
64
+ | [metadata-queries.ts](./examples/metadata-queries.ts) | Catalogs, schemas, tables, keys, SQL info |
65
+ | [cancellation.ts](./examples/cancellation.ts) | Cancel long-running queries |
66
+ | [error-handling.ts](./examples/error-handling.ts) | `FlightSqlError` and `FlightError` handling |
67
+
68
+ ## API Reference
69
+
70
+ ### Query Execution
71
+
72
+ | Method | Description |
73
+ | ------------------------- | ----------------------------------- |
74
+ | `query()` | Execute a SQL query, get FlightInfo |
75
+ | `executeUpdate()` | Execute INSERT/UPDATE/DELETE |
76
+ | `executePreparedQuery()` | Execute a prepared statement query |
77
+ | `executePreparedUpdate()` | Execute a prepared statement update |
78
+
79
+ ### Prepared Statements
80
+
81
+ | Method | Description |
82
+ | --------------------------- | -------------------------------------- |
83
+ | `createPreparedStatement()` | Create a new prepared statement |
84
+ | `closePreparedStatement()` | Close and release a prepared statement |
85
+ | `bindParameters()` | Bind parameter values |
86
+
87
+ ### Transactions
88
+
89
+ | Method | Description |
90
+ | -------------------- | --------------------------- |
91
+ | `beginTransaction()` | Start a new transaction |
92
+ | `commit()` | Commit a transaction |
93
+ | `rollback()` | Roll back a transaction |
94
+ | `endTransaction()` | End transaction (low-level) |
95
+
96
+ ### Metadata
97
+
98
+ | Method | Description |
99
+ | ------------------- | ------------------------------------ |
100
+ | `getCatalogs()` | List available catalogs |
101
+ | `getDbSchemas()` | List database schemas |
102
+ | `getTables()` | List tables with optional filtering |
103
+ | `getTableTypes()` | List supported table types |
104
+ | `getPrimaryKeys()` | Get primary key info for a table |
105
+ | `getExportedKeys()` | Get foreign keys referencing a table |
106
+ | `getImportedKeys()` | Get foreign keys from a table |
107
+ | `getSqlInfo()` | Get SQL dialect/server capabilities |
108
+ | `getXdbcTypeInfo()` | Get supported data types |
109
+
110
+ ### Result Utilities
111
+
112
+ | Function | Description |
113
+ | --------------------- | ------------------------------------- |
114
+ | `queryToTable()` | Execute query, return Arrow Table |
115
+ | `flightInfoToTable()` | Convert FlightInfo to Arrow Table |
116
+ | `ticketToTable()` | Get single ticket data as Arrow Table |
117
+ | `iterateResults()` | Stream results as async iterable |
118
+
119
+ ### Cancellation
120
+
121
+ | Method | Description |
122
+ | -------------------- | ---------------------- |
123
+ | `cancelFlightInfo()` | Cancel a running query |
11
124
 
12
125
  ## Development
13
126
 
@@ -27,12 +140,6 @@ bun install
27
140
  bun run build
28
141
  ```
29
142
 
30
- ### Running
31
-
32
- ```bash
33
- bun run start
34
- ```
35
-
36
143
  ### Testing
37
144
 
38
145
  ```bash
@@ -47,13 +154,6 @@ bun run format
47
154
  bun run typecheck
48
155
  ```
49
156
 
50
- ### Benchmarks
51
-
52
- ```bash
53
- bun run bench
54
- ```
55
-
56
- ## Publishing
157
+ ## License
57
158
 
58
- The package is automatically published to NPM when CI passes on main. Update the version in
59
- `package.json` before merging to trigger a new release.
159
+ Apache-2.0
package/dist/client.d.ts CHANGED
@@ -88,6 +88,20 @@ export type ParameterData = {
88
88
  */
89
89
  data: Uint8Array;
90
90
  };
91
+ /**
92
+ * Result of beginning a transaction.
93
+ */
94
+ export type TransactionResult = {
95
+ /**
96
+ * Opaque handle for the transaction on the server.
97
+ * Use this handle with query/update operations and commit/rollback.
98
+ */
99
+ transactionId: Buffer;
100
+ };
101
+ /**
102
+ * Transaction end action.
103
+ */
104
+ export type TransactionAction = "commit" | "rollback";
91
105
  /**
92
106
  * Arrow Flight SQL client for executing SQL queries and commands.
93
107
  *
@@ -485,6 +499,97 @@ export declare class FlightSqlClient extends FlightClient {
485
499
  getXdbcTypeInfo(options?: CallOptions & {
486
500
  dataType?: number;
487
501
  }): Promise<FlightInfo>;
502
+ /**
503
+ * Begins a new transaction.
504
+ *
505
+ * Returns a transaction ID that can be passed to query, update, and
506
+ * prepared statement operations to execute them within the transaction.
507
+ * Call `commit()` or `rollback()` to end the transaction.
508
+ *
509
+ * @param options - Optional call options
510
+ * @returns The transaction result containing the transaction ID
511
+ * @throws {FlightError} If the server does not support transactions or the request fails
512
+ *
513
+ * @example
514
+ * ```ts
515
+ * const txn = await client.beginTransaction()
516
+ *
517
+ * try {
518
+ * await client.executeUpdate(
519
+ * "INSERT INTO users (name) VALUES ('Alice')",
520
+ * { transactionId: txn.transactionId }
521
+ * )
522
+ * await client.executeUpdate(
523
+ * "UPDATE accounts SET balance = balance - 100 WHERE user = 'Alice'",
524
+ * { transactionId: txn.transactionId }
525
+ * )
526
+ * await client.commit(txn.transactionId)
527
+ * } catch (error) {
528
+ * await client.rollback(txn.transactionId)
529
+ * throw error
530
+ * }
531
+ * ```
532
+ */
533
+ beginTransaction(options?: CallOptions): Promise<TransactionResult>;
534
+ /**
535
+ * Ends a transaction with the specified action.
536
+ *
537
+ * This is a lower-level method. Consider using `commit()` or `rollback()`
538
+ * for more readable code.
539
+ *
540
+ * @param transactionId - The transaction ID from beginTransaction
541
+ * @param action - Whether to commit or rollback the transaction
542
+ * @param options - Optional call options
543
+ * @throws {FlightError} If the request fails
544
+ */
545
+ endTransaction(transactionId: Buffer, action: TransactionAction, options?: CallOptions): Promise<void>;
546
+ /**
547
+ * Commits a transaction.
548
+ *
549
+ * All operations executed within the transaction are made permanent.
550
+ * The transaction ID becomes invalid after this call.
551
+ *
552
+ * @param transactionId - The transaction ID from beginTransaction
553
+ * @param options - Optional call options
554
+ * @throws {FlightError} If the commit fails
555
+ *
556
+ * @example
557
+ * ```ts
558
+ * const txn = await client.beginTransaction()
559
+ * await client.executeUpdate(
560
+ * "INSERT INTO users (name) VALUES ('Alice')",
561
+ * { transactionId: txn.transactionId }
562
+ * )
563
+ * await client.commit(txn.transactionId)
564
+ * ```
565
+ */
566
+ commit(transactionId: Buffer, options?: CallOptions): Promise<void>;
567
+ /**
568
+ * Rolls back a transaction.
569
+ *
570
+ * All operations executed within the transaction are undone.
571
+ * The transaction ID becomes invalid after this call.
572
+ *
573
+ * @param transactionId - The transaction ID from beginTransaction
574
+ * @param options - Optional call options
575
+ * @throws {FlightError} If the rollback fails
576
+ *
577
+ * @example
578
+ * ```ts
579
+ * const txn = await client.beginTransaction()
580
+ * try {
581
+ * await client.executeUpdate(
582
+ * "INSERT INTO users (name) VALUES ('Alice')",
583
+ * { transactionId: txn.transactionId }
584
+ * )
585
+ * await client.commit(txn.transactionId)
586
+ * } catch (error) {
587
+ * await client.rollback(txn.transactionId)
588
+ * throw error
589
+ * }
590
+ * ```
591
+ */
592
+ rollback(transactionId: Buffer, options?: CallOptions): Promise<void>;
488
593
  }
489
594
  /**
490
595
  * Creates a new FlightSqlClient and connects to the server.
@@ -1 +1 @@
1
- {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
package/dist/client.js CHANGED
@@ -3,8 +3,9 @@
3
3
  *
4
4
  * @packageDocumentation
5
5
  */
6
- import { cmdDescriptor, FlightClient, FlightError } from "@qualithm/arrow-flight-js";
7
- import { ActionClosePreparedStatementRequest, ActionCreatePreparedStatementRequest, ActionCreatePreparedStatementResult, CommandGetCatalogs, CommandGetDbSchemas, CommandGetExportedKeys, CommandGetImportedKeys, CommandGetPrimaryKeys, CommandGetSqlInfo, CommandGetTables, CommandGetTableTypes, CommandGetXdbcTypeInfo, CommandPreparedStatementQuery, CommandPreparedStatementUpdate, CommandStatementQuery, CommandStatementUpdate, DoPutPreparedStatementResult, DoPutUpdateResult } from "./generated/arrow/flight/protocol/sql/FlightSql.js";
6
+ import { cmdDescriptor, FlightClient } from "@qualithm/arrow-flight-js";
7
+ import { FlightSqlError, validateHandle, validateParameterData, validateQuery, validateTransactionId } from "./errors.js";
8
+ import { ActionBeginTransactionRequest, ActionBeginTransactionResult, ActionClosePreparedStatementRequest, ActionCreatePreparedStatementRequest, ActionCreatePreparedStatementResult, ActionEndTransactionRequest, ActionEndTransactionRequest_EndTransaction, CommandGetCatalogs, CommandGetDbSchemas, CommandGetExportedKeys, CommandGetImportedKeys, CommandGetPrimaryKeys, CommandGetSqlInfo, CommandGetTables, CommandGetTableTypes, CommandGetXdbcTypeInfo, CommandPreparedStatementQuery, CommandPreparedStatementUpdate, CommandStatementQuery, CommandStatementUpdate, DoPutPreparedStatementResult, DoPutUpdateResult } from "./generated/arrow/flight/protocol/sql/FlightSql.js";
8
9
  /**
9
10
  * Flight SQL type URL prefix for encoding commands in Any messages.
10
11
  */
@@ -14,6 +15,8 @@ const TYPE_URL_PREFIX = "type.googleapis.com/arrow.flight.protocol.sql";
14
15
  */
15
16
  const ACTION_CREATE_PREPARED_STATEMENT = "CreatePreparedStatement";
16
17
  const ACTION_CLOSE_PREPARED_STATEMENT = "ClosePreparedStatement";
18
+ const ACTION_BEGIN_TRANSACTION = "BeginTransaction";
19
+ const ACTION_END_TRANSACTION = "EndTransaction";
17
20
  /**
18
21
  * Encodes a Flight SQL command as a descriptor command buffer.
19
22
  *
@@ -183,6 +186,7 @@ export class FlightSqlClient extends FlightClient {
183
186
  * ```
184
187
  */
185
188
  async query(query, options) {
189
+ validateQuery(query);
186
190
  const command = {
187
191
  query,
188
192
  transactionId: options?.transactionId
@@ -222,6 +226,7 @@ export class FlightSqlClient extends FlightClient {
222
226
  * ```
223
227
  */
224
228
  async executePreparedQuery(handle, options) {
229
+ validateHandle(handle, "prepared statement handle");
225
230
  const command = {
226
231
  preparedStatementHandle: handle
227
232
  };
@@ -252,6 +257,7 @@ export class FlightSqlClient extends FlightClient {
252
257
  * ```
253
258
  */
254
259
  async executePreparedUpdate(handle, options) {
260
+ validateHandle(handle, "prepared statement handle");
255
261
  const command = {
256
262
  preparedStatementHandle: handle
257
263
  };
@@ -274,12 +280,16 @@ export class FlightSqlClient extends FlightClient {
274
280
  const results = await stream.collectResults();
275
281
  const firstResult = results.at(0);
276
282
  if (!firstResult) {
277
- throw new FlightError("no result returned from prepared update", "INTERNAL");
283
+ throw new FlightSqlError("no result returned from prepared update", "RESULT_ERROR", {
284
+ flightCode: "INTERNAL"
285
+ });
278
286
  }
279
287
  // Decode the DoPutUpdateResult from appMetadata
280
288
  const { appMetadata } = firstResult;
281
289
  if (appMetadata.length === 0) {
282
- throw new FlightError("prepared update result missing app metadata", "INTERNAL");
290
+ throw new FlightSqlError("prepared update result missing app metadata", "RESULT_ERROR", {
291
+ flightCode: "INTERNAL"
292
+ });
283
293
  }
284
294
  const updateResult = DoPutUpdateResult.decode(appMetadata);
285
295
  return {
@@ -303,6 +313,7 @@ export class FlightSqlClient extends FlightClient {
303
313
  * ```
304
314
  */
305
315
  async executeUpdate(query, options) {
316
+ validateQuery(query);
306
317
  const command = {
307
318
  query,
308
319
  transactionId: options?.transactionId
@@ -326,12 +337,16 @@ export class FlightSqlClient extends FlightClient {
326
337
  const results = await stream.collectResults();
327
338
  const firstResult = results.at(0);
328
339
  if (!firstResult) {
329
- throw new FlightError("no result returned from update", "INTERNAL");
340
+ throw new FlightSqlError("no result returned from update", "RESULT_ERROR", {
341
+ flightCode: "INTERNAL"
342
+ });
330
343
  }
331
344
  // Decode the DoPutUpdateResult from appMetadata
332
345
  const { appMetadata } = firstResult;
333
346
  if (appMetadata.length === 0) {
334
- throw new FlightError("update result missing app metadata", "INTERNAL");
347
+ throw new FlightSqlError("update result missing app metadata", "RESULT_ERROR", {
348
+ flightCode: "INTERNAL"
349
+ });
335
350
  }
336
351
  const updateResult = DoPutUpdateResult.decode(appMetadata);
337
352
  return {
@@ -364,6 +379,7 @@ export class FlightSqlClient extends FlightClient {
364
379
  * ```
365
380
  */
366
381
  async createPreparedStatement(query, options) {
382
+ validateQuery(query);
367
383
  const request = {
368
384
  query,
369
385
  transactionId: options?.transactionId
@@ -382,7 +398,9 @@ export class FlightSqlClient extends FlightClient {
382
398
  break;
383
399
  }
384
400
  if (!resultBody || resultBody.length === 0) {
385
- throw new FlightError("no result returned from create prepared statement", "INTERNAL");
401
+ throw new FlightSqlError("no result returned from create prepared statement", "RESULT_ERROR", {
402
+ flightCode: "INTERNAL"
403
+ });
386
404
  }
387
405
  // Unpack the Any message and decode the result
388
406
  const valueBytes = unpackAny(resultBody);
@@ -408,6 +426,7 @@ export class FlightSqlClient extends FlightClient {
408
426
  * ```
409
427
  */
410
428
  async closePreparedStatement(handle, options) {
429
+ validateHandle(handle, "prepared statement handle");
411
430
  const request = {
412
431
  preparedStatementHandle: handle
413
432
  };
@@ -462,6 +481,8 @@ export class FlightSqlClient extends FlightClient {
462
481
  * ```
463
482
  */
464
483
  async bindParameters(handle, parameters, options) {
484
+ validateHandle(handle, "prepared statement handle");
485
+ validateParameterData(parameters);
465
486
  const command = {
466
487
  preparedStatementHandle: handle
467
488
  };
@@ -746,6 +767,147 @@ export class FlightSqlClient extends FlightClient {
746
767
  const descriptor = createCommandDescriptor("CommandGetXdbcTypeInfo", encoded);
747
768
  return this.getFlightInfo(descriptor, options);
748
769
  }
770
+ /**
771
+ * Begins a new transaction.
772
+ *
773
+ * Returns a transaction ID that can be passed to query, update, and
774
+ * prepared statement operations to execute them within the transaction.
775
+ * Call `commit()` or `rollback()` to end the transaction.
776
+ *
777
+ * @param options - Optional call options
778
+ * @returns The transaction result containing the transaction ID
779
+ * @throws {FlightError} If the server does not support transactions or the request fails
780
+ *
781
+ * @example
782
+ * ```ts
783
+ * const txn = await client.beginTransaction()
784
+ *
785
+ * try {
786
+ * await client.executeUpdate(
787
+ * "INSERT INTO users (name) VALUES ('Alice')",
788
+ * { transactionId: txn.transactionId }
789
+ * )
790
+ * await client.executeUpdate(
791
+ * "UPDATE accounts SET balance = balance - 100 WHERE user = 'Alice'",
792
+ * { transactionId: txn.transactionId }
793
+ * )
794
+ * await client.commit(txn.transactionId)
795
+ * } catch (error) {
796
+ * await client.rollback(txn.transactionId)
797
+ * throw error
798
+ * }
799
+ * ```
800
+ */
801
+ async beginTransaction(options) {
802
+ const request = {};
803
+ const encoded = ActionBeginTransactionRequest.encode(request).finish();
804
+ const typeUrl = `${TYPE_URL_PREFIX}.ActionBeginTransactionRequest`;
805
+ const body = packAny(typeUrl, encoded);
806
+ const action = {
807
+ type: ACTION_BEGIN_TRANSACTION,
808
+ body
809
+ };
810
+ // Execute the action and collect the first result
811
+ let resultBody;
812
+ for await (const result of this.doAction(action, options)) {
813
+ resultBody = result.body;
814
+ break;
815
+ }
816
+ if (!resultBody || resultBody.length === 0) {
817
+ throw new FlightSqlError("no result returned from begin transaction", "TRANSACTION_ERROR", {
818
+ flightCode: "INTERNAL"
819
+ });
820
+ }
821
+ // Unpack the Any message and decode the result
822
+ const valueBytes = unpackAny(resultBody);
823
+ const txnResult = ActionBeginTransactionResult.decode(valueBytes);
824
+ return {
825
+ transactionId: Buffer.from(txnResult.transactionId)
826
+ };
827
+ }
828
+ /**
829
+ * Ends a transaction with the specified action.
830
+ *
831
+ * This is a lower-level method. Consider using `commit()` or `rollback()`
832
+ * for more readable code.
833
+ *
834
+ * @param transactionId - The transaction ID from beginTransaction
835
+ * @param action - Whether to commit or rollback the transaction
836
+ * @param options - Optional call options
837
+ * @throws {FlightError} If the request fails
838
+ */
839
+ async endTransaction(transactionId, action, options) {
840
+ validateTransactionId(transactionId);
841
+ const endAction = action === "commit"
842
+ ? ActionEndTransactionRequest_EndTransaction.END_TRANSACTION_COMMIT
843
+ : ActionEndTransactionRequest_EndTransaction.END_TRANSACTION_ROLLBACK;
844
+ const request = {
845
+ transactionId,
846
+ action: endAction
847
+ };
848
+ const encoded = ActionEndTransactionRequest.encode(request).finish();
849
+ const typeUrl = `${TYPE_URL_PREFIX}.ActionEndTransactionRequest`;
850
+ const body = packAny(typeUrl, encoded);
851
+ const flightAction = {
852
+ type: ACTION_END_TRANSACTION,
853
+ body
854
+ };
855
+ // Execute the action - no result expected
856
+ for await (const _ of this.doAction(flightAction, options)) {
857
+ // Consume any results (usually none for end transaction)
858
+ }
859
+ }
860
+ /**
861
+ * Commits a transaction.
862
+ *
863
+ * All operations executed within the transaction are made permanent.
864
+ * The transaction ID becomes invalid after this call.
865
+ *
866
+ * @param transactionId - The transaction ID from beginTransaction
867
+ * @param options - Optional call options
868
+ * @throws {FlightError} If the commit fails
869
+ *
870
+ * @example
871
+ * ```ts
872
+ * const txn = await client.beginTransaction()
873
+ * await client.executeUpdate(
874
+ * "INSERT INTO users (name) VALUES ('Alice')",
875
+ * { transactionId: txn.transactionId }
876
+ * )
877
+ * await client.commit(txn.transactionId)
878
+ * ```
879
+ */
880
+ async commit(transactionId, options) {
881
+ return this.endTransaction(transactionId, "commit", options);
882
+ }
883
+ /**
884
+ * Rolls back a transaction.
885
+ *
886
+ * All operations executed within the transaction are undone.
887
+ * The transaction ID becomes invalid after this call.
888
+ *
889
+ * @param transactionId - The transaction ID from beginTransaction
890
+ * @param options - Optional call options
891
+ * @throws {FlightError} If the rollback fails
892
+ *
893
+ * @example
894
+ * ```ts
895
+ * const txn = await client.beginTransaction()
896
+ * try {
897
+ * await client.executeUpdate(
898
+ * "INSERT INTO users (name) VALUES ('Alice')",
899
+ * { transactionId: txn.transactionId }
900
+ * )
901
+ * await client.commit(txn.transactionId)
902
+ * } catch (error) {
903
+ * await client.rollback(txn.transactionId)
904
+ * throw error
905
+ * }
906
+ * ```
907
+ */
908
+ async rollback(transactionId, options) {
909
+ return this.endTransaction(transactionId, "rollback", options);
910
+ }
749
911
  }
750
912
  /**
751
913
  * Creates a new FlightSqlClient and connects to the server.
@@ -1 +1 @@
1
- {"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,103 @@
1
+ /**
2
+ * Flight SQL error types and utilities.
3
+ *
4
+ * @packageDocumentation
5
+ */
6
+ import { FlightError, type FlightErrorCode } from "@qualithm/arrow-flight-js";
7
+ /**
8
+ * Flight SQL specific error codes.
9
+ */
10
+ export type FlightSqlErrorCode = "INVALID_QUERY" | "INVALID_HANDLE" | "INVALID_PARAMETER" | "TRANSACTION_ERROR" | "RESULT_ERROR" | "SCHEMA_ERROR";
11
+ /**
12
+ * Options for creating a FlightSqlError.
13
+ */
14
+ export type FlightSqlErrorOptions = {
15
+ /** The underlying Flight error code */
16
+ flightCode?: FlightErrorCode;
17
+ /** Additional error details */
18
+ details?: string;
19
+ /** The original error that caused this error */
20
+ cause?: Error;
21
+ };
22
+ /**
23
+ * Error class for Flight SQL specific errors.
24
+ *
25
+ * Extends FlightError to provide SQL-specific error information while
26
+ * maintaining compatibility with the base error handling.
27
+ *
28
+ * @example
29
+ * ```ts
30
+ * try {
31
+ * await client.query("")
32
+ * } catch (error) {
33
+ * if (FlightSqlError.isFlightSqlError(error)) {
34
+ * console.log("SQL error code:", error.sqlCode)
35
+ * console.log("Flight code:", error.code)
36
+ * }
37
+ * }
38
+ * ```
39
+ */
40
+ export declare class FlightSqlError extends FlightError {
41
+ /**
42
+ * The SQL-specific error code.
43
+ */
44
+ readonly sqlCode: FlightSqlErrorCode;
45
+ constructor(message: string, sqlCode: FlightSqlErrorCode, options?: FlightSqlErrorOptions);
46
+ /**
47
+ * Checks if an error is a FlightSqlError.
48
+ */
49
+ static isFlightSqlError(error: unknown): error is FlightSqlError;
50
+ /**
51
+ * Checks if an error indicates an invalid query.
52
+ */
53
+ static isInvalidQuery(error: unknown): boolean;
54
+ /**
55
+ * Checks if an error indicates an invalid handle (prepared statement, transaction).
56
+ */
57
+ static isInvalidHandle(error: unknown): boolean;
58
+ /**
59
+ * Checks if an error indicates an invalid parameter.
60
+ */
61
+ static isInvalidParameter(error: unknown): boolean;
62
+ /**
63
+ * Checks if an error indicates a transaction error.
64
+ */
65
+ static isTransactionError(error: unknown): boolean;
66
+ /**
67
+ * Checks if an error indicates a result error.
68
+ */
69
+ static isResultError(error: unknown): boolean;
70
+ }
71
+ /**
72
+ * Validates that a query string is not empty.
73
+ *
74
+ * @param query - The query string to validate
75
+ * @throws {FlightSqlError} If the query is empty or whitespace-only
76
+ */
77
+ export declare function validateQuery(query: string): void;
78
+ /**
79
+ * Validates that a prepared statement handle is valid.
80
+ *
81
+ * @param handle - The handle buffer to validate
82
+ * @param name - The parameter name for error messages
83
+ * @throws {FlightSqlError} If the handle is invalid
84
+ */
85
+ export declare function validateHandle(handle: Buffer, name?: string): void;
86
+ /**
87
+ * Validates that a transaction ID is valid.
88
+ *
89
+ * @param transactionId - The transaction ID buffer to validate
90
+ * @throws {FlightSqlError} If the transaction ID is invalid
91
+ */
92
+ export declare function validateTransactionId(transactionId: Buffer): void;
93
+ /**
94
+ * Validates that parameter data contains required schema.
95
+ *
96
+ * @param params - The parameter data to validate
97
+ * @throws {FlightSqlError} If the parameter data is invalid
98
+ */
99
+ export declare function validateParameterData(params: {
100
+ schema: Uint8Array;
101
+ data: Uint8Array;
102
+ }): void;
103
+ //# sourceMappingURL=errors.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EAAE,WAAW,EAAE,KAAK,eAAe,EAAE,MAAM,2BAA2B,CAAA;AAE7E;;GAEG;AACH,MAAM,MAAM,kBAAkB,GAC1B,eAAe,GACf,gBAAgB,GAChB,mBAAmB,GACnB,mBAAmB,GACnB,cAAc,GACd,cAAc,CAAA;AAElB;;GAEG;AACH,MAAM,MAAM,qBAAqB,GAAG;IAClC,uCAAuC;IACvC,UAAU,CAAC,EAAE,eAAe,CAAA;IAC5B,+BAA+B;IAC/B,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,gDAAgD;IAChD,KAAK,CAAC,EAAE,KAAK,CAAA;CACd,CAAA;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,qBAAa,cAAe,SAAQ,WAAW;IAC7C;;OAEG;IACH,QAAQ,CAAC,OAAO,EAAE,kBAAkB,CAAA;gBAExB,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,kBAAkB,EAAE,OAAO,CAAC,EAAE,qBAAqB;IASzF;;OAEG;IACH,MAAM,CAAC,gBAAgB,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,cAAc;IAIhE;;OAEG;IACH,MAAM,CAAC,cAAc,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO;IAI9C;;OAEG;IACH,MAAM,CAAC,eAAe,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO;IAI/C;;OAEG;IACH,MAAM,CAAC,kBAAkB,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO;IAIlD;;OAEG;IACH,MAAM,CAAC,kBAAkB,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO;IAIlD;;OAEG;IACH,MAAM,CAAC,aAAa,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO;CAG9C;AAED;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAIjD;AAED;;;;;;GAMG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,SAAW,GAAG,IAAI,CAIpE;AAED;;;;;GAKG;AACH,wBAAgB,qBAAqB,CAAC,aAAa,EAAE,MAAM,GAAG,IAAI,CAMjE;AAED;;;;;GAKG;AACH,wBAAgB,qBAAqB,CAAC,MAAM,EAAE;IAAE,MAAM,EAAE,UAAU,CAAC;IAAC,IAAI,EAAE,UAAU,CAAA;CAAE,GAAG,IAAI,CAO5F"}
package/dist/errors.js ADDED
@@ -0,0 +1,125 @@
1
+ /**
2
+ * Flight SQL error types and utilities.
3
+ *
4
+ * @packageDocumentation
5
+ */
6
+ import { FlightError } from "@qualithm/arrow-flight-js";
7
+ /**
8
+ * Error class for Flight SQL specific errors.
9
+ *
10
+ * Extends FlightError to provide SQL-specific error information while
11
+ * maintaining compatibility with the base error handling.
12
+ *
13
+ * @example
14
+ * ```ts
15
+ * try {
16
+ * await client.query("")
17
+ * } catch (error) {
18
+ * if (FlightSqlError.isFlightSqlError(error)) {
19
+ * console.log("SQL error code:", error.sqlCode)
20
+ * console.log("Flight code:", error.code)
21
+ * }
22
+ * }
23
+ * ```
24
+ */
25
+ export class FlightSqlError extends FlightError {
26
+ /**
27
+ * The SQL-specific error code.
28
+ */
29
+ sqlCode;
30
+ constructor(message, sqlCode, options) {
31
+ super(message, options?.flightCode ?? "INVALID_ARGUMENT", {
32
+ details: options?.details,
33
+ cause: options?.cause
34
+ });
35
+ this.sqlCode = sqlCode;
36
+ this.name = "FlightSqlError";
37
+ }
38
+ /**
39
+ * Checks if an error is a FlightSqlError.
40
+ */
41
+ static isFlightSqlError(error) {
42
+ return error instanceof FlightSqlError;
43
+ }
44
+ /**
45
+ * Checks if an error indicates an invalid query.
46
+ */
47
+ static isInvalidQuery(error) {
48
+ return FlightSqlError.isFlightSqlError(error) && error.sqlCode === "INVALID_QUERY";
49
+ }
50
+ /**
51
+ * Checks if an error indicates an invalid handle (prepared statement, transaction).
52
+ */
53
+ static isInvalidHandle(error) {
54
+ return FlightSqlError.isFlightSqlError(error) && error.sqlCode === "INVALID_HANDLE";
55
+ }
56
+ /**
57
+ * Checks if an error indicates an invalid parameter.
58
+ */
59
+ static isInvalidParameter(error) {
60
+ return FlightSqlError.isFlightSqlError(error) && error.sqlCode === "INVALID_PARAMETER";
61
+ }
62
+ /**
63
+ * Checks if an error indicates a transaction error.
64
+ */
65
+ static isTransactionError(error) {
66
+ return FlightSqlError.isFlightSqlError(error) && error.sqlCode === "TRANSACTION_ERROR";
67
+ }
68
+ /**
69
+ * Checks if an error indicates a result error.
70
+ */
71
+ static isResultError(error) {
72
+ return FlightSqlError.isFlightSqlError(error) && error.sqlCode === "RESULT_ERROR";
73
+ }
74
+ }
75
+ /**
76
+ * Validates that a query string is not empty.
77
+ *
78
+ * @param query - The query string to validate
79
+ * @throws {FlightSqlError} If the query is empty or whitespace-only
80
+ */
81
+ export function validateQuery(query) {
82
+ if (!query || query.trim().length === 0) {
83
+ throw new FlightSqlError("query cannot be empty", "INVALID_QUERY");
84
+ }
85
+ }
86
+ /**
87
+ * Validates that a prepared statement handle is valid.
88
+ *
89
+ * @param handle - The handle buffer to validate
90
+ * @param name - The parameter name for error messages
91
+ * @throws {FlightSqlError} If the handle is invalid
92
+ */
93
+ export function validateHandle(handle, name = "handle") {
94
+ if (handle.length === 0) {
95
+ throw new FlightSqlError(`${name} cannot be empty`, "INVALID_HANDLE");
96
+ }
97
+ }
98
+ /**
99
+ * Validates that a transaction ID is valid.
100
+ *
101
+ * @param transactionId - The transaction ID buffer to validate
102
+ * @throws {FlightSqlError} If the transaction ID is invalid
103
+ */
104
+ export function validateTransactionId(transactionId) {
105
+ if (transactionId.length === 0) {
106
+ throw new FlightSqlError("transaction ID cannot be empty", "TRANSACTION_ERROR", {
107
+ flightCode: "FAILED_PRECONDITION"
108
+ });
109
+ }
110
+ }
111
+ /**
112
+ * Validates that parameter data contains required schema.
113
+ *
114
+ * @param params - The parameter data to validate
115
+ * @throws {FlightSqlError} If the parameter data is invalid
116
+ */
117
+ export function validateParameterData(params) {
118
+ if (params.schema.length === 0) {
119
+ throw new FlightSqlError("parameter schema is required", "INVALID_PARAMETER");
120
+ }
121
+ if (params.data.length === 0) {
122
+ throw new FlightSqlError("parameter data is required", "INVALID_PARAMETER");
123
+ }
124
+ }
125
+ //# sourceMappingURL=errors.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"errors.js","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -6,9 +6,11 @@
6
6
  *
7
7
  * @packageDocumentation
8
8
  */
9
- export type { BindParametersResult, FlightSqlClientOptions, ParameterData, PreparedStatementOptions, PreparedStatementResult, QueryOptions, UpdateResult } from "./client.js";
9
+ export type { BindParametersResult, FlightSqlClientOptions, ParameterData, PreparedStatementOptions, PreparedStatementResult, QueryOptions, TransactionAction, TransactionResult, UpdateResult } from "./client.js";
10
10
  export { createFlightSqlClient, FlightSqlClient } from "./client.js";
11
+ export type { FlightSqlErrorCode, FlightSqlErrorOptions } from "./errors.js";
12
+ export { FlightSqlError, validateHandle, validateParameterData, validateQuery, validateTransactionId } from "./errors.js";
11
13
  export type { ResultIteratorOptions } from "./results.js";
12
14
  export { flightInfoToTable, iterateResults, queryToTable, ticketToTable } from "./results.js";
13
- export { type CallOptions, type FlightClientOptions, type FlightData, FlightError, type FlightInfo, type Ticket } from "@qualithm/arrow-flight-js";
15
+ export { type CallOptions, type CancelStatus, type FlightClientOptions, type FlightData, FlightError, type FlightInfo, type Ticket } from "@qualithm/arrow-flight-js";
14
16
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAGH,YAAY,EACV,oBAAoB,EACpB,sBAAsB,EACtB,aAAa,EACb,wBAAwB,EACxB,uBAAuB,EACvB,YAAY,EACZ,YAAY,EACb,MAAM,aAAa,CAAA;AACpB,OAAO,EAAE,qBAAqB,EAAE,eAAe,EAAE,MAAM,aAAa,CAAA;AAGpE,YAAY,EAAE,qBAAqB,EAAE,MAAM,cAAc,CAAA;AACzD,OAAO,EAAE,iBAAiB,EAAE,cAAc,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,cAAc,CAAA;AAG7F,OAAO,EACL,KAAK,WAAW,EAChB,KAAK,mBAAmB,EACxB,KAAK,UAAU,EACf,WAAW,EACX,KAAK,UAAU,EACf,KAAK,MAAM,EACZ,MAAM,2BAA2B,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAGH,YAAY,EACV,oBAAoB,EACpB,sBAAsB,EACtB,aAAa,EACb,wBAAwB,EACxB,uBAAuB,EACvB,YAAY,EACZ,iBAAiB,EACjB,iBAAiB,EACjB,YAAY,EACb,MAAM,aAAa,CAAA;AACpB,OAAO,EAAE,qBAAqB,EAAE,eAAe,EAAE,MAAM,aAAa,CAAA;AAGpE,YAAY,EAAE,kBAAkB,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAA;AAC5E,OAAO,EACL,cAAc,EACd,cAAc,EACd,qBAAqB,EACrB,aAAa,EACb,qBAAqB,EACtB,MAAM,aAAa,CAAA;AAGpB,YAAY,EAAE,qBAAqB,EAAE,MAAM,cAAc,CAAA;AACzD,OAAO,EAAE,iBAAiB,EAAE,cAAc,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,cAAc,CAAA;AAG7F,OAAO,EACL,KAAK,WAAW,EAChB,KAAK,YAAY,EACjB,KAAK,mBAAmB,EACxB,KAAK,UAAU,EACf,WAAW,EACX,KAAK,UAAU,EACf,KAAK,MAAM,EACZ,MAAM,2BAA2B,CAAA"}
package/dist/index.js CHANGED
@@ -7,6 +7,7 @@
7
7
  * @packageDocumentation
8
8
  */
9
9
  export { createFlightSqlClient, FlightSqlClient } from "./client.js";
10
+ export { FlightSqlError, validateHandle, validateParameterData, validateQuery, validateTransactionId } from "./errors.js";
10
11
  export { flightInfoToTable, iterateResults, queryToTable, ticketToTable } from "./results.js";
11
12
  // Re-export base Flight client types for convenience
12
13
  export { FlightError } from "@qualithm/arrow-flight-js";
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAYH,OAAO,EAAE,qBAAqB,EAAE,eAAe,EAAE,MAAM,aAAa,CAAA;AAIpE,OAAO,EAAE,iBAAiB,EAAE,cAAc,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,cAAc,CAAA;AAE7F,qDAAqD;AACrD,OAAO,EAIL,WAAW,EAGZ,MAAM,2BAA2B,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAcH,OAAO,EAAE,qBAAqB,EAAE,eAAe,EAAE,MAAM,aAAa,CAAA;AAIpE,OAAO,EACL,cAAc,EACd,cAAc,EACd,qBAAqB,EACrB,aAAa,EACb,qBAAqB,EACtB,MAAM,aAAa,CAAA;AAIpB,OAAO,EAAE,iBAAiB,EAAE,cAAc,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,cAAc,CAAA;AAE7F,qDAAqD;AACrD,OAAO,EAKL,WAAW,EAGZ,MAAM,2BAA2B,CAAA"}
package/dist/results.d.ts CHANGED
@@ -5,7 +5,7 @@
5
5
  */
6
6
  import type { FlightData, FlightInfo, Ticket } from "@qualithm/arrow-flight-js";
7
7
  import { tableFromIPC } from "apache-arrow";
8
- import type { FlightSqlClient } from "./client.js";
8
+ import type { FlightSqlClient, QueryOptions } from "./client.js";
9
9
  /**
10
10
  * Options for iterating over query results.
11
11
  */
@@ -26,6 +26,7 @@ export type ResultIteratorOptions = {
26
26
  *
27
27
  * @param client - The FlightSqlClient to use
28
28
  * @param query - The SQL query to execute
29
+ * @param options - Optional query options including transactionId
29
30
  * @returns An Arrow Table containing all query results
30
31
  *
31
32
  * @example
@@ -40,9 +41,17 @@ export type ResultIteratorOptions = {
40
41
  * for (const row of table) {
41
42
  * console.log(row.toJSON())
42
43
  * }
44
+ *
45
+ * // Query within a transaction
46
+ * const txn = await client.beginTransaction()
47
+ * const uncommittedData = await queryToTable(
48
+ * client,
49
+ * "SELECT * FROM users WHERE id = 999",
50
+ * { transactionId: txn.transactionId }
51
+ * )
43
52
  * ```
44
53
  */
45
- export declare function queryToTable(client: FlightSqlClient, query: string): Promise<ReturnType<typeof tableFromIPC>>;
54
+ export declare function queryToTable(client: FlightSqlClient, query: string, options?: QueryOptions): Promise<ReturnType<typeof tableFromIPC>>;
46
55
  /**
47
56
  * Retrieves data from FlightInfo and returns it as an Arrow Table.
48
57
  *
@@ -1 +1 @@
1
- {"version":3,"file":"results.d.ts","sourceRoot":"","sources":["../src/results.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,KAAK,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,2BAA2B,CAAA;AAC/E,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAA;AAE3C,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAA;AAElD;;GAEG;AACH,MAAM,MAAM,qBAAqB,GAAG;IAClC;;;OAGG;IACH,KAAK,CAAC,EAAE,MAAM,CAAA;CACf,CAAA;AA2BD;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,wBAAsB,YAAY,CAChC,MAAM,EAAE,eAAe,EACvB,KAAK,EAAE,MAAM,GACZ,OAAO,CAAC,UAAU,CAAC,OAAO,YAAY,CAAC,CAAC,CAG1C;AAED;;;;;;;;;;;;GAYG;AACH,wBAAsB,iBAAiB,CACrC,MAAM,EAAE,eAAe,EACvB,IAAI,EAAE,UAAU,GACf,OAAO,CAAC,UAAU,CAAC,OAAO,YAAY,CAAC,CAAC,CA2B1C;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAuB,cAAc,CACnC,MAAM,EAAE,eAAe,EACvB,IAAI,EAAE,UAAU,GACf,cAAc,CAAC,UAAU,EAAE,IAAI,EAAE,SAAS,CAAC,CAO7C;AAED;;;;;;GAMG;AACH,wBAAsB,aAAa,CACjC,MAAM,EAAE,eAAe,EACvB,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,UAAU,CAAC,OAAO,YAAY,CAAC,CAAC,CAiB1C"}
1
+ {"version":3,"file":"results.d.ts","sourceRoot":"","sources":["../src/results.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,KAAK,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,2BAA2B,CAAA;AAC/E,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAA;AAE3C,OAAO,KAAK,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAGhE;;GAEG;AACH,MAAM,MAAM,qBAAqB,GAAG;IAClC;;;OAGG;IACH,KAAK,CAAC,EAAE,MAAM,CAAA;CACf,CAAA;AA2BD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AACH,wBAAsB,YAAY,CAChC,MAAM,EAAE,eAAe,EACvB,KAAK,EAAE,MAAM,EACb,OAAO,CAAC,EAAE,YAAY,GACrB,OAAO,CAAC,UAAU,CAAC,OAAO,YAAY,CAAC,CAAC,CAG1C;AAED;;;;;;;;;;;;GAYG;AACH,wBAAsB,iBAAiB,CACrC,MAAM,EAAE,eAAe,EACvB,IAAI,EAAE,UAAU,GACf,OAAO,CAAC,UAAU,CAAC,OAAO,YAAY,CAAC,CAAC,CA6B1C;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAuB,cAAc,CACnC,MAAM,EAAE,eAAe,EACvB,IAAI,EAAE,UAAU,GACf,cAAc,CAAC,UAAU,EAAE,IAAI,EAAE,SAAS,CAAC,CAO7C;AAED;;;;;;GAMG;AACH,wBAAsB,aAAa,CACjC,MAAM,EAAE,eAAe,EACvB,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,UAAU,CAAC,OAAO,YAAY,CAAC,CAAC,CAmB1C"}
package/dist/results.js CHANGED
@@ -1,4 +1,5 @@
1
1
  import { tableFromIPC } from "apache-arrow";
2
+ import { FlightSqlError } from "./errors.js";
2
3
  /**
3
4
  * Collects all FlightData from a doGet stream into Arrow IPC bytes.
4
5
  *
@@ -29,6 +30,7 @@ async function collectFlightData(dataStream) {
29
30
  *
30
31
  * @param client - The FlightSqlClient to use
31
32
  * @param query - The SQL query to execute
33
+ * @param options - Optional query options including transactionId
32
34
  * @returns An Arrow Table containing all query results
33
35
  *
34
36
  * @example
@@ -43,10 +45,18 @@ async function collectFlightData(dataStream) {
43
45
  * for (const row of table) {
44
46
  * console.log(row.toJSON())
45
47
  * }
48
+ *
49
+ * // Query within a transaction
50
+ * const txn = await client.beginTransaction()
51
+ * const uncommittedData = await queryToTable(
52
+ * client,
53
+ * "SELECT * FROM users WHERE id = 999",
54
+ * { transactionId: txn.transactionId }
55
+ * )
46
56
  * ```
47
57
  */
48
- export async function queryToTable(client, query) {
49
- const info = await client.query(query);
58
+ export async function queryToTable(client, query, options) {
59
+ const info = await client.query(query, options);
50
60
  return flightInfoToTable(client, info);
51
61
  }
52
62
  /**
@@ -73,7 +83,9 @@ export async function flightInfoToTable(client, info) {
73
83
  allChunks.push(...chunks);
74
84
  }
75
85
  if (allChunks.length === 0) {
76
- throw new Error("no data returned from query");
86
+ throw new FlightSqlError("no data returned from query", "RESULT_ERROR", {
87
+ flightCode: "NOT_FOUND"
88
+ });
77
89
  }
78
90
  // Combine all chunks and parse as IPC
79
91
  const totalLength = allChunks.reduce((sum, chunk) => sum + chunk.length, 0);
@@ -124,7 +136,9 @@ export async function ticketToTable(client, ticket) {
124
136
  const dataStream = client.doGet(ticket);
125
137
  const chunks = await collectFlightData(dataStream);
126
138
  if (chunks.length === 0) {
127
- throw new Error("no data returned from ticket");
139
+ throw new FlightSqlError("no data returned from ticket", "RESULT_ERROR", {
140
+ flightCode: "NOT_FOUND"
141
+ });
128
142
  }
129
143
  const totalLength = chunks.reduce((sum, chunk) => sum + chunk.length, 0);
130
144
  const combined = new Uint8Array(totalLength);
@@ -1 +1 @@
1
- {"version":3,"file":"results.js","sourceRoot":"","sources":["../src/results.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"results.js","sourceRoot":"","sources":["../src/results.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAA;AAG3C,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAA;AAa5C;;;;;GAKG;AACH,KAAK,UAAU,iBAAiB,CAC9B,UAAuD;IAEvD,MAAM,MAAM,GAAiB,EAAE,CAAA;IAE/B,IAAI,KAAK,EAAE,MAAM,IAAI,IAAI,UAAU,EAAE,CAAC;QACpC,sDAAsD;QACtD,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC/B,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;QAC9B,CAAC;QACD,6CAA6C;QAC7C,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC7B,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;QAC5B,CAAC;IACH,CAAC;IAED,OAAO,MAAM,CAAA;AACf,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AACH,MAAM,CAAC,KAAK,UAAU,YAAY,CAChC,MAAuB,EACvB,KAAa,EACb,OAAsB;IAEtB,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,KAAK,CAAC,KAAK,EAAE,OAAO,CAAC,CAAA;IAC/C,OAAO,iBAAiB,CAAC,MAAM,EAAE,IAAI,CAAC,CAAA;AACxC,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,MAAuB,EACvB,IAAgB;IAEhB,MAAM,SAAS,GAAiB,EAAE,CAAA;IAElC,KAAK,MAAM,QAAQ,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;QACrC,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC;YACrB,SAAQ;QACV,CAAC;QAED,MAAM,UAAU,GAAG,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAA;QAChD,MAAM,MAAM,GAAG,MAAM,iBAAiB,CAAC,UAAU,CAAC,CAAA;QAClD,SAAS,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,CAAA;IAC3B,CAAC;IAED,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC3B,MAAM,IAAI,cAAc,CAAC,6BAA6B,EAAE,cAAc,EAAE;YACtE,UAAU,EAAE,WAAW;SACxB,CAAC,CAAA;IACJ,CAAC;IAED,sCAAsC;IACtC,MAAM,WAAW,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE,CAAC,GAAG,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC,CAAA;IAC3E,MAAM,QAAQ,GAAG,IAAI,UAAU,CAAC,WAAW,CAAC,CAAA;IAC5C,IAAI,MAAM,GAAG,CAAC,CAAA;IACd,KAAK,MAAM,KAAK,IAAI,SAAS,EAAE,CAAC;QAC9B,QAAQ,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,CAAC,CAAA;QAC3B,MAAM,IAAI,KAAK,CAAC,MAAM,CAAA;IACxB,CAAC;IAED,OAAO,YAAY,CAAC,QAAQ,CAAC,CAAA;AAC/B,CAAC;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,CAAC,KAAK,SAAS,CAAC,CAAC,cAAc,CACnC,MAAuB,EACvB,IAAgB;IAEhB,KAAK,MAAM,QAAQ,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;QACrC,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC;YACrB,SAAQ;QACV,CAAC;QACD,KAAK,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAA;IACtC,CAAC;AACH,CAAC;AAED;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,aAAa,CACjC,MAAuB,EACvB,MAAc;IAEd,MAAM,UAAU,GAAG,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;IACvC,MAAM,MAAM,GAAG,MAAM,iBAAiB,CAAC,UAAU,CAAC,CAAA;IAElD,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACxB,MAAM,IAAI,cAAc,CAAC,8BAA8B,EAAE,cAAc,EAAE;YACvE,UAAU,EAAE,WAAW;SACxB,CAAC,CAAA;IACJ,CAAC;IAED,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE,CAAC,GAAG,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC,CAAA;IACxE,MAAM,QAAQ,GAAG,IAAI,UAAU,CAAC,WAAW,CAAC,CAAA;IAC5C,IAAI,MAAM,GAAG,CAAC,CAAA;IACd,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,QAAQ,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,CAAC,CAAA;QAC3B,MAAM,IAAI,KAAK,CAAC,MAAM,CAAA;IACxB,CAAC;IAED,OAAO,YAAY,CAAC,QAAQ,CAAC,CAAA;AAC/B,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@qualithm/arrow-flight-sql-js",
3
- "version": "1.4.0",
3
+ "version": "1.5.1",
4
4
  "description": "Arrow Flight SQL client for JavaScript and TypeScript runtimes.",
5
5
  "private": false,
6
6
  "type": "module",
@@ -68,8 +68,8 @@
68
68
  "apache-arrow": ">=17.0.0"
69
69
  },
70
70
  "devDependencies": {
71
- "@qualithm/arrow-flight-js": "1.5.0",
72
- "apache-arrow": "19.0.1",
71
+ "@qualithm/arrow-flight-js": "1.6.0",
72
+ "apache-arrow": "21.1.0",
73
73
  "@eslint/js": "10.0.1",
74
74
  "grpc-tools": "1.13.1",
75
75
  "ts-proto": "2.11.2",