flatsql 2.0.2 → 3.0.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 (84) hide show
  1. package/LICENSE +1 -1
  2. package/README.md +76 -64
  3. package/dist/artifacts/index.d.ts +1 -3
  4. package/dist/artifacts/index.d.ts.map +1 -1
  5. package/dist/artifacts/index.js +1 -3
  6. package/dist/artifacts/index.js.map +1 -1
  7. package/dist/response/artifact.d.ts +1 -2
  8. package/dist/response/artifact.d.ts.map +1 -1
  9. package/dist/response/artifact.js.map +1 -1
  10. package/dist/response/types.d.ts +6 -0
  11. package/dist/response/types.d.ts.map +1 -1
  12. package/dist/stress/index.d.ts +0 -1
  13. package/dist/stress/index.d.ts.map +1 -1
  14. package/dist/stress/index.js +0 -1
  15. package/dist/stress/index.js.map +1 -1
  16. package/dist/stress/native-publish-event-workload.d.ts.map +1 -1
  17. package/dist/stress/native-publish-event-workload.js +14 -4
  18. package/dist/stress/native-publish-event-workload.js.map +1 -1
  19. package/dist/stress/smoke-runner.d.ts.map +1 -1
  20. package/dist/stress/smoke-runner.js +6 -5
  21. package/dist/stress/smoke-runner.js.map +1 -1
  22. package/docs/PARTITION-STORE-WASM.md +241 -0
  23. package/docs/PARTITION-STORE.md +635 -0
  24. package/package.json +61 -22
  25. package/wasm/flatsql-io.js +4 -1
  26. package/wasm/flatsql-ps-threads.wasm +0 -0
  27. package/wasm/flatsql-wasi-noeh.wasm +0 -0
  28. package/wasm/flatsql-wasi.wasm +0 -0
  29. package/wasm/flatsql.js +1 -1
  30. package/wasm/flatsql.wasm +0 -0
  31. package/wasm/index.d.ts +2 -0
  32. package/wasm/index.js +16 -1
  33. package/wasm/integrity.json +28 -0
  34. package/wasm/ps-node-fault.d.mts +23 -0
  35. package/wasm/ps-node-fault.mjs +381 -0
  36. package/wasm/ps-node-guest.mjs +156 -0
  37. package/wasm/ps-node-host.d.mts +86 -0
  38. package/wasm/ps-node-host.mjs +431 -0
  39. package/wasm/ps-node-imports.mjs +847 -0
  40. package/wasm/ps.d.ts +21 -0
  41. package/wasm/ps.js +75 -0
  42. package/dist/artifacts/builder.d.ts +0 -31
  43. package/dist/artifacts/builder.d.ts.map +0 -1
  44. package/dist/artifacts/builder.js +0 -514
  45. package/dist/artifacts/builder.js.map +0 -1
  46. package/dist/artifacts/demo-extractors.d.ts +0 -15
  47. package/dist/artifacts/demo-extractors.d.ts.map +0 -1
  48. package/dist/artifacts/demo-extractors.js +0 -238
  49. package/dist/artifacts/demo-extractors.js.map +0 -1
  50. package/dist/artifacts/standalone-builder.d.ts +0 -62
  51. package/dist/artifacts/standalone-builder.d.ts.map +0 -1
  52. package/dist/artifacts/standalone-builder.js +0 -144
  53. package/dist/artifacts/standalone-builder.js.map +0 -1
  54. package/dist/artifacts/worker-client.d.ts +0 -32
  55. package/dist/artifacts/worker-client.d.ts.map +0 -1
  56. package/dist/artifacts/worker-client.js +0 -415
  57. package/dist/artifacts/worker-client.js.map +0 -1
  58. package/dist/core/database.d.ts +0 -86
  59. package/dist/core/database.d.ts.map +0 -1
  60. package/dist/core/database.js +0 -900
  61. package/dist/core/database.js.map +0 -1
  62. package/dist/core/index.d.ts +0 -3
  63. package/dist/core/index.d.ts.map +0 -1
  64. package/dist/core/index.js +0 -3
  65. package/dist/core/index.js.map +0 -1
  66. package/dist/core/table-store.d.ts +0 -30
  67. package/dist/core/table-store.d.ts.map +0 -1
  68. package/dist/core/table-store.js +0 -187
  69. package/dist/core/table-store.js.map +0 -1
  70. package/dist/flatbuffer-accessor.d.ts +0 -35
  71. package/dist/flatbuffer-accessor.d.ts.map +0 -1
  72. package/dist/flatbuffer-accessor.js +0 -114
  73. package/dist/flatbuffer-accessor.js.map +0 -1
  74. package/dist/index.d.ts +0 -15
  75. package/dist/index.d.ts.map +0 -1
  76. package/dist/index.js +0 -22
  77. package/dist/index.js.map +0 -1
  78. package/dist/stress/publish-event-workload.d.ts +0 -3
  79. package/dist/stress/publish-event-workload.d.ts.map +0 -1
  80. package/dist/stress/publish-event-workload.js +0 -467
  81. package/dist/stress/publish-event-workload.js.map +0 -1
  82. package/wasm/flatsql-artifact.worker.js +0 -847
  83. package/wasm/standalone.d.ts +0 -122
  84. package/wasm/standalone.js +0 -914
@@ -1,122 +0,0 @@
1
- export type StandaloneQueryParam = null | boolean | number | string | Uint8Array;
2
-
3
- export interface StandaloneQueryResult {
4
- columns: string[];
5
- rows: unknown[][];
6
- }
7
-
8
- export interface StandaloneQueryCacheStats {
9
- hits: number;
10
- misses: number;
11
- size: number;
12
- generation: number;
13
- maxEntries: number;
14
- maxRows: number;
15
- }
16
-
17
- export interface StandaloneQueryCacheConfig {
18
- maxEntries: number;
19
- maxRows: number;
20
- }
21
-
22
- export interface StandaloneResponseArtifactCacheKeyOptions {
23
- format?: string;
24
- publishEventKey?: string | null;
25
- projection?: string[];
26
- params?: StandaloneQueryParam[];
27
- }
28
-
29
- export interface LoadFlatSQLStandaloneOptions {
30
- url?: string | URL;
31
- path?: string;
32
- bytes?: Uint8Array | ArrayBuffer | ArrayBufferView;
33
- imports?: WebAssembly.Imports;
34
- stdout?: (text: string) => void;
35
- stderr?: (text: string) => void;
36
- stdin?: Uint8Array;
37
- wasi?: {
38
- stdout?: (text: string) => void;
39
- stderr?: (text: string) => void;
40
- stdin?: Uint8Array;
41
- };
42
- }
43
-
44
- export function getFlatSQLStandaloneWasmURL(): URL;
45
- export function loadFlatSQLStandalone(options?: LoadFlatSQLStandaloneOptions): Promise<FlatSQLStandalone>;
46
- export const createStandaloneFlatSQL: typeof loadFlatSQLStandalone;
47
-
48
- export class FlatSQLStandalone {
49
- readonly module: WebAssembly.Module;
50
- readonly memory: WebAssembly.Memory;
51
-
52
- createDatabase(schema: string, dbName?: string): FlatSQLStandaloneDatabase;
53
- openDatabase(schema: string, dbName?: string, path?: string, journalMode?: number): FlatSQLStandaloneDatabase;
54
- createTestUser(id: number, name: string, email: string, age: number): Uint8Array;
55
- createTestPost(id: number, userId: number, title: string): Uint8Array;
56
- createTestPublishEvent(fileId: string, recordId: string, eventIndex: number, payloadSize: number): Uint8Array;
57
- buildQueryCacheKey(
58
- dataset: string,
59
- artifactVersion: string,
60
- queryId: string,
61
- params?: StandaloneQueryParam[]
62
- ): string;
63
- buildResponseArtifactCacheKey(
64
- schemaName: string,
65
- schemaVersion: string,
66
- sql: string,
67
- options?: StandaloneResponseArtifactCacheKeyOptions
68
- ): string;
69
- }
70
-
71
- export class FlatSQLStandaloneDatabase {
72
- isDiskBacked(): boolean;
73
- openState(): number;
74
- reindexAll(): number;
75
- /** Process at most maxRecords (default 4096). 1 = pending, 0 = complete, negative = error. */
76
- reindexStep(maxRecords?: number): number;
77
- flushIndex(): number;
78
- flushedOffset(): number;
79
- streamPath(): string;
80
- destroy(): void;
81
- registerFileId(fileId: string, tableName: string): void;
82
- enableDemoExtractors(): void;
83
- ingest(data: Uint8Array, source?: string | null): number;
84
- ingestBuffers(buffers: Uint8Array[], source?: string | null): number;
85
- ingestOne(data: Uint8Array, source?: string | null): number;
86
- query(sql: string, params?: StandaloneQueryParam[]): StandaloneQueryResult;
87
- queryMany(queries: Array<{ sql: string; params?: StandaloneQueryParam[] }>): StandaloneQueryResult[];
88
- queryRawFlatBufferStream(sql: string, params?: StandaloneQueryParam[]): Uint8Array;
89
-
90
- /**
91
- * Sandboxed public query (gateway loop G.5): one read-only SELECT under
92
- * the engine authorizer (record tables / shadow tables / unified views
93
- * only), single statement, statement timeout, row/byte caps (reject, not
94
- * truncate). mode "stream" returns aligned size-prefixed frames (all
95
- * cells must be BLOB); mode "json" returns UTF-8 bare-array JSON bytes
96
- * with column names verbatim. Rejections throw "sandbox: <code>: ...".
97
- */
98
- querySandboxed(
99
- sql: string,
100
- params?: StandaloneQueryParam[],
101
- options?: { mode?: 'stream' | 'json'; maxRows?: number; maxBytes?: number; timeoutMs?: number }
102
- ): { payload: Uint8Array; rows: number; columns: number };
103
- lastRawStreamCacheHit(): boolean;
104
- configureRawStreamCache(maxEntries: number, maxTotalBytes: number): void;
105
- getRawStreamCacheStats(): {
106
- hits: number;
107
- misses: number;
108
- entries: number;
109
- totalBytes: number;
110
- };
111
- registerQueryTemplate(queryId: string, sql: string, cacheable?: boolean): void;
112
- queryTemplate(queryId: string, params?: StandaloneQueryParam[]): StandaloneQueryResult;
113
- clearQueryCache(): void;
114
- configureQueryCache(config: StandaloneQueryCacheConfig): void;
115
- getQueryCacheStats(): StandaloneQueryCacheStats;
116
- exportData(): Uint8Array;
117
- loadAndRebuild(data: Uint8Array): void;
118
- reserveStorageBytes(bytes: number): void;
119
- loadAndRebuildFrom(sourceDb: FlatSQLStandaloneDatabase): void;
120
- getFlatBufferByIndex(tableName: string, indexName: string, keyParams?: StandaloneQueryParam[]): Uint8Array | null;
121
- getStorageInfo(): { ptr: number; size: number };
122
- }