@visorcraft/mongreldb-kit 0.52.3 → 0.54.0

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/dist/db.d.ts CHANGED
@@ -6,6 +6,25 @@ import { type ProcedureCallOptions, type ProcedureCallResult, type ProcedureSpec
6
6
  import { type TriggerSpec } from './trigger.js';
7
7
  import { type ViewSpec, type VirtualTableSpec } from './external.js';
8
8
  import { type Migration } from './migrate.js';
9
+ export interface SqlOptions {
10
+ timeoutMs?: number;
11
+ signal?: AbortSignal;
12
+ queryId?: string;
13
+ }
14
+ export interface SqlQuery<T> {
15
+ readonly id: string;
16
+ readonly result: Promise<T>;
17
+ cancel(): Promise<void> | void;
18
+ }
19
+ type NativeSqlOptions = {
20
+ queryId?: string;
21
+ timeoutMs?: number;
22
+ };
23
+ type NativeSqlQuery = {
24
+ readonly id: string;
25
+ cancel(): boolean;
26
+ result(): Promise<Buffer>;
27
+ };
9
28
  /** A reservoir-sampled approximate aggregate with a confidence interval. */
10
29
  export interface ApproxAggregate {
11
30
  point: number;
@@ -70,6 +89,9 @@ type MongrelDatabase = NativeDatabase & {
70
89
  json: string;
71
90
  } | null;
72
91
  sql(sql: string): Promise<Buffer>;
92
+ sqlWithOptions(sql: string, options?: NativeSqlOptions): Promise<Buffer>;
93
+ startSql(sql: string, options?: NativeSqlOptions): NativeSqlQuery;
94
+ cancelSql(queryId: string): boolean;
73
95
  createUser(username: string, password: string): void;
74
96
  dropUser(username: string): void;
75
97
  alterUserPassword(username: string, newPassword: string): void;
@@ -152,8 +174,9 @@ export declare class KitDatabase {
152
174
  dropTriggerSync(name: string): void;
153
175
  triggers(): TriggerSpec[];
154
176
  trigger(name: string): TriggerSpec | null;
155
- sql(sql: string): Promise<ArrowTable>;
156
- sqlRows(sql: string): Promise<Record<string, unknown>[]>;
177
+ startSql(sql: string, options?: SqlOptions): SqlQuery<ArrowTable>;
178
+ sql(sql: string, options?: SqlOptions): Promise<ArrowTable>;
179
+ sqlRows(sql: string, options?: SqlOptions): Promise<Record<string, unknown>[]>;
157
180
  createVirtualTable(spec: VirtualTableSpec): Promise<ArrowTable>;
158
181
  dropVirtualTable(name: string): Promise<ArrowTable>;
159
182
  /** Create a SQL view (`CREATE VIEW <name> AS <select>`). The engine
package/dist/db.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"db.d.ts","sourceRoot":"","sources":["../src/db.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"db.d.ts","sourceRoot":"","sources":["../src/db.ts"],"names":[],"mappings":"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"}
package/dist/db.js CHANGED
@@ -1,4 +1,4 @@
1
- import { createHash } from 'node:crypto';
1
+ import { createHash, randomBytes } from 'node:crypto';
2
2
  import mongreldb from '@visorcraft/mongreldb';
3
3
  import { tableFromIPC } from 'apache-arrow';
4
4
  import { WriteBuffer } from '@visorcraft/mongreldb/native.js';
@@ -10,7 +10,10 @@ import { triggerJson } from './trigger.js';
10
10
  import { createViewSql, createVirtualTableSql, dropViewSql, dropVirtualTableSql } from './external.js';
11
11
  import { migrateSync as runMigrateSync } from './migrate.js';
12
12
  import { deleteGuardsForTable, toCells } from './constraints.js';
13
- import { KitError, isRetryableConflict } from './errors.js';
13
+ import { KitError, QueryCancelledError, isRetryableConflict, mapSqlError } from './errors.js';
14
+ function sqlQueryId() {
15
+ return randomBytes(16).toString('hex');
16
+ }
14
17
  /** Members of a set-valued cell: a JSON array, or a JSON string of one. */
15
18
  function parseStringSet(value) {
16
19
  let arr = value;
@@ -475,11 +478,41 @@ export class KitDatabase {
475
478
  const trigger = this.db.trigger(name);
476
479
  return trigger ? JSON.parse(trigger.json) : null;
477
480
  }
478
- async sql(sql) {
479
- return tableFromIPC(await this.db.sql(sql));
480
- }
481
- async sqlRows(sql) {
482
- return [...(await this.sql(sql))].map((row) => ({ ...row }));
481
+ startSql(sql, options = {}) {
482
+ const queryId = options.queryId ?? sqlQueryId();
483
+ if (options.timeoutMs !== undefined && (!Number.isSafeInteger(options.timeoutMs) || options.timeoutMs <= 0)) {
484
+ throw new RangeError('timeoutMs must be a positive safe integer');
485
+ }
486
+ if (options.signal?.aborted) {
487
+ return {
488
+ id: queryId,
489
+ result: Promise.reject(new QueryCancelledError(queryId)),
490
+ cancel() { }
491
+ };
492
+ }
493
+ const native = this.db.startSql(sql, {
494
+ queryId,
495
+ timeoutMs: options.timeoutMs
496
+ });
497
+ const cancel = () => {
498
+ native.cancel();
499
+ };
500
+ const onAbort = () => cancel();
501
+ options.signal?.addEventListener('abort', onAbort, { once: true });
502
+ const result = native
503
+ .result()
504
+ .then((bytes) => tableFromIPC(bytes))
505
+ .catch((error) => {
506
+ throw mapSqlError(error, queryId);
507
+ })
508
+ .finally(() => options.signal?.removeEventListener('abort', onAbort));
509
+ return { id: native.id, result, cancel };
510
+ }
511
+ async sql(sql, options) {
512
+ return this.startSql(sql, options).result;
513
+ }
514
+ async sqlRows(sql, options) {
515
+ return [...(await this.sql(sql, options))].map((row) => ({ ...row }));
483
516
  }
484
517
  async createVirtualTable(spec) {
485
518
  return this.sql(createVirtualTableSql(spec));
package/dist/db.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"db.js","sourceRoot":"","sources":["../src/db.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"db.js","sourceRoot":"","sources":["../src/db.ts"],"names":[],"mappings":"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"}
package/dist/errors.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- export type KitErrorCode = 'STORAGE' | 'VALIDATION' | 'NOT_FOUND' | 'DUPLICATE' | 'FOREIGN_KEY' | 'RESTRICT' | 'CONFLICT' | 'TRIGGER_VALIDATION' | 'MIGRATION' | 'SCHEMA_DRIFT' | 'TIMEOUT' | 'UNSUPPORTED' | 'INTEGRITY' | 'AUTH_REQUIRED' | 'AUTH_NOT_REQUIRED' | 'INVALID_CREDENTIALS' | 'PERMISSION_DENIED';
1
+ export type KitErrorCode = 'STORAGE' | 'VALIDATION' | 'NOT_FOUND' | 'DUPLICATE' | 'FOREIGN_KEY' | 'RESTRICT' | 'CONFLICT' | 'TRIGGER_VALIDATION' | 'MIGRATION' | 'SCHEMA_DRIFT' | 'TIMEOUT' | 'UNSUPPORTED' | 'INTEGRITY' | 'AUTH_REQUIRED' | 'AUTH_NOT_REQUIRED' | 'INVALID_CREDENTIALS' | 'PERMISSION_DENIED' | 'QUERY_CANCELLED' | 'DEADLINE_EXCEEDED' | 'QUERY_ID_CONFLICT' | 'TRANSACTION_ABORTED';
2
2
  export declare class KitError extends Error {
3
3
  readonly code: KitErrorCode;
4
4
  constructor(message: string, code?: KitErrorCode);
@@ -47,6 +47,22 @@ export declare class KitTimeoutError extends KitError {
47
47
  export declare class KitUnsupportedError extends KitError {
48
48
  constructor(message: string);
49
49
  }
50
+ export declare class QueryCancelledError extends KitError {
51
+ readonly queryId: string;
52
+ constructor(queryId: string, message?: string);
53
+ }
54
+ export declare class QueryTimeoutError extends KitError {
55
+ readonly queryId: string;
56
+ constructor(queryId: string, message?: string);
57
+ }
58
+ export declare class QueryIdConflictError extends KitError {
59
+ readonly queryId: string;
60
+ constructor(queryId: string, message?: string);
61
+ }
62
+ export declare class TransactionAbortedError extends KitError {
63
+ constructor(message?: string);
64
+ }
65
+ export declare function mapSqlError(error: unknown, fallbackQueryId: string): Error;
50
66
  /** Thrown when a `require_auth` database is opened without credentials, or an
51
67
  * operation runs on a handle with no cached principal. HTTP 401 equivalent. */
52
68
  export declare class KitAuthRequiredError extends KitError {
@@ -1 +1 @@
1
- {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,YAAY,GACrB,SAAS,GACT,YAAY,GACZ,WAAW,GACX,WAAW,GACX,aAAa,GACb,UAAU,GACV,UAAU,GACV,oBAAoB,GACpB,WAAW,GACX,cAAc,GACd,SAAS,GACT,aAAa,GACb,WAAW,GACX,eAAe,GACf,mBAAmB,GACnB,qBAAqB,GACrB,mBAAmB,CAAC;AAEvB,qBAAa,QAAS,SAAQ,KAAK;IAClC,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAC;gBAEhB,OAAO,EAAE,MAAM,EAAE,IAAI,GAAE,YAAwB;CAK3D;AAED,qBAAa,kBAAmB,SAAQ,QAAQ;IAC/C,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;gBAEJ,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM;CAM5D;AAED,qBAAa,gBAAiB,SAAQ,QAAQ;IAC7C,KAAK,EAAE,MAAM,CAAC;IACd,EAAE,EAAE,OAAO,CAAC;gBAEA,KAAK,EAAE,MAAM,EAAE,EAAE,EAAE,OAAO;CAMtC;AAED,qBAAa,iBAAkB,SAAQ,QAAQ;IAC9C,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,MAAM,CAAC;gBAEP,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM;CAM7C;AAED,qBAAa,kBAAmB,SAAQ,QAAQ;IAC/C,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,MAAM,CAAC;gBAEP,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM;CAM7C;AAED,qBAAa,gBAAiB,SAAQ,QAAQ;IAC7C,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,MAAM,CAAC;gBAEP,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM;CAM7C;AAED,qBAAa,gBAAiB,SAAQ,QAAQ;IAC7C,SAAS,UAAQ;gBAEL,OAAO,SAAa;CAIhC;AAED,qBAAa,yBAA0B,SAAQ,QAAQ;gBAC1C,OAAO,EAAE,MAAM;CAI3B;AAED,qBAAa,iBAAkB,SAAQ,QAAQ;gBAClC,OAAO,EAAE,MAAM;CAI3B;AAED,qBAAa,mBAAoB,SAAQ,QAAQ;gBACpC,OAAO,EAAE,MAAM;CAI3B;AAED,qBAAa,eAAgB,SAAQ,QAAQ;gBAChC,OAAO,SAA0B;CAI7C;AAED,qBAAa,mBAAoB,SAAQ,QAAQ;gBACpC,OAAO,EAAE,MAAM;CAI3B;AAED;+EAC+E;AAC/E,qBAAa,oBAAqB,SAAQ,QAAQ;gBACrC,OAAO,EAAE,MAAM;CAI3B;AAED;gDACgD;AAChD,qBAAa,uBAAwB,SAAQ,QAAQ;gBACxC,OAAO,EAAE,MAAM;CAI3B;AAED;0BAC0B;AAC1B,qBAAa,0BAA2B,SAAQ,QAAQ;IACvD,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;gBAEd,QAAQ,EAAE,MAAM;CAK5B;AAED;4CAC4C;AAC5C,qBAAa,wBAAyB,SAAQ,QAAQ;gBACzC,OAAO,EAAE,MAAM;CAI3B;AAED;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,OAAO,GAAG,OAAO,CAKzD"}
1
+ {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"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"}
package/dist/errors.js CHANGED
@@ -93,6 +93,56 @@ export class KitUnsupportedError extends KitError {
93
93
  this.name = 'KitUnsupportedError';
94
94
  }
95
95
  }
96
+ export class QueryCancelledError extends KitError {
97
+ queryId;
98
+ constructor(queryId, message = 'SQL query cancelled') {
99
+ super(message, 'QUERY_CANCELLED');
100
+ this.name = 'QueryCancelledError';
101
+ this.queryId = queryId;
102
+ }
103
+ }
104
+ export class QueryTimeoutError extends KitError {
105
+ queryId;
106
+ constructor(queryId, message = 'SQL query deadline exceeded') {
107
+ super(message, 'DEADLINE_EXCEEDED');
108
+ this.name = 'QueryTimeoutError';
109
+ this.queryId = queryId;
110
+ }
111
+ }
112
+ export class QueryIdConflictError extends KitError {
113
+ queryId;
114
+ constructor(queryId, message = 'SQL query ID is already active') {
115
+ super(message, 'QUERY_ID_CONFLICT');
116
+ this.name = 'QueryIdConflictError';
117
+ this.queryId = queryId;
118
+ }
119
+ }
120
+ export class TransactionAbortedError extends KitError {
121
+ constructor(message = 'SQL transaction is aborted; only ROLLBACK is allowed') {
122
+ super(message, 'TRANSACTION_ABORTED');
123
+ this.name = 'TransactionAbortedError';
124
+ }
125
+ }
126
+ export function mapSqlError(error, fallbackQueryId) {
127
+ if (error instanceof QueryCancelledError || error instanceof QueryTimeoutError || error instanceof QueryIdConflictError || error instanceof TransactionAbortedError) {
128
+ return error;
129
+ }
130
+ const message = error instanceof Error ? error.message : String(error);
131
+ const parts = message.split(':');
132
+ if (message.includes('__QUERY_CANCELLED__:')) {
133
+ return new QueryCancelledError(parts.at(-2) ?? fallbackQueryId, message);
134
+ }
135
+ if (message.includes('__DEADLINE_EXCEEDED__:')) {
136
+ return new QueryTimeoutError(parts.at(-2) ?? fallbackQueryId, message);
137
+ }
138
+ if (message.includes('__QUERY_ID_CONFLICT__:')) {
139
+ return new QueryIdConflictError(parts.at(-1) ?? fallbackQueryId, message);
140
+ }
141
+ if (message.includes('__TRANSACTION_ABORTED__:')) {
142
+ return new TransactionAbortedError(message);
143
+ }
144
+ return error instanceof Error ? error : new KitError(message);
145
+ }
96
146
  /** Thrown when a `require_auth` database is opened without credentials, or an
97
147
  * operation runs on a handle with no cached principal. HTTP 401 equivalent. */
98
148
  export class KitAuthRequiredError extends KitError {
@@ -1 +1 @@
1
- {"version":3,"file":"errors.js","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"errors.js","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAuBA,MAAM,OAAO,QAAS,SAAQ,KAAK;IACzB,IAAI,CAAe;IAE5B,YAAY,OAAe,EAAE,OAAqB,SAAS;QAC1D,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,UAAU,CAAC;QACvB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IAClB,CAAC;CACD;AAED,MAAM,OAAO,kBAAmB,SAAQ,QAAQ;IAC/C,KAAK,CAAU;IACf,MAAM,CAAU;IAEhB,YAAY,OAAe,EAAE,KAAc,EAAE,MAAe;QAC3D,KAAK,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;QAC7B,IAAI,CAAC,IAAI,GAAG,oBAAoB,CAAC;QACjC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACtB,CAAC;CACD;AAED,MAAM,OAAO,gBAAiB,SAAQ,QAAQ;IAC7C,KAAK,CAAS;IACd,EAAE,CAAU;IAEZ,YAAY,KAAa,EAAE,EAAW;QACrC,KAAK,CAAC,GAAG,KAAK,IAAI,MAAM,CAAC,EAAE,CAAC,aAAa,EAAE,WAAW,CAAC,CAAC;QACxD,IAAI,CAAC,IAAI,GAAG,kBAAkB,CAAC;QAC/B,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC;IACd,CAAC;CACD;AAED,MAAM,OAAO,iBAAkB,SAAQ,QAAQ;IAC9C,KAAK,CAAS;IACd,UAAU,CAAS;IAEnB,YAAY,KAAa,EAAE,UAAkB;QAC5C,KAAK,CAAC,gBAAgB,KAAK,QAAQ,UAAU,EAAE,EAAE,WAAW,CAAC,CAAC;QAC9D,IAAI,CAAC,IAAI,GAAG,mBAAmB,CAAC;QAChC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;IAC9B,CAAC;CACD;AAED,MAAM,OAAO,kBAAmB,SAAQ,QAAQ;IAC/C,KAAK,CAAS;IACd,UAAU,CAAS;IAEnB,YAAY,KAAa,EAAE,UAAkB;QAC5C,KAAK,CAAC,4BAA4B,KAAK,QAAQ,UAAU,EAAE,EAAE,aAAa,CAAC,CAAC;QAC5E,IAAI,CAAC,IAAI,GAAG,oBAAoB,CAAC;QACjC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;IAC9B,CAAC;CACD;AAED,MAAM,OAAO,gBAAiB,SAAQ,QAAQ;IAC7C,KAAK,CAAS;IACd,UAAU,CAAS;IAEnB,YAAY,KAAa,EAAE,UAAkB;QAC5C,KAAK,CAAC,yBAAyB,KAAK,QAAQ,UAAU,EAAE,EAAE,UAAU,CAAC,CAAC;QACtE,IAAI,CAAC,IAAI,GAAG,kBAAkB,CAAC;QAC/B,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;IAC9B,CAAC;CACD;AAED,MAAM,OAAO,gBAAiB,SAAQ,QAAQ;IAC7C,SAAS,GAAG,IAAI,CAAC;IAEjB,YAAY,OAAO,GAAG,UAAU;QAC/B,KAAK,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;QAC3B,IAAI,CAAC,IAAI,GAAG,kBAAkB,CAAC;IAChC,CAAC;CACD;AAED,MAAM,OAAO,yBAA0B,SAAQ,QAAQ;IACtD,YAAY,OAAe;QAC1B,KAAK,CAAC,OAAO,EAAE,oBAAoB,CAAC,CAAC;QACrC,IAAI,CAAC,IAAI,GAAG,2BAA2B,CAAC;IACzC,CAAC;CACD;AAED,MAAM,OAAO,iBAAkB,SAAQ,QAAQ;IAC9C,YAAY,OAAe;QAC1B,KAAK,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;QAC5B,IAAI,CAAC,IAAI,GAAG,mBAAmB,CAAC;IACjC,CAAC;CACD;AAED,MAAM,OAAO,mBAAoB,SAAQ,QAAQ;IAChD,YAAY,OAAe;QAC1B,KAAK,CAAC,OAAO,EAAE,cAAc,CAAC,CAAC;QAC/B,IAAI,CAAC,IAAI,GAAG,qBAAqB,CAAC;IACnC,CAAC;CACD;AAED,MAAM,OAAO,eAAgB,SAAQ,QAAQ;IAC5C,YAAY,OAAO,GAAG,uBAAuB;QAC5C,KAAK,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;QAC1B,IAAI,CAAC,IAAI,GAAG,iBAAiB,CAAC;IAC/B,CAAC;CACD;AAED,MAAM,OAAO,mBAAoB,SAAQ,QAAQ;IAChD,YAAY,OAAe;QAC1B,KAAK,CAAC,OAAO,EAAE,aAAa,CAAC,CAAC;QAC9B,IAAI,CAAC,IAAI,GAAG,qBAAqB,CAAC;IACnC,CAAC;CACD;AAED,MAAM,OAAO,mBAAoB,SAAQ,QAAQ;IACvC,OAAO,CAAS;IAEzB,YAAY,OAAe,EAAE,OAAO,GAAG,qBAAqB;QAC3D,KAAK,CAAC,OAAO,EAAE,iBAAiB,CAAC,CAAC;QAClC,IAAI,CAAC,IAAI,GAAG,qBAAqB,CAAC;QAClC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACxB,CAAC;CACD;AAED,MAAM,OAAO,iBAAkB,SAAQ,QAAQ;IACrC,OAAO,CAAS;IAEzB,YAAY,OAAe,EAAE,OAAO,GAAG,6BAA6B;QACnE,KAAK,CAAC,OAAO,EAAE,mBAAmB,CAAC,CAAC;QACpC,IAAI,CAAC,IAAI,GAAG,mBAAmB,CAAC;QAChC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACxB,CAAC;CACD;AAED,MAAM,OAAO,oBAAqB,SAAQ,QAAQ;IACxC,OAAO,CAAS;IAEzB,YAAY,OAAe,EAAE,OAAO,GAAG,gCAAgC;QACtE,KAAK,CAAC,OAAO,EAAE,mBAAmB,CAAC,CAAC;QACpC,IAAI,CAAC,IAAI,GAAG,sBAAsB,CAAC;QACnC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACxB,CAAC;CACD;AAED,MAAM,OAAO,uBAAwB,SAAQ,QAAQ;IACpD,YAAY,OAAO,GAAG,sDAAsD;QAC3E,KAAK,CAAC,OAAO,EAAE,qBAAqB,CAAC,CAAC;QACtC,IAAI,CAAC,IAAI,GAAG,yBAAyB,CAAC;IACvC,CAAC;CACD;AAED,MAAM,UAAU,WAAW,CAAC,KAAc,EAAE,eAAuB;IAClE,IAAI,KAAK,YAAY,mBAAmB,IAAI,KAAK,YAAY,iBAAiB,IAAI,KAAK,YAAY,oBAAoB,IAAI,KAAK,YAAY,uBAAuB,EAAE,CAAC;QACrK,OAAO,KAAK,CAAC;IACd,CAAC;IACD,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IACvE,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACjC,IAAI,OAAO,CAAC,QAAQ,CAAC,sBAAsB,CAAC,EAAE,CAAC;QAC9C,OAAO,IAAI,mBAAmB,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,eAAe,EAAE,OAAO,CAAC,CAAC;IAC1E,CAAC;IACD,IAAI,OAAO,CAAC,QAAQ,CAAC,wBAAwB,CAAC,EAAE,CAAC;QAChD,OAAO,IAAI,iBAAiB,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,eAAe,EAAE,OAAO,CAAC,CAAC;IACxE,CAAC;IACD,IAAI,OAAO,CAAC,QAAQ,CAAC,wBAAwB,CAAC,EAAE,CAAC;QAChD,OAAO,IAAI,oBAAoB,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,eAAe,EAAE,OAAO,CAAC,CAAC;IAC3E,CAAC;IACD,IAAI,OAAO,CAAC,QAAQ,CAAC,0BAA0B,CAAC,EAAE,CAAC;QAClD,OAAO,IAAI,uBAAuB,CAAC,OAAO,CAAC,CAAC;IAC7C,CAAC;IACD,OAAO,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,QAAQ,CAAC,OAAO,CAAC,CAAC;AAC/D,CAAC;AAED;+EAC+E;AAC/E,MAAM,OAAO,oBAAqB,SAAQ,QAAQ;IACjD,YAAY,OAAe;QAC1B,KAAK,CAAC,OAAO,EAAE,eAAe,CAAC,CAAC;QAChC,IAAI,CAAC,IAAI,GAAG,sBAAsB,CAAC;IACpC,CAAC;CACD;AAED;gDACgD;AAChD,MAAM,OAAO,uBAAwB,SAAQ,QAAQ;IACpD,YAAY,OAAe;QAC1B,KAAK,CAAC,OAAO,EAAE,mBAAmB,CAAC,CAAC;QACpC,IAAI,CAAC,IAAI,GAAG,yBAAyB,CAAC;IACvC,CAAC;CACD;AAED;0BAC0B;AAC1B,MAAM,OAAO,0BAA2B,SAAQ,QAAQ;IAC9C,QAAQ,CAAS;IAE1B,YAAY,QAAgB;QAC3B,KAAK,CAAC,iCAAiC,QAAQ,GAAG,EAAE,qBAAqB,CAAC,CAAC;QAC3E,IAAI,CAAC,IAAI,GAAG,4BAA4B,CAAC;QACzC,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC1B,CAAC;CACD;AAED;4CAC4C;AAC5C,MAAM,OAAO,wBAAyB,SAAQ,QAAQ;IACrD,YAAY,OAAe;QAC1B,KAAK,CAAC,OAAO,EAAE,mBAAmB,CAAC,CAAC;QACpC,IAAI,CAAC,IAAI,GAAG,0BAA0B,CAAC;IACxC,CAAC;CACD;AAED;;;;;GAKG;AACH,MAAM,UAAU,mBAAmB,CAAC,GAAY;IAC/C,IAAI,GAAG,YAAY,gBAAgB;QAAE,OAAO,IAAI,CAAC;IACjD,IAAI,GAAG,IAAI,IAAI,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,CAAC,CAAC,SAAS,IAAI,GAAG,CAAC;QAAE,OAAO,KAAK,CAAC;IAChF,MAAM,GAAG,GAAI,GAA6B,CAAC,OAAO,CAAC;IACnD,OAAO,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,CAAC,UAAU,CAAC,eAAe,CAAC,CAAC;AACnE,CAAC"}
package/dist/migrate.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  import type { Database as NativeDatabase } from '@visorcraft/mongreldb/native.js';
2
- import { KitDatabase } from './db.js';
2
+ import { KitDatabase, type SqlOptions } from './db.js';
3
3
  import type { Schema } from './schema.js';
4
4
  import type { TableSpec, ColumnSpec, IndexSpec, UniqueSpec, ForeignKeySpec } from './types.js';
5
5
  import { type ProcedureSpec } from './procedure.js';
@@ -134,7 +134,10 @@ export interface MigrationContext {
134
134
  createView: (view: ViewSpec) => Promise<void> | void;
135
135
  replaceView: (view: ViewSpec) => Promise<void> | void;
136
136
  dropView: (name: string) => Promise<void> | void;
137
- sql: (sql: string) => Promise<unknown[]> | unknown[];
137
+ sql: (sql: string, options?: SqlOptions) => Promise<unknown[]> | unknown[];
138
+ }
139
+ export interface MigrationOptions {
140
+ sql?: SqlOptions;
138
141
  }
139
142
  /**
140
143
  * The canonical content string a migration's checksum is computed over. Shape:
@@ -149,17 +152,17 @@ export declare function migrationContent(migration: Migration): string;
149
152
  */
150
153
  export declare function migrationChecksum(migration: Migration): string;
151
154
  export declare function migrateSync(kit: KitDatabase, schema: Schema, migrations: Migration[]): void;
152
- export declare function migrate(kit: KitDatabase, schema: Schema, migrations: Migration[]): Promise<void>;
155
+ export declare function migrate(kit: KitDatabase, schema: Schema, migrations: Migration[], options?: MigrationOptions): Promise<void>;
153
156
  export declare function createTable(kit: KitDatabase, table: TableSpec): Promise<void>;
154
- export declare function createVirtualTable(kit: KitDatabase, table: VirtualTableSpec): Promise<void>;
155
- export declare function dropVirtualTable(kit: KitDatabase, name: string): Promise<void>;
157
+ export declare function createVirtualTable(kit: KitDatabase, table: VirtualTableSpec, options?: SqlOptions): Promise<void>;
158
+ export declare function dropVirtualTable(kit: KitDatabase, name: string, options?: SqlOptions): Promise<void>;
156
159
  /** Create (or replace — the engine overwrites) a SQL view. Async-only: runs
157
160
  * `CREATE VIEW` through the kit's SQL surface. */
158
- export declare function createView(kit: KitDatabase, v: ViewSpec): Promise<void>;
161
+ export declare function createView(kit: KitDatabase, v: ViewSpec, options?: SqlOptions): Promise<void>;
159
162
  /** Replace a SQL view (re-issues `CREATE VIEW`; the engine overwrites). */
160
- export declare function replaceView(kit: KitDatabase, v: ViewSpec): Promise<void>;
163
+ export declare function replaceView(kit: KitDatabase, v: ViewSpec, options?: SqlOptions): Promise<void>;
161
164
  /** Drop a SQL view by name. Idempotent (`DROP VIEW IF EXISTS`). */
162
- export declare function dropView(kit: KitDatabase, name: string): Promise<void>;
165
+ export declare function dropView(kit: KitDatabase, name: string, options?: SqlOptions): Promise<void>;
163
166
  /**
164
167
  * Drop `tableName` and remove every unique-key and row guard it owned. The
165
168
  * application row data and its guards are gone after this; the schema catalog is
@@ -1 +1 @@
1
- {"version":3,"file":"migrate.d.ts","sourceRoot":"","sources":["../src/migrate.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"migrate.d.ts","sourceRoot":"","sources":["../src/migrate.ts"],"names":[],"mappings":"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"}
package/dist/migrate.js CHANGED
@@ -1,5 +1,4 @@
1
1
  import { createHash, randomUUID } from 'node:crypto';
2
- import { tableFromIPC } from 'apache-arrow';
3
2
  import { rowFromRowJs } from './rows.js';
4
3
  import { toCells, pkValueFromRow, parentExists } from './constraints.js';
5
4
  import { validateRow } from './validation.js';
@@ -259,10 +258,8 @@ function schemaCatalogJson(schema) {
259
258
  checks: t.checks.map((c) => ({ name: c.name }))
260
259
  })));
261
260
  }
262
- async function runSql(db, sql) {
263
- const ipc = await db.sql(sql);
264
- const arrowTable = tableFromIPC(ipc);
265
- return [...arrowTable].map((row) => ({ ...row }));
261
+ async function runSql(kit, sql, options) {
262
+ return kit.sqlRows(sql, options);
266
263
  }
267
264
  async function acquireLock(kit) {
268
265
  const db = kit.nativeDb;
@@ -342,9 +339,9 @@ async function writeSchemaCatalog(kit, schema) {
342
339
  }
343
340
  function kitVersion() {
344
341
  // Keep in sync with package.json. Avoiding a JSON import keeps the ESM bundle simple.
345
- return '0.52.3';
342
+ return '0.54.0';
346
343
  }
347
- function makeContext(kit) {
344
+ function makeContext(kit, sqlOptions) {
348
345
  return {
349
346
  kit,
350
347
  db: kit.nativeDb,
@@ -363,12 +360,12 @@ function makeContext(kit) {
363
360
  dropTrigger: (name) => {
364
361
  kit.dropTriggerSync(name);
365
362
  },
366
- createVirtualTable: (table) => createVirtualTable(kit, table),
367
- dropVirtualTable: (name) => dropVirtualTable(kit, name),
368
- createView: (v) => createView(kit, v),
369
- replaceView: (v) => replaceView(kit, v),
370
- dropView: (name) => dropView(kit, name),
371
- sql: (sql) => runSql(kit.nativeDb, sql)
363
+ createVirtualTable: (table) => createVirtualTable(kit, table, sqlOptions),
364
+ dropVirtualTable: (name) => dropVirtualTable(kit, name, sqlOptions),
365
+ createView: (v) => createView(kit, v, sqlOptions),
366
+ replaceView: (v) => replaceView(kit, v, sqlOptions),
367
+ dropView: (name) => dropView(kit, name, sqlOptions),
368
+ sql: (sql, options) => runSql(kit, sql, { ...sqlOptions, ...options })
372
369
  };
373
370
  }
374
371
  function acquireLockSync(kit) {
@@ -523,7 +520,7 @@ export function migrateSync(kit, schema, migrations) {
523
520
  releaseLockSync(kit);
524
521
  }
525
522
  }
526
- export async function migrate(kit, schema, migrations) {
523
+ export async function migrate(kit, schema, migrations, options = {}) {
527
524
  await acquireLock(kit);
528
525
  try {
529
526
  migrations = [...migrations].sort((a, b) => a.version - b.version);
@@ -535,7 +532,7 @@ export async function migrate(kit, schema, migrations) {
535
532
  await insertMigrationRecord(kit, migration, 'in_progress');
536
533
  try {
537
534
  await kit.nativeDb.transaction(async () => {
538
- await migration.up(makeContext(kit));
535
+ await migration.up(makeContext(kit, options.sql));
539
536
  });
540
537
  await updateMigrationStatus(kit, migration.version, 'applied');
541
538
  }
@@ -583,24 +580,24 @@ function createTableSync(kit, table) {
583
580
  export async function createTable(kit, table) {
584
581
  createTableSync(kit, table);
585
582
  }
586
- export async function createVirtualTable(kit, table) {
587
- await runSql(kit.nativeDb, createVirtualTableSql(table));
583
+ export async function createVirtualTable(kit, table, options) {
584
+ await runSql(kit, createVirtualTableSql(table), options);
588
585
  }
589
- export async function dropVirtualTable(kit, name) {
590
- await runSql(kit.nativeDb, dropVirtualTableSql(name));
586
+ export async function dropVirtualTable(kit, name, options) {
587
+ await runSql(kit, dropVirtualTableSql(name), options);
591
588
  }
592
589
  /** Create (or replace — the engine overwrites) a SQL view. Async-only: runs
593
590
  * `CREATE VIEW` through the kit's SQL surface. */
594
- export async function createView(kit, v) {
595
- await runSql(kit.nativeDb, createViewSql(v));
591
+ export async function createView(kit, v, options) {
592
+ await runSql(kit, createViewSql(v), options);
596
593
  }
597
594
  /** Replace a SQL view (re-issues `CREATE VIEW`; the engine overwrites). */
598
- export async function replaceView(kit, v) {
599
- await runSql(kit.nativeDb, createViewSql(v));
595
+ export async function replaceView(kit, v, options) {
596
+ await runSql(kit, createViewSql(v), options);
600
597
  }
601
598
  /** Drop a SQL view by name. Idempotent (`DROP VIEW IF EXISTS`). */
602
- export async function dropView(kit, name) {
603
- await runSql(kit.nativeDb, dropViewSql(name));
599
+ export async function dropView(kit, name, options) {
600
+ await runSql(kit, dropViewSql(name), options);
604
601
  }
605
602
  /**
606
603
  * Drop `tableName` and remove every unique-key and row guard it owned. The
@@ -1 +1 @@
1
- {"version":3,"file":"migrate.js","sourceRoot":"","sources":["../src/migrate.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"migrate.js","sourceRoot":"","sources":["../src/migrate.ts"],"names":[],"mappings":"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"}
package/dist/remote.d.ts CHANGED
@@ -1,4 +1,5 @@
1
1
  import { type Table as ArrowTable } from 'apache-arrow';
2
+ import type { SqlOptions, SqlQuery } from './db.js';
2
3
  import { type ProcedureCallOptions, type ProcedureSpec } from './procedure.js';
3
4
  import { type TriggerSpec } from './trigger.js';
4
5
  import { type VirtualTableSpec } from './external.js';
@@ -16,6 +17,8 @@ import { type VirtualTableSpec } from './external.js';
16
17
  */
17
18
  export declare class RemoteDatabase {
18
19
  private readonly inner;
20
+ private readonly url;
21
+ private capabilities?;
19
22
  /** Connect (lazily) to a daemon at `url`, e.g. `http://127.0.0.1:8453`. */
20
23
  constructor(url: string);
21
24
  /** Liveness check; returns the server's health string (throws if down). */
@@ -27,9 +30,13 @@ export declare class RemoteDatabase {
27
30
  setHistoryRetentionEpochs(epochs: bigint): void;
28
31
  historyRetentionEpochs(): bigint;
29
32
  earliestRetainedEpoch(): bigint;
30
- /** Run a SQL query; returns the result as an Arrow (columnar) table. */
31
- sql(sql: string): ArrowTable;
32
- sqlRows(sql: string): Record<string, unknown>[];
33
+ /** Run a SQL query without blocking the Node event loop. */
34
+ sql(sql: string, options?: SqlOptions): Promise<ArrowTable>;
35
+ sqlRows(sql: string, options?: SqlOptions): Promise<Record<string, unknown>[]>;
36
+ startSql(sql: string, options?: SqlOptions): SqlQuery<ArrowTable>;
37
+ cancelSql(queryId: string): Promise<void>;
38
+ private executeSql;
39
+ private requireSqlCancellation;
33
40
  /** Flush/commit `table` on the server; returns the new epoch. */
34
41
  commit(table: string): bigint;
35
42
  createProcedure(spec: ProcedureSpec): unknown;
@@ -40,8 +47,8 @@ export declare class RemoteDatabase {
40
47
  dropTrigger(name: string): void;
41
48
  triggers(): unknown;
42
49
  trigger(name: string): unknown;
43
- createVirtualTable(spec: VirtualTableSpec): ArrowTable;
44
- dropVirtualTable(name: string): ArrowTable;
50
+ createVirtualTable(spec: VirtualTableSpec): Promise<ArrowTable>;
51
+ dropVirtualTable(name: string): Promise<ArrowTable>;
45
52
  /** Compact every table on the daemon (POST /compact). Returns
46
53
  * `{ compacted, skipped }`. */
47
54
  compact(): {
@@ -1 +1 @@
1
- {"version":3,"file":"remote.d.ts","sourceRoot":"","sources":["../src/remote.ts"],"names":[],"mappings":"AACA,OAAO,EAA+B,KAAK,KAAK,IAAI,UAAU,EAAE,MAAM,cAAc,CAAC;AACrF,OAAO,EAAiB,KAAK,oBAAoB,EAAE,KAAK,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAC9F,OAAO,EAAe,KAAK,WAAW,EAAE,MAAM,cAAc,CAAC;AAC7D,OAAO,EAGN,KAAK,gBAAgB,EACrB,MAAM,eAAe,CAAC;AAQvB;;;;;;;;;;;GAWG;AACH,qBAAa,cAAc;IAC1B,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAyC;IAE/D,2EAA2E;gBAC/D,GAAG,EAAE,MAAM;IAIvB,2EAA2E;IAC3E,MAAM,IAAI,MAAM;IAIhB,sCAAsC;IACtC,UAAU,IAAI,MAAM,EAAE;IAItB,4BAA4B;IAC5B,KAAK,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM;IAI5B,yBAAyB,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAI/C,sBAAsB,IAAI,MAAM;IAIhC,qBAAqB,IAAI,MAAM;IAI/B,wEAAwE;IACxE,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,UAAU;IAS5B,OAAO,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE;IAI/C,iEAAiE;IACjE,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM;IAI7B,eAAe,CAAC,IAAI,EAAE,aAAa,GAAG,OAAO;IAI7C,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAIjC,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,GAAE,oBAAyB,GAAG,OAAO;IASrE,aAAa,CAAC,IAAI,EAAE,WAAW,GAAG,OAAO;IAIzC,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,WAAW,GAAG,OAAO;IAIxD,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAI/B,QAAQ,IAAI,OAAO;IAInB,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAI9B,kBAAkB,CAAC,IAAI,EAAE,gBAAgB,GAAG,UAAU;IAItD,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,UAAU;IAI1C;mCAC+B;IAC/B,OAAO,IAAI;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE;IAIjD;0DACsD;IACtD,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO;CAGpC"}
1
+ {"version":3,"file":"remote.d.ts","sourceRoot":"","sources":["../src/remote.ts"],"names":[],"mappings":"AACA,OAAO,EAA+B,KAAK,KAAK,IAAI,UAAU,EAAE,MAAM,cAAc,CAAC;AAErF,OAAO,KAAK,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AASpD,OAAO,EAAiB,KAAK,oBAAoB,EAAE,KAAK,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAC9F,OAAO,EAAe,KAAK,WAAW,EAAE,MAAM,cAAc,CAAC;AAC7D,OAAO,EAGN,KAAK,gBAAgB,EACrB,MAAM,eAAe,CAAC;AAQvB;;;;;;;;;;;GAWG;AACH,qBAAa,cAAc;IAC1B,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAyC;IAC/D,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAS;IAC7B,OAAO,CAAC,YAAY,CAAC,CAA8C;IAEnE,2EAA2E;gBAC/D,GAAG,EAAE,MAAM;IAKvB,2EAA2E;IAC3E,MAAM,IAAI,MAAM;IAIhB,sCAAsC;IACtC,UAAU,IAAI,MAAM,EAAE;IAItB,4BAA4B;IAC5B,KAAK,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM;IAI5B,yBAAyB,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAI/C,sBAAsB,IAAI,MAAM;IAIhC,qBAAqB,IAAI,MAAM;IAI/B,4DAA4D;IACtD,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC;IAO3D,OAAO,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,UAAU,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC;IAIpF,QAAQ,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,GAAE,UAAe,GAAG,QAAQ,CAAC,UAAU,CAAC;IAsC/D,SAAS,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;YAOjC,UAAU;YAsBV,sBAAsB;IAcpC,iEAAiE;IACjE,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM;IAI7B,eAAe,CAAC,IAAI,EAAE,aAAa,GAAG,OAAO;IAI7C,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAIjC,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,GAAE,oBAAyB,GAAG,OAAO;IASrE,aAAa,CAAC,IAAI,EAAE,WAAW,GAAG,OAAO;IAIzC,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,WAAW,GAAG,OAAO;IAIxD,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAI/B,QAAQ,IAAI,OAAO;IAInB,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAI9B,kBAAkB,CAAC,IAAI,EAAE,gBAAgB,GAAG,OAAO,CAAC,UAAU,CAAC;IAI/D,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC;IAInD;mCAC+B;IAC/B,OAAO,IAAI;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE;IAIjD;0DACsD;IACtD,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO;CAGpC"}
package/dist/remote.js CHANGED
@@ -1,5 +1,7 @@
1
1
  import { RemoteDatabase as NativeRemoteDatabase } from '@visorcraft/mongreldb/native.js';
2
2
  import { tableFromIPC, tableFromJSON } from 'apache-arrow';
3
+ import { randomBytes } from 'node:crypto';
4
+ import { KitError, KitUnsupportedError, QueryCancelledError, QueryIdConflictError, QueryTimeoutError, TransactionAbortedError } from './errors.js';
3
5
  import { procedureJson } from './procedure.js';
4
6
  import { triggerJson } from './trigger.js';
5
7
  import { createVirtualTableSql, dropVirtualTableSql } from './external.js';
@@ -17,9 +19,12 @@ import { createVirtualTableSql, dropVirtualTableSql } from './external.js';
17
19
  */
18
20
  export class RemoteDatabase {
19
21
  inner;
22
+ url;
23
+ capabilities;
20
24
  /** Connect (lazily) to a daemon at `url`, e.g. `http://127.0.0.1:8453`. */
21
25
  constructor(url) {
22
- this.inner = new NativeRemoteDatabase(url);
26
+ this.url = url.replace(/\/$/, '');
27
+ this.inner = new NativeRemoteDatabase(this.url);
23
28
  }
24
29
  /** Liveness check; returns the server's health string (throws if down). */
25
30
  health() {
@@ -42,17 +47,90 @@ export class RemoteDatabase {
42
47
  earliestRetainedEpoch() {
43
48
  return this.inner.earliestRetainedEpoch();
44
49
  }
45
- /** Run a SQL query; returns the result as an Arrow (columnar) table. */
46
- sql(sql) {
47
- const bytes = this.inner.sql(sql);
48
- // DDL/DML commands return an empty body; produce an empty Arrow table.
50
+ /** Run a SQL query without blocking the Node event loop. */
51
+ async sql(sql, options) {
52
+ if (options?.timeoutMs !== undefined || options?.signal !== undefined || options?.queryId !== undefined) {
53
+ return this.startSql(sql, options).result;
54
+ }
55
+ return this.executeSql(sql);
56
+ }
57
+ async sqlRows(sql, options) {
58
+ return [...(await this.sql(sql, options))].map((row) => ({ ...row }));
59
+ }
60
+ startSql(sql, options = {}) {
61
+ const queryId = options.queryId ?? randomBytes(16).toString('hex');
62
+ if (options.timeoutMs !== undefined && (!Number.isSafeInteger(options.timeoutMs) || options.timeoutMs <= 0)) {
63
+ throw new RangeError('timeoutMs must be a positive safe integer');
64
+ }
65
+ if (options.signal?.aborted) {
66
+ return {
67
+ id: queryId,
68
+ result: Promise.reject(new QueryCancelledError(queryId)),
69
+ cancel: async () => { }
70
+ };
71
+ }
72
+ const controller = new AbortController();
73
+ let cancelled = false;
74
+ const cancel = async () => {
75
+ if (cancelled)
76
+ return;
77
+ cancelled = true;
78
+ const request = this.cancelSql(queryId);
79
+ controller.abort();
80
+ await request;
81
+ };
82
+ const onAbort = () => {
83
+ void cancel();
84
+ };
85
+ options.signal?.addEventListener('abort', onAbort, { once: true });
86
+ const result = this.requireSqlCancellation()
87
+ .then(() => this.executeSql(sql, queryId, options.timeoutMs, controller.signal))
88
+ .catch((error) => {
89
+ if (cancelled || options.signal?.aborted) {
90
+ throw new QueryCancelledError(queryId);
91
+ }
92
+ throw error;
93
+ })
94
+ .finally(() => options.signal?.removeEventListener('abort', onAbort));
95
+ return { id: queryId, result, cancel };
96
+ }
97
+ async cancelSql(queryId) {
98
+ await this.requireSqlCancellation();
99
+ const response = await fetch(`${this.url}/queries/${queryId}/cancel`, { method: 'POST' });
100
+ if (response.ok || response.status === 409 || response.status === 404)
101
+ return;
102
+ throw new KitError(`SQL cancellation failed with HTTP ${response.status}`);
103
+ }
104
+ async executeSql(sql, queryId, timeoutMs, signal) {
105
+ const response = await fetch(`${this.url}/sql`, {
106
+ method: 'POST',
107
+ headers: { 'content-type': 'application/json' },
108
+ body: JSON.stringify({ sql, format: 'arrow', query_id: queryId, timeout_ms: timeoutMs }),
109
+ signal
110
+ });
111
+ if (!response.ok) {
112
+ throw await remoteSqlError(response, queryId ?? 'unknown');
113
+ }
114
+ const bytes = new Uint8Array(await response.arrayBuffer());
49
115
  if (bytes.length === 0) {
50
116
  return tableFromJSON([]);
51
117
  }
52
118
  return tableFromIPC(bytes);
53
119
  }
54
- sqlRows(sql) {
55
- return [...this.sql(sql)].map((row) => ({ ...row }));
120
+ async requireSqlCancellation() {
121
+ this.capabilities ??= fetch(`${this.url}/capabilities`).then(async (response) => {
122
+ if (response.status === 404)
123
+ return null;
124
+ if (!response.ok)
125
+ throw new KitError(`capability request failed with HTTP ${response.status}`);
126
+ const body = await response.json();
127
+ return body.sql_cancellation ?? null;
128
+ });
129
+ const capability = await this.capabilities;
130
+ if (capability?.version !== 1 || !capability.client_query_ids || !capability.cancel_endpoint) {
131
+ throw new KitUnsupportedError('server does not support SQL cancellation capability version 1');
132
+ }
133
+ return capability;
56
134
  }
57
135
  /** Flush/commit `table` on the server; returns the new epoch. */
58
136
  commit(table) {
@@ -102,4 +180,27 @@ export class RemoteDatabase {
102
180
  return this.inner.compactTable(table);
103
181
  }
104
182
  }
183
+ async function remoteSqlError(response, fallbackQueryId) {
184
+ let body = {};
185
+ try {
186
+ body = await response.json();
187
+ }
188
+ catch {
189
+ return new KitError(`SQL request failed with HTTP ${response.status}`);
190
+ }
191
+ const queryId = body.error?.query_id ?? fallbackQueryId;
192
+ const message = body.error?.message;
193
+ switch (body.error?.code) {
194
+ case 'QUERY_CANCELLED':
195
+ return new QueryCancelledError(queryId, message);
196
+ case 'DEADLINE_EXCEEDED':
197
+ return new QueryTimeoutError(queryId, message);
198
+ case 'QUERY_ID_CONFLICT':
199
+ return new QueryIdConflictError(queryId, message);
200
+ case 'TRANSACTION_ABORTED':
201
+ return new TransactionAbortedError(message);
202
+ default:
203
+ return new KitError(message ?? `SQL request failed with HTTP ${response.status}`);
204
+ }
205
+ }
105
206
  //# sourceMappingURL=remote.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"remote.js","sourceRoot":"","sources":["../src/remote.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"remote.js","sourceRoot":"","sources":["../src/remote.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@visorcraft/mongreldb-kit",
3
- "version": "0.52.3",
3
+ "version": "0.54.0",
4
4
  "description": "Application persistence layer for MongrelDB: schema DSL, typed query builder, migrations, and relational constraints (unique, foreign keys, cascade/set-null/restrict).",
5
5
  "license": "MIT OR Apache-2.0",
6
6
  "type": "module",
@@ -47,7 +47,7 @@
47
47
  "apache-arrow": "^21.1.0"
48
48
  },
49
49
  "peerDependencies": {
50
- "@visorcraft/mongreldb": "^0.52.3"
50
+ "@visorcraft/mongreldb": "^0.55.0"
51
51
  },
52
52
  "devDependencies": {
53
53
  "@types/node": "^22.0.0",