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.
- package/dist/cf-do/tx-journal.d.ts +6 -5
- package/dist/cf-do/tx-journal.d.ts.map +1 -1
- package/dist/cf-do/tx-journal.js +116 -27
- package/dist/cf-do/tx-journal.js.map +1 -1
- package/dist/pg-proxy-browser.d.ts +2 -0
- package/dist/pg-proxy-browser.d.ts.map +1 -1
- package/dist/pg-proxy-browser.js +56 -102
- package/dist/pg-proxy-browser.js.map +1 -1
- package/dist/pg-proxy-do-backend.d.ts +8 -0
- package/dist/pg-proxy-do-backend.d.ts.map +1 -1
- package/dist/pg-proxy-do-backend.js +27 -9
- package/dist/pg-proxy-do-backend.js.map +1 -1
- package/dist/pg-sqlite-compiler/compiler.d.ts +17 -0
- package/dist/pg-sqlite-compiler/compiler.d.ts.map +1 -0
- package/dist/pg-sqlite-compiler/compiler.js +80 -0
- package/dist/pg-sqlite-compiler/compiler.js.map +1 -0
- package/dist/pg-sqlite-compiler/index.d.ts +1 -16
- package/dist/pg-sqlite-compiler/index.d.ts.map +1 -1
- package/dist/pg-sqlite-compiler/index.js +2 -79
- package/dist/pg-sqlite-compiler/index.js.map +1 -1
- package/dist/replication/handler.d.ts +8 -7
- package/dist/replication/handler.d.ts.map +1 -1
- package/dist/replication/handler.js +147 -116
- package/dist/replication/handler.js.map +1 -1
- package/dist/worker/browser-build-config.d.ts.map +1 -1
- package/dist/worker/browser-build-config.js +1 -0
- package/dist/worker/browser-build-config.js.map +1 -1
- package/dist/worker/browser-embed.d.ts +3 -2
- package/dist/worker/browser-embed.d.ts.map +1 -1
- package/dist/worker/browser-embed.js +187 -150
- package/dist/worker/browser-embed.js.map +1 -1
- package/dist/worker/cf-instance-runtime.d.ts +62 -0
- package/dist/worker/cf-instance-runtime.d.ts.map +1 -0
- package/dist/worker/cf-instance-runtime.js +260 -0
- package/dist/worker/cf-instance-runtime.js.map +1 -0
- package/dist/worker/cf-patches.d.ts +9 -6
- package/dist/worker/cf-patches.d.ts.map +1 -1
- package/dist/worker/cf-patches.js +117 -60
- package/dist/worker/cf-patches.js.map +1 -1
- package/dist/worker/durable-object-websocket-handoff.d.ts +2 -0
- package/dist/worker/durable-object-websocket-handoff.d.ts.map +1 -1
- package/dist/worker/durable-object-websocket-handoff.js +22 -41
- package/dist/worker/durable-object-websocket-handoff.js.map +1 -1
- package/dist/worker/embed-generation.d.ts +9 -6
- package/dist/worker/embed-generation.d.ts.map +1 -1
- package/dist/worker/embed-generation.js +27 -6
- package/dist/worker/embed-generation.js.map +1 -1
- package/dist/worker/shims/fastify-websocket.d.ts +3 -0
- package/dist/worker/shims/fastify-websocket.d.ts.map +1 -0
- package/dist/worker/shims/fastify-websocket.js +3 -0
- package/dist/worker/shims/fastify-websocket.js.map +1 -0
- package/dist/worker/shims/fastify.d.ts +2 -10
- package/dist/worker/shims/fastify.d.ts.map +1 -1
- package/dist/worker/shims/fastify.js +14 -21
- package/dist/worker/shims/fastify.js.map +1 -1
- package/dist/worker/shims/postgres-browser.d.ts +1 -1
- package/dist/worker/shims/postgres-browser.d.ts.map +1 -1
- package/dist/worker/shims/postgres-browser.js +29 -20
- package/dist/worker/shims/postgres-browser.js.map +1 -1
- package/dist/worker/shims/sqlite-browser.d.ts +2 -3
- package/dist/worker/shims/sqlite-browser.d.ts.map +1 -1
- package/dist/worker/shims/sqlite-browser.js +2 -3
- package/dist/worker/shims/sqlite-browser.js.map +1 -1
- package/dist/worker/shims/sqlite.d.ts.map +1 -1
- package/dist/worker/shims/sqlite.js +56 -35
- package/dist/worker/shims/sqlite.js.map +1 -1
- package/dist/worker/shims/ws.d.ts.map +1 -1
- package/dist/worker/shims/ws.js +54 -39
- package/dist/worker/shims/ws.js.map +1 -1
- package/dist/worker/shims/zero-process-env.d.ts.map +1 -1
- package/dist/worker/shims/zero-process-env.js +25 -4
- package/dist/worker/shims/zero-process-env.js.map +1 -1
- package/dist/worker/zero-cache-embed-cf.d.ts +5 -1
- package/dist/worker/zero-cache-embed-cf.d.ts.map +1 -1
- package/dist/worker/zero-cache-embed-cf.js +104 -137
- package/dist/worker/zero-cache-embed-cf.js.map +1 -1
- package/package.json +6 -2
|
@@ -5,14 +5,17 @@
|
|
|
5
5
|
* applies CF Worker patches there. the installed package in node_modules is
|
|
6
6
|
* never modified.
|
|
7
7
|
*
|
|
8
|
-
*
|
|
8
|
+
* ten patches:
|
|
9
9
|
* 1. worker-urls.js — replace file:// URLs with zero-worker:// identifiers
|
|
10
10
|
* 2. server worker entrypoints — disable CLI auto-start blocks
|
|
11
|
-
* 3.
|
|
12
|
-
* 4.
|
|
13
|
-
* 5.
|
|
14
|
-
* 6.
|
|
15
|
-
* 7.
|
|
11
|
+
* 3. worker state — localize log contexts and disable process-global telemetry
|
|
12
|
+
* 4. processes.js — replace dynamic import() with static worker module lookup
|
|
13
|
+
* 5. write-worker-client.js — run zero-cache's replica writer in-process
|
|
14
|
+
* 6. custom/fetch.js — route mutate/query fetches by logical DO identity
|
|
15
|
+
* 7. initial-sync.js — cap DO batch parameter counts
|
|
16
|
+
* 8. litestream commands.js — retain the durable replica on restart
|
|
17
|
+
* 9. change-streamer-service.js — keep cleanup alive after no-subscriber ticks
|
|
18
|
+
* 10. pgsql-parser — load libpg-query as a precompiled Worker wasm module
|
|
16
19
|
*
|
|
17
20
|
* usage in a worker build script:
|
|
18
21
|
*
|
|
@@ -35,6 +38,7 @@ const ZERO_CACHE_WORKERS = [
|
|
|
35
38
|
'replicator',
|
|
36
39
|
'syncer',
|
|
37
40
|
];
|
|
41
|
+
const CF_ZERO_VERSION = '1.7.0';
|
|
38
42
|
// the stable prefix of every zero-cache worker's import-time auto-start guard.
|
|
39
43
|
// flipping the condition to `false` neutralizes the call without depending on
|
|
40
44
|
// the (version-volatile) runWorker(...) arguments that follow it.
|
|
@@ -52,6 +56,10 @@ export function prepareZeroCacheForCF(input) {
|
|
|
52
56
|
if (!existsSync(sourceZeroOut)) {
|
|
53
57
|
throw new Error(`@rocicorp/zero compiled out/ directory not found at ${sourceZeroOut}`);
|
|
54
58
|
}
|
|
59
|
+
const installedZeroVersion = JSON.parse(readFileSync(sourceZeroPackageJson, 'utf8')).version;
|
|
60
|
+
if (installedZeroVersion !== CF_ZERO_VERSION) {
|
|
61
|
+
throw new Error(`orez CF overlay supports @rocicorp/zero ${CF_ZERO_VERSION}, found ${String(installedZeroVersion)}`);
|
|
62
|
+
}
|
|
55
63
|
rmSync(outDir, { recursive: true, force: true });
|
|
56
64
|
mkdirSync(dirname(zeroOutDir), { recursive: true });
|
|
57
65
|
cpSync(sourceZeroOut, zeroOutDir, { recursive: true, dereference: true });
|
|
@@ -65,8 +73,10 @@ export function prepareZeroCacheForCF(input) {
|
|
|
65
73
|
linkPackageDependencies(resolve(nodeModulesPath, '.bun', 'node_modules'), overlayNodeModules, {});
|
|
66
74
|
patchWorkerUrls(zcBase);
|
|
67
75
|
patchWorkerEntrypoints(zcBase);
|
|
76
|
+
patchInstanceIsolation(zcBase);
|
|
68
77
|
patchProcesses(zcBase);
|
|
69
78
|
patchWriteWorkerClient(zcBase);
|
|
79
|
+
patchCustomFetch(zcBase);
|
|
70
80
|
patchInitialSyncBatchParams(zcBase);
|
|
71
81
|
patchLitestreamRestore(zcBase);
|
|
72
82
|
patchChangeLogCleanupRetry(zcBase);
|
|
@@ -87,11 +97,10 @@ export function prepareZeroCacheForCF(input) {
|
|
|
87
97
|
function patchWorkerUrls(zcBase) {
|
|
88
98
|
const workerUrlsPath = resolve(zcBase, 'server', 'worker-urls.js');
|
|
89
99
|
if (!existsSync(workerUrlsPath)) {
|
|
90
|
-
|
|
91
|
-
return;
|
|
100
|
+
throw new Error(`orez CF overlay: worker-urls.js missing at ${workerUrlsPath}`);
|
|
92
101
|
}
|
|
93
102
|
const content = readFileSync(workerUrlsPath, 'utf-8');
|
|
94
|
-
// skip only when the
|
|
103
|
+
// skip only when the verified Zero 1.7 worker graph is already present.
|
|
95
104
|
if (content.includes('zero-worker://') && content.includes('SHADOW_SYNCER_URL')) {
|
|
96
105
|
return;
|
|
97
106
|
}
|
|
@@ -114,8 +123,7 @@ function patchWorkerEntrypoints(zcBase) {
|
|
|
114
123
|
for (const entrypoint of ZERO_CACHE_WORKERS) {
|
|
115
124
|
const entrypointPath = resolve(zcBase, 'server', `${entrypoint}.js`);
|
|
116
125
|
if (!existsSync(entrypointPath)) {
|
|
117
|
-
|
|
118
|
-
continue;
|
|
126
|
+
throw new Error(`orez CF overlay: worker entrypoint missing at ${entrypointPath}`);
|
|
119
127
|
}
|
|
120
128
|
const code = readFileSync(entrypointPath, 'utf-8');
|
|
121
129
|
if (code.includes('orez-disable-autostart')) {
|
|
@@ -131,23 +139,69 @@ function patchWorkerEntrypoints(zcBase) {
|
|
|
131
139
|
// entire statement into dead code regardless of its arguments. CF embeds run
|
|
132
140
|
// runWorker explicitly via childWorker, so nothing is lost.
|
|
133
141
|
if (!code.includes(WORKER_AUTOSTART_PREFIX)) {
|
|
134
|
-
|
|
135
|
-
'zero-cache version may have changed — check compatibility.');
|
|
136
|
-
continue;
|
|
142
|
+
throw new Error(`orez CF overlay: auto-start guard missing in ${entrypoint}.js`);
|
|
137
143
|
}
|
|
138
144
|
const next = code.split(WORKER_AUTOSTART_PREFIX).join(WORKER_AUTOSTART_DISABLED);
|
|
139
145
|
writeFileSync(entrypointPath, next);
|
|
140
146
|
console.log(`[orez] patched zero-cache ${entrypoint}.js (disabled auto-start)`);
|
|
141
147
|
}
|
|
142
148
|
}
|
|
149
|
+
function patchInstanceIsolation(zcBase) {
|
|
150
|
+
for (const entrypoint of ZERO_CACHE_WORKERS) {
|
|
151
|
+
const entrypointPath = resolve(zcBase, 'server', `${entrypoint}.js`);
|
|
152
|
+
let code = readFileSync(entrypointPath, 'utf8');
|
|
153
|
+
if (code.includes('orez-instance-local-log-context'))
|
|
154
|
+
continue;
|
|
155
|
+
const declaration = 'var lc = new LogContext("info", {}, consoleLogSink);';
|
|
156
|
+
const assignment = '\tlc = createLogContext(';
|
|
157
|
+
if (code.split(declaration).length - 1 !== 1) {
|
|
158
|
+
throw new Error(`orez CF overlay: expected one log context declaration in ${entrypoint}.js`);
|
|
159
|
+
}
|
|
160
|
+
if (code.split(assignment).length - 1 !== 1) {
|
|
161
|
+
throw new Error(`orez CF overlay: expected one log context assignment in ${entrypoint}.js`);
|
|
162
|
+
}
|
|
163
|
+
code = code
|
|
164
|
+
.replace(declaration, '/* orez-instance-local-log-context */\nconst lc = new LogContext("info", {}, consoleLogSink);')
|
|
165
|
+
.replace(assignment, '\tconst lc = createLogContext(');
|
|
166
|
+
writeFileSync(entrypointPath, code);
|
|
167
|
+
}
|
|
168
|
+
const eventsPath = resolve(zcBase, 'observability', 'events.js');
|
|
169
|
+
const otelPath = resolve(zcBase, 'server', 'otel-start.js');
|
|
170
|
+
const anonymousPath = resolve(zcBase, 'server', 'anonymous-otel-start.js');
|
|
171
|
+
const dotenvPath = resolve(zcBase, '..', '..', 'shared', 'src', 'dotenv.js');
|
|
172
|
+
for (const path of [eventsPath, otelPath, anonymousPath, dotenvPath]) {
|
|
173
|
+
if (!existsSync(path)) {
|
|
174
|
+
throw new Error(`orez CF overlay: telemetry module missing at ${path}`);
|
|
175
|
+
}
|
|
176
|
+
}
|
|
177
|
+
writeFileSync(eventsPath, `// orez-instance-isolated-events: CF embeds do not share process event sinks.\nfunction initEventSink() {}\nasync function publishCriticalEvent(lc, event) {\n lc.info?.(\`ZeroEvent: \${event.type}\`, event);\n}\nfunction makeErrorDetails(value) {\n const error = value instanceof Error ? value : new Error(String(value));\n return { name: error.name, message: error.message, stack: error.stack };\n}\nexport { initEventSink, makeErrorDetails, publishCriticalEvent };\n`);
|
|
178
|
+
writeFileSync(otelPath, `// orez-instance-isolated-otel: process-global OTel is disabled in CF embeds.\nfunction startOtelAuto() {}\nexport { startOtelAuto };\n`);
|
|
179
|
+
writeFileSync(anonymousPath, `// orez-instance-isolated-anonymous-telemetry: process singleton disabled in CF embeds.\nconst noop = () => {};\nexport { noop as recordConnectionAttempted, noop as recordConnectionSuccess, noop as recordMutation, noop as recordQuery, noop as recordRowsSynced, noop as setActiveClientGroupsGetter, noop as setActiveUsersGetter, noop as startAnonymousTelemetry };\n`);
|
|
180
|
+
writeFileSync(dotenvPath, '// orez-cf-dotenv-disabled: env is passed explicitly.\n');
|
|
181
|
+
}
|
|
143
182
|
function patchProcesses(zcBase) {
|
|
144
183
|
const processesPath = resolve(zcBase, 'types', 'processes.js');
|
|
145
184
|
if (!existsSync(processesPath)) {
|
|
146
|
-
|
|
147
|
-
return;
|
|
185
|
+
throw new Error(`orez CF overlay: processes.js missing at ${processesPath}`);
|
|
148
186
|
}
|
|
149
187
|
let code = readFileSync(processesPath, 'utf-8');
|
|
188
|
+
const proxyGetAnchor = 'return Reflect.get(target, prop, receiver);';
|
|
189
|
+
const proxyGetReplacement = 'const value = Reflect.get(target, prop, target); ' +
|
|
190
|
+
'if (typeof value !== "function") return value; ' +
|
|
191
|
+
'return (...args) => { const result = value.apply(target, args); ' +
|
|
192
|
+
'return result === target ? receiver : result; };';
|
|
193
|
+
const patchProcessWrapperProxy = (source) => {
|
|
194
|
+
const anchorCount = source.split(proxyGetAnchor).length - 1;
|
|
195
|
+
if (anchorCount === 1)
|
|
196
|
+
return source.replace(proxyGetAnchor, proxyGetReplacement);
|
|
197
|
+
if (anchorCount === 0 && source.includes(proxyGetReplacement))
|
|
198
|
+
return source;
|
|
199
|
+
throw new Error('orez CF overlay: process wrapper proxy anchor missing');
|
|
200
|
+
};
|
|
150
201
|
if (code.includes('__zc_workers')) {
|
|
202
|
+
const patched = patchProcessWrapperProxy(code);
|
|
203
|
+
if (patched !== code)
|
|
204
|
+
writeFileSync(processesPath, patched);
|
|
151
205
|
return;
|
|
152
206
|
}
|
|
153
207
|
// add static imports of all zero-cache worker modules at the top.
|
|
@@ -176,42 +230,40 @@ const __zc_workers = {
|
|
|
176
230
|
const dynamicImportPattern = 'import(moduleUrl.href).then(async ({ default: runWorker })';
|
|
177
231
|
const staticLookup = '((async () => { ' +
|
|
178
232
|
'const _name = moduleUrl.hostname || moduleUrl.pathname.split("/").pop()?.replace(".js",""); ' +
|
|
179
|
-
'const _debug =
|
|
233
|
+
'const _debug = env.OREZ_DEBUG_WIRE === "1"; ' +
|
|
234
|
+
'const _task = env.ZERO_TASK_ID || _name; ' +
|
|
180
235
|
'if (_debug) { ' +
|
|
181
|
-
'console.debug("[orez-zc-worker] start", _name, args); ' +
|
|
182
|
-
'child.on("message", (msg) => console.debug("[orez-zc-worker] message", _name, msg)); ' +
|
|
183
|
-
'child.on("error", (err) => console.error("[orez-zc-worker] error", _name, err)); ' +
|
|
184
|
-
'child.on("close", (code, signal) => console.debug("[orez-zc-worker] close", _name, code, signal)); ' +
|
|
236
|
+
'console.debug("[orez-zc-worker] start", _task, _name, args); ' +
|
|
237
|
+
'child.on("message", (msg) => console.debug("[orez-zc-worker] message", _task, _name, msg)); ' +
|
|
238
|
+
'child.on("error", (err) => console.error("[orez-zc-worker] error", _task, _name, err)); ' +
|
|
239
|
+
'child.on("close", (code, signal) => console.debug("[orez-zc-worker] close", _task, _name, code, signal)); ' +
|
|
185
240
|
'} ' +
|
|
186
241
|
'const runWorker = __zc_workers[_name]; ' +
|
|
187
242
|
'if (!runWorker) throw new Error("orez: unknown zero-cache worker: " + _name + " (available: " + Object.keys(__zc_workers).join(", ") + ")"); ' +
|
|
188
243
|
'return { default: runWorker, name: _name }; ' +
|
|
189
244
|
'})()).then(async ({ default: runWorker, name })';
|
|
190
245
|
if (!code.includes(dynamicImportPattern)) {
|
|
191
|
-
|
|
192
|
-
'zero-cache version may have changed — check compatibility.');
|
|
193
|
-
return;
|
|
246
|
+
throw new Error('orez CF overlay: dynamic import anchor missing in processes.js');
|
|
194
247
|
}
|
|
195
|
-
code =
|
|
248
|
+
code =
|
|
249
|
+
workerImports +
|
|
250
|
+
patchProcessWrapperProxy(code.replace(dynamicImportPattern, staticLookup));
|
|
196
251
|
writeFileSync(processesPath, code);
|
|
197
252
|
console.log('[orez] patched zero-cache processes.js (static worker imports)');
|
|
198
253
|
}
|
|
199
254
|
function patchWriteWorkerClient(zcBase) {
|
|
200
255
|
const clientPath = resolve(zcBase, 'services', 'replicator', 'write-worker-client.js');
|
|
201
256
|
if (!existsSync(clientPath)) {
|
|
202
|
-
|
|
203
|
-
return;
|
|
257
|
+
throw new Error(`orez CF overlay: write-worker-client.js missing at ${clientPath}`);
|
|
204
258
|
}
|
|
205
259
|
let code = readFileSync(clientPath, 'utf-8');
|
|
206
260
|
if (code.includes('orez-inline-write-worker') &&
|
|
207
|
-
code.includes('
|
|
261
|
+
code.includes('orezRole=replica-writer')) {
|
|
208
262
|
return;
|
|
209
263
|
}
|
|
210
264
|
if (!code.includes('orez-inline-write-worker') &&
|
|
211
265
|
!code.includes('import { Worker } from "node:worker_threads";')) {
|
|
212
|
-
|
|
213
|
-
'zero-cache version may have changed — check compatibility.');
|
|
214
|
-
return;
|
|
266
|
+
throw new Error('orez CF overlay: node:worker_threads anchor missing in write-worker-client.js');
|
|
215
267
|
}
|
|
216
268
|
writeFileSync(clientPath, `// patched by orez for CF Workers (orez-inline-write-worker)
|
|
217
269
|
import { must } from "../../../../shared/src/must.js";
|
|
@@ -271,17 +323,8 @@ function createAPI(onWriteError) {
|
|
|
271
323
|
return {
|
|
272
324
|
init(dbPath, cpMode, pragmas, logConfig) {
|
|
273
325
|
lc = createLogContext({ log: logConfig }, "write-worker");
|
|
274
|
-
const
|
|
275
|
-
|
|
276
|
-
try {
|
|
277
|
-
db = new Database(lc, dbPath);
|
|
278
|
-
} finally {
|
|
279
|
-
if (previousRole === void 0) {
|
|
280
|
-
delete globalThis.__orez_zero_sqlite_role;
|
|
281
|
-
} else {
|
|
282
|
-
globalThis.__orez_zero_sqlite_role = previousRole;
|
|
283
|
-
}
|
|
284
|
-
}
|
|
326
|
+
const separator = dbPath.includes("?") ? "&" : "?";
|
|
327
|
+
db = new Database(lc, dbPath + separator + "orezRole=replica-writer");
|
|
285
328
|
applyPragmas(db, pragmas);
|
|
286
329
|
runner = new StatementRunner(db);
|
|
287
330
|
mode = cpMode;
|
|
@@ -363,6 +406,30 @@ export { ThreadWriteWorkerClient, applyPragmas, serializeError };
|
|
|
363
406
|
`);
|
|
364
407
|
console.log('[orez] patched zero-cache write-worker-client.js (inline writer)');
|
|
365
408
|
}
|
|
409
|
+
function patchCustomFetch(zcBase) {
|
|
410
|
+
const customFetchPath = resolve(zcBase, 'custom', 'fetch.js');
|
|
411
|
+
if (!existsSync(customFetchPath)) {
|
|
412
|
+
throw new Error(`orez CF overlay: custom/fetch.js missing at ${customFetchPath}`);
|
|
413
|
+
}
|
|
414
|
+
let code = readFileSync(customFetchPath, 'utf8');
|
|
415
|
+
if (code.includes('__orezFetchCFInstanceAPI')) {
|
|
416
|
+
if (code.includes('fetchCFInstanceAPI as __orezFetchCFInstanceAPI') &&
|
|
417
|
+
code.includes('await __orezFetchCFInstanceAPI(finalUrl, {')) {
|
|
418
|
+
return;
|
|
419
|
+
}
|
|
420
|
+
throw new Error('orez CF overlay: custom fetch patch is incomplete');
|
|
421
|
+
}
|
|
422
|
+
const anchor = 'const response = await fetch(finalUrl, {';
|
|
423
|
+
const count = code.split(anchor).length - 1;
|
|
424
|
+
if (count !== 1) {
|
|
425
|
+
throw new Error(`orez CF overlay: expected one custom fetch anchor, found ${count}`);
|
|
426
|
+
}
|
|
427
|
+
code =
|
|
428
|
+
'import { fetchCFInstanceAPI as __orezFetchCFInstanceAPI } from "orez/worker/cf-instance-runtime";\n' +
|
|
429
|
+
code.replace(anchor, 'const response = await __orezFetchCFInstanceAPI(finalUrl, {');
|
|
430
|
+
writeFileSync(customFetchPath, code);
|
|
431
|
+
console.log('[orez] patched zero-cache custom fetch (instance-routed API host)');
|
|
432
|
+
}
|
|
366
433
|
// zero-cache's initial sync prepares a fixed 50-row multi-row INSERT per
|
|
367
434
|
// copied table (insertSql + `,${valuesSql}`.repeat(49)). better-sqlite3
|
|
368
435
|
// accepts thousands of bound parameters, but Cloudflare DO SQLite caps a
|
|
@@ -373,8 +440,7 @@ export { ThreadWriteWorkerClient, applyPragmas, serializeError };
|
|
|
373
440
|
function patchInitialSyncBatchParams(zcBase) {
|
|
374
441
|
const initialSyncPath = resolve(zcBase, 'services', 'change-source', 'pg', 'initial-sync.js');
|
|
375
442
|
if (!existsSync(initialSyncPath)) {
|
|
376
|
-
|
|
377
|
-
return;
|
|
443
|
+
throw new Error(`orez CF overlay: initial-sync.js missing at ${initialSyncPath}`);
|
|
378
444
|
}
|
|
379
445
|
let code = readFileSync(initialSyncPath, 'utf-8');
|
|
380
446
|
if (code.includes('orezRowsPerBatch'))
|
|
@@ -397,10 +463,7 @@ function patchInitialSyncBatchParams(zcBase) {
|
|
|
397
463
|
for (const [from, to] of replacements) {
|
|
398
464
|
const count = code.split(from).length - 1;
|
|
399
465
|
if (count !== 2) {
|
|
400
|
-
|
|
401
|
-
'zero-cache version may have changed; skipping the DO bound-parameter batch patch. ' +
|
|
402
|
-
'initial sync of tables with rows WILL fail on Cloudflare DOs until this is fixed.');
|
|
403
|
-
return;
|
|
466
|
+
throw new Error(`orez CF overlay: expected 2 initial-sync batch anchors, found ${count}`);
|
|
404
467
|
}
|
|
405
468
|
code = code.replaceAll(from, to);
|
|
406
469
|
}
|
|
@@ -416,8 +479,7 @@ function patchInitialSyncBatchParams(zcBase) {
|
|
|
416
479
|
function patchLitestreamRestore(zcBase) {
|
|
417
480
|
const commandsPath = resolve(zcBase, 'services', 'litestream', 'commands.js');
|
|
418
481
|
if (!existsSync(commandsPath)) {
|
|
419
|
-
|
|
420
|
-
return;
|
|
482
|
+
throw new Error(`orez CF overlay: litestream commands.js missing at ${commandsPath}`);
|
|
421
483
|
}
|
|
422
484
|
applyLitestreamRestoreGuard(commandsPath);
|
|
423
485
|
console.log('[orez] patched zero-cache litestream commands.js (no-op restore)');
|
|
@@ -425,8 +487,7 @@ function patchLitestreamRestore(zcBase) {
|
|
|
425
487
|
function patchChangeLogCleanupRetry(zcBase) {
|
|
426
488
|
const servicePath = resolve(zcBase, 'services', 'change-streamer', 'change-streamer-service.js');
|
|
427
489
|
if (!existsSync(servicePath)) {
|
|
428
|
-
|
|
429
|
-
return;
|
|
490
|
+
throw new Error(`orez CF overlay: change-streamer service missing at ${servicePath}`);
|
|
430
491
|
}
|
|
431
492
|
applyChangeLogCleanupRetryPatch(servicePath);
|
|
432
493
|
console.log('[orez] patched zero-cache changeLog cleanup retry');
|
|
@@ -434,7 +495,7 @@ function patchChangeLogCleanupRetry(zcBase) {
|
|
|
434
495
|
function patchPgsqlParserWasm(nodeModulesPath, outDir) {
|
|
435
496
|
const sourcePackagePath = findPackageRoot(nodeModulesPath, 'libpg-query');
|
|
436
497
|
if (!sourcePackagePath) {
|
|
437
|
-
|
|
498
|
+
throw new Error('orez CF overlay: libpg-query package is missing');
|
|
438
499
|
}
|
|
439
500
|
const targetPackagePath = resolve(outDir, 'node_modules', 'libpg-query');
|
|
440
501
|
const parserIndexPath = resolve(targetPackagePath, 'wasm', 'index.js');
|
|
@@ -443,7 +504,7 @@ function patchPgsqlParserWasm(nodeModulesPath, outDir) {
|
|
|
443
504
|
mkdirSync(dirname(targetPackagePath), { recursive: true });
|
|
444
505
|
cpSync(sourcePackagePath, targetPackagePath, { recursive: true, dereference: true });
|
|
445
506
|
if (!existsSync(parserIndexPath) || !existsSync(wasmPath)) {
|
|
446
|
-
|
|
507
|
+
throw new Error('orez CF overlay: libpg-query wasm files are missing');
|
|
447
508
|
}
|
|
448
509
|
let code = readFileSync(parserIndexPath, 'utf-8');
|
|
449
510
|
if (code.includes('orez-libpg-query-wasm-binary') &&
|
|
@@ -455,15 +516,11 @@ function patchPgsqlParserWasm(nodeModulesPath, outDir) {
|
|
|
455
516
|
};
|
|
456
517
|
}
|
|
457
518
|
if (code.includes('orez-libpg-query-wasm-binary')) {
|
|
458
|
-
|
|
459
|
-
'Regenerate the overlay from an unpatched libpg-query install.');
|
|
460
|
-
return {};
|
|
519
|
+
throw new Error('orez CF overlay: libpg-query wasm loader has an unsupported older patch');
|
|
461
520
|
}
|
|
462
521
|
const pattern = 'const initPromise = PgQueryModule().then((module) => {';
|
|
463
522
|
if (!code.includes(pattern)) {
|
|
464
|
-
|
|
465
|
-
'pgsql-parser version may have changed — check compatibility.');
|
|
466
|
-
return {};
|
|
523
|
+
throw new Error('orez CF overlay: PgQueryModule init anchor missing in libpg-query wasm index');
|
|
467
524
|
}
|
|
468
525
|
// workerd forbids compiling wasm from bytes at runtime (WebAssembly.instantiate
|
|
469
526
|
// on raw bytes throws "Wasm code generation disallowed by embedder"), so we do
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cf-patches.js","sourceRoot":"","sources":["../../src/worker/cf-patches.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"cf-patches.js","sourceRoot":"","sources":["../../src/worker/cf-patches.ts"],"names":[],"mappings":"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"}
|
|
@@ -38,6 +38,8 @@ export declare class DurableObjectWebSocketHandoff {
|
|
|
38
38
|
constructor(getFastify: () => FastifyHandoffTarget | null | undefined);
|
|
39
39
|
/** number of live zero-cache sync bridges (open WebSocket sync sessions). */
|
|
40
40
|
get activeConnections(): number;
|
|
41
|
+
/** close every bridge owned by this logical Durable Object runtime. */
|
|
42
|
+
closeAll(code?: number, reason?: string): void;
|
|
41
43
|
accept(server: DurableObjectWebSocket, message: HandoffRequestMessage, ctx?: DurableObjectWebSocketHandoffContext): boolean;
|
|
42
44
|
}
|
|
43
45
|
export {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"durable-object-websocket-handoff.d.ts","sourceRoot":"","sources":["../../src/worker/durable-object-websocket-handoff.ts"],"names":[],"mappings":"AAKA,MAAM,WAAW,qBAAqB;IACpC,GAAG,EAAE,MAAM,CAAA;IACX,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAC/B,MAAM,EAAE,MAAM,CAAA;CACf;AAED,MAAM,WAAW,oCAAoC;IACnD,SAAS,CAAC,OAAO,EAAE,OAAO,CAAC,OAAO,CAAC,GAAG,IAAI,CAAA;CAC3C;AAED,MAAM,WAAW,sBAAsB;IACrC,MAAM,IAAI,IAAI,CAAA;IACd,IAAI,CAAC,IAAI,EAAE,MAAM,GAAG,WAAW,GAAG,eAAe,GAAG,IAAI,CAAA;IACxD,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC3C,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,IAAI,GAAG,IAAI,CAAA;IACnE,mBAAmB,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,IAAI,GAAG,IAAI,CAAA;IACtE,UAAU,EAAE,MAAM,CAAA;CACnB;AAED,UAAU,cAAc;IACtB,IAAI,CAAC,IAAI,EAAE,MAAM,GAAG,WAAW,GAAG,eAAe,GAAG,IAAI,CAAA;IACxD,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC3C,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,IAAI,GAAG,IAAI,CAAA;IACnE,mBAAmB,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,IAAI,GAAG,IAAI,CAAA;IACtE,UAAU,EAAE,MAAM,CAAA;IAClB,MAAM,IAAI,IAAI,CAAA;CACf;AAWD,UAAU,oBAAoB;IAC5B,UAAU,CACR,GAAG,EAAE;QAAE,OAAO,EAAE,qBAAqB,CAAC;QAAC,IAAI,EAAE,UAAU,CAAA;KAAE,EACzD,MAAM,EAAE,cAAc,GACrB,OAAO,CAAA;IACV,MAAM,CAAC,EAAE;QACP,IAAI,CAAC,EAAE,QAAQ,CAAA;QACf,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,CAAA;KAC1C,CAAA;CACF;AAgJD,qBAAa,6BAA6B;;IAG5B,OAAO,CAAC,UAAU;gBAAV,UAAU,EAAE,MAAM,oBAAoB,GAAG,IAAI,GAAG,SAAS;IAE7E,6EAA6E;IAC7E,IAAI,iBAAiB,IAAI,MAAM,CAE9B;IAED,MAAM,CACJ,MAAM,EAAE,sBAAsB,EAC9B,OAAO,EAAE,qBAAqB,EAC9B,GAAG,CAAC,EAAE,oCAAoC,GACzC,OAAO;
|
|
1
|
+
{"version":3,"file":"durable-object-websocket-handoff.d.ts","sourceRoot":"","sources":["../../src/worker/durable-object-websocket-handoff.ts"],"names":[],"mappings":"AAKA,MAAM,WAAW,qBAAqB;IACpC,GAAG,EAAE,MAAM,CAAA;IACX,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAC/B,MAAM,EAAE,MAAM,CAAA;CACf;AAED,MAAM,WAAW,oCAAoC;IACnD,SAAS,CAAC,OAAO,EAAE,OAAO,CAAC,OAAO,CAAC,GAAG,IAAI,CAAA;CAC3C;AAED,MAAM,WAAW,sBAAsB;IACrC,MAAM,IAAI,IAAI,CAAA;IACd,IAAI,CAAC,IAAI,EAAE,MAAM,GAAG,WAAW,GAAG,eAAe,GAAG,IAAI,CAAA;IACxD,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC3C,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,IAAI,GAAG,IAAI,CAAA;IACnE,mBAAmB,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,IAAI,GAAG,IAAI,CAAA;IACtE,UAAU,EAAE,MAAM,CAAA;CACnB;AAED,UAAU,cAAc;IACtB,IAAI,CAAC,IAAI,EAAE,MAAM,GAAG,WAAW,GAAG,eAAe,GAAG,IAAI,CAAA;IACxD,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC3C,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,IAAI,GAAG,IAAI,CAAA;IACnE,mBAAmB,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,IAAI,GAAG,IAAI,CAAA;IACtE,UAAU,EAAE,MAAM,CAAA;IAClB,MAAM,IAAI,IAAI,CAAA;CACf;AAWD,UAAU,oBAAoB;IAC5B,UAAU,CACR,GAAG,EAAE;QAAE,OAAO,EAAE,qBAAqB,CAAC;QAAC,IAAI,EAAE,UAAU,CAAA;KAAE,EACzD,MAAM,EAAE,cAAc,GACrB,OAAO,CAAA;IACV,MAAM,CAAC,EAAE;QACP,IAAI,CAAC,EAAE,QAAQ,CAAA;QACf,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,CAAA;KAC1C,CAAA;CACF;AAgJD,qBAAa,6BAA6B;;IAG5B,OAAO,CAAC,UAAU;gBAAV,UAAU,EAAE,MAAM,oBAAoB,GAAG,IAAI,GAAG,SAAS;IAE7E,6EAA6E;IAC7E,IAAI,iBAAiB,IAAI,MAAM,CAE9B;IAED,uEAAuE;IACvE,QAAQ,CAAC,IAAI,SAAO,EAAE,MAAM,SAA6B,GAAG,IAAI;IAMhE,MAAM,CACJ,MAAM,EAAE,sBAAsB,EAC9B,OAAO,EAAE,qBAAqB,EAC9B,GAAG,CAAC,EAAE,oCAAoC,GACzC,OAAO;CAmGX"}
|
|
@@ -126,6 +126,12 @@ export class DurableObjectWebSocketHandoff {
|
|
|
126
126
|
get activeConnections() {
|
|
127
127
|
return this.#bridges.size;
|
|
128
128
|
}
|
|
129
|
+
/** close every bridge owned by this logical Durable Object runtime. */
|
|
130
|
+
closeAll(code = 1001, reason = 'zero-cache embed stopped') {
|
|
131
|
+
for (const bridge of [...this.#bridges.values()]) {
|
|
132
|
+
bridge.socket.close(code, reason);
|
|
133
|
+
}
|
|
134
|
+
}
|
|
129
135
|
accept(server, message, ctx) {
|
|
130
136
|
const id = crypto.randomUUID();
|
|
131
137
|
server.accept();
|
|
@@ -184,51 +190,26 @@ export class DurableObjectWebSocketHandoff {
|
|
|
184
190
|
}
|
|
185
191
|
#handoff(bridge) {
|
|
186
192
|
const handoffMsg = { message: bridge.message, head: new Uint8Array(0) };
|
|
187
|
-
const
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
...(g.__orez_fastify_instances ?? []),
|
|
191
|
-
...(fallback ? [fallback] : []),
|
|
192
|
-
...(g.__orez_fastify_instance ? [g.__orez_fastify_instance] : []),
|
|
193
|
-
];
|
|
193
|
+
const instance = this.getFastify();
|
|
194
|
+
if (!instance)
|
|
195
|
+
return false;
|
|
194
196
|
// 1. {websocket:true} routes (e.g. /replication/*/changes) are matched by
|
|
195
|
-
// the fastify
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
return true;
|
|
199
|
-
}
|
|
197
|
+
// the exact fastify dispatcher owned by this Durable Object runtime.
|
|
198
|
+
if (instance.tryHandoff?.(handoffMsg, bridge.socket))
|
|
199
|
+
return true;
|
|
200
200
|
// 2. the /sync/v*/connect path is served by the ZeroDispatcher's
|
|
201
201
|
// server.onMessageType('handoff') listener, NOT a {websocket:true} route,
|
|
202
202
|
// so tryHandoff never matches it. emit the handoff on the dispatcher's
|
|
203
|
-
// server — mirroring the in-process ws shim (shims/ws.ts).
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
servers.add(server);
|
|
214
|
-
}
|
|
215
|
-
}
|
|
216
|
-
if (!servers.size && typeof fallback?.server?.emit === 'function') {
|
|
217
|
-
const handoffListeners = fallback.server.listenerCount?.('message');
|
|
218
|
-
if (handoffListeners === undefined || handoffListeners > 1) {
|
|
219
|
-
servers.add(fallback.server);
|
|
220
|
-
}
|
|
221
|
-
}
|
|
222
|
-
let emittedAny = false;
|
|
223
|
-
let maxListeners = -1;
|
|
224
|
-
for (const server of servers) {
|
|
225
|
-
const listeners = server.listenerCount?.('message') ?? -1;
|
|
226
|
-
const emitted = server.emit('message', ['handoff', handoffMsg], bridge.socket);
|
|
227
|
-
emittedAny ||= Boolean(emitted);
|
|
228
|
-
maxListeners = Math.max(maxListeners, listeners);
|
|
229
|
-
}
|
|
230
|
-
console.log(`[orez-ws] dispatcher emit candidates=${servers.size} emitted=${emittedAny} listeners=${maxListeners}`);
|
|
231
|
-
return emittedAny;
|
|
203
|
+
// server — mirroring the in-process ws shim (shims/ws.ts).
|
|
204
|
+
const server = instance.server;
|
|
205
|
+
if (typeof server?.emit !== 'function')
|
|
206
|
+
return false;
|
|
207
|
+
const listeners = server.listenerCount?.('message');
|
|
208
|
+
if (listeners !== undefined && listeners <= 1)
|
|
209
|
+
return false;
|
|
210
|
+
const emitted = Boolean(server.emit('message', ['handoff', handoffMsg], bridge.socket));
|
|
211
|
+
console.log(`[orez-ws] dispatcher emit emitted=${emitted} listeners=${listeners ?? -1}`);
|
|
212
|
+
return emitted;
|
|
232
213
|
}
|
|
233
214
|
}
|
|
234
215
|
//# sourceMappingURL=durable-object-websocket-handoff.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"durable-object-websocket-handoff.js","sourceRoot":"","sources":["../../src/worker/durable-object-websocket-handoff.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"durable-object-websocket-handoff.js","sourceRoot":"","sources":["../../src/worker/durable-object-websocket-handoff.ts"],"names":[],"mappings":"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"}
|
|
@@ -15,13 +15,14 @@
|
|
|
15
15
|
* the contract: starting a new embed generation proves the previous one is
|
|
16
16
|
* dead, so the embed reclaims at START exactly what process death would have
|
|
17
17
|
* reclaimed — no more, no less. every sqlite handle zero-cache opens is
|
|
18
|
-
* registered
|
|
19
|
-
*
|
|
20
|
-
* zero-sqlite-handle-patch.ts
|
|
21
|
-
*
|
|
22
|
-
*
|
|
23
|
-
*
|
|
18
|
+
* registered at the platform's native seam. node uses
|
|
19
|
+
* `globalThis.__orez_open_sqlite_dbs` through the pure-tracking zqlite patch
|
|
20
|
+
* (see zero-sqlite-handle-patch.ts). CF stores handles on the explicit Durable
|
|
21
|
+
* Object runtime. doing this at start (not stop) also covers generations that
|
|
22
|
+
* crashed without running stop(), exactly like a process supervisor restarting
|
|
23
|
+
* a dead worker.
|
|
24
24
|
*/
|
|
25
|
+
import type { CFInstanceRuntime } from './cf-instance-runtime.js';
|
|
25
26
|
interface CloseableDb {
|
|
26
27
|
close(): unknown;
|
|
27
28
|
}
|
|
@@ -32,5 +33,7 @@ export declare function openSqliteHandleRegistry(): Set<CloseableDb>;
|
|
|
32
33
|
* returns the number of handles closed.
|
|
33
34
|
*/
|
|
34
35
|
export declare function sweepLeakedSqliteHandles(): number;
|
|
36
|
+
/** close only the sqlite handles owned by one CF Durable Object runtime. */
|
|
37
|
+
export declare function sweepCFInstanceSqliteHandles(runtime: CFInstanceRuntime): number;
|
|
35
38
|
export {};
|
|
36
39
|
//# sourceMappingURL=embed-generation.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"embed-generation.d.ts","sourceRoot":"","sources":["../../src/worker/embed-generation.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AAEH,UAAU,WAAW;IACnB,KAAK,IAAI,OAAO,CAAA;CACjB;AAED,mEAAmE;AACnE,wBAAgB,wBAAwB,IAAI,GAAG,CAAC,WAAW,CAAC,CAE3D;AAED;;;GAGG;AACH,wBAAgB,wBAAwB,IAAI,MAAM,CAcjD"}
|
|
1
|
+
{"version":3,"file":"embed-generation.d.ts","sourceRoot":"","sources":["../../src/worker/embed-generation.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AAEH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAA;AAEjE,UAAU,WAAW;IACnB,KAAK,IAAI,OAAO,CAAA;CACjB;AAED,mEAAmE;AACnE,wBAAgB,wBAAwB,IAAI,GAAG,CAAC,WAAW,CAAC,CAE3D;AAED;;;GAGG;AACH,wBAAgB,wBAAwB,IAAI,MAAM,CAcjD;AAED,4EAA4E;AAC5E,wBAAgB,4BAA4B,CAAC,OAAO,EAAE,iBAAiB,GAAG,MAAM,CAiB/E"}
|
|
@@ -15,12 +15,12 @@
|
|
|
15
15
|
* the contract: starting a new embed generation proves the previous one is
|
|
16
16
|
* dead, so the embed reclaims at START exactly what process death would have
|
|
17
17
|
* reclaimed — no more, no less. every sqlite handle zero-cache opens is
|
|
18
|
-
* registered
|
|
19
|
-
*
|
|
20
|
-
* zero-sqlite-handle-patch.ts
|
|
21
|
-
*
|
|
22
|
-
*
|
|
23
|
-
*
|
|
18
|
+
* registered at the platform's native seam. node uses
|
|
19
|
+
* `globalThis.__orez_open_sqlite_dbs` through the pure-tracking zqlite patch
|
|
20
|
+
* (see zero-sqlite-handle-patch.ts). CF stores handles on the explicit Durable
|
|
21
|
+
* Object runtime. doing this at start (not stop) also covers generations that
|
|
22
|
+
* crashed without running stop(), exactly like a process supervisor restarting
|
|
23
|
+
* a dead worker.
|
|
24
24
|
*/
|
|
25
25
|
/** the cross-module registry of open zero-cache sqlite handles. */
|
|
26
26
|
export function openSqliteHandleRegistry() {
|
|
@@ -46,4 +46,25 @@ export function sweepLeakedSqliteHandles() {
|
|
|
46
46
|
dbs.clear();
|
|
47
47
|
return closed;
|
|
48
48
|
}
|
|
49
|
+
/** close only the sqlite handles owned by one CF Durable Object runtime. */
|
|
50
|
+
export function sweepCFInstanceSqliteHandles(runtime) {
|
|
51
|
+
let closed = 0;
|
|
52
|
+
const errors = [];
|
|
53
|
+
for (const db of [...runtime.sqliteHandles]) {
|
|
54
|
+
try {
|
|
55
|
+
db.close();
|
|
56
|
+
runtime.sqliteHandles.delete(db);
|
|
57
|
+
}
|
|
58
|
+
catch (error) {
|
|
59
|
+
errors.push(error);
|
|
60
|
+
}
|
|
61
|
+
closed++;
|
|
62
|
+
}
|
|
63
|
+
if (errors.length === 1)
|
|
64
|
+
throw errors[0];
|
|
65
|
+
if (errors.length > 1) {
|
|
66
|
+
throw new AggregateError(errors, 'zero-cache CF embed: sqlite teardown failed');
|
|
67
|
+
}
|
|
68
|
+
return closed;
|
|
69
|
+
}
|
|
49
70
|
//# sourceMappingURL=embed-generation.js.map
|