orez 0.4.5 → 0.4.7
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 +62 -0
- package/dist/cf-do/tx-journal.d.ts.map +1 -0
- package/dist/cf-do/tx-journal.js +163 -0
- package/dist/cf-do/tx-journal.js.map +1 -0
- package/dist/cf-do/worker.d.ts +15 -2
- package/dist/cf-do/worker.d.ts.map +1 -1
- package/dist/cf-do/worker.js +46 -8
- package/dist/cf-do/worker.js.map +1 -1
- package/dist/pg-proxy-browser.d.ts.map +1 -1
- package/dist/pg-proxy-browser.js +127 -15
- package/dist/pg-proxy-browser.js.map +1 -1
- package/dist/pg-proxy-do-backend.d.ts +2 -5
- package/dist/pg-proxy-do-backend.d.ts.map +1 -1
- package/dist/pg-proxy-do-backend.js +36 -63
- package/dist/pg-proxy-do-backend.js.map +1 -1
- package/dist/pg-proxy.d.ts.map +1 -1
- package/dist/pg-proxy.js +73 -17
- package/dist/pg-proxy.js.map +1 -1
- package/dist/replication/change-tracker.d.ts +28 -0
- package/dist/replication/change-tracker.d.ts.map +1 -1
- package/dist/replication/change-tracker.js +53 -0
- package/dist/replication/change-tracker.js.map +1 -1
- package/dist/replication/handler.d.ts +13 -0
- package/dist/replication/handler.d.ts.map +1 -1
- package/dist/replication/handler.js +145 -36
- package/dist/replication/handler.js.map +1 -1
- package/dist/worker/cf-patches.d.ts.map +1 -1
- package/dist/worker/cf-patches.js +17 -0
- package/dist/worker/cf-patches.js.map +1 -1
- package/dist/worker/local-sql-backend.d.ts +35 -0
- package/dist/worker/local-sql-backend.d.ts.map +1 -0
- package/dist/worker/local-sql-backend.js +106 -0
- package/dist/worker/local-sql-backend.js.map +1 -0
- package/dist/worker/zero-cache-embed-cf.d.ts +1 -11
- package/dist/worker/zero-cache-embed-cf.d.ts.map +1 -1
- package/dist/worker/zero-cache-embed-cf.js +56 -14
- package/dist/worker/zero-cache-embed-cf.js.map +1 -1
- package/dist/zero-litestream-patch.d.ts +6 -0
- package/dist/zero-litestream-patch.d.ts.map +1 -1
- package/dist/zero-litestream-patch.js +15 -7
- package/dist/zero-litestream-patch.js.map +1 -1
- package/package.json +2 -2
|
@@ -0,0 +1,106 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* embed-local SQL backend: serves the DoBackend HTTP protocol (/exec, /batch,
|
|
3
|
+
* /commit-tx, /rollback-tx) directly against the Durable Object's OWN SQLite
|
|
4
|
+
* storage, with no cross-DO hop.
|
|
5
|
+
*
|
|
6
|
+
* zero-cache's CVR and change DBs are private state of the view-syncer /
|
|
7
|
+
* change-streamer running inside ZeroCacheDO — nothing else reads them. wiring
|
|
8
|
+
* their pg sessions to the remote ZeroSqlDO turned every CVR statement into a
|
|
9
|
+
* cross-DO HTTP round-trip (~270 POST /exec per IDE hydration measured live);
|
|
10
|
+
* keeping them local makes those statements synchronous storage calls while
|
|
11
|
+
* the DoBackend pg semantics stay byte-identical (same SQL translation, same
|
|
12
|
+
* tx journal, same endpoints).
|
|
13
|
+
*
|
|
14
|
+
* the upstream `postgres` db must NOT use this backend: it is shared with the
|
|
15
|
+
* app worker and lives in ZeroSqlDO.
|
|
16
|
+
*/
|
|
17
|
+
import { commitTxJournal, recoverTxJournal, rollbackTxJournal, } from '../cf-do/tx-journal.js';
|
|
18
|
+
export function createLocalSqlBackend(storage) {
|
|
19
|
+
const sqlite = storage;
|
|
20
|
+
if (!sqlite || typeof sqlite.exec !== 'function') {
|
|
21
|
+
throw new Error('local sql backend: storage must expose exec()');
|
|
22
|
+
}
|
|
23
|
+
if (typeof sqlite.transactionSync !== 'function') {
|
|
24
|
+
throw new Error('local sql backend: storage must expose transactionSync()');
|
|
25
|
+
}
|
|
26
|
+
const sql = sqlite;
|
|
27
|
+
const journalSql = {
|
|
28
|
+
exec(query, ...params) {
|
|
29
|
+
// DO cursors are one-shot; materialize so toArray()/one() both work.
|
|
30
|
+
const rows = sql.exec(query, ...params).toArray();
|
|
31
|
+
return {
|
|
32
|
+
toArray: () => rows,
|
|
33
|
+
one: () => rows[0],
|
|
34
|
+
};
|
|
35
|
+
},
|
|
36
|
+
};
|
|
37
|
+
function executeStatement(statement) {
|
|
38
|
+
if (statement.track) {
|
|
39
|
+
// change tracking belongs to the shared upstream db (ZeroSqlDO); the
|
|
40
|
+
// local cvr/cdb stores are never replicated.
|
|
41
|
+
throw new Error('local sql backend: change tracking is not supported');
|
|
42
|
+
}
|
|
43
|
+
const cursor = sql.exec(statement.sql, ...(statement.params ?? []));
|
|
44
|
+
const rows = cursor.toArray().map((row) => ({ ...row }));
|
|
45
|
+
const columns = Array.isArray(cursor.columnNames)
|
|
46
|
+
? cursor.columnNames
|
|
47
|
+
: rows.length > 0
|
|
48
|
+
? Object.keys(rows[0])
|
|
49
|
+
: [];
|
|
50
|
+
return { rows, columns };
|
|
51
|
+
}
|
|
52
|
+
async function handle(request) {
|
|
53
|
+
const url = new URL(request.url);
|
|
54
|
+
const body = (await request.json().catch(() => ({})));
|
|
55
|
+
switch (url.pathname) {
|
|
56
|
+
case '/exec': {
|
|
57
|
+
const result = executeStatement({
|
|
58
|
+
sql: String(body.sql ?? ''),
|
|
59
|
+
params: Array.isArray(body.params) ? body.params : [],
|
|
60
|
+
track: body.track,
|
|
61
|
+
});
|
|
62
|
+
return Response.json(result);
|
|
63
|
+
}
|
|
64
|
+
case '/batch': {
|
|
65
|
+
const statements = Array.isArray(body.statements) ? body.statements : [];
|
|
66
|
+
const results = sql.transactionSync(() => statements
|
|
67
|
+
.map((statement) => typeof statement === 'string' ? { sql: statement } : statement)
|
|
68
|
+
.filter((statement) => statement?.sql?.trim())
|
|
69
|
+
.map((statement) => executeStatement(statement)));
|
|
70
|
+
return Response.json({ results });
|
|
71
|
+
}
|
|
72
|
+
case '/commit-tx': {
|
|
73
|
+
const transactionID = String(body.transactionID || '');
|
|
74
|
+
if (!transactionID)
|
|
75
|
+
throw new Error('missing transactionID');
|
|
76
|
+
sql.transactionSync(() => commitTxJournal(journalSql, transactionID));
|
|
77
|
+
return Response.json({ ok: true });
|
|
78
|
+
}
|
|
79
|
+
case '/rollback-tx': {
|
|
80
|
+
const transactionID = String(body.transactionID || '');
|
|
81
|
+
if (!transactionID)
|
|
82
|
+
throw new Error('missing transactionID');
|
|
83
|
+
sql.transactionSync(() => rollbackTxJournal(journalSql, transactionID));
|
|
84
|
+
return Response.json({ ok: true });
|
|
85
|
+
}
|
|
86
|
+
default:
|
|
87
|
+
return Response.json({ error: `local sql backend: unknown path ${url.pathname}` }, { status: 404 });
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
return {
|
|
91
|
+
async fetch(input, init) {
|
|
92
|
+
const request = new Request(input, init);
|
|
93
|
+
try {
|
|
94
|
+
return await handle(request);
|
|
95
|
+
}
|
|
96
|
+
catch (err) {
|
|
97
|
+
const message = err instanceof Error ? err.message : String(err);
|
|
98
|
+
return Response.json({ error: message }, { status: 500 });
|
|
99
|
+
}
|
|
100
|
+
},
|
|
101
|
+
recoverOrphanedTransactions() {
|
|
102
|
+
return sql.transactionSync(() => recoverTxJournal(journalSql));
|
|
103
|
+
},
|
|
104
|
+
};
|
|
105
|
+
}
|
|
106
|
+
//# sourceMappingURL=local-sql-backend.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"local-sql-backend.js","sourceRoot":"","sources":["../../src/worker/local-sql-backend.ts"],"names":[],"mappings":"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"}
|
|
@@ -36,26 +36,16 @@
|
|
|
36
36
|
* `shouldHibernateIdleZeroCache` in ./zero-cache-do-idle.ts.
|
|
37
37
|
*/
|
|
38
38
|
import './shims/zero-process-env.js';
|
|
39
|
-
import { DoBackend } from '../pg-proxy-do-backend.js';
|
|
40
39
|
import { type DurableObjectWebSocketHandoffContext } from './durable-object-websocket-handoff.js';
|
|
41
40
|
export interface ZeroCacheEmbedCFOptions {
|
|
42
41
|
/** DO SQLite storage (also registered on globalThis.__orez_do_sqlite) */
|
|
43
42
|
doSqlite: unknown;
|
|
44
|
-
/**
|
|
45
|
-
* base URL for the DO SQL execution endpoints (`/exec`, `/batch`).
|
|
46
|
-
* ignored when `backends` is supplied.
|
|
47
|
-
*/
|
|
43
|
+
/** base URL for the DO SQL execution endpoints (`/exec`, `/batch`). */
|
|
48
44
|
backendUrl?: string;
|
|
49
45
|
/** custom fetch used by DoBackend; lets a DO route directly to another DO stub. */
|
|
50
46
|
backendFetch?: typeof fetch;
|
|
51
47
|
/** namespace sent to the DO SQL endpoints. */
|
|
52
48
|
backendNamespace?: string;
|
|
53
|
-
/** pre-created DoBackend instances. mainly useful for tests. */
|
|
54
|
-
backends?: {
|
|
55
|
-
postgres: DoBackend;
|
|
56
|
-
cvr: DoBackend;
|
|
57
|
-
cdb: DoBackend;
|
|
58
|
-
};
|
|
59
49
|
/** postgres username/password expected by the in-process proxy. */
|
|
60
50
|
pgUser?: string;
|
|
61
51
|
pgPassword?: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"zero-cache-embed-cf.d.ts","sourceRoot":"","sources":["../../src/worker/zero-cache-embed-cf.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoCG;AAEH,OAAO,6BAA6B,CAAA;
|
|
1
|
+
{"version":3,"file":"zero-cache-embed-cf.d.ts","sourceRoot":"","sources":["../../src/worker/zero-cache-embed-cf.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoCG;AAEH,OAAO,6BAA6B,CAAA;AAapC,OAAO,EAGL,KAAK,oCAAoC,EAE1C,MAAM,uCAAuC,CAAA;AAQ9C,MAAM,WAAW,uBAAuB;IACtC,yEAAyE;IACzE,QAAQ,EAAE,OAAO,CAAA;IAEjB,uEAAuE;IACvE,UAAU,CAAC,EAAE,MAAM,CAAA;IAEnB,mFAAmF;IACnF,YAAY,CAAC,EAAE,OAAO,KAAK,CAAA;IAE3B,8CAA8C;IAC9C,gBAAgB,CAAC,EAAE,MAAM,CAAA;IAEzB,mEAAmE;IACnE,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,UAAU,CAAC,EAAE,MAAM,CAAA;IAEnB,oCAAoC;IACpC,KAAK,CAAC,EAAE,MAAM,CAAA;IAEd,wBAAwB;IACxB,YAAY,CAAC,EAAE,MAAM,EAAE,CAAA;IAEvB,+CAA+C;IAC/C,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAE5B,mEAAmE;IACnE,QAAQ,CAAC,EAAE,OAAO,KAAK,CAAA;IAEvB,kEAAkE;IAClE,YAAY,CAAC,EAAE,MAAM,CAAA;CACtB;AAED,MAAM,WAAW,gBAAgB;IAC/B,kCAAkC;IAClC,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAA;IAEvB;;;;;OAKG;IACH,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAA;IAEhC;;;;OAIG;IACH,aAAa,CACX,OAAO,EAAE,OAAO,EAChB,GAAG,CAAC,EAAE,oCAAoC,GACzC,OAAO,CAAC,QAAQ,CAAC,CAAA;IAEpB,sBAAsB;IACtB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CAAA;CACtB;AAuCD;;;;;GAKG;AACH,wBAAsB,qBAAqB,CACzC,IAAI,EAAE,uBAAuB,GAC5B,OAAO,CAAC,gBAAgB,CAAC,CA0T3B"}
|
|
@@ -41,10 +41,32 @@ import { EventEmitter } from 'node:events';
|
|
|
41
41
|
// zero-cache with all its transitive deps + our shim aliases.
|
|
42
42
|
// @ts-expect-error — internal zero-cache module, no type declarations
|
|
43
43
|
import { runWorker as _runWorker } from '@rocicorp/zero/out/zero-cache/src/server/runner/run-worker.js';
|
|
44
|
+
import { setLogLevel } from '../log.js';
|
|
44
45
|
import { createBrowserProxy } from '../pg-proxy-browser.js';
|
|
45
46
|
import { DoBackend } from '../pg-proxy-do-backend.js';
|
|
47
|
+
import { resetReplicationState } from '../replication/handler.js';
|
|
46
48
|
import { DurableObjectWebSocketHandoff, } from './durable-object-websocket-handoff.js';
|
|
49
|
+
import { createLocalSqlBackend } from './local-sql-backend.js';
|
|
47
50
|
const runWorkerFn = _runWorker;
|
|
51
|
+
// tx-journal owner id for every pg session this embed opens. recovery at
|
|
52
|
+
// embed boot targets exactly this owner, so it can never roll back another
|
|
53
|
+
// client's live transaction on the shared upstream db (e.g. the app worker's
|
|
54
|
+
// in-DO pg session).
|
|
55
|
+
const EMBED_TX_OWNER = 'orez-embed';
|
|
56
|
+
// roll back journaled transactions a dead embed generation left on the
|
|
57
|
+
// remote SQL DO (upstream db sessions killed mid-transaction).
|
|
58
|
+
async function recoverRemoteTransactions(url, backendFetch) {
|
|
59
|
+
const fetcher = backendFetch ?? fetch;
|
|
60
|
+
const resp = await fetcher(url, {
|
|
61
|
+
method: 'POST',
|
|
62
|
+
headers: { 'Content-Type': 'application/json' },
|
|
63
|
+
body: JSON.stringify({ owner: EMBED_TX_OWNER }),
|
|
64
|
+
});
|
|
65
|
+
if (!resp.ok) {
|
|
66
|
+
const text = await resp.text().catch(() => '');
|
|
67
|
+
throw new Error(`zero-cache CF embed: tx recovery failed: HTTP ${resp.status} ${text.slice(0, 500)}`);
|
|
68
|
+
}
|
|
69
|
+
}
|
|
48
70
|
function addProtocolSessionFactory(backend, createProtocolSession) {
|
|
49
71
|
return Object.assign(backend, { createProtocolSession });
|
|
50
72
|
}
|
|
@@ -55,6 +77,17 @@ function addProtocolSessionFactory(backend, createProtocolSession) {
|
|
|
55
77
|
* a DoBackend target for upstream/CVR/change Postgres connections.
|
|
56
78
|
*/
|
|
57
79
|
export async function startZeroCacheEmbedCF(opts) {
|
|
80
|
+
// wire orez's own logger from env, mirroring the node path's setLogLevel
|
|
81
|
+
// (index.ts). without this, OREZ_LOG_LEVEL=debug on a CF deploy is silently
|
|
82
|
+
// ignored and the replication poll loop is undebuggable in tails.
|
|
83
|
+
setLogLevel(opts.env?.OREZ_LOG_LEVEL || 'warn');
|
|
84
|
+
// generation hermeticity: the isolate (module state) outlives a stop() —
|
|
85
|
+
// CF reuses it across DO instance recreation after idle-hibernation
|
|
86
|
+
// teardown. a fresh embed must start from the replication-handler state a
|
|
87
|
+
// fresh isolate would have (lsn floor, stream watermark, schema caches);
|
|
88
|
+
// the reconnect reconciliation in handleStartReplication is designed to
|
|
89
|
+
// resume from durable state, not from a prior generation's module vars.
|
|
90
|
+
resetReplicationState();
|
|
58
91
|
const appId = opts.appId || 'zero';
|
|
59
92
|
const publications = opts.publications?.join(',') || `orez_${appId}_public`;
|
|
60
93
|
const readyTimeout = opts.readyTimeout ?? 30000;
|
|
@@ -62,22 +95,31 @@ export async function startZeroCacheEmbedCF(opts) {
|
|
|
62
95
|
const pgPassword = opts.pgPassword || '';
|
|
63
96
|
const backendUrl = opts.backendUrl || 'https://orez-do-backend.local';
|
|
64
97
|
const backendNamespace = opts.backendNamespace || appId;
|
|
98
|
+
// zero-cache's CVR and change DBs are embed-private state; they live in
|
|
99
|
+
// THIS Durable Object's SQLite so their pg sessions never pay a cross-DO
|
|
100
|
+
// round-trip. only the shared upstream `postgres` db routes to ZeroSqlDO.
|
|
101
|
+
const localSql = createLocalSqlBackend(opts.doSqlite);
|
|
65
102
|
const createBackend = (dbName) => new DoBackend(backendUrl, dbName, backendNamespace, {
|
|
66
|
-
fetch: opts.backendFetch,
|
|
103
|
+
fetch: dbName === 'postgres' ? opts.backendFetch : localSql.fetch,
|
|
104
|
+
txOwner: EMBED_TX_OWNER,
|
|
67
105
|
});
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
:
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
106
|
+
// crash recovery: this embed boot proves the previous embed generation is
|
|
107
|
+
// dead, so any journaled transaction it left mid-flight (DO eviction,
|
|
108
|
+
// deploy upgrade-kill) is rolled back BEFORE any pg session opens. without
|
|
109
|
+
// this, a partially-persisted tx (e.g. the change-streamer's cdc changeLog
|
|
110
|
+
// write) wedges replication on every subsequent boot.
|
|
111
|
+
localSql.recoverOrphanedTransactions();
|
|
112
|
+
await recoverRemoteTransactions(`${backendUrl.replace(/\/+$/, '')}/recover-txs?db=postgres&ns=${encodeURIComponent(backendNamespace)}`, opts.backendFetch);
|
|
113
|
+
const backends = {
|
|
114
|
+
postgres: createBackend('postgres'),
|
|
115
|
+
cvr: createBackend('zero_cvr'),
|
|
116
|
+
cdb: createBackend('zero_cdb'),
|
|
117
|
+
};
|
|
118
|
+
const proxyBackends = {
|
|
119
|
+
postgres: addProtocolSessionFactory(backends.postgres, () => createBackend('postgres')),
|
|
120
|
+
cvr: addProtocolSessionFactory(backends.cvr, () => createBackend('zero_cvr')),
|
|
121
|
+
cdb: addProtocolSessionFactory(backends.cdb, () => createBackend('zero_cdb')),
|
|
122
|
+
};
|
|
81
123
|
await Promise.all([
|
|
82
124
|
backends.postgres.waitReady,
|
|
83
125
|
backends.cvr.waitReady,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"zero-cache-embed-cf.js","sourceRoot":"","sources":["../../src/worker/zero-cache-embed-cf.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"zero-cache-embed-cf.js","sourceRoot":"","sources":["../../src/worker/zero-cache-embed-cf.ts"],"names":[],"mappings":"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"}
|
|
@@ -30,6 +30,12 @@
|
|
|
30
30
|
* own resolved @rocicorp/zero, which is what every orez launch path (node
|
|
31
31
|
* spawn, node in-process, and the browser bundle built from these files) loads.
|
|
32
32
|
*/
|
|
33
|
+
/**
|
|
34
|
+
* apply the restore-guard to a specific compiled litestream commands.js —
|
|
35
|
+
* shared by the in-place node path and the CF overlay (cf-patches.ts).
|
|
36
|
+
* idempotent.
|
|
37
|
+
*/
|
|
38
|
+
export declare function applyLitestreamRestoreGuard(commandsPath: string): void;
|
|
33
39
|
/**
|
|
34
40
|
* patch zero-cache so the change-streamer's replica restore is a no-op when
|
|
35
41
|
* no litestream backup is configured. idempotent and safe to call on every
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"zero-litestream-patch.d.ts","sourceRoot":"","sources":["../src/zero-litestream-patch.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AAwCH;;;;GAIG;AACH,wBAAgB,4BAA4B,IAAI,IAAI,
|
|
1
|
+
{"version":3,"file":"zero-litestream-patch.d.ts","sourceRoot":"","sources":["../src/zero-litestream-patch.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AAwCH;;;;GAIG;AACH,wBAAgB,2BAA2B,CAAC,YAAY,EAAE,MAAM,GAAG,IAAI,CAgBtE;AAED;;;;GAIG;AACH,wBAAgB,4BAA4B,IAAI,IAAI,CAInD"}
|
|
@@ -56,14 +56,11 @@ function findLitestreamCommands() {
|
|
|
56
56
|
return existsSync(commandsPath) ? commandsPath : null;
|
|
57
57
|
}
|
|
58
58
|
/**
|
|
59
|
-
*
|
|
60
|
-
*
|
|
61
|
-
*
|
|
59
|
+
* apply the restore-guard to a specific compiled litestream commands.js —
|
|
60
|
+
* shared by the in-place node path and the CF overlay (cf-patches.ts).
|
|
61
|
+
* idempotent.
|
|
62
62
|
*/
|
|
63
|
-
export function
|
|
64
|
-
const commandsPath = findLitestreamCommands();
|
|
65
|
-
if (!commandsPath)
|
|
66
|
-
return;
|
|
63
|
+
export function applyLitestreamRestoreGuard(commandsPath) {
|
|
67
64
|
const content = readFileSync(commandsPath, 'utf-8');
|
|
68
65
|
if (content.includes(OREZ_MARKER))
|
|
69
66
|
return; // already patched
|
|
@@ -77,4 +74,15 @@ export function disableZeroLitestreamRestore() {
|
|
|
77
74
|
const patched = content.replace(anchor, `${anchor}\n\t${GUARD}`);
|
|
78
75
|
writeFileSync(commandsPath, patched);
|
|
79
76
|
}
|
|
77
|
+
/**
|
|
78
|
+
* patch zero-cache so the change-streamer's replica restore is a no-op when
|
|
79
|
+
* no litestream backup is configured. idempotent and safe to call on every
|
|
80
|
+
* startup.
|
|
81
|
+
*/
|
|
82
|
+
export function disableZeroLitestreamRestore() {
|
|
83
|
+
const commandsPath = findLitestreamCommands();
|
|
84
|
+
if (!commandsPath)
|
|
85
|
+
return;
|
|
86
|
+
applyLitestreamRestoreGuard(commandsPath);
|
|
87
|
+
}
|
|
80
88
|
//# sourceMappingURL=zero-litestream-patch.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"zero-litestream-patch.js","sourceRoot":"","sources":["../src/zero-litestream-patch.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AAEH,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,SAAS,CAAA;AACjE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAE5C,OAAO,EAAE,cAAc,EAAE,MAAM,kCAAkC,CAAA;AAEjE,MAAM,WAAW,GAAG,gEAAgE,CAAA;AAEpF,4EAA4E;AAC5E,wEAAwE;AACxE,iEAAiE;AACjE,MAAM,KAAK,GAAG,GAAG,WAAW,gDAAgD,CAAA;AAE5E,oFAAoF;AACpF,SAAS,sBAAsB;IAC7B,MAAM,SAAS,GAAG,cAAc,CAAC,gBAAgB,CAAC,CAAA;IAClD,IAAI,CAAC,SAAS;QAAE,OAAO,IAAI,CAAA;IAE3B,8EAA8E;IAC9E,sEAAsE;IACtE,IAAI,GAAG,GAAG,OAAO,CAAC,SAAS,CAAC,CAAA;IAC5B,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,GAAG,EAAE,cAAc,CAAC,CAAC,EAAE,CAAC;QACxD,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,EAAE,IAAI,CAAC,CAAA;QACjC,IAAI,MAAM,KAAK,GAAG;YAAE,MAAK;QACzB,GAAG,GAAG,MAAM,CAAA;IACd,CAAC;IAED,MAAM,YAAY,GAAG,OAAO,CAC1B,GAAG,EACH,KAAK,EACL,YAAY,EACZ,KAAK,EACL,UAAU,EACV,YAAY,EACZ,aAAa,CACd,CAAA;IACD,OAAO,UAAU,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,IAAI,CAAA;AACvD,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,
|
|
1
|
+
{"version":3,"file":"zero-litestream-patch.js","sourceRoot":"","sources":["../src/zero-litestream-patch.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AAEH,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,SAAS,CAAA;AACjE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAE5C,OAAO,EAAE,cAAc,EAAE,MAAM,kCAAkC,CAAA;AAEjE,MAAM,WAAW,GAAG,gEAAgE,CAAA;AAEpF,4EAA4E;AAC5E,wEAAwE;AACxE,iEAAiE;AACjE,MAAM,KAAK,GAAG,GAAG,WAAW,gDAAgD,CAAA;AAE5E,oFAAoF;AACpF,SAAS,sBAAsB;IAC7B,MAAM,SAAS,GAAG,cAAc,CAAC,gBAAgB,CAAC,CAAA;IAClD,IAAI,CAAC,SAAS;QAAE,OAAO,IAAI,CAAA;IAE3B,8EAA8E;IAC9E,sEAAsE;IACtE,IAAI,GAAG,GAAG,OAAO,CAAC,SAAS,CAAC,CAAA;IAC5B,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,GAAG,EAAE,cAAc,CAAC,CAAC,EAAE,CAAC;QACxD,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,EAAE,IAAI,CAAC,CAAA;QACjC,IAAI,MAAM,KAAK,GAAG;YAAE,MAAK;QACzB,GAAG,GAAG,MAAM,CAAA;IACd,CAAC;IAED,MAAM,YAAY,GAAG,OAAO,CAC1B,GAAG,EACH,KAAK,EACL,YAAY,EACZ,KAAK,EACL,UAAU,EACV,YAAY,EACZ,aAAa,CACd,CAAA;IACD,OAAO,UAAU,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,IAAI,CAAA;AACvD,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,2BAA2B,CAAC,YAAoB;IAC9D,MAAM,OAAO,GAAG,YAAY,CAAC,YAAY,EAAE,OAAO,CAAC,CAAA;IACnD,IAAI,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAC;QAAE,OAAM,CAAC,kBAAkB;IAE5D,MAAM,MAAM,GAAG,iEAAiE,CAAA;IAChF,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;QAC9B,wEAAwE;QACxE,yDAAyD;QACzD,MAAM,IAAI,KAAK,CACb,+FAA+F,YAAY,IAAI;YAC7G,mEAAmE,CACtE,CAAA;IACH,CAAC;IAED,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,MAAM,OAAO,KAAK,EAAE,CAAC,CAAA;IAChE,aAAa,CAAC,YAAY,EAAE,OAAO,CAAC,CAAA;AACtC,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,4BAA4B;IAC1C,MAAM,YAAY,GAAG,sBAAsB,EAAE,CAAA;IAC7C,IAAI,CAAC,YAAY;QAAE,OAAM;IACzB,2BAA2B,CAAC,YAAY,CAAC,CAAA;AAC3C,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "orez",
|
|
3
|
-
"version": "0.4.
|
|
3
|
+
"version": "0.4.7",
|
|
4
4
|
"description": "PGlite-powered zero-sync development backend. No Docker required.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"license": "MIT",
|
|
@@ -87,7 +87,7 @@
|
|
|
87
87
|
"@electric-sql/pglite": "0.4.1",
|
|
88
88
|
"@electric-sql/pglite-tools": "^0.3.1",
|
|
89
89
|
"@pgsql/traverse": "17.2.6",
|
|
90
|
-
"bedrock-sqlite": "0.4.
|
|
90
|
+
"bedrock-sqlite": "0.4.7",
|
|
91
91
|
"citty": "^0.2.0",
|
|
92
92
|
"pg-gateway": "0.3.0-beta.4",
|
|
93
93
|
"pgsql-parser": "^17.9.11",
|