orez 0.5.11 → 0.5.13

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 (77) hide show
  1. package/dist/cf-do/tx-journal.d.ts +6 -5
  2. package/dist/cf-do/tx-journal.d.ts.map +1 -1
  3. package/dist/cf-do/tx-journal.js +116 -27
  4. package/dist/cf-do/tx-journal.js.map +1 -1
  5. package/dist/pg-proxy-browser.d.ts +2 -0
  6. package/dist/pg-proxy-browser.d.ts.map +1 -1
  7. package/dist/pg-proxy-browser.js +56 -102
  8. package/dist/pg-proxy-browser.js.map +1 -1
  9. package/dist/pg-proxy-do-backend.d.ts +8 -0
  10. package/dist/pg-proxy-do-backend.d.ts.map +1 -1
  11. package/dist/pg-proxy-do-backend.js +27 -9
  12. package/dist/pg-proxy-do-backend.js.map +1 -1
  13. package/dist/pg-sqlite-compiler/compiler.d.ts +17 -0
  14. package/dist/pg-sqlite-compiler/compiler.d.ts.map +1 -0
  15. package/dist/pg-sqlite-compiler/compiler.js +80 -0
  16. package/dist/pg-sqlite-compiler/compiler.js.map +1 -0
  17. package/dist/pg-sqlite-compiler/index.d.ts +1 -16
  18. package/dist/pg-sqlite-compiler/index.d.ts.map +1 -1
  19. package/dist/pg-sqlite-compiler/index.js +2 -79
  20. package/dist/pg-sqlite-compiler/index.js.map +1 -1
  21. package/dist/replication/handler.d.ts +8 -7
  22. package/dist/replication/handler.d.ts.map +1 -1
  23. package/dist/replication/handler.js +147 -116
  24. package/dist/replication/handler.js.map +1 -1
  25. package/dist/worker/browser-build-config.d.ts.map +1 -1
  26. package/dist/worker/browser-build-config.js +1 -0
  27. package/dist/worker/browser-build-config.js.map +1 -1
  28. package/dist/worker/browser-embed.d.ts +3 -2
  29. package/dist/worker/browser-embed.d.ts.map +1 -1
  30. package/dist/worker/browser-embed.js +187 -150
  31. package/dist/worker/browser-embed.js.map +1 -1
  32. package/dist/worker/cf-instance-runtime.d.ts +62 -0
  33. package/dist/worker/cf-instance-runtime.d.ts.map +1 -0
  34. package/dist/worker/cf-instance-runtime.js +260 -0
  35. package/dist/worker/cf-instance-runtime.js.map +1 -0
  36. package/dist/worker/cf-patches.d.ts +9 -6
  37. package/dist/worker/cf-patches.d.ts.map +1 -1
  38. package/dist/worker/cf-patches.js +117 -60
  39. package/dist/worker/cf-patches.js.map +1 -1
  40. package/dist/worker/durable-object-websocket-handoff.d.ts +2 -0
  41. package/dist/worker/durable-object-websocket-handoff.d.ts.map +1 -1
  42. package/dist/worker/durable-object-websocket-handoff.js +22 -41
  43. package/dist/worker/durable-object-websocket-handoff.js.map +1 -1
  44. package/dist/worker/embed-generation.d.ts +9 -6
  45. package/dist/worker/embed-generation.d.ts.map +1 -1
  46. package/dist/worker/embed-generation.js +27 -6
  47. package/dist/worker/embed-generation.js.map +1 -1
  48. package/dist/worker/shims/fastify-websocket.d.ts +3 -0
  49. package/dist/worker/shims/fastify-websocket.d.ts.map +1 -0
  50. package/dist/worker/shims/fastify-websocket.js +3 -0
  51. package/dist/worker/shims/fastify-websocket.js.map +1 -0
  52. package/dist/worker/shims/fastify.d.ts +2 -10
  53. package/dist/worker/shims/fastify.d.ts.map +1 -1
  54. package/dist/worker/shims/fastify.js +14 -21
  55. package/dist/worker/shims/fastify.js.map +1 -1
  56. package/dist/worker/shims/postgres-browser.d.ts +1 -1
  57. package/dist/worker/shims/postgres-browser.d.ts.map +1 -1
  58. package/dist/worker/shims/postgres-browser.js +29 -20
  59. package/dist/worker/shims/postgres-browser.js.map +1 -1
  60. package/dist/worker/shims/sqlite-browser.d.ts +2 -3
  61. package/dist/worker/shims/sqlite-browser.d.ts.map +1 -1
  62. package/dist/worker/shims/sqlite-browser.js +2 -3
  63. package/dist/worker/shims/sqlite-browser.js.map +1 -1
  64. package/dist/worker/shims/sqlite.d.ts.map +1 -1
  65. package/dist/worker/shims/sqlite.js +56 -35
  66. package/dist/worker/shims/sqlite.js.map +1 -1
  67. package/dist/worker/shims/ws.d.ts.map +1 -1
  68. package/dist/worker/shims/ws.js +54 -39
  69. package/dist/worker/shims/ws.js.map +1 -1
  70. package/dist/worker/shims/zero-process-env.d.ts.map +1 -1
  71. package/dist/worker/shims/zero-process-env.js +25 -4
  72. package/dist/worker/shims/zero-process-env.js.map +1 -1
  73. package/dist/worker/zero-cache-embed-cf.d.ts +5 -1
  74. package/dist/worker/zero-cache-embed-cf.d.ts.map +1 -1
  75. package/dist/worker/zero-cache-embed-cf.js +104 -137
  76. package/dist/worker/zero-cache-embed-cf.js.map +1 -1
  77. package/package.json +6 -2
@@ -1 +1 @@
1
- {"version":3,"file":"embed-generation.js","sourceRoot":"","sources":["../../src/worker/embed-generation.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AAMH,mEAAmE;AACnE,MAAM,UAAU,wBAAwB;IACtC,OAAO,CAAE,UAAkB,CAAC,sBAAsB,KAAK,IAAI,GAAG,EAAe,CAAC,CAAA;AAChF,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,wBAAwB;IACtC,MAAM,GAAG,GAAG,wBAAwB,EAAE,CAAA;IACtC,IAAI,MAAM,GAAG,CAAC,CAAA;IACd,gEAAgE;IAChE,KAAK,MAAM,EAAE,IAAI,CAAC,GAAG,GAAG,CAAC,EAAE,CAAC;QAC1B,IAAI,CAAC;YACH,EAAE,CAAC,KAAK,EAAE,CAAA;QACZ,CAAC;QAAC,MAAM,CAAC;YACP,qEAAqE;QACvE,CAAC;QACD,MAAM,EAAE,CAAA;IACV,CAAC;IACD,GAAG,CAAC,KAAK,EAAE,CAAA;IACX,OAAO,MAAM,CAAA;AACf,CAAC"}
1
+ {"version":3,"file":"embed-generation.js","sourceRoot":"","sources":["../../src/worker/embed-generation.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AAQH,mEAAmE;AACnE,MAAM,UAAU,wBAAwB;IACtC,OAAO,CAAE,UAAkB,CAAC,sBAAsB,KAAK,IAAI,GAAG,EAAe,CAAC,CAAA;AAChF,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,wBAAwB;IACtC,MAAM,GAAG,GAAG,wBAAwB,EAAE,CAAA;IACtC,IAAI,MAAM,GAAG,CAAC,CAAA;IACd,gEAAgE;IAChE,KAAK,MAAM,EAAE,IAAI,CAAC,GAAG,GAAG,CAAC,EAAE,CAAC;QAC1B,IAAI,CAAC;YACH,EAAE,CAAC,KAAK,EAAE,CAAA;QACZ,CAAC;QAAC,MAAM,CAAC;YACP,qEAAqE;QACvE,CAAC;QACD,MAAM,EAAE,CAAA;IACV,CAAC;IACD,GAAG,CAAC,KAAK,EAAE,CAAA;IACX,OAAO,MAAM,CAAA;AACf,CAAC;AAED,4EAA4E;AAC5E,MAAM,UAAU,4BAA4B,CAAC,OAA0B;IACrE,IAAI,MAAM,GAAG,CAAC,CAAA;IACd,MAAM,MAAM,GAAc,EAAE,CAAA;IAC5B,KAAK,MAAM,EAAE,IAAI,CAAC,GAAG,OAAO,CAAC,aAAa,CAAC,EAAE,CAAC;QAC5C,IAAI,CAAC;YACH,EAAE,CAAC,KAAK,EAAE,CAAA;YACV,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,EAAE,CAAC,CAAA;QAClC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;QACpB,CAAC;QACD,MAAM,EAAE,CAAA;IACV,CAAC;IACD,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;QAAE,MAAM,MAAM,CAAC,CAAC,CAAC,CAAA;IACxC,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACtB,MAAM,IAAI,cAAc,CAAC,MAAM,EAAE,6CAA6C,CAAC,CAAA;IACjF,CAAC;IACD,OAAO,MAAM,CAAA;AACf,CAAC"}
@@ -0,0 +1,3 @@
1
+ /** zero-cache registers this plugin, while the Fastify shim owns handoff routing. */
2
+ export default function fastifyWebSocket(): Promise<void>;
3
+ //# sourceMappingURL=fastify-websocket.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fastify-websocket.d.ts","sourceRoot":"","sources":["../../../src/worker/shims/fastify-websocket.ts"],"names":[],"mappings":"AAAA,qFAAqF;AACrF,wBAA8B,gBAAgB,IAAI,OAAO,CAAC,IAAI,CAAC,CAAG"}
@@ -0,0 +1,3 @@
1
+ /** zero-cache registers this plugin, while the Fastify shim owns handoff routing. */
2
+ export default async function fastifyWebSocket() { }
3
+ //# sourceMappingURL=fastify-websocket.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fastify-websocket.js","sourceRoot":"","sources":["../../../src/worker/shims/fastify-websocket.ts"],"names":[],"mappings":"AAAA,qFAAqF;AACrF,MAAM,CAAC,OAAO,CAAC,KAAK,UAAU,gBAAgB,KAAmB,CAAC"}
@@ -51,6 +51,7 @@ declare class FakeHttpServer extends EventEmitter {
51
51
  port: number;
52
52
  family: "IPv4";
53
53
  };
54
+ setPort(port: number): void;
54
55
  /** match the onMessageType pattern from zero-cache processes.js */
55
56
  onMessageType(type: string, handler: (msg: unknown, sendHandle?: unknown) => void): this;
56
57
  listen(): void;
@@ -68,7 +69,7 @@ declare class FastifyShim {
68
69
  delete(path: string, handler: RouteHandler): void;
69
70
  register(_plugin: unknown, _opts?: unknown): this;
70
71
  ready(): Promise<void>;
71
- listen(_opts?: {
72
+ listen(opts?: {
72
73
  host?: string;
73
74
  port?: number;
74
75
  }): Promise<string>;
@@ -76,15 +77,6 @@ declare class FastifyShim {
76
77
  inject(opts: InjectOptions): Promise<InjectResult>;
77
78
  }
78
79
  declare function Fastify(_opts?: unknown): FastifyShim;
79
- /**
80
- * drop every registered fastify instance. called at embed generation begin
81
- * (the embed restart contract — see ../embed-generation.ts): a dead
82
- * generation's instances otherwise stay in the registry, and the ws shim's
83
- * handoff loop matches the dead change-streamer's routes first — the new
84
- * generation's replicator then subscribes to a server that never answers
85
- * and boot hangs silently.
86
- */
87
- export declare function resetFastifyRegistry(): void;
88
80
  export default Fastify;
89
81
  export type { FastifyRequest, FastifyReply, FastifyShim };
90
82
  //# sourceMappingURL=fastify.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"fastify.d.ts","sourceRoot":"","sources":["../../../src/worker/shims/fastify.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"fastify.d.ts","sourceRoot":"","sources":["../../../src/worker/shims/fastify.ts"],"names":[],"mappings":"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"}
@@ -16,6 +16,7 @@
16
16
  * alias: { 'fastify': './src/worker/shims/fastify.js' }
17
17
  */
18
18
  import { EventEmitter } from 'node:events';
19
+ import { registerCFInstanceFastify, unregisterCFInstanceFastify, } from '../cf-instance-runtime.js';
19
20
  import { WebSocket as WsShim, WebSocketServer as WsServerShim } from './ws.js';
20
21
  // -- fake http.Server replacement --
21
22
  // uses EventEmitter with onMessageType for zero-cache's
@@ -25,6 +26,9 @@ class FakeHttpServer extends EventEmitter {
25
26
  address() {
26
27
  return this.#address;
27
28
  }
29
+ setPort(port) {
30
+ this.#address = { ...this.#address, port };
31
+ }
28
32
  /** match the onMessageType pattern from zero-cache processes.js */
29
33
  onMessageType(type, handler) {
30
34
  this.on('message', (data, sendHandle) => {
@@ -135,12 +139,18 @@ class FastifyShim {
135
139
  resolve();
136
140
  this.#readyResolvers = [];
137
141
  }
138
- async listen(_opts) {
142
+ async listen(opts) {
143
+ const port = opts?.port;
144
+ if (!Number.isInteger(port) || !port || port < 1) {
145
+ throw new Error(`fastify shim: an instance routing port is required`);
146
+ }
147
+ registerCFInstanceFastify(port, this);
148
+ this.server.setPort(port);
139
149
  await this.ready();
140
- return '0.0.0.0:0';
150
+ return `0.0.0.0:${port}`;
141
151
  }
142
152
  async close() {
143
- // no-op on CF
153
+ unregisterCFInstanceFastify(this);
144
154
  }
145
155
  // inject — process a request through registered routes
146
156
  async inject(opts) {
@@ -223,24 +233,7 @@ function tryParseJson(str) {
223
233
  }
224
234
  // -- default export matching fastify's API --
225
235
  function Fastify(_opts) {
226
- const instance = new FastifyShim();
227
- globalThis.__orez_fastify_instance = instance;
228
- globalThis.__orez_fastify_instances =
229
- globalThis.__orez_fastify_instances || [];
230
- globalThis.__orez_fastify_instances.push(instance);
231
- return instance;
232
- }
233
- /**
234
- * drop every registered fastify instance. called at embed generation begin
235
- * (the embed restart contract — see ../embed-generation.ts): a dead
236
- * generation's instances otherwise stay in the registry, and the ws shim's
237
- * handoff loop matches the dead change-streamer's routes first — the new
238
- * generation's replicator then subscribes to a server that never answers
239
- * and boot hangs silently.
240
- */
241
- export function resetFastifyRegistry() {
242
- delete globalThis.__orez_fastify_instance;
243
- globalThis.__orez_fastify_instances = [];
236
+ return new FastifyShim();
244
237
  }
245
238
  export default Fastify;
246
239
  //# sourceMappingURL=fastify.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"fastify.js","sourceRoot":"","sources":["../../../src/worker/shims/fastify.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"fastify.js","sourceRoot":"","sources":["../../../src/worker/shims/fastify.ts"],"names":[],"mappings":"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"}
@@ -5,7 +5,7 @@
5
5
  * with a custom socket factory that speaks wire protocol over MessagePort
6
6
  * to pg-proxy-browser.
7
7
  *
8
- * setup: set globalThis.__orez_proxy_connect before importing.
8
+ * every connection URL contains its CF embed runtime identity.
9
9
  */
10
10
  declare function browserPostgres(urlOrOptions?: any, options?: any): any;
11
11
  export default browserPostgres;
@@ -1 +1 @@
1
- {"version":3,"file":"postgres-browser.d.ts","sourceRoot":"","sources":["../../../src/worker/shims/postgres-browser.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAgBH,iBAAS,eAAe,CAAC,YAAY,CAAC,EAAE,GAAG,EAAE,OAAO,CAAC,EAAE,GAAG,OAkCzD;AAGD,eAAe,eAAe,CAAA"}
1
+ {"version":3,"file":"postgres-browser.d.ts","sourceRoot":"","sources":["../../../src/worker/shims/postgres-browser.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAeH,iBAAS,eAAe,CAAC,YAAY,CAAC,EAAE,GAAG,EAAE,OAAO,CAAC,EAAE,GAAG,OA4CzD;AAGD,eAAe,eAAe,CAAA"}
@@ -5,37 +5,41 @@
5
5
  * with a custom socket factory that speaks wire protocol over MessagePort
6
6
  * to pg-proxy-browser.
7
7
  *
8
- * setup: set globalThis.__orez_proxy_connect before importing.
8
+ * every connection URL contains its CF embed runtime identity.
9
9
  */
10
10
  // import the REAL postgres package — the bundler aliases 'postgres-real' to the
11
11
  // actual postgres npm package, avoiding circular resolution since 'postgres'
12
12
  // is aliased to this file.
13
13
  // @ts-expect-error — resolved by bundler alias
14
14
  import postgres from 'postgres-real';
15
+ import { logCFInstance, routeCFPostgresHost, routeCFPostgresURL, } from '../cf-instance-runtime.js';
15
16
  import { createSocketFactory } from './postgres-socket.js';
16
- const getProxyConnect = () => {
17
- const fn = globalThis.__orez_proxy_connect;
18
- if (!fn)
19
- throw new Error('__orez_proxy_connect not set');
20
- return fn;
21
- };
22
17
  function browserPostgres(urlOrOptions, options) {
23
- const opts = typeof urlOrOptions === 'string'
24
- ? { ...(options || {}), host: urlOrOptions }
25
- : { ...(urlOrOptions || {}) };
26
- opts.socket = createSocketFactory(getProxyConnect());
18
+ let runtime;
19
+ let opts;
27
20
  if (typeof urlOrOptions === 'string') {
28
- try {
29
- const parsed = new URL(urlOrOptions.replace('pglite://', 'http://'));
30
- opts.database = parsed.pathname.replace(/^\//, '') || 'postgres';
31
- opts.host = '127.0.0.1';
32
- opts.port = 0;
21
+ runtime = routeCFPostgresURL(urlOrOptions);
22
+ opts = { ...(options || {}) };
23
+ const parsed = new URL(urlOrOptions.replace('pglite://', 'http://'));
24
+ opts.database = parsed.pathname.replace(/^\//, '') || 'postgres';
25
+ opts.host = parsed.hostname;
26
+ }
27
+ else if (urlOrOptions && typeof urlOrOptions === 'object') {
28
+ opts = { ...urlOrOptions };
29
+ const host = Array.isArray(opts.host) ? opts.host[0] : opts.host;
30
+ if (typeof host !== 'string') {
31
+ throw new Error('postgres-browser: an instance-routed postgres host is required');
33
32
  }
34
- catch { }
33
+ runtime = routeCFPostgresHost(host);
34
+ }
35
+ else {
36
+ throw new Error('postgres-browser: an instance-routed postgres URL is required');
35
37
  }
38
+ opts.socket = createSocketFactory((port) => runtime.proxyConnect(port));
39
+ opts.port = 0;
36
40
  opts.ssl = false;
37
- opts.password = globalThis.__orez_proxy_password || '';
38
- opts.username = globalThis.__orez_proxy_user || 'user';
41
+ opts.password = runtime.pgPassword;
42
+ opts.username = runtime.pgUser;
39
43
  // disable auto-subscribe
40
44
  if (opts.no_subscribe === undefined)
41
45
  opts.no_subscribe = true;
@@ -46,7 +50,12 @@ function browserPostgres(urlOrOptions, options) {
46
50
  // for win32 node), and silently clamping it re-introduces the hang.
47
51
  if (!opts.max)
48
52
  opts.max = 2;
49
- console.debug(`[postgres-browser] creating client db=${opts.database} repl=${!!opts.connection?.replication} fetch_types=${opts.fetch_types} max=${opts.max} keys=${Object.keys(opts).sort().join(',')}`);
53
+ logCFInstance(runtime, {
54
+ component: 'postgres-browser',
55
+ database: opts.database,
56
+ event: 'client-create',
57
+ replication: !!opts.connection?.replication,
58
+ });
50
59
  const client = postgres(opts);
51
60
  return client;
52
61
  }
@@ -1 +1 @@
1
- {"version":3,"file":"postgres-browser.js","sourceRoot":"","sources":["../../../src/worker/shims/postgres-browser.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,gFAAgF;AAChF,6EAA6E;AAC7E,2BAA2B;AAC3B,+CAA+C;AAC/C,OAAO,QAAQ,MAAM,eAAe,CAAA;AAEpC,OAAO,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAA;AAE1D,MAAM,eAAe,GAAG,GAAkC,EAAE;IAC1D,MAAM,EAAE,GAAI,UAAkB,CAAC,oBAAoB,CAAA;IACnD,IAAI,CAAC,EAAE;QAAE,MAAM,IAAI,KAAK,CAAC,8BAA8B,CAAC,CAAA;IACxD,OAAO,EAAE,CAAA;AACX,CAAC,CAAA;AAED,SAAS,eAAe,CAAC,YAAkB,EAAE,OAAa;IACxD,MAAM,IAAI,GACR,OAAO,YAAY,KAAK,QAAQ;QAC9B,CAAC,CAAC,EAAE,GAAG,CAAC,OAAO,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE;QAC5C,CAAC,CAAC,EAAE,GAAG,CAAC,YAAY,IAAI,EAAE,CAAC,EAAE,CAAA;IAEjC,IAAI,CAAC,MAAM,GAAG,mBAAmB,CAAC,eAAe,EAAE,CAAC,CAAA;IAEpD,IAAI,OAAO,YAAY,KAAK,QAAQ,EAAE,CAAC;QACrC,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,YAAY,CAAC,OAAO,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC,CAAA;YACpE,IAAI,CAAC,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,UAAU,CAAA;YAChE,IAAI,CAAC,IAAI,GAAG,WAAW,CAAA;YACvB,IAAI,CAAC,IAAI,GAAG,CAAC,CAAA;QACf,CAAC;QAAC,MAAM,CAAC,CAAA,CAAC;IACZ,CAAC;IAED,IAAI,CAAC,GAAG,GAAG,KAAK,CAAA;IAChB,IAAI,CAAC,QAAQ,GAAI,UAAkB,CAAC,qBAAqB,IAAI,EAAE,CAAA;IAC/D,IAAI,CAAC,QAAQ,GAAI,UAAkB,CAAC,iBAAiB,IAAI,MAAM,CAAA;IAC/D,yBAAyB;IACzB,IAAI,IAAI,CAAC,YAAY,KAAK,SAAS;QAAE,IAAI,CAAC,YAAY,GAAG,IAAI,CAAA;IAC7D,sEAAsE;IACtE,+EAA+E;IAC/E,qEAAqE;IACrE,4EAA4E;IAC5E,oEAAoE;IACpE,IAAI,CAAC,IAAI,CAAC,GAAG;QAAE,IAAI,CAAC,GAAG,GAAG,CAAC,CAAA;IAE3B,OAAO,CAAC,KAAK,CACX,yCAAyC,IAAI,CAAC,QAAQ,SAAS,CAAC,CAAC,IAAI,CAAC,UAAU,EAAE,WAAW,gBAAgB,IAAI,CAAC,WAAW,QAAQ,IAAI,CAAC,GAAG,SAAS,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAC3L,CAAA;IACD,MAAM,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAA;IAC7B,OAAO,MAAM,CAAA;AACf,CAAC;AAED,MAAM,CAAC,MAAM,CAAC,eAAe,EAAE,QAAQ,CAAC,CAAA;AACxC,eAAe,eAAe,CAAA"}
1
+ {"version":3,"file":"postgres-browser.js","sourceRoot":"","sources":["../../../src/worker/shims/postgres-browser.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,gFAAgF;AAChF,6EAA6E;AAC7E,2BAA2B;AAC3B,+CAA+C;AAC/C,OAAO,QAAQ,MAAM,eAAe,CAAA;AAEpC,OAAO,EACL,aAAa,EACb,mBAAmB,EACnB,kBAAkB,GACnB,MAAM,2BAA2B,CAAA;AAClC,OAAO,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAA;AAE1D,SAAS,eAAe,CAAC,YAAkB,EAAE,OAAa;IACxD,IAAI,OAAO,CAAA;IACX,IAAI,IAAS,CAAA;IACb,IAAI,OAAO,YAAY,KAAK,QAAQ,EAAE,CAAC;QACrC,OAAO,GAAG,kBAAkB,CAAC,YAAY,CAAC,CAAA;QAC1C,IAAI,GAAG,EAAE,GAAG,CAAC,OAAO,IAAI,EAAE,CAAC,EAAE,CAAA;QAC7B,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,YAAY,CAAC,OAAO,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC,CAAA;QACpE,IAAI,CAAC,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,UAAU,CAAA;QAChE,IAAI,CAAC,IAAI,GAAG,MAAM,CAAC,QAAQ,CAAA;IAC7B,CAAC;SAAM,IAAI,YAAY,IAAI,OAAO,YAAY,KAAK,QAAQ,EAAE,CAAC;QAC5D,IAAI,GAAG,EAAE,GAAG,YAAY,EAAE,CAAA;QAC1B,MAAM,IAAI,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAA;QAChE,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE,CAAC;YAC7B,MAAM,IAAI,KAAK,CAAC,gEAAgE,CAAC,CAAA;QACnF,CAAC;QACD,OAAO,GAAG,mBAAmB,CAAC,IAAI,CAAC,CAAA;IACrC,CAAC;SAAM,CAAC;QACN,MAAM,IAAI,KAAK,CAAC,+DAA+D,CAAC,CAAA;IAClF,CAAC;IAED,IAAI,CAAC,MAAM,GAAG,mBAAmB,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,OAAO,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,CAAA;IAEvE,IAAI,CAAC,IAAI,GAAG,CAAC,CAAA;IAEb,IAAI,CAAC,GAAG,GAAG,KAAK,CAAA;IAChB,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC,UAAU,CAAA;IAClC,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC,MAAM,CAAA;IAC9B,yBAAyB;IACzB,IAAI,IAAI,CAAC,YAAY,KAAK,SAAS;QAAE,IAAI,CAAC,YAAY,GAAG,IAAI,CAAA;IAC7D,sEAAsE;IACtE,+EAA+E;IAC/E,qEAAqE;IACrE,4EAA4E;IAC5E,oEAAoE;IACpE,IAAI,CAAC,IAAI,CAAC,GAAG;QAAE,IAAI,CAAC,GAAG,GAAG,CAAC,CAAA;IAE3B,aAAa,CAAC,OAAO,EAAE;QACrB,SAAS,EAAE,kBAAkB;QAC7B,QAAQ,EAAE,IAAI,CAAC,QAAQ;QACvB,KAAK,EAAE,eAAe;QACtB,WAAW,EAAE,CAAC,CAAC,IAAI,CAAC,UAAU,EAAE,WAAW;KAC5C,CAAC,CAAA;IACF,MAAM,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAA;IAC7B,OAAO,MAAM,CAAA;AACf,CAAC;AAED,MAAM,CAAC,MAAM,CAAC,eAAe,EAAE,QAAQ,CAAC,CAAA;AACxC,eAAe,eAAe,CAAA"}
@@ -12,7 +12,7 @@
12
12
  * const SQL = await initSqlJs()
13
13
  * const db = new SQL.Database()
14
14
  * const storage = createSqlJsStorage(db)
15
- * globalThis.__orez_do_sqlite = storage
15
+ * const sqlite = new Database(storage)
16
16
  */
17
17
  import type { SqlStorageLike } from './sqlite.js';
18
18
  interface SqlJsDatabase {
@@ -36,8 +36,7 @@ interface SqlJsStatement {
36
36
  /**
37
37
  * create a SqlStorageLike adapter around a sql.js Database.
38
38
  *
39
- * the returned object can be set on `globalThis.__orez_do_sqlite`
40
- * or passed directly to the sqlite shim's Database constructor.
39
+ * pass the returned object directly to the sqlite shim's Database constructor.
41
40
  */
42
41
  export declare function createSqlJsStorage(sqlJsDb: SqlJsDatabase): SqlStorageLike;
43
42
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"sqlite-browser.d.ts","sourceRoot":"","sources":["../../../src/worker/shims/sqlite-browser.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAqC,MAAM,aAAa,CAAA;AAGpF,UAAU,aAAa;IACrB,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,OAAO,EAAE,GAAG,IAAI,CAAA;IAC1C,IAAI,CACF,GAAG,EAAE,MAAM,EACX,MAAM,CAAC,EAAE,OAAO,EAAE,GACjB,KAAK,CAAC;QACP,OAAO,EAAE,MAAM,EAAE,CAAA;QACjB,MAAM,EAAE,OAAO,EAAE,EAAE,CAAA;KACpB,CAAC,CAAA;IACF,OAAO,CAAC,GAAG,EAAE,MAAM,GAAG,cAAc,CAAA;IACpC,eAAe,IAAI,MAAM,CAAA;IACzB,KAAK,IAAI,IAAI,CAAA;CACd;AAED,UAAU,cAAc;IACtB,IAAI,CAAC,MAAM,CAAC,EAAE,OAAO,EAAE,GAAG,OAAO,CAAA;IACjC,IAAI,IAAI,OAAO,CAAA;IACf,WAAW,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IACrD,cAAc,IAAI,MAAM,EAAE,CAAA;IAC1B,IAAI,IAAI,OAAO,CAAA;IACf,KAAK,IAAI,IAAI,CAAA;CACd;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,aAAa,GAAG,cAAc,CA6FzE;AAED;;;;;;;;GAQG;AACH,wBAAgB,qBAAqB,IAAI,cAAc,CAqBtD"}
1
+ {"version":3,"file":"sqlite-browser.d.ts","sourceRoot":"","sources":["../../../src/worker/shims/sqlite-browser.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAqC,MAAM,aAAa,CAAA;AAGpF,UAAU,aAAa;IACrB,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,OAAO,EAAE,GAAG,IAAI,CAAA;IAC1C,IAAI,CACF,GAAG,EAAE,MAAM,EACX,MAAM,CAAC,EAAE,OAAO,EAAE,GACjB,KAAK,CAAC;QACP,OAAO,EAAE,MAAM,EAAE,CAAA;QACjB,MAAM,EAAE,OAAO,EAAE,EAAE,CAAA;KACpB,CAAC,CAAA;IACF,OAAO,CAAC,GAAG,EAAE,MAAM,GAAG,cAAc,CAAA;IACpC,eAAe,IAAI,MAAM,CAAA;IACzB,KAAK,IAAI,IAAI,CAAA;CACd;AAED,UAAU,cAAc;IACtB,IAAI,CAAC,MAAM,CAAC,EAAE,OAAO,EAAE,GAAG,OAAO,CAAA;IACjC,IAAI,IAAI,OAAO,CAAA;IACf,WAAW,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IACrD,cAAc,IAAI,MAAM,EAAE,CAAA;IAC1B,IAAI,IAAI,OAAO,CAAA;IACf,KAAK,IAAI,IAAI,CAAA;CACd;AAED;;;;GAIG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,aAAa,GAAG,cAAc,CA6FzE;AAED;;;;;;;;GAQG;AACH,wBAAgB,qBAAqB,IAAI,cAAc,CAqBtD"}
@@ -12,13 +12,12 @@
12
12
  * const SQL = await initSqlJs()
13
13
  * const db = new SQL.Database()
14
14
  * const storage = createSqlJsStorage(db)
15
- * globalThis.__orez_do_sqlite = storage
15
+ * const sqlite = new Database(storage)
16
16
  */
17
17
  /**
18
18
  * create a SqlStorageLike adapter around a sql.js Database.
19
19
  *
20
- * the returned object can be set on `globalThis.__orez_do_sqlite`
21
- * or passed directly to the sqlite shim's Database constructor.
20
+ * pass the returned object directly to the sqlite shim's Database constructor.
22
21
  */
23
22
  export function createSqlJsStorage(sqlJsDb) {
24
23
  return {
@@ -1 +1 @@
1
- {"version":3,"file":"sqlite-browser.js","sourceRoot":"","sources":["../../../src/worker/shims/sqlite-browser.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sqlite-browser.js","sourceRoot":"","sources":["../../../src/worker/shims/sqlite-browser.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"sqlite.d.ts","sourceRoot":"","sources":["../../../src/worker/shims/sqlite.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sqlite.d.ts","sourceRoot":"","sources":["../../../src/worker/shims/sqlite.ts"],"names":[],"mappings":"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"}
@@ -20,8 +20,26 @@
20
20
  * }
21
21
  * }
22
22
  */
23
+ import { logCFInstance, routeCFSqlitePath, } from '../cf-instance-runtime.js';
23
24
  import { openSqliteHandleRegistry } from '../embed-generation.js';
24
- const activeSnapshotPrefixes = new Set();
25
+ const activeSnapshotPrefixes = new WeakMap();
26
+ const openReaderSnapshots = new WeakMap();
27
+ function snapshotPrefixesFor(key) {
28
+ let prefixes = activeSnapshotPrefixes.get(key);
29
+ if (!prefixes) {
30
+ prefixes = new Set();
31
+ activeSnapshotPrefixes.set(key, prefixes);
32
+ }
33
+ return prefixes;
34
+ }
35
+ function readerSnapshotsFor(key) {
36
+ let readers = openReaderSnapshots.get(key);
37
+ if (!readers) {
38
+ readers = new Set();
39
+ openReaderSnapshots.set(key, readers);
40
+ }
41
+ return readers;
42
+ }
25
43
  // -- SqliteError --
26
44
  export class SqliteError extends Error {
27
45
  code;
@@ -329,21 +347,21 @@ function createSnapshotPrefix() {
329
347
  : Math.random().toString(36).slice(2, 18);
330
348
  return `_orez_snapshot_${Date.now().toString(36)}_${uuid}`;
331
349
  }
332
- function isActiveSnapshotTable(name) {
333
- for (const prefix of activeSnapshotPrefixes) {
350
+ function isActiveSnapshotTable(name, routingKey) {
351
+ for (const prefix of snapshotPrefixesFor(routingKey)) {
334
352
  if (name.startsWith(`${prefix}_`))
335
353
  return true;
336
354
  }
337
355
  return false;
338
356
  }
339
- function cleanupInactiveSnapshotTables(sql) {
357
+ function cleanupInactiveSnapshotTables(sql, routingKey) {
340
358
  try {
341
359
  const rows = execSql(sql, `SELECT name FROM sqlite_master
342
360
  WHERE type = 'table'
343
361
  AND name LIKE '_orez_snapshot_%'`, [], 'cleanup.snapshot-list').toArray();
344
362
  for (const row of rows) {
345
363
  const name = String(row.name ?? '');
346
- if (!isSnapshotInternalTable(name) || isActiveSnapshotTable(name))
364
+ if (!isSnapshotInternalTable(name) || isActiveSnapshotTable(name, routingKey))
347
365
  continue;
348
366
  try {
349
367
  execSql(sql, `DROP TABLE IF EXISTS ${quoteIdentifier(name)}`, [], 'cleanup.snapshot-drop');
@@ -377,7 +395,6 @@ function shouldSnapshotTable(name) {
377
395
  // do we copy X (with its schema + indexes) into each open reader's snapshot so
378
396
  // that reader keeps seeing X's pre-write rows. since writes are rare during a
379
397
  // hydration, readers almost always hit the live indexed tables.
380
- const openReaderSnapshots = new Set();
381
398
  // parse the target table of a writer DML/DDL statement so the writer can
382
399
  // copy-on-write that table for open readers before mutating it. matches the
383
400
  // statement shapes zero's change-processor emits (INSERT OR REPLACE INTO,
@@ -395,17 +412,13 @@ function writeTargetTable(sql) {
395
412
  }
396
413
  // before the writer mutates `table`, freeze its current rows for every open
397
414
  // reader snapshot that hasn't already copied it.
398
- function cowOpenReadersBeforeWrite(table) {
399
- if (openReaderSnapshots.size === 0)
415
+ function cowOpenReadersBeforeWrite(routingKey, table) {
416
+ const readers = readerSnapshotsFor(routingKey);
417
+ if (readers.size === 0)
400
418
  return;
401
- for (const reader of openReaderSnapshots)
419
+ for (const reader of readers)
402
420
  reader._cowTable(table);
403
421
  }
404
- function currentConnectionRole() {
405
- return globalThis.__orez_zero_sqlite_role === 'replica-writer'
406
- ? 'replica-writer'
407
- : 'default';
408
- }
409
422
  function isSqliteCatalogQuery(sql) {
410
423
  return /\bsqlite_(?:master|schema)\b/i.test(sql);
411
424
  }
@@ -676,26 +689,31 @@ export class Database {
676
689
  #snapshotPrefixActive;
677
690
  #snapshotCounter;
678
691
  #connectionRole;
692
+ #routingKey;
693
+ #runtime;
679
694
  constructor(sqlOrFilename, _options) {
680
695
  if (typeof sqlOrFilename === 'string') {
681
- // when used as a bundler alias for @rocicorp/zero-sqlite3,
682
- // zero-cache passes a file path. look up DO storage from globalThis.
683
- const storage = globalThis.__orez_do_sqlite;
684
- if (!storage) {
685
- throw new SqliteError('sqlite shim: no DO storage on globalThis.__orez_do_sqlite. ' +
686
- 'register DO storage before importing zero-cache.', 'SQLITE_ERROR');
696
+ const route = routeCFSqlitePath(sqlOrFilename);
697
+ const storage = route.runtime.doSqlite;
698
+ if (!storage?.exec) {
699
+ throw new SqliteError(`sqlite shim: runtime ${JSON.stringify(route.runtime.instanceId)} has no DO storage`, 'SQLITE_ERROR');
687
700
  }
688
701
  this.#sql = storage;
702
+ this.#runtime = route.runtime;
703
+ this.#routingKey = route.runtime;
704
+ this.#connectionRole = route.role;
689
705
  this.name = sqlOrFilename;
690
- // string-path construction only happens through zero-cache (the alias
691
- // for @rocicorp/zero-sqlite3); register the handle so the next embed
692
- // generation can reclaim it if this generation dies without closing
693
- // (the embed restart contract — see ../embed-generation.ts). app DOs
694
- // construct with a storage object and are never swept.
695
- openSqliteHandleRegistry().add(this);
706
+ route.runtime.sqliteHandles.add(this);
707
+ logCFInstance(route.runtime, {
708
+ component: 'sqlite',
709
+ event: 'open',
710
+ role: route.role,
711
+ });
696
712
  }
697
713
  else {
698
714
  this.#sql = sqlOrFilename;
715
+ this.#routingKey = sqlOrFilename;
716
+ this.#connectionRole = 'default';
699
717
  this.name = ':do-storage:';
700
718
  }
701
719
  this.#open = true;
@@ -704,9 +722,8 @@ export class Database {
704
722
  this.#snapshotPrefix = createSnapshotPrefix();
705
723
  this.#snapshotPrefixActive = this.#snapshotPrefix;
706
724
  this.#snapshotCounter = 0;
707
- this.#connectionRole = currentConnectionRole();
708
- activeSnapshotPrefixes.add(this.#snapshotPrefix);
709
- cleanupInactiveSnapshotTables(this.#sql);
725
+ snapshotPrefixesFor(this.#routingKey).add(this.#snapshotPrefix);
726
+ cleanupInactiveSnapshotTables(this.#sql, this.#routingKey);
710
727
  this.__orez_sql = this.#sql;
711
728
  }
712
729
  get open() {
@@ -802,7 +819,7 @@ export class Database {
802
819
  this.#dropSnapshot();
803
820
  this.#snapshotPrefixActive = `${this.#snapshotPrefix}_${++this.#snapshotCounter}`;
804
821
  this.#snapshotTables = new Map();
805
- openReaderSnapshots.add(this);
822
+ readerSnapshotsFor(this.#routingKey).add(this);
806
823
  }
807
824
  // copy `table`'s current rows into this reader's snapshot the first time the
808
825
  // writer touches it while the snapshot is open. called by the writer via
@@ -819,7 +836,7 @@ export class Database {
819
836
  tables.set(table, snapshot);
820
837
  }
821
838
  #dropSnapshot() {
822
- openReaderSnapshots.delete(this);
839
+ readerSnapshotsFor(this.#routingKey).delete(this);
823
840
  const tables = this.#snapshotTables;
824
841
  if (!tables)
825
842
  return;
@@ -840,12 +857,13 @@ export class Database {
840
857
  // reader snapshot first (copy-on-write). reader connections never mutate live
841
858
  // tables, so this only fires from the writer's connection.
842
859
  _cowForWrite(sql) {
843
- if (this.#connectionRole !== 'replica-writer' || openReaderSnapshots.size === 0) {
860
+ if (this.#connectionRole !== 'replica-writer' ||
861
+ readerSnapshotsFor(this.#routingKey).size === 0) {
844
862
  return;
845
863
  }
846
864
  const table = writeTargetTable(sql);
847
865
  if (table)
848
- cowOpenReadersBeforeWrite(table);
866
+ cowOpenReadersBeforeWrite(this.#routingKey, table);
849
867
  }
850
868
  /** prepare a statement */
851
869
  prepare(sql) {
@@ -1038,9 +1056,12 @@ export class Database {
1038
1056
  }
1039
1057
  /** close the database connection */
1040
1058
  close() {
1041
- openSqliteHandleRegistry().delete(this);
1059
+ if (this.#runtime)
1060
+ this.#runtime.sqliteHandles.delete(this);
1061
+ else
1062
+ openSqliteHandleRegistry().delete(this);
1042
1063
  this.#dropSnapshot();
1043
- activeSnapshotPrefixes.delete(this.#snapshotPrefix);
1064
+ snapshotPrefixesFor(this.#routingKey).delete(this.#snapshotPrefix);
1044
1065
  this.#open = false;
1045
1066
  return this;
1046
1067
  }