flatsql 3.11.1 → 3.12.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.
Files changed (181) hide show
  1. package/README.md +61 -795
  2. package/bin/flatsql.mjs +76 -0
  3. package/cpp/README.md +18 -0
  4. package/cpp/include/flatsql/flatsql.h +162 -0
  5. package/cpp/include/flatsql/flatsql_io.h +159 -0
  6. package/docs/API-3.12.md +114 -0
  7. package/package.json +28 -123
  8. package/wasm/flatsql.wasm +0 -0
  9. package/wasm/index.d.ts +61 -548
  10. package/wasm/index.js +280 -1281
  11. package/wasm/integrity.json +6 -26
  12. package/wasm/runtime/LICENSE.sdk.txt +190 -0
  13. package/wasm/runtime/NOTICE.txt +2 -0
  14. package/wasm/runtime/browser-guest.mjs +1 -0
  15. package/wasm/runtime/browser-host.mjs +1 -0
  16. package/wasm/runtime/node-guest.mjs +2 -0
  17. package/wasm/runtime/node-host.mjs +5 -0
  18. package/wasm/runtime/opfsIoWorker.mjs +1 -0
  19. package/wasm/runtime/wasiThreadBrowserWorker.mjs +1 -0
  20. package/dist/artifacts/index.d.ts +0 -3
  21. package/dist/artifacts/index.d.ts.map +0 -1
  22. package/dist/artifacts/index.js +0 -3
  23. package/dist/artifacts/index.js.map +0 -1
  24. package/dist/artifacts/transport.d.ts +0 -5
  25. package/dist/artifacts/transport.d.ts.map +0 -1
  26. package/dist/artifacts/transport.js +0 -45
  27. package/dist/artifacts/transport.js.map +0 -1
  28. package/dist/artifacts/types.d.ts +0 -34
  29. package/dist/artifacts/types.d.ts.map +0 -1
  30. package/dist/artifacts/types.js +0 -2
  31. package/dist/artifacts/types.js.map +0 -1
  32. package/dist/btree/btree.d.ts +0 -34
  33. package/dist/btree/btree.d.ts.map +0 -1
  34. package/dist/btree/btree.js +0 -234
  35. package/dist/btree/btree.js.map +0 -1
  36. package/dist/btree/index.d.ts +0 -3
  37. package/dist/btree/index.d.ts.map +0 -1
  38. package/dist/btree/index.js +0 -3
  39. package/dist/btree/index.js.map +0 -1
  40. package/dist/btree/types.d.ts +0 -36
  41. package/dist/btree/types.d.ts.map +0 -1
  42. package/dist/btree/types.js +0 -55
  43. package/dist/btree/types.js.map +0 -1
  44. package/dist/cluster/index.d.ts +0 -11
  45. package/dist/cluster/index.d.ts.map +0 -1
  46. package/dist/cluster/index.js +0 -59
  47. package/dist/cluster/index.js.map +0 -1
  48. package/dist/response/artifact.d.ts +0 -4
  49. package/dist/response/artifact.d.ts.map +0 -1
  50. package/dist/response/artifact.js +0 -102
  51. package/dist/response/artifact.js.map +0 -1
  52. package/dist/response/cache-key.d.ts +0 -6
  53. package/dist/response/cache-key.d.ts.map +0 -1
  54. package/dist/response/cache-key.js +0 -114
  55. package/dist/response/cache-key.js.map +0 -1
  56. package/dist/response/index.d.ts +0 -5
  57. package/dist/response/index.d.ts.map +0 -1
  58. package/dist/response/index.js +0 -5
  59. package/dist/response/index.js.map +0 -1
  60. package/dist/response/memory-cache.d.ts +0 -17
  61. package/dist/response/memory-cache.d.ts.map +0 -1
  62. package/dist/response/memory-cache.js +0 -76
  63. package/dist/response/memory-cache.js.map +0 -1
  64. package/dist/response/types.d.ts +0 -57
  65. package/dist/response/types.d.ts.map +0 -1
  66. package/dist/response/types.js +0 -2
  67. package/dist/response/types.js.map +0 -1
  68. package/dist/schema/index.d.ts +0 -3
  69. package/dist/schema/index.d.ts.map +0 -1
  70. package/dist/schema/index.js +0 -3
  71. package/dist/schema/index.js.map +0 -1
  72. package/dist/schema/parser.d.ts +0 -25
  73. package/dist/schema/parser.d.ts.map +0 -1
  74. package/dist/schema/parser.js +0 -474
  75. package/dist/schema/parser.js.map +0 -1
  76. package/dist/schema/types.d.ts +0 -33
  77. package/dist/schema/types.d.ts.map +0 -1
  78. package/dist/schema/types.js +0 -29
  79. package/dist/schema/types.js.map +0 -1
  80. package/dist/standalone/index.d.ts +0 -3
  81. package/dist/standalone/index.d.ts.map +0 -1
  82. package/dist/standalone/index.js +0 -3
  83. package/dist/standalone/index.js.map +0 -1
  84. package/dist/standalone/process-client.d.ts +0 -85
  85. package/dist/standalone/process-client.d.ts.map +0 -1
  86. package/dist/standalone/process-client.js +0 -537
  87. package/dist/standalone/process-client.js.map +0 -1
  88. package/dist/standalone/wasmedge-runner.d.ts +0 -19
  89. package/dist/standalone/wasmedge-runner.d.ts.map +0 -1
  90. package/dist/standalone/wasmedge-runner.js +0 -108
  91. package/dist/standalone/wasmedge-runner.js.map +0 -1
  92. package/dist/storage/index.d.ts +0 -3
  93. package/dist/storage/index.d.ts.map +0 -1
  94. package/dist/storage/index.js +0 -3
  95. package/dist/storage/index.js.map +0 -1
  96. package/dist/storage/stacked-flatbuffers.d.ts +0 -38
  97. package/dist/storage/stacked-flatbuffers.d.ts.map +0 -1
  98. package/dist/storage/stacked-flatbuffers.js +0 -253
  99. package/dist/storage/stacked-flatbuffers.js.map +0 -1
  100. package/dist/storage/types.d.ts +0 -23
  101. package/dist/storage/types.d.ts.map +0 -1
  102. package/dist/storage/types.js +0 -27
  103. package/dist/storage/types.js.map +0 -1
  104. package/dist/stress/aggregate.d.ts +0 -3
  105. package/dist/stress/aggregate.d.ts.map +0 -1
  106. package/dist/stress/aggregate.js +0 -61
  107. package/dist/stress/aggregate.js.map +0 -1
  108. package/dist/stress/docker-compose.d.ts +0 -17
  109. package/dist/stress/docker-compose.d.ts.map +0 -1
  110. package/dist/stress/docker-compose.js +0 -156
  111. package/dist/stress/docker-compose.js.map +0 -1
  112. package/dist/stress/index.d.ts +0 -10
  113. package/dist/stress/index.d.ts.map +0 -1
  114. package/dist/stress/index.js +0 -10
  115. package/dist/stress/index.js.map +0 -1
  116. package/dist/stress/metrics.d.ts +0 -3
  117. package/dist/stress/metrics.d.ts.map +0 -1
  118. package/dist/stress/metrics.js +0 -83
  119. package/dist/stress/metrics.js.map +0 -1
  120. package/dist/stress/native-publish-event-workload.d.ts +0 -3
  121. package/dist/stress/native-publish-event-workload.d.ts.map +0 -1
  122. package/dist/stress/native-publish-event-workload.js +0 -465
  123. package/dist/stress/native-publish-event-workload.js.map +0 -1
  124. package/dist/stress/production-gate.d.ts +0 -4
  125. package/dist/stress/production-gate.d.ts.map +0 -1
  126. package/dist/stress/production-gate.js +0 -12
  127. package/dist/stress/production-gate.js.map +0 -1
  128. package/dist/stress/report.d.ts +0 -3
  129. package/dist/stress/report.d.ts.map +0 -1
  130. package/dist/stress/report.js +0 -174
  131. package/dist/stress/report.js.map +0 -1
  132. package/dist/stress/sds-discovery.d.ts +0 -4
  133. package/dist/stress/sds-discovery.d.ts.map +0 -1
  134. package/dist/stress/sds-discovery.js +0 -40
  135. package/dist/stress/sds-discovery.js.map +0 -1
  136. package/dist/stress/smoke-runner.d.ts +0 -3
  137. package/dist/stress/smoke-runner.d.ts.map +0 -1
  138. package/dist/stress/smoke-runner.js +0 -64
  139. package/dist/stress/smoke-runner.js.map +0 -1
  140. package/dist/stress/types.d.ts +0 -219
  141. package/dist/stress/types.d.ts.map +0 -1
  142. package/dist/stress/types.js +0 -2
  143. package/dist/stress/types.js.map +0 -1
  144. package/dist/stress/workload.d.ts +0 -6
  145. package/dist/stress/workload.d.ts.map +0 -1
  146. package/dist/stress/workload.js +0 -144
  147. package/dist/stress/workload.js.map +0 -1
  148. package/docs/PARTITION-STORE-WASM.md +0 -338
  149. package/docs/PARTITION-STORE.md +0 -2380
  150. package/docs/agents/response-artifacts.md +0 -65
  151. package/docs/response-artifacts.md +0 -86
  152. package/scripts/stress-docker.sh +0 -279
  153. package/sdm/flatsql-spatial.wasm +0 -0
  154. package/sdm/index.d.ts +0 -88
  155. package/sdm/index.js +0 -253
  156. package/sdm/manifest.json +0 -402
  157. package/stress/docker/Dockerfile +0 -11
  158. package/stress/docker/docker-compose.yml +0 -51
  159. package/stress/sds/aggregate.mjs +0 -97
  160. package/stress/sds/run.mjs +0 -105
  161. package/stress/sds/write-compose.mjs +0 -96
  162. package/wasm/flatsql-client.js +0 -280
  163. package/wasm/flatsql-io.d.ts +0 -97
  164. package/wasm/flatsql-io.js +0 -625
  165. package/wasm/flatsql-p4-threads.wasm +0 -0
  166. package/wasm/flatsql-ps-threads.wasm +0 -0
  167. package/wasm/flatsql-wasi-noeh.wasm +0 -0
  168. package/wasm/flatsql-wasi.wasm +0 -0
  169. package/wasm/flatsql.js +0 -2
  170. package/wasm/flatsql.worker.js +0 -209
  171. package/wasm/native/flatsql_wasmedge_runner.cpp +0 -858
  172. package/wasm/ps-node-fault.d.mts +0 -23
  173. package/wasm/ps-node-fault.mjs +0 -381
  174. package/wasm/ps-node-guest.mjs +0 -173
  175. package/wasm/ps-node-host.d.mts +0 -95
  176. package/wasm/ps-node-host.mjs +0 -476
  177. package/wasm/ps-node-imports.mjs +0 -847
  178. package/wasm/ps.d.ts +0 -21
  179. package/wasm/ps.js +0 -75
  180. package/wasm/wasi.d.ts +0 -11
  181. package/wasm/wasi.js +0 -51
@@ -1,102 +0,0 @@
1
- import { sizePrefixedByteLength, writeSizePrefixedStream } from '../artifacts/transport.js';
2
- import { createResponseCacheKey, hashBytes } from './cache-key.js';
3
- const DEFAULT_CHUNK_BYTES = 1024 * 1024;
4
- const TEXT_ENCODER = new TextEncoder();
5
- function jsonSafeValue(value) {
6
- if (value instanceof Uint8Array) {
7
- return Array.from(value);
8
- }
9
- if (typeof value === 'bigint') {
10
- return value.toString();
11
- }
12
- if (Array.isArray(value)) {
13
- return value.map((item) => jsonSafeValue(item));
14
- }
15
- if (value && typeof value === 'object') {
16
- return Object.fromEntries(Object.entries(value).map(([key, item]) => [key, jsonSafeValue(item)]));
17
- }
18
- return value;
19
- }
20
- function encodeJsonResult(result) {
21
- return TEXT_ENCODER.encode(JSON.stringify({
22
- columns: result.columns,
23
- rows: jsonSafeValue(result.rows),
24
- rowCount: result.rowCount,
25
- }));
26
- }
27
- function extractRawFlatBuffers(result) {
28
- const buffers = [];
29
- for (const row of result.rows) {
30
- for (const cell of row) {
31
- if (!(cell instanceof Uint8Array)) {
32
- throw new Error('raw-flatbuffer-stream artifacts require Uint8Array result cells');
33
- }
34
- buffers.push(cell);
35
- }
36
- }
37
- return buffers;
38
- }
39
- function encodeRawFlatBufferStream(result) {
40
- const buffers = extractRawFlatBuffers(result);
41
- const bytes = new Uint8Array(sizePrefixedByteLength(buffers));
42
- writeSizePrefixedStream(bytes, buffers);
43
- return bytes;
44
- }
45
- function encodeResult(result, format) {
46
- if (format === 'raw-flatbuffer-stream') {
47
- return encodeRawFlatBufferStream(result);
48
- }
49
- return encodeJsonResult(result);
50
- }
51
- function createChunks(bytes, chunkBytes) {
52
- const chunks = [];
53
- for (let offset = 0; offset < bytes.byteLength; offset += chunkBytes) {
54
- const chunk = bytes.subarray(offset, Math.min(offset + chunkBytes, bytes.byteLength));
55
- const contentHash = hashBytes(chunk);
56
- chunks.push({
57
- index: chunks.length,
58
- offset,
59
- byteLength: chunk.byteLength,
60
- contentHash,
61
- etag: `"${contentHash}"`,
62
- });
63
- }
64
- return chunks;
65
- }
66
- export function createQueryResponseArtifact(result, options) {
67
- const format = options.format ?? 'json';
68
- const chunkBytes = options.chunkBytes ?? DEFAULT_CHUNK_BYTES;
69
- if (!Number.isSafeInteger(chunkBytes) || chunkBytes <= 0) {
70
- throw new Error(`chunkBytes must be a positive safe integer, received: ${chunkBytes}`);
71
- }
72
- const bytes = encodeResult(result, format);
73
- const contentHash = hashBytes(bytes);
74
- return {
75
- metadata: {
76
- cacheKey: options.cacheKey ?? createResponseCacheKey(options),
77
- contentHash,
78
- etag: `"${contentHash}"`,
79
- byteLength: bytes.byteLength,
80
- rowCount: result.rowCount,
81
- columnCount: result.columns.length,
82
- format,
83
- encoding: options.encoding ?? 'identity',
84
- createdAt: options.createdAt ?? new Date().toISOString(),
85
- chunkBytes,
86
- chunks: createChunks(bytes, chunkBytes),
87
- schemaName: options.schemaName,
88
- schemaVersion: options.schemaVersion,
89
- publishEventKey: options.publishEventKey,
90
- projection: options.projection,
91
- },
92
- bytes,
93
- };
94
- }
95
- export function getResponseArtifactChunk(artifact, index) {
96
- const chunk = artifact.metadata.chunks[index];
97
- if (!chunk) {
98
- throw new Error(`Response artifact chunk not found: ${index}`);
99
- }
100
- return artifact.bytes.subarray(chunk.offset, chunk.offset + chunk.byteLength);
101
- }
102
- //# sourceMappingURL=artifact.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"artifact.js","sourceRoot":"","sources":["../../src/response/artifact.ts"],"names":[],"mappings":"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"}
@@ -1,6 +0,0 @@
1
- import type { ResponseCacheKeyInput } from './types.js';
2
- export declare function stableStringify(value: unknown): string;
3
- export declare function hashBytes(bytes: Uint8Array): string;
4
- export declare function hashString(value: string): string;
5
- export declare function createResponseCacheKey(input: ResponseCacheKeyInput): string;
6
- //# sourceMappingURL=cache-key.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"cache-key.d.ts","sourceRoot":"","sources":["../../src/response/cache-key.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAC;AAyExD,wBAAgB,eAAe,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAEtD;AAED,wBAAgB,SAAS,CAAC,KAAK,EAAE,UAAU,GAAG,MAAM,CAsEnD;AAED,wBAAgB,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAEhD;AAED,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,qBAAqB,GAAG,MAAM,CAa3E"}
@@ -1,114 +0,0 @@
1
- const SHA256_INITIAL = Uint32Array.of(0x6a09e667, 0xbb67ae85, 0x3c6ef372, 0xa54ff53a, 0x510e527f, 0x9b05688c, 0x1f83d9ab, 0x5be0cd19);
2
- const SHA256_K = Uint32Array.of(0x428a2f98, 0x71374491, 0xb5c0fbcf, 0xe9b5dba5, 0x3956c25b, 0x59f111f1, 0x923f82a4, 0xab1c5ed5, 0xd807aa98, 0x12835b01, 0x243185be, 0x550c7dc3, 0x72be5d74, 0x80deb1fe, 0x9bdc06a7, 0xc19bf174, 0xe49b69c1, 0xefbe4786, 0x0fc19dc6, 0x240ca1cc, 0x2de92c6f, 0x4a7484aa, 0x5cb0a9dc, 0x76f988da, 0x983e5152, 0xa831c66d, 0xb00327c8, 0xbf597fc7, 0xc6e00bf3, 0xd5a79147, 0x06ca6351, 0x14292967, 0x27b70a85, 0x2e1b2138, 0x4d2c6dfc, 0x53380d13, 0x650a7354, 0x766a0abb, 0x81c2c92e, 0x92722c85, 0xa2bfe8a1, 0xa81a664b, 0xc24b8b70, 0xc76c51a3, 0xd192e819, 0xd6990624, 0xf40e3585, 0x106aa070, 0x19a4c116, 0x1e376c08, 0x2748774c, 0x34b0bcb5, 0x391c0cb3, 0x4ed8aa4a, 0x5b9cca4f, 0x682e6ff3, 0x748f82ee, 0x78a5636f, 0x84c87814, 0x8cc70208, 0x90befffa, 0xa4506ceb, 0xbef9a3f7, 0xc67178f2);
3
- function rotr(value, shift) {
4
- return (value >>> shift) | (value << (32 - shift));
5
- }
6
- function toHex32(value) {
7
- return (value >>> 0).toString(16).padStart(8, '0');
8
- }
9
- function normalizeSql(sql) {
10
- return sql.trim().replace(/\s+/g, ' ');
11
- }
12
- function stableValue(value) {
13
- if (value instanceof Uint8Array) {
14
- return {
15
- type: 'Uint8Array',
16
- sha256: hashBytes(value),
17
- byteLength: value.byteLength,
18
- };
19
- }
20
- if (typeof value === 'bigint') {
21
- return value.toString();
22
- }
23
- if (Array.isArray(value)) {
24
- return value.map((item) => stableValue(item));
25
- }
26
- if (value && typeof value === 'object') {
27
- const object = value;
28
- return Object.fromEntries(Object.keys(object)
29
- .sort()
30
- .map((key) => [key, stableValue(object[key])]));
31
- }
32
- return value;
33
- }
34
- export function stableStringify(value) {
35
- return JSON.stringify(stableValue(value));
36
- }
37
- export function hashBytes(bytes) {
38
- const paddedLength = Math.ceil((bytes.byteLength + 9) / 64) * 64;
39
- const padded = new Uint8Array(paddedLength);
40
- padded.set(bytes);
41
- padded[bytes.byteLength] = 0x80;
42
- let bitLength = BigInt(bytes.byteLength) * 8n;
43
- for (let index = 0; index < 8; index++) {
44
- padded[paddedLength - 1 - index] = Number(bitLength & 0xffn);
45
- bitLength >>= 8n;
46
- }
47
- const hash = new Uint32Array(SHA256_INITIAL);
48
- const schedule = new Uint32Array(64);
49
- for (let offset = 0; offset < padded.byteLength; offset += 64) {
50
- for (let index = 0; index < 16; index++) {
51
- const base = offset + index * 4;
52
- schedule[index] = ((padded[base] << 24) |
53
- (padded[base + 1] << 16) |
54
- (padded[base + 2] << 8) |
55
- padded[base + 3]) >>> 0;
56
- }
57
- for (let index = 16; index < 64; index++) {
58
- const s0 = (rotr(schedule[index - 15], 7) ^ rotr(schedule[index - 15], 18) ^ (schedule[index - 15] >>> 3)) >>> 0;
59
- const s1 = (rotr(schedule[index - 2], 17) ^ rotr(schedule[index - 2], 19) ^ (schedule[index - 2] >>> 10)) >>> 0;
60
- schedule[index] = (schedule[index - 16] + s0 + schedule[index - 7] + s1) >>> 0;
61
- }
62
- let a = hash[0];
63
- let b = hash[1];
64
- let c = hash[2];
65
- let d = hash[3];
66
- let e = hash[4];
67
- let f = hash[5];
68
- let g = hash[6];
69
- let h = hash[7];
70
- for (let index = 0; index < 64; index++) {
71
- const s1 = (rotr(e, 6) ^ rotr(e, 11) ^ rotr(e, 25)) >>> 0;
72
- const ch = ((e & f) ^ (~e & g)) >>> 0;
73
- const temp1 = (h + s1 + ch + SHA256_K[index] + schedule[index]) >>> 0;
74
- const s0 = (rotr(a, 2) ^ rotr(a, 13) ^ rotr(a, 22)) >>> 0;
75
- const maj = ((a & b) ^ (a & c) ^ (b & c)) >>> 0;
76
- const temp2 = (s0 + maj) >>> 0;
77
- h = g;
78
- g = f;
79
- f = e;
80
- e = (d + temp1) >>> 0;
81
- d = c;
82
- c = b;
83
- b = a;
84
- a = (temp1 + temp2) >>> 0;
85
- }
86
- hash[0] = (hash[0] + a) >>> 0;
87
- hash[1] = (hash[1] + b) >>> 0;
88
- hash[2] = (hash[2] + c) >>> 0;
89
- hash[3] = (hash[3] + d) >>> 0;
90
- hash[4] = (hash[4] + e) >>> 0;
91
- hash[5] = (hash[5] + f) >>> 0;
92
- hash[6] = (hash[6] + g) >>> 0;
93
- hash[7] = (hash[7] + h) >>> 0;
94
- }
95
- return `sha256:${Array.from(hash, toHex32).join('')}`;
96
- }
97
- export function hashString(value) {
98
- return hashBytes(new TextEncoder().encode(value));
99
- }
100
- export function createResponseCacheKey(input) {
101
- const canonical = {
102
- encoding: input.encoding ?? 'identity',
103
- filters: input.filters ?? {},
104
- format: input.format ?? 'json',
105
- params: input.params ?? [],
106
- projection: input.projection ?? [],
107
- publishEventKey: input.publishEventKey ?? null,
108
- schemaName: input.schemaName ?? null,
109
- schemaVersion: input.schemaVersion ?? null,
110
- sql: normalizeSql(input.sql),
111
- };
112
- return `flatsql:v1:${hashString(stableStringify(canonical))}`;
113
- }
114
- //# sourceMappingURL=cache-key.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"cache-key.js","sourceRoot":"","sources":["../../src/response/cache-key.ts"],"names":[],"mappings":"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"}
@@ -1,5 +0,0 @@
1
- export * from './artifact.js';
2
- export * from './cache-key.js';
3
- export * from './memory-cache.js';
4
- export * from './types.js';
5
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/response/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC;AAC9B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,mBAAmB,CAAC;AAClC,cAAc,YAAY,CAAC"}
@@ -1,5 +0,0 @@
1
- export * from './artifact.js';
2
- export * from './cache-key.js';
3
- export * from './memory-cache.js';
4
- export * from './types.js';
5
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/response/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC;AAC9B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,mBAAmB,CAAC;AAClC,cAAc,YAAY,CAAC"}
@@ -1,17 +0,0 @@
1
- import type { MemoryResponseArtifactCacheOptions, QueryResponseArtifact, ResponseCacheKeyInput } from './types.js';
2
- export declare class MemoryResponseArtifactCache {
3
- private artifacts;
4
- private totalBytes;
5
- private maxEntries;
6
- private maxBytes;
7
- constructor(options?: MemoryResponseArtifactCacheOptions);
8
- get size(): number;
9
- get byteLength(): number;
10
- get(cacheKey: string): QueryResponseArtifact | undefined;
11
- set(artifact: QueryResponseArtifact): void;
12
- getOrCreate(input: ResponseCacheKeyInput, factory: () => QueryResponseArtifact): QueryResponseArtifact;
13
- getOrCreateByKey(cacheKey: string, factory: () => QueryResponseArtifact): QueryResponseArtifact;
14
- clear(): void;
15
- private evict;
16
- }
17
- //# sourceMappingURL=memory-cache.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"memory-cache.d.ts","sourceRoot":"","sources":["../../src/response/memory-cache.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,kCAAkC,EAClC,qBAAqB,EACrB,qBAAqB,EACtB,MAAM,YAAY,CAAC;AAKpB,qBAAa,2BAA2B;IACtC,OAAO,CAAC,SAAS,CAA4C;IAC7D,OAAO,CAAC,UAAU,CAAK;IACvB,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,QAAQ,CAAS;gBAEb,OAAO,GAAE,kCAAuC;IAW5D,IAAI,IAAI,IAAI,MAAM,CAEjB;IAED,IAAI,UAAU,IAAI,MAAM,CAEvB;IAED,GAAG,CAAC,QAAQ,EAAE,MAAM,GAAG,qBAAqB,GAAG,SAAS;IAWxD,GAAG,CAAC,QAAQ,EAAE,qBAAqB,GAAG,IAAI;IAY1C,WAAW,CACT,KAAK,EAAE,qBAAqB,EAC5B,OAAO,EAAE,MAAM,qBAAqB,GACnC,qBAAqB;IAKxB,gBAAgB,CACd,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,MAAM,qBAAqB,GACnC,qBAAqB;IAcxB,KAAK,IAAI,IAAI;IAKb,OAAO,CAAC,KAAK;CAWd"}
@@ -1,76 +0,0 @@
1
- import { createResponseCacheKey } from './cache-key.js';
2
- const DEFAULT_MAX_ENTRIES = 1024;
3
- const DEFAULT_MAX_BYTES = 256 * 1024 * 1024;
4
- export class MemoryResponseArtifactCache {
5
- artifacts = new Map();
6
- totalBytes = 0;
7
- maxEntries;
8
- maxBytes;
9
- constructor(options = {}) {
10
- this.maxEntries = options.maxEntries ?? DEFAULT_MAX_ENTRIES;
11
- this.maxBytes = options.maxBytes ?? DEFAULT_MAX_BYTES;
12
- if (!Number.isSafeInteger(this.maxEntries) || this.maxEntries <= 0) {
13
- throw new Error(`maxEntries must be a positive safe integer, received: ${this.maxEntries}`);
14
- }
15
- if (!Number.isSafeInteger(this.maxBytes) || this.maxBytes <= 0) {
16
- throw new Error(`maxBytes must be a positive safe integer, received: ${this.maxBytes}`);
17
- }
18
- }
19
- get size() {
20
- return this.artifacts.size;
21
- }
22
- get byteLength() {
23
- return this.totalBytes;
24
- }
25
- get(cacheKey) {
26
- const artifact = this.artifacts.get(cacheKey);
27
- if (!artifact) {
28
- return undefined;
29
- }
30
- this.artifacts.delete(cacheKey);
31
- this.artifacts.set(cacheKey, artifact);
32
- return artifact;
33
- }
34
- set(artifact) {
35
- const existing = this.artifacts.get(artifact.metadata.cacheKey);
36
- if (existing) {
37
- this.totalBytes -= existing.metadata.byteLength;
38
- this.artifacts.delete(artifact.metadata.cacheKey);
39
- }
40
- this.artifacts.set(artifact.metadata.cacheKey, artifact);
41
- this.totalBytes += artifact.metadata.byteLength;
42
- this.evict();
43
- }
44
- getOrCreate(input, factory) {
45
- const cacheKey = createResponseCacheKey(input);
46
- return this.getOrCreateByKey(cacheKey, factory);
47
- }
48
- getOrCreateByKey(cacheKey, factory) {
49
- const existing = this.get(cacheKey);
50
- if (existing) {
51
- return existing;
52
- }
53
- const artifact = factory();
54
- if (artifact.metadata.cacheKey !== cacheKey) {
55
- throw new Error('Response artifact factory returned an artifact with a different cache key');
56
- }
57
- this.set(artifact);
58
- return artifact;
59
- }
60
- clear() {
61
- this.artifacts.clear();
62
- this.totalBytes = 0;
63
- }
64
- evict() {
65
- while (this.artifacts.size > this.maxEntries || this.totalBytes > this.maxBytes) {
66
- const oldest = this.artifacts.entries().next();
67
- if (oldest.done) {
68
- return;
69
- }
70
- const [cacheKey, artifact] = oldest.value;
71
- this.artifacts.delete(cacheKey);
72
- this.totalBytes -= artifact.metadata.byteLength;
73
- }
74
- }
75
- }
76
- //# sourceMappingURL=memory-cache.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"memory-cache.js","sourceRoot":"","sources":["../../src/response/memory-cache.ts"],"names":[],"mappings":"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"}
@@ -1,57 +0,0 @@
1
- export type QueryResponseFormat = 'json' | 'raw-flatbuffer-stream';
2
- /** A query result as the SQL engines return it (columns, rows, row count). */
3
- export interface QueryResult {
4
- columns: string[];
5
- rows: any[][];
6
- rowCount: number;
7
- }
8
- export type QueryResponseEncoding = 'identity';
9
- export interface ResponseCacheKeyInput {
10
- schemaName?: string;
11
- schemaVersion?: string | number;
12
- sql: string;
13
- params?: readonly unknown[] | Record<string, unknown>;
14
- format?: QueryResponseFormat;
15
- publishEventKey?: string;
16
- projection?: readonly string[];
17
- filters?: Record<string, unknown>;
18
- encoding?: QueryResponseEncoding;
19
- }
20
- export interface QueryResponseArtifactOptions extends ResponseCacheKeyInput {
21
- cacheKey?: string;
22
- chunkBytes?: number;
23
- createdAt?: string;
24
- }
25
- export interface QueryResponseArtifactChunk {
26
- index: number;
27
- offset: number;
28
- byteLength: number;
29
- contentHash: string;
30
- etag: string;
31
- }
32
- export interface QueryResponseArtifactMetadata {
33
- cacheKey: string;
34
- contentHash: string;
35
- etag: string;
36
- byteLength: number;
37
- rowCount: number;
38
- columnCount: number;
39
- format: QueryResponseFormat;
40
- encoding: QueryResponseEncoding;
41
- createdAt: string;
42
- chunkBytes: number;
43
- chunks: QueryResponseArtifactChunk[];
44
- schemaName?: string;
45
- schemaVersion?: string | number;
46
- publishEventKey?: string;
47
- projection?: readonly string[];
48
- }
49
- export interface QueryResponseArtifact {
50
- metadata: QueryResponseArtifactMetadata;
51
- bytes: Uint8Array;
52
- }
53
- export interface MemoryResponseArtifactCacheOptions {
54
- maxEntries?: number;
55
- maxBytes?: number;
56
- }
57
- //# sourceMappingURL=types.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/response/types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,mBAAmB,GAAG,MAAM,GAAG,uBAAuB,CAAC;AAEnE,8EAA8E;AAC9E,MAAM,WAAW,WAAW;IAC1B,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,IAAI,EAAE,GAAG,EAAE,EAAE,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;CAClB;AACD,MAAM,MAAM,qBAAqB,GAAG,UAAU,CAAC;AAE/C,MAAM,WAAW,qBAAqB;IACpC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,aAAa,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAChC,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,CAAC,EAAE,SAAS,OAAO,EAAE,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACtD,MAAM,CAAC,EAAE,mBAAmB,CAAC;IAC7B,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,UAAU,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAC/B,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAClC,QAAQ,CAAC,EAAE,qBAAqB,CAAC;CAClC;AAED,MAAM,WAAW,4BAA6B,SAAQ,qBAAqB;IACzE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,0BAA0B;IACzC,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,6BAA6B;IAC5C,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,mBAAmB,CAAC;IAC5B,QAAQ,EAAE,qBAAqB,CAAC;IAChC,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,0BAA0B,EAAE,CAAC;IACrC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,aAAa,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAChC,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,UAAU,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;CAChC;AAED,MAAM,WAAW,qBAAqB;IACpC,QAAQ,EAAE,6BAA6B,CAAC;IACxC,KAAK,EAAE,UAAU,CAAC;CACnB;AAED,MAAM,WAAW,kCAAkC;IACjD,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=types.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/response/types.ts"],"names":[],"mappings":""}
@@ -1,3 +0,0 @@
1
- export * from './types.js';
2
- export * from './parser.js';
3
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/schema/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC"}
@@ -1,3 +0,0 @@
1
- export * from './types.js';
2
- export * from './parser.js';
3
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/schema/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC"}
@@ -1,25 +0,0 @@
1
- import { DatabaseSchema } from './types.js';
2
- interface FBField {
3
- name: string;
4
- type: string;
5
- isVector: boolean;
6
- defaultValue?: any;
7
- attributes?: string[];
8
- }
9
- interface FBTable {
10
- name: string;
11
- namespace: string;
12
- fields: FBField[];
13
- isStruct: boolean;
14
- }
15
- interface ParsedSchema {
16
- tables: FBTable[];
17
- enums: Map<string, string[]>;
18
- rootType?: string;
19
- }
20
- export declare function parseFlatBufferIDL(source: string): ParsedSchema;
21
- export declare function parseJSONSchema(source: string): ParsedSchema;
22
- export declare function toDBSchema(parsed: ParsedSchema, schemaName: string, source: string): DatabaseSchema;
23
- export declare function parseSchema(source: string, name?: string): DatabaseSchema;
24
- export {};
25
- //# sourceMappingURL=parser.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"parser.d.ts","sourceRoot":"","sources":["../../src/schema/parser.ts"],"names":[],"mappings":"AAGA,OAAO,EAAuB,cAAc,EAA8B,MAAM,YAAY,CAAC;AAsI7F,UAAU,OAAO;IACf,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,OAAO,CAAC;IAClB,YAAY,CAAC,EAAE,GAAG,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;CACvB;AAED,UAAU,OAAO;IACf,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,OAAO,EAAE,CAAC;IAClB,QAAQ,EAAE,OAAO,CAAC;CACnB;AAED,UAAU,YAAY;IACpB,MAAM,EAAE,OAAO,EAAE,CAAC;IAClB,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;IAC7B,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAsCD,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,CA2H/D;AAGD,wBAAgB,eAAe,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,CA2K5D;AAaD,wBAAgB,UAAU,CAAC,MAAM,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,cAAc,CAuEnG;AAGD,wBAAgB,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,GAAE,MAAkB,GAAG,cAAc,CAiBpF"}