@rocicorp/zero 0.19.2025050100 → 0.19.2025050201
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/out/{chunk-O6HWBJKG.js → chunk-54ZZCBOP.js} +2 -2
- package/out/{chunk-CS2KC2W3.js → chunk-KOXC55U7.js} +4 -3
- package/out/chunk-KOXC55U7.js.map +7 -0
- package/out/{chunk-BXNVGG4D.js → chunk-SNYLPVLH.js} +18 -85
- package/out/{chunk-BXNVGG4D.js.map → chunk-SNYLPVLH.js.map} +4 -4
- package/out/{inspector-2LQODK6W.js → inspector-Z55GQ5JV.js} +3 -3
- package/out/react.js +1 -1
- package/out/solid.js +3 -3
- package/out/zero-cache/src/config/zero-config.d.ts +13 -27
- package/out/zero-cache/src/config/zero-config.d.ts.map +1 -1
- package/out/zero-cache/src/config/zero-config.js +28 -59
- package/out/zero-cache/src/config/zero-config.js.map +1 -1
- package/out/zero-cache/src/server/change-streamer.d.ts.map +1 -1
- package/out/zero-cache/src/server/change-streamer.js +3 -5
- package/out/zero-cache/src/server/change-streamer.js.map +1 -1
- package/out/zero-cache/src/server/main.d.ts.map +1 -1
- package/out/zero-cache/src/server/main.js +10 -10
- package/out/zero-cache/src/server/main.js.map +1 -1
- package/out/zero-cache/src/server/replicator.d.ts.map +1 -1
- package/out/zero-cache/src/server/replicator.js +4 -15
- package/out/zero-cache/src/server/replicator.js.map +1 -1
- package/out/zero-cache/src/server/runner/config.d.ts +13 -27
- package/out/zero-cache/src/server/runner/config.d.ts.map +1 -1
- package/out/zero-cache/src/server/runner/run-worker.d.ts.map +1 -1
- package/out/zero-cache/src/server/runner/run-worker.js +10 -4
- package/out/zero-cache/src/server/runner/run-worker.js.map +1 -1
- package/out/zero-cache/src/{config → server/runner}/runtime.d.ts +0 -1
- package/out/zero-cache/src/server/runner/runtime.d.ts.map +1 -0
- package/out/zero-cache/src/server/runner/runtime.js +23 -0
- package/out/zero-cache/src/server/runner/runtime.js.map +1 -0
- package/out/zero-cache/src/server/syncer.d.ts.map +1 -1
- package/out/zero-cache/src/server/syncer.js +2 -4
- package/out/zero-cache/src/server/syncer.js.map +1 -1
- package/out/zero-cache/src/services/change-streamer/change-streamer-http.d.ts +2 -4
- package/out/zero-cache/src/services/change-streamer/change-streamer-http.d.ts.map +1 -1
- package/out/zero-cache/src/services/change-streamer/change-streamer-http.js +11 -14
- package/out/zero-cache/src/services/change-streamer/change-streamer-http.js.map +1 -1
- package/out/zero-cache/src/services/change-streamer/change-streamer-service.d.ts +1 -1
- package/out/zero-cache/src/services/change-streamer/change-streamer-service.d.ts.map +1 -1
- package/out/zero-cache/src/services/change-streamer/change-streamer-service.js +15 -4
- package/out/zero-cache/src/services/change-streamer/change-streamer-service.js.map +1 -1
- package/out/zero-cache/src/services/change-streamer/schema/init.d.ts.map +1 -1
- package/out/zero-cache/src/services/change-streamer/schema/init.js +0 -8
- package/out/zero-cache/src/services/change-streamer/schema/init.js.map +1 -1
- package/out/zero-cache/src/services/change-streamer/schema/tables.d.ts +1 -2
- package/out/zero-cache/src/services/change-streamer/schema/tables.d.ts.map +1 -1
- package/out/zero-cache/src/services/change-streamer/schema/tables.js +13 -19
- package/out/zero-cache/src/services/change-streamer/schema/tables.js.map +1 -1
- package/out/zero-cache/src/services/change-streamer/storer.d.ts +1 -1
- package/out/zero-cache/src/services/change-streamer/storer.d.ts.map +1 -1
- package/out/zero-cache/src/services/change-streamer/storer.js +2 -6
- package/out/zero-cache/src/services/change-streamer/storer.js.map +1 -1
- package/out/zero-cache/src/types/timeout.d.ts +11 -0
- package/out/zero-cache/src/types/timeout.d.ts.map +1 -0
- package/out/zero-cache/src/types/timeout.js +23 -0
- package/out/zero-cache/src/types/timeout.js.map +1 -0
- package/out/zero-client/src/client/metrics.d.ts.map +1 -1
- package/out/zero-client/src/client/mutation-tracker.d.ts.map +1 -1
- package/out/zero-client/src/client/on-error.d.ts +12 -6
- package/out/zero-client/src/client/on-error.d.ts.map +1 -1
- package/out/zero-client/src/client/options.d.ts +3 -7
- package/out/zero-client/src/client/options.d.ts.map +1 -1
- package/out/zero-client/src/client/reload-error-handler.d.ts.map +1 -1
- package/out/zero-client/src/client/zero-log-context.d.ts +1 -1
- package/out/zero-client/src/client/zero-poke-handler.d.ts.map +1 -1
- package/out/zero-client/src/client/zero.d.ts.map +1 -1
- package/out/zero-client/src/mod.d.ts +0 -1
- package/out/zero-client/src/mod.d.ts.map +1 -1
- package/out/zero.js +3 -5
- package/out/zql/src/query/assert-no-not-exists.d.ts.map +1 -1
- package/out/zql/src/query/assert-no-not-exists.js +1 -1
- package/out/zql/src/query/assert-no-not-exists.js.map +1 -1
- package/out/zql/src/query/query-impl.d.ts +0 -1
- package/out/zql/src/query/query-impl.d.ts.map +1 -1
- package/out/zql/src/query/query-impl.js +0 -1
- package/out/zql/src/query/query-impl.js.map +1 -1
- package/package.json +1 -1
- package/out/chunk-CS2KC2W3.js.map +0 -7
- package/out/zero-cache/src/config/normalize.d.ts +0 -29
- package/out/zero-cache/src/config/normalize.d.ts.map +0 -1
- package/out/zero-cache/src/config/normalize.js +0 -73
- package/out/zero-cache/src/config/normalize.js.map +0 -1
- package/out/zero-cache/src/config/runtime.d.ts.map +0 -1
- package/out/zero-cache/src/config/runtime.js +0 -63
- package/out/zero-cache/src/config/runtime.js.map +0 -1
- package/out/zero-client/src/client/on-error-kind-enum.d.ts +0 -17
- package/out/zero-client/src/client/on-error-kind-enum.d.ts.map +0 -1
- package/out/zero-client/src/client/on-error-kind.d.ts +0 -5
- package/out/zero-client/src/client/on-error-kind.d.ts.map +0 -1
- /package/out/{chunk-O6HWBJKG.js.map → chunk-54ZZCBOP.js.map} +0 -0
- /package/out/{inspector-2LQODK6W.js.map → inspector-Z55GQ5JV.js.map} +0 -0
|
@@ -7,15 +7,21 @@ import { ProcessManager, runUntilKilled } from "../../services/life-cycle.js";
|
|
|
7
7
|
import { childWorker } from "../../types/processes.js";
|
|
8
8
|
import { createLogContext } from "../logging.js";
|
|
9
9
|
import { getMultiZeroConfig } from "./config.js";
|
|
10
|
+
import { getTaskID } from "./runtime.js";
|
|
10
11
|
import { ZeroDispatcher } from "./zero-dispatcher.js";
|
|
11
12
|
export async function runWorker(parent, env) {
|
|
12
13
|
const startMs = Date.now();
|
|
13
14
|
const { config, env: baseEnv } = getMultiZeroConfig(env);
|
|
14
15
|
const lc = createLogContext(config, { worker: 'runner' });
|
|
15
16
|
const processes = new ProcessManager(lc, parent ?? process);
|
|
16
|
-
const { serverVersion, port,
|
|
17
|
+
const { serverVersion, port, changeStreamerPort = port + 1 } = config;
|
|
18
|
+
let { taskID } = config;
|
|
19
|
+
if (!taskID) {
|
|
20
|
+
taskID = await getTaskID(lc);
|
|
21
|
+
baseEnv['ZERO_TASK_ID'] = taskID;
|
|
22
|
+
}
|
|
17
23
|
lc.info?.(`starting server${!serverVersion ? '' : `@${serverVersion}`} ` +
|
|
18
|
-
`protocolVersion=${PROTOCOL_VERSION}`);
|
|
24
|
+
`protocolVersion=${PROTOCOL_VERSION}, taskID=${taskID}`);
|
|
19
25
|
const multiMode = config.tenants.length;
|
|
20
26
|
if (!multiMode) {
|
|
21
27
|
config.tenants.push({
|
|
@@ -65,9 +71,9 @@ export async function runWorker(parent, env) {
|
|
|
65
71
|
}
|
|
66
72
|
return { ...tenant, env: mergedEnv, getWorker };
|
|
67
73
|
});
|
|
68
|
-
// Eagerly start zero-caches that are not configured to --
|
|
74
|
+
// Eagerly start zero-caches that are not configured to --lazy-startup.
|
|
69
75
|
for (const tenant of tenants) {
|
|
70
|
-
const lazy = parseBoolean('
|
|
76
|
+
const lazy = parseBoolean('ZERO_LAZY_STARTUP', tenant.env['ZERO_LAZY_STARTUP'] ?? 'false');
|
|
71
77
|
if (!lazy) {
|
|
72
78
|
void tenant.getWorker();
|
|
73
79
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"run-worker.js","sourceRoot":"","sources":["../../../../../../zero-cache/src/server/runner/run-worker.ts"],"names":[],"mappings":"AAAA,OAAO,yBAAyB,CAAC,CAAC,kCAAkC;AACpE,OAAO,EAAC,QAAQ,EAAgB,MAAM,oBAAoB,CAAC;AAC3D,OAAO,EAAC,MAAM,EAAC,MAAM,mCAAmC,CAAC;AACzD,OAAO,EAAC,YAAY,EAAC,MAAM,mCAAmC,CAAC;AAC/D,OAAO,EAAC,gBAAgB,EAAC,MAAM,mDAAmD,CAAC;AACnF,OAAO,EAAC,cAAc,EAAE,cAAc,EAAC,MAAM,8BAA8B,CAAC;AAC5E,OAAO,EAAC,WAAW,EAAc,MAAM,0BAA0B,CAAC;AAClE,OAAO,EAAC,gBAAgB,EAAC,MAAM,eAAe,CAAC;AAC/C,OAAO,EAAC,kBAAkB,EAAC,MAAM,aAAa,CAAC;AAC/C,OAAO,EAAC,cAAc,EAAC,MAAM,sBAAsB,CAAC;AAEpD,MAAM,CAAC,KAAK,UAAU,SAAS,CAC7B,MAAqB,EACrB,GAAsB;IAEtB,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IAC3B,MAAM,EAAC,MAAM,EAAE,GAAG,EAAE,OAAO,EAAC,GAAG,kBAAkB,CAAC,GAAG,CAAC,CAAC;IACvD,MAAM,EAAE,GAAG,gBAAgB,CAAC,MAAM,EAAE,EAAC,MAAM,EAAE,QAAQ,EAAC,CAAC,CAAC;IACxD,MAAM,SAAS,GAAG,IAAI,cAAc,CAAC,EAAE,EAAE,MAAM,IAAI,OAAO,CAAC,CAAC;IAE5D,MAAM,
|
|
1
|
+
{"version":3,"file":"run-worker.js","sourceRoot":"","sources":["../../../../../../zero-cache/src/server/runner/run-worker.ts"],"names":[],"mappings":"AAAA,OAAO,yBAAyB,CAAC,CAAC,kCAAkC;AACpE,OAAO,EAAC,QAAQ,EAAgB,MAAM,oBAAoB,CAAC;AAC3D,OAAO,EAAC,MAAM,EAAC,MAAM,mCAAmC,CAAC;AACzD,OAAO,EAAC,YAAY,EAAC,MAAM,mCAAmC,CAAC;AAC/D,OAAO,EAAC,gBAAgB,EAAC,MAAM,mDAAmD,CAAC;AACnF,OAAO,EAAC,cAAc,EAAE,cAAc,EAAC,MAAM,8BAA8B,CAAC;AAC5E,OAAO,EAAC,WAAW,EAAc,MAAM,0BAA0B,CAAC;AAClE,OAAO,EAAC,gBAAgB,EAAC,MAAM,eAAe,CAAC;AAC/C,OAAO,EAAC,kBAAkB,EAAC,MAAM,aAAa,CAAC;AAC/C,OAAO,EAAC,SAAS,EAAC,MAAM,cAAc,CAAC;AACvC,OAAO,EAAC,cAAc,EAAC,MAAM,sBAAsB,CAAC;AAEpD,MAAM,CAAC,KAAK,UAAU,SAAS,CAC7B,MAAqB,EACrB,GAAsB;IAEtB,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IAC3B,MAAM,EAAC,MAAM,EAAE,GAAG,EAAE,OAAO,EAAC,GAAG,kBAAkB,CAAC,GAAG,CAAC,CAAC;IACvD,MAAM,EAAE,GAAG,gBAAgB,CAAC,MAAM,EAAE,EAAC,MAAM,EAAE,QAAQ,EAAC,CAAC,CAAC;IACxD,MAAM,SAAS,GAAG,IAAI,cAAc,CAAC,EAAE,EAAE,MAAM,IAAI,OAAO,CAAC,CAAC;IAE5D,MAAM,EAAC,aAAa,EAAE,IAAI,EAAE,kBAAkB,GAAG,IAAI,GAAG,CAAC,EAAC,GAAG,MAAM,CAAC;IACpE,IAAI,EAAC,MAAM,EAAC,GAAG,MAAM,CAAC;IACtB,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,MAAM,GAAG,MAAM,SAAS,CAAC,EAAE,CAAC,CAAC;QAC7B,OAAO,CAAC,cAAc,CAAC,GAAG,MAAM,CAAC;IACnC,CAAC;IACD,EAAE,CAAC,IAAI,EAAE,CACP,kBAAkB,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,aAAa,EAAE,GAAG;QAC5D,mBAAmB,gBAAgB,YAAY,MAAM,EAAE,CAC1D,CAAC;IAEF,MAAM,SAAS,GAAG,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC;IACxC,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC;YAClB,EAAE,EAAE,EAAE,EAAE,wBAAwB;YAChC,GAAG,EAAE,EAAC,CAAC,mBAAmB,CAAC,EAAE,MAAM,CAAC,OAAO,CAAC,IAAI,EAAC;SAClD,CAAC,CAAC;IACL,CAAC;IAED,6DAA6D;IAC7D,iEAAiE;IACjE,qDAAqD;IACrD,MAAM,uBAAuB,GAAG,MAAM,CAAC,cAAc,KAAK,CAAC,CAAC;IAE5D,yDAAyD;IACzD,sCAAsC;IACtC,IAAI,UAAU,GAAG,IAAI,CAAC;IACtB,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE;QAC1C,MAAM,SAAS,GAAsB;YACnC,GAAG,OAAO,CAAC,GAAG,EAAE,gDAAgD;YAChE,GAAG,OAAO,EAAE,WAAW;YACvB,CAAC,gBAAgB,CAAC,EAAE,MAAM,CAAC,EAAE;YAC7B,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC,CAAC,UAAU,IAAI,CAAC,CAAC,CAAC,EAAE,qCAAqC;YAC/E,GAAG,MAAM,CAAC,GAAG,EAAE,YAAY;SAC5B,CAAC;QAEF,IAAI,uBAAuB,EAAE,CAAC;YAC5B,iEAAiE;YACjE,uBAAuB;YACvB,MAAM,CACJ,SAAS,CAAC,uBAAuB,CAAC,KAAK,GAAG,EAC1C,UAAU,MAAM,CAAC,EAAE,qDAAqD,CACzE,CAAC;QACJ,CAAC;QAED,MAAM,iBAAiB,GAAG,SAAS,CAAC,0BAA0B,CAAC,CAAC;QAChE,IAAI,iBAAiB,IAAI,SAAS,EAAE,CAAC;YACnC,+DAA+D;YAC/D,sEAAsE;YACtE,SAAS,CAAC,0BAA0B,CAAC,IAAI,iBAAiB,CAAC,QAAQ,CAAC,GAAG,CAAC;gBACtE,CAAC,CAAC,MAAM,CAAC,EAAE;gBACX,CAAC,CAAC,IAAI,MAAM,CAAC,EAAE,EAAE,CAAC;QACtB,CAAC;QAED,IAAI,MAAoC,CAAC;QAEzC,SAAS,SAAS;YAChB,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;gBACzB,EAAE,CAAC,IAAI,EAAE,CACP,qBAAqB,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,MAAM,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAC/D,CAAC;gBACF,MAAM,CAAC,GAAG,CAAC,MAAM,GAAG,QAAQ,EAAU,CAAC,CAAC;gBACxC,MAAM,CAAC,GAAG,WAAW,CAAC,kBAAkB,EAAE,SAAS,CAAC;qBACjD,IAAI,CAAC,SAAS,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;qBACnC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC;gBAC3B,SAAS,CAAC,SAAS,CAAC,CAAC,EAAE,aAAa,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC;YACnD,CAAC;YACD,OAAO,MAAM,CAAC,OAAO,CAAC;QACxB,CAAC;QAED,OAAO,EAAC,GAAG,MAAM,EAAE,GAAG,EAAE,SAAS,EAAE,SAAS,EAAC,CAAC;IAChD,CAAC,CAAC,CAAC;IAEH,uEAAuE;IACvE,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;QAC7B,MAAM,IAAI,GAAG,YAAY,CACvB,mBAAmB,EACnB,MAAM,CAAC,GAAG,CAAC,mBAAmB,CAAC,IAAI,OAAO,CAC3C,CAAC;QACF,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,KAAK,MAAM,CAAC,SAAS,EAAE,CAAC;QAC1B,CAAC;IACH,CAAC;IAED,MAAM,CAAC,GAAG,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;IACxC,EAAE,CAAC,IAAI,EAAE,CAAC,yBAAyB,CAAC,kBAAkB,CAAC,CAAC;IACxD,MAAM,SAAS,CAAC,eAAe,EAAE,CAAC;IAClC,EAAE,CAAC,IAAI,EAAE,CAAC,aAAa,CAAC,WAAW,IAAI,CAAC,GAAG,EAAE,GAAG,OAAO,MAAM,CAAC,CAAC;IAE/D,MAAM,EAAE,IAAI,CAAC,CAAC,OAAO,EAAE,EAAC,KAAK,EAAE,IAAI,EAAC,CAAC,CAAC,CAAC;IAEvC,IAAI,CAAC;QACH,MAAM,cAAc,CAClB,EAAE,EACF,MAAM,IAAI,OAAO,EACjB,IAAI,cAAc,CAAC,MAAM,EAAE,EAAE,EAAE,uBAAuB,EAAE,OAAO,EAAE;YAC/D,IAAI,EAAE,uBAAuB,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,IAAI;SAC1D,CAAC,CACH,CAAC;IACJ,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,SAAS,CAAC,eAAe,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;IACzC,CAAC;IAED,MAAM,SAAS,CAAC,IAAI,EAAE,CAAC;AACzB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../../../../../../zero-cache/src/server/runner/runtime.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,UAAU,EAAC,MAAM,kBAAkB,CAAC;AAOjD,wBAAsB,SAAS,CAAC,EAAE,EAAE,UAAU,mBAoB7C"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { nanoid } from 'nanoid';
|
|
2
|
+
import * as v from "../../../../shared/src/valita.js";
|
|
3
|
+
// https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task-metadata-endpoint-v4-response.html
|
|
4
|
+
const containerMetadataSchema = v.object({ ['TaskARN']: v.string() });
|
|
5
|
+
export async function getTaskID(lc) {
|
|
6
|
+
const containerURI = process.env['ECS_CONTAINER_METADATA_URI_V4'];
|
|
7
|
+
if (containerURI) {
|
|
8
|
+
try {
|
|
9
|
+
const resp = await fetch(`${containerURI}/task`);
|
|
10
|
+
const { TaskARN: taskID } = v.parse(await resp.json(), containerMetadataSchema, 'passthrough');
|
|
11
|
+
// Task ARN's are long, e.g.
|
|
12
|
+
// "arn:aws:ecs:us-east-1:712907626835:task/zbugs-prod-Cluster-vvNFcPUVpGHr/0042ea25bf534dc19975e26f61441737"
|
|
13
|
+
// We only care about the unique ID, i.e. the last path component.
|
|
14
|
+
const lastSlash = taskID.lastIndexOf('/');
|
|
15
|
+
return taskID.substring(lastSlash + 1); // works for lastSlash === -1 too
|
|
16
|
+
}
|
|
17
|
+
catch (e) {
|
|
18
|
+
lc.warn?.('unable to determine task ID. falling back to random ID', e);
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
return nanoid();
|
|
22
|
+
}
|
|
23
|
+
//# sourceMappingURL=runtime.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"runtime.js","sourceRoot":"","sources":["../../../../../../zero-cache/src/server/runner/runtime.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,MAAM,EAAC,MAAM,QAAQ,CAAC;AAC9B,OAAO,KAAK,CAAC,MAAM,kCAAkC,CAAC;AAEtD,sGAAsG;AACtG,MAAM,uBAAuB,GAAG,CAAC,CAAC,MAAM,CAAC,EAAC,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,MAAM,EAAE,EAAC,CAAC,CAAC;AAEpE,MAAM,CAAC,KAAK,UAAU,SAAS,CAAC,EAAc;IAC5C,MAAM,YAAY,GAAG,OAAO,CAAC,GAAG,CAAC,+BAA+B,CAAC,CAAC;IAClE,IAAI,YAAY,EAAE,CAAC;QACjB,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,MAAM,KAAK,CAAC,GAAG,YAAY,OAAO,CAAC,CAAC;YACjD,MAAM,EAAC,OAAO,EAAE,MAAM,EAAC,GAAG,CAAC,CAAC,KAAK,CAC/B,MAAM,IAAI,CAAC,IAAI,EAAE,EACjB,uBAAuB,EACvB,aAAa,CACd,CAAC;YACF,4BAA4B;YAC5B,6GAA6G;YAC7G,kEAAkE;YAClE,MAAM,SAAS,GAAG,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;YAC1C,OAAO,MAAM,CAAC,SAAS,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC,CAAC,iCAAiC;QAC3E,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,EAAE,CAAC,IAAI,EAAE,CAAC,wDAAwD,EAAE,CAAC,CAAC,CAAC;QACzE,CAAC;IACH,CAAC;IACD,OAAO,MAAM,EAAE,CAAC;AAClB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"syncer.d.ts","sourceRoot":"","sources":["../../../../../zero-cache/src/server/syncer.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"syncer.d.ts","sourceRoot":"","sources":["../../../../../zero-cache/src/server/syncer.ts"],"names":[],"mappings":"AAmBA,OAAO,EAGL,KAAK,MAAM,EACZ,MAAM,uBAAuB,CAAC;AAY/B,MAAM,CAAC,OAAO,UAAU,SAAS,CAC/B,MAAM,EAAE,MAAM,EACd,GAAG,EAAE,MAAM,CAAC,UAAU,EACtB,GAAG,IAAI,EAAE,MAAM,EAAE,GAChB,OAAO,CAAC,IAAI,CAAC,CAuGf"}
|
|
@@ -5,7 +5,6 @@ import { assert } from "../../../shared/src/asserts.js";
|
|
|
5
5
|
import { must } from "../../../shared/src/must.js";
|
|
6
6
|
import { randInt } from "../../../shared/src/rand.js";
|
|
7
7
|
import * as v from "../../../shared/src/valita.js";
|
|
8
|
-
import { assertNormalized } from "../config/normalize.js";
|
|
9
8
|
import { getZeroConfig } from "../config/zero-config.js";
|
|
10
9
|
import { warmupConnections } from "../db/warmup.js";
|
|
11
10
|
import { exitAfter, runUntilKilled } from "../services/life-cycle.js";
|
|
@@ -29,7 +28,6 @@ function randomID() {
|
|
|
29
28
|
}
|
|
30
29
|
export default function runWorker(parent, env, ...args) {
|
|
31
30
|
const config = getZeroConfig(env, args.slice(1));
|
|
32
|
-
assertNormalized(config);
|
|
33
31
|
startOtel(config.log);
|
|
34
32
|
const lc = createLogContext(config, { worker: 'syncer' });
|
|
35
33
|
assert(args.length > 0, `replicator mode not specified`);
|
|
@@ -39,7 +37,7 @@ export default function runWorker(parent, env, ...args) {
|
|
|
39
37
|
assert(upstream.maxConnsPerWorker);
|
|
40
38
|
const replicaFile = replicaFileName(config.replica.file, fileMode);
|
|
41
39
|
lc.debug?.(`running view-syncer on ${replicaFile}`);
|
|
42
|
-
const cvrDB = pgClient(lc, cvr.db, {
|
|
40
|
+
const cvrDB = pgClient(lc, cvr.db ?? upstream.db, {
|
|
43
41
|
max: cvr.maxConnsPerWorker,
|
|
44
42
|
connection: { ['application_name']: `zero-sync-worker-${pid}-cvr` },
|
|
45
43
|
});
|
|
@@ -60,7 +58,7 @@ export default function runWorker(parent, env, ...args) {
|
|
|
60
58
|
.withContext('clientGroupID', id)
|
|
61
59
|
.withContext('instance', randomID());
|
|
62
60
|
lc.debug?.(`creating view syncer`);
|
|
63
|
-
return new ViewSyncerService(logger, shard, config.taskID, id, cvrDB, new PipelineDriver(logger, config.log, new Snapshotter(logger, replicaFile, shard), shard, operatorStorage.createClientGroupStorage(id), id), sub, drainCoordinator, config.log.slowHydrateThreshold, undefined, config.targetClientRowCount);
|
|
61
|
+
return new ViewSyncerService(logger, shard, must(config.taskID, 'main must set --task-id'), id, cvrDB, new PipelineDriver(logger, config.log, new Snapshotter(logger, replicaFile, shard), shard, operatorStorage.createClientGroupStorage(id), id), sub, drainCoordinator, config.log.slowHydrateThreshold, undefined, config.targetClientRowCount);
|
|
64
62
|
};
|
|
65
63
|
const mutagenFactory = (id) => new MutagenService(lc.withContext('component', 'mutagen').withContext('clientGroupID', id), shard, id, upstreamDB, config);
|
|
66
64
|
const pusherFactory = config.push.url === undefined
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"syncer.js","sourceRoot":"","sources":["../../../../../zero-cache/src/server/syncer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,MAAM,EAAC,MAAM,SAAS,CAAC;AAC/B,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAC,GAAG,EAAC,MAAM,cAAc,CAAC;AACjC,OAAO,EAAC,MAAM,EAAC,MAAM,gCAAgC,CAAC;AACtD,OAAO,EAAC,IAAI,EAAC,MAAM,6BAA6B,CAAC;AACjD,OAAO,EAAC,OAAO,EAAC,MAAM,6BAA6B,CAAC;AACpD,OAAO,KAAK,CAAC,MAAM,+BAA+B,CAAC;AACnD,OAAO,EAAC,
|
|
1
|
+
{"version":3,"file":"syncer.js","sourceRoot":"","sources":["../../../../../zero-cache/src/server/syncer.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,12 +1,10 @@
|
|
|
1
1
|
import { LogContext } from '@rocicorp/logger';
|
|
2
2
|
import { IncomingMessage } from 'node:http';
|
|
3
|
-
import type { ZeroConfig } from '../../config/zero-config.ts';
|
|
4
|
-
import type { PostgresDB } from '../../types/pg.ts';
|
|
5
3
|
import { type Worker } from '../../types/processes.ts';
|
|
6
|
-
import type { ShardID } from '../../types/shards.ts';
|
|
7
4
|
import { type Source } from '../../types/streams.ts';
|
|
8
5
|
import { HttpService, type Options } from '../http-service.ts';
|
|
9
6
|
import { type ChangeStreamer, type Downstream, type SubscriberContext } from './change-streamer.ts';
|
|
7
|
+
import type { ZeroConfig } from '../../config/zero-config.ts';
|
|
10
8
|
export declare class ChangeStreamerHttpServer extends HttpService {
|
|
11
9
|
#private;
|
|
12
10
|
readonly id = "change-streamer-http-server";
|
|
@@ -14,7 +12,7 @@ export declare class ChangeStreamerHttpServer extends HttpService {
|
|
|
14
12
|
}
|
|
15
13
|
export declare class ChangeStreamerHttpClient implements ChangeStreamer {
|
|
16
14
|
#private;
|
|
17
|
-
constructor(lc: LogContext,
|
|
15
|
+
constructor(lc: LogContext, uri: string);
|
|
18
16
|
subscribe(ctx: SubscriberContext): Promise<Source<Downstream>>;
|
|
19
17
|
}
|
|
20
18
|
type RequestHeaders = Pick<IncomingMessage, 'url' | 'headers'>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"change-streamer-http.d.ts","sourceRoot":"","sources":["../../../../../../zero-cache/src/services/change-streamer/change-streamer-http.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,UAAU,EAAC,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAAC,eAAe,EAAC,MAAM,WAAW,CAAC;AAG1C,OAAO,
|
|
1
|
+
{"version":3,"file":"change-streamer-http.d.ts","sourceRoot":"","sources":["../../../../../../zero-cache/src/services/change-streamer/change-streamer-http.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,UAAU,EAAC,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAAC,eAAe,EAAC,MAAM,WAAW,CAAC;AAG1C,OAAO,EAAC,KAAK,MAAM,EAAC,MAAM,0BAA0B,CAAC;AACrD,OAAO,EAAsB,KAAK,MAAM,EAAC,MAAM,wBAAwB,CAAC;AAIxE,OAAO,EAAC,WAAW,EAAE,KAAK,OAAO,EAAC,MAAM,oBAAoB,CAAC;AAC7D,OAAO,EAGL,KAAK,cAAc,EACnB,KAAK,UAAU,EACf,KAAK,iBAAiB,EACvB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,KAAK,EAAC,UAAU,EAAC,MAAM,6BAA6B,CAAC;AAW5D,qBAAa,wBAAyB,SAAQ,WAAW;;IACvD,QAAQ,CAAC,EAAE,iCAAiC;gBAI1C,MAAM,EAAE,UAAU,EAClB,EAAE,EAAE,UAAU,EACd,QAAQ,EAAE,cAAc,EACxB,IAAI,EAAE,OAAO,EACb,MAAM,EAAE,MAAM;CAuCjB;AAED,qBAAa,wBAAyB,YAAW,cAAc;;gBAIjD,EAAE,EAAE,UAAU,EAAE,GAAG,EAAE,MAAM;IAUvC,SAAS,CAAC,GAAG,EAAE,iBAAiB,GAAG,OAAO,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;CAO/D;AAED,KAAK,cAAc,GAAG,IAAI,CAAC,eAAe,EAAE,KAAK,GAAG,SAAS,CAAC,CAAC;AAE/D,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,cAAc,GAAG,iBAAiB,CAa3E"}
|
|
@@ -10,7 +10,6 @@ import { closeWithError, PROTOCOL_ERROR } from "../../types/ws.js";
|
|
|
10
10
|
import { installWebSocketReceiver } from "../dispatcher/websocket-handoff.js";
|
|
11
11
|
import { HttpService } from "../http-service.js";
|
|
12
12
|
import { downstreamSchema, PROTOCOL_VERSION, } from "./change-streamer.js";
|
|
13
|
-
import { discoverChangeStreamerAddress } from "./schema/tables.js";
|
|
14
13
|
const MIN_SUPPORTED_PROTOCOL_VERSION = 1;
|
|
15
14
|
const DIRECT_PATH_PATTERN = '/replication/:version/changes';
|
|
16
15
|
const TENANT_PATH_PATTERN = '/:tenant' + DIRECT_PATH_PATTERN;
|
|
@@ -48,22 +47,20 @@ export class ChangeStreamerHttpServer extends HttpService {
|
|
|
48
47
|
}
|
|
49
48
|
export class ChangeStreamerHttpClient {
|
|
50
49
|
#lc;
|
|
51
|
-
#
|
|
52
|
-
|
|
53
|
-
|
|
50
|
+
#uri;
|
|
51
|
+
constructor(lc, uri) {
|
|
52
|
+
const url = new URL(uri);
|
|
53
|
+
url.pathname += url.pathname.endsWith('/')
|
|
54
|
+
? CHANGES_PATH.substring(1)
|
|
55
|
+
: CHANGES_PATH;
|
|
56
|
+
uri = url.toString();
|
|
54
57
|
this.#lc = lc;
|
|
55
|
-
this.#
|
|
56
|
-
this.#changeDB = changeDB;
|
|
58
|
+
this.#uri = uri;
|
|
57
59
|
}
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
if (!address) {
|
|
61
|
-
throw new Error(`no change-streamer is running`);
|
|
62
|
-
}
|
|
63
|
-
const uri = new URL(CHANGES_PATH, `http://${address}/`);
|
|
64
|
-
this.#lc.info?.(`connecting to change-streamer@${uri}`);
|
|
60
|
+
subscribe(ctx) {
|
|
61
|
+
this.#lc.info?.(`connecting to change-streamer@${this.#uri}`);
|
|
65
62
|
const params = getParams(ctx);
|
|
66
|
-
const ws = new WebSocket(uri + `?${params.toString()}`);
|
|
63
|
+
const ws = new WebSocket(this.#uri + `?${params.toString()}`);
|
|
67
64
|
return streamIn(this.#lc, ws, downstreamSchema);
|
|
68
65
|
}
|
|
69
66
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"change-streamer-http.js","sourceRoot":"","sources":["../../../../../../zero-cache/src/services/change-streamer/change-streamer-http.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,oBAAoB,CAAC;AAC3C,OAAO,EAAC,UAAU,EAAC,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAAC,eAAe,EAAC,MAAM,WAAW,CAAC;AAC1C,OAAO,SAAS,MAAM,IAAI,CAAC;AAC3B,OAAO,EAAC,MAAM,EAAC,MAAM,mCAAmC,CAAC;
|
|
1
|
+
{"version":3,"file":"change-streamer-http.js","sourceRoot":"","sources":["../../../../../../zero-cache/src/services/change-streamer/change-streamer-http.ts"],"names":[],"mappings":"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"}
|
|
@@ -9,7 +9,7 @@ import { type ChangeStreamerService } from './change-streamer.ts';
|
|
|
9
9
|
/**
|
|
10
10
|
* Performs initialization and schema migrations to initialize a ChangeStreamerImpl.
|
|
11
11
|
*/
|
|
12
|
-
export declare function initializeStreamer(lc: LogContext, shard: ShardID, taskID: string,
|
|
12
|
+
export declare function initializeStreamer(lc: LogContext, shard: ShardID, taskID: string, changeDB: PostgresDB, changeSource: ChangeSource, subscriptionState: SubscriptionState, autoReset: boolean, setTimeoutFn?: typeof setTimeout): Promise<ChangeStreamerService>;
|
|
13
13
|
/**
|
|
14
14
|
* Internally all Downstream messages (not just commits) are given a watermark.
|
|
15
15
|
* These are used for internal ordering for:
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"change-streamer-service.d.ts","sourceRoot":"","sources":["../../../../../../zero-cache/src/services/change-streamer/change-streamer-service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,UAAU,EAAC,MAAM,kBAAkB,CAAC;AAQ5C,OAAO,KAAK,EAAC,UAAU,EAAC,MAAM,mBAAmB,CAAC;AAClD,OAAO,KAAK,EAAC,OAAO,EAAC,MAAM,uBAAuB,CAAC;AACnD,OAAO,KAAK,EAAC,IAAI,EAAE,MAAM,EAAC,MAAM,wBAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"change-streamer-service.d.ts","sourceRoot":"","sources":["../../../../../../zero-cache/src/services/change-streamer/change-streamer-service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,UAAU,EAAC,MAAM,kBAAkB,CAAC;AAQ5C,OAAO,KAAK,EAAC,UAAU,EAAC,MAAM,mBAAmB,CAAC;AAClD,OAAO,KAAK,EAAC,OAAO,EAAC,MAAM,uBAAuB,CAAC;AACnD,OAAO,KAAK,EAAC,IAAI,EAAE,MAAM,EAAC,MAAM,wBAAwB,CAAC;AAGzD,OAAO,EAEL,KAAK,gBAAgB,EACrB,KAAK,mBAAmB,EACzB,MAAM,iDAAiD,CAAC;AACzD,OAAO,KAAK,EAAC,oBAAoB,EAAC,MAAM,+CAA+C,CAAC;AACxF,OAAO,KAAK,EAAC,iBAAiB,EAAC,MAAM,2CAA2C,CAAC;AAMjF,OAAO,EACL,KAAK,qBAAqB,EAG3B,MAAM,sBAAsB,CAAC;AAY9B;;GAEG;AACH,wBAAsB,kBAAkB,CACtC,EAAE,EAAE,UAAU,EACd,KAAK,EAAE,OAAO,EACd,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,UAAU,EACpB,YAAY,EAAE,YAAY,EAC1B,iBAAiB,EAAE,iBAAiB,EACpC,SAAS,EAAE,OAAO,EAClB,YAAY,oBAAa,GACxB,OAAO,CAAC,qBAAqB,CAAC,CAsBhC;AAED;;;;;;;;;GASG;AACH,MAAM,MAAM,iBAAiB,GAAG,CAAC,SAAS,EAAE,MAAM,EAAE,gBAAgB,CAAC,CAAC;AAEtE,MAAM,MAAM,YAAY,GAAG;IACzB,OAAO,EAAE,MAAM,CAAC,mBAAmB,CAAC,CAAC;IAErC;;;;OAIG;IACH,IAAI,EAAE,IAAI,CAAC,oBAAoB,CAAC,CAAC;CAClC,CAAC;AAEF,+EAA+E;AAC/E,MAAM,WAAW,YAAY;IAC3B;;;OAGG;IACH,WAAW,CAAC,cAAc,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC;CAC5D"}
|
|
@@ -3,6 +3,7 @@ import { resolver } from '@rocicorp/resolver';
|
|
|
3
3
|
import { unreachable } from "../../../../shared/src/asserts.js";
|
|
4
4
|
import { min, } from "../../types/lexi-version.js";
|
|
5
5
|
import { Subscription } from "../../types/subscription.js";
|
|
6
|
+
import { orTimeout } from "../../types/timeout.js";
|
|
6
7
|
import {} from "../change-source/protocol/current/downstream.js";
|
|
7
8
|
import { DEFAULT_MAX_RETRY_DELAY_MS, RunningState, UnrecoverableError, } from "../running-state.js";
|
|
8
9
|
import {} from "./change-streamer.js";
|
|
@@ -15,13 +16,18 @@ import { Subscriber } from "./subscriber.js";
|
|
|
15
16
|
/**
|
|
16
17
|
* Performs initialization and schema migrations to initialize a ChangeStreamerImpl.
|
|
17
18
|
*/
|
|
18
|
-
export async function initializeStreamer(lc, shard, taskID,
|
|
19
|
+
export async function initializeStreamer(lc, shard, taskID, changeDB, changeSource, subscriptionState, autoReset, setTimeoutFn = setTimeout) {
|
|
19
20
|
// Make sure the ChangeLog DB is set up.
|
|
20
21
|
await initChangeStreamerSchema(lc, changeDB, shard);
|
|
21
22
|
await ensureReplicationConfig(lc, changeDB, subscriptionState, shard, autoReset);
|
|
22
23
|
const { replicaVersion } = subscriptionState;
|
|
23
|
-
return new ChangeStreamerImpl(lc, shard, taskID,
|
|
24
|
+
return new ChangeStreamerImpl(lc, shard, taskID, changeDB, replicaVersion, changeSource, autoReset, setTimeoutFn);
|
|
24
25
|
}
|
|
26
|
+
/**
|
|
27
|
+
* The maximum time to wait for a serving request before taking
|
|
28
|
+
* over the change stream from the previous change-streamer.
|
|
29
|
+
*/
|
|
30
|
+
const MAX_SERVING_DELAY = 30_000;
|
|
25
31
|
/**
|
|
26
32
|
* Upstream-agnostic dispatch of messages in a {@link ChangeStreamMessage} to a
|
|
27
33
|
* {@link Forwarder} and {@link Storer} to execute the forward-store-ack
|
|
@@ -182,19 +188,24 @@ class ChangeStreamerImpl {
|
|
|
182
188
|
// load-balancing / routing logic has begun routing requests to this task.
|
|
183
189
|
#serving = resolver();
|
|
184
190
|
#stream;
|
|
185
|
-
constructor(lc, shard, taskID,
|
|
191
|
+
constructor(lc, shard, taskID, changeDB, replicaVersion, source, autoReset, setTimeoutFn = setTimeout) {
|
|
186
192
|
this.id = `change-streamer`;
|
|
187
193
|
this.#lc = lc.withContext('component', 'change-streamer');
|
|
188
194
|
this.#shard = shard;
|
|
189
195
|
this.#changeDB = changeDB;
|
|
190
196
|
this.#replicaVersion = replicaVersion;
|
|
191
197
|
this.#source = source;
|
|
192
|
-
this.#storer = new Storer(lc, shard, taskID,
|
|
198
|
+
this.#storer = new Storer(lc, shard, taskID, changeDB, replicaVersion, consumed => this.#stream?.acks.push(['status', consumed[1], consumed[2]]), err => this.stop(err));
|
|
193
199
|
this.#forwarder = new Forwarder();
|
|
194
200
|
this.#autoReset = autoReset;
|
|
195
201
|
this.#state = new RunningState(this.id, undefined, setTimeoutFn);
|
|
196
202
|
}
|
|
197
203
|
async run() {
|
|
204
|
+
this.#lc.info?.('awaiting first serving subscriber');
|
|
205
|
+
if ((await orTimeout(this.#serving.promise, MAX_SERVING_DELAY)) ===
|
|
206
|
+
'timed-out') {
|
|
207
|
+
this.#lc.info?.('timed out waiting for first request');
|
|
208
|
+
}
|
|
198
209
|
this.#lc.info?.('starting change stream');
|
|
199
210
|
// Once this change-streamer acquires "ownership" of the change DB,
|
|
200
211
|
// it is safe to start the storer.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"change-streamer-service.js","sourceRoot":"","sources":["../../../../../../zero-cache/src/services/change-streamer/change-streamer-service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,UAAU,EAAC,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAAC,QAAQ,EAAC,MAAM,oBAAoB,CAAC;AAC5C,OAAO,EAAC,WAAW,EAAC,MAAM,mCAAmC,CAAC;AAC9D,OAAO,EACL,GAAG,GAGJ,MAAM,6BAA6B,CAAC;AAIrC,OAAO,EAAC,YAAY,EAAC,MAAM,6BAA6B,CAAC;AACzD,OAAO,EAIN,MAAM,iDAAiD,CAAC;AAGzD,OAAO,EACL,0BAA0B,EAC1B,YAAY,EACZ,kBAAkB,GACnB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAIN,MAAM,sBAAsB,CAAC;AAC9B,OAAO,KAAK,SAAS,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAC,SAAS,EAAC,MAAM,gBAAgB,CAAC;AACzC,OAAO,EAAC,wBAAwB,EAAC,MAAM,kBAAkB,CAAC;AAC1D,OAAO,EACL,eAAe,EACf,uBAAuB,EACvB,iBAAiB,GAClB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAC,MAAM,EAAC,MAAM,aAAa,CAAC;AACnC,OAAO,EAAC,UAAU,EAAC,MAAM,iBAAiB,CAAC;AAE3C;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACtC,EAAc,EACd,KAAc,EACd,MAAc,EACd,
|
|
1
|
+
{"version":3,"file":"change-streamer-service.js","sourceRoot":"","sources":["../../../../../../zero-cache/src/services/change-streamer/change-streamer-service.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../../../../../../zero-cache/src/services/change-streamer/schema/init.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,UAAU,EAAC,MAAM,kBAAkB,CAAC;AAMjD,OAAO,KAAK,EAAC,UAAU,EAAsB,MAAM,sBAAsB,CAAC;AAC1E,OAAO,EAAY,KAAK,OAAO,EAAC,MAAM,0BAA0B,CAAC;AA6BjE,wBAAsB,wBAAwB,CAC5C,GAAG,EAAE,UAAU,EACf,EAAE,EAAE,UAAU,EACd,KAAK,EAAE,OAAO,GACb,OAAO,CAAC,IAAI,CAAC,
|
|
1
|
+
{"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../../../../../../zero-cache/src/services/change-streamer/schema/init.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,UAAU,EAAC,MAAM,kBAAkB,CAAC;AAMjD,OAAO,KAAK,EAAC,UAAU,EAAsB,MAAM,sBAAsB,CAAC;AAC1E,OAAO,EAAY,KAAK,OAAO,EAAC,MAAM,0BAA0B,CAAC;AA6BjE,wBAAsB,wBAAwB,CAC5C,GAAG,EAAE,UAAU,EACf,EAAE,EAAE,UAAU,EACd,KAAK,EAAE,OAAO,GACb,OAAO,CAAC,IAAI,CAAC,CA0Df;AAED,wBAAsB,kBAAkB,CACtC,EAAE,EAAE,UAAU,EACd,KAAK,EAAE,OAAO,GACb,OAAO,CAAC,MAAM,CAAC,CAajB"}
|
|
@@ -49,18 +49,10 @@ export async function initChangeStreamerSchema(log, db, shard) {
|
|
|
49
49
|
`;
|
|
50
50
|
},
|
|
51
51
|
};
|
|
52
|
-
const migrateV4ToV5 = {
|
|
53
|
-
migrateSchema: async (_, db) => {
|
|
54
|
-
await db `
|
|
55
|
-
ALTER TABLE ${db(schema)}."replicationState" ADD "ownerAddress" TEXT;
|
|
56
|
-
`;
|
|
57
|
-
},
|
|
58
|
-
};
|
|
59
52
|
const schemaVersionMigrationMap = {
|
|
60
53
|
2: { migrateSchema: migrateV1toV2 },
|
|
61
54
|
3: migrateV2ToV3,
|
|
62
55
|
4: migrateV3ToV4,
|
|
63
|
-
5: migrateV4ToV5,
|
|
64
56
|
};
|
|
65
57
|
await runSchemaMigrations(log, 'change-streamer', schema, db, setupMigration, schemaVersionMigrationMap);
|
|
66
58
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"init.js","sourceRoot":"","sources":["../../../../../../../zero-cache/src/services/change-streamer/schema/init.ts"],"names":[],"mappings":"AACA,OAAO,EACL,mBAAmB,GAGpB,MAAM,0BAA0B,CAAC;AAElC,OAAO,EAAC,SAAS,EAAe,MAAM,0BAA0B,CAAC;AACjE,OAAO,EACL,2BAA2B,EAC3B,cAAc,GAEf,MAAM,aAAa,CAAC;AAErB,KAAK,UAAU,wBAAwB,CACrC,EAAc,EACd,EAAc,EACd,SAAiB,EACjB,GAAG,MAAgB;IAEnB,MAAM,IAAI,GAAG,MAAM,EAAE,CAAqB;;yBAEnB,EAAE,CAAC,CAAC,SAAS,EAAE,GAAG,MAAM,CAAC,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC;IAC7D,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;IAC1B,IAAI,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;QAC9B,OAAO,CAAC,mBAAmB;IAC7B,CAAC;IACD,KAAK,MAAM,MAAM,IAAI,MAAM,EAAE,CAAC;QAC5B,IAAI,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;YAC3B,EAAE,CAAC,IAAI,EAAE,CAAC,aAAa,MAAM,OAAO,SAAS,EAAE,CAAC,CAAC;YACjD,MAAM,EAAE,CAAA,gBAAgB,EAAE,CAAC,MAAM,CAAC,cAAc,EAAE,CAAC,SAAS,CAAC,EAAE,CAAC;YAChE,MAAM;QACR,CAAC;IACH,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,wBAAwB,CAC5C,GAAe,EACf,EAAc,EACd,KAAc;IAEd,MAAM,MAAM,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC;IAChC,MAAM,EAAC,KAAK,EAAC,GAAG,KAAK,CAAC;IACtB,MAAM,wBAAwB,CAC5B,GAAG,EACH,EAAE,EACF,MAAM,EACN,KAAK,KAAK,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,KAAK,EAAE,EAC3C,KAAK,CACN,CAAC;IAEF,MAAM,cAAc,GAAc;QAChC,aAAa,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,cAAc,CAAC,EAAE,EAAE,EAAE,EAAE,KAAK,CAAC;QACxD,cAAc,EAAE,CAAC;KAClB,CAAC;IAEF,KAAK,UAAU,aAAa,CAAC,CAAa,EAAE,EAAuB;QACjE,MAAM,EAAE,CAAA;kBACM,EAAE,CAAC,MAAM,CAAC,+CAA+C,CAAC;IAC1E,CAAC;IAED,MAAM,aAAa,GAAG;QACpB,aAAa,EAAE,KAAK,EAAE,CAAa,EAAE,EAAuB,EAAE,EAAE;YAC9D,MAAM,EAAE,CAAC,MAAM,CAAC,2BAA2B,CAAC,KAAK,CAAC,CAAC,CAAC;QACtD,CAAC;QAED,WAAW,EAAE,KAAK,EAAE,CAAa,EAAE,EAAuB,EAAE,EAAE;YAC5D,MAAM,aAAa,GAAG,MAAM,kBAAkB,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;YAC1D,MAAM,gBAAgB,GAA8B,EAAC,aAAa,EAAC,CAAC;YACpE,MAAM,EAAE,CAAA;uBACS,EAAE,CAAC,MAAM,CAAC,qBAAqB,CAAC;YACjD,MAAM,EAAE,CAAA;oBACM,EAAE,CAAC,MAAM,CAAC,uBAAuB,EAAE,CAAC,gBAAgB,CAAC,EAAE,CAAC;QACxE,CAAC;KACF,CAAC;IAEF,MAAM,aAAa,GAAG;QACpB,aAAa,EAAE,KAAK,EAAE,CAAa,EAAE,EAAuB,EAAE,EAAE;YAC9D,MAAM,EAAE,CAAA;oBACM,EAAE,CAAC,MAAM,CAAC;OACvB,CAAC;QACJ,CAAC;KACF,CAAC;IAEF,MAAM,
|
|
1
|
+
{"version":3,"file":"init.js","sourceRoot":"","sources":["../../../../../../../zero-cache/src/services/change-streamer/schema/init.ts"],"names":[],"mappings":"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"}
|
|
@@ -19,7 +19,6 @@ export type ReplicationState = {
|
|
|
19
19
|
owner: string | null;
|
|
20
20
|
};
|
|
21
21
|
export declare function createReplicationStateTable(shard: ShardID): string;
|
|
22
|
-
export declare function discoverChangeStreamerAddress(shard: ShardID, sql: PostgresDB): Promise<string | null>;
|
|
23
22
|
/**
|
|
24
23
|
* This mirrors the analogously named table in the SQLite replica
|
|
25
24
|
* (`services/replicator/schema/replication-state.ts`), and is used
|
|
@@ -31,7 +30,7 @@ export type ReplicationConfig = {
|
|
|
31
30
|
publications: readonly string[];
|
|
32
31
|
};
|
|
33
32
|
export declare function setupCDCTables(lc: LogContext, db: postgres.TransactionSql, shard: ShardID): Promise<void>;
|
|
34
|
-
export declare function markResetRequired(
|
|
33
|
+
export declare function markResetRequired(db: PostgresDB, shard: ShardID): Promise<void>;
|
|
35
34
|
export declare function ensureReplicationConfig(lc: LogContext, db: PostgresDB, subscriptionState: SubscriptionState, shard: ShardID, autoReset: boolean): Promise<void>;
|
|
36
35
|
export declare class AutoResetSignal extends AbortError {
|
|
37
36
|
readonly name = "AutoResetSignal";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tables.d.ts","sourceRoot":"","sources":["../../../../../../../zero-cache/src/services/change-streamer/schema/tables.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,UAAU,EAAC,MAAM,kBAAkB,CAAC;AAE5C,OAAO,QAAuC,MAAM,UAAU,CAAC;AAC/D,OAAO,EAAC,UAAU,EAAC,MAAM,0CAA0C,CAAC;AAEpE,OAAO,KAAK,EAAC,UAAU,EAAC,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAY,KAAK,OAAO,EAAC,MAAM,0BAA0B,CAAC;AACjE,OAAO,KAAK,EAAC,MAAM,EAAC,MAAM,8CAA8C,CAAC;AACzE,OAAO,KAAK,EAAC,iBAAiB,EAAC,MAAM,8CAA8C,CAAC;AAOpF,eAAO,MAAM,SAAS,QAAQ,CAAC;AAM/B,MAAM,MAAM,cAAc,GAAG;IAG3B,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC;AAiBF;;;GAGG;AACH,MAAM,MAAM,gBAAgB,GAAG;IAC7B,aAAa,EAAE,MAAM,CAAC;IACtB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;CACtB,CAAC;AAEF,wBAAgB,2BAA2B,CAAC,KAAK,EAAE,OAAO,
|
|
1
|
+
{"version":3,"file":"tables.d.ts","sourceRoot":"","sources":["../../../../../../../zero-cache/src/services/change-streamer/schema/tables.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,UAAU,EAAC,MAAM,kBAAkB,CAAC;AAE5C,OAAO,QAAuC,MAAM,UAAU,CAAC;AAC/D,OAAO,EAAC,UAAU,EAAC,MAAM,0CAA0C,CAAC;AAEpE,OAAO,KAAK,EAAC,UAAU,EAAC,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAY,KAAK,OAAO,EAAC,MAAM,0BAA0B,CAAC;AACjE,OAAO,KAAK,EAAC,MAAM,EAAC,MAAM,8CAA8C,CAAC;AACzE,OAAO,KAAK,EAAC,iBAAiB,EAAC,MAAM,8CAA8C,CAAC;AAOpF,eAAO,MAAM,SAAS,QAAQ,CAAC;AAM/B,MAAM,MAAM,cAAc,GAAG;IAG3B,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC;AAiBF;;;GAGG;AACH,MAAM,MAAM,gBAAgB,GAAG;IAC7B,aAAa,EAAE,MAAM,CAAC;IACtB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;CACtB,CAAC;AAEF,wBAAgB,2BAA2B,CAAC,KAAK,EAAE,OAAO,UAQzD;AAED;;;;;GAKG;AACH,MAAM,MAAM,iBAAiB,GAAG;IAC9B,cAAc,EAAE,MAAM,CAAC;IACvB,YAAY,EAAE,SAAS,MAAM,EAAE,CAAC;CACjC,CAAC;AAsBF,wBAAsB,cAAc,CAClC,EAAE,EAAE,UAAU,EACd,EAAE,EAAE,QAAQ,CAAC,cAAc,EAC3B,KAAK,EAAE,OAAO,iBAIf;AAED,wBAAsB,iBAAiB,CAAC,EAAE,EAAE,UAAU,EAAE,KAAK,EAAE,OAAO,iBAKrE;AAED,wBAAsB,uBAAuB,CAC3C,EAAE,EAAE,UAAU,EACd,EAAE,EAAE,UAAU,EACd,iBAAiB,EAAE,iBAAiB,EACpC,KAAK,EAAE,OAAO,EACd,SAAS,EAAE,OAAO,iBAuEnB;AAED,qBAAa,eAAgB,SAAQ,UAAU;IAC7C,QAAQ,CAAC,IAAI,qBAAqB;CACnC"}
|
|
@@ -10,13 +10,13 @@ function schema(shard) {
|
|
|
10
10
|
}
|
|
11
11
|
export const PG_SCHEMA = 'cdc';
|
|
12
12
|
function createSchema(shard) {
|
|
13
|
-
return
|
|
13
|
+
return `CREATE SCHEMA IF NOT EXISTS ${schema(shard)};`;
|
|
14
14
|
}
|
|
15
15
|
function createChangeLogTable(shard) {
|
|
16
16
|
// Note: The "change" column used to be JSONB, but that was problematic in that
|
|
17
17
|
// it does not handle the NULL unicode character.
|
|
18
18
|
// https://vladimir.varank.in/notes/2021/01/you-dont-insert-unicode-null-character-as-postgres-jsonb/
|
|
19
|
-
return
|
|
19
|
+
return `
|
|
20
20
|
CREATE TABLE ${schema(shard)}."changeLog" (
|
|
21
21
|
watermark TEXT,
|
|
22
22
|
pos INT8,
|
|
@@ -27,22 +27,16 @@ function createChangeLogTable(shard) {
|
|
|
27
27
|
`;
|
|
28
28
|
}
|
|
29
29
|
export function createReplicationStateTable(shard) {
|
|
30
|
-
return
|
|
30
|
+
return `
|
|
31
31
|
CREATE TABLE ${schema(shard)}."replicationState" (
|
|
32
32
|
"lastWatermark" TEXT NOT NULL,
|
|
33
33
|
"owner" TEXT,
|
|
34
|
-
"ownerAddress" TEXT,
|
|
35
34
|
"lock" INTEGER PRIMARY KEY DEFAULT 1 CHECK (lock=1)
|
|
36
35
|
);
|
|
37
36
|
`;
|
|
38
37
|
}
|
|
39
|
-
export async function discoverChangeStreamerAddress(shard, sql) {
|
|
40
|
-
const result = await sql `
|
|
41
|
-
SELECT "ownerAddress" FROM ${sql(cdcSchema(shard))}."replicationState"`;
|
|
42
|
-
return result[0].ownerAddress;
|
|
43
|
-
}
|
|
44
38
|
function createReplicationConfigTable(shard) {
|
|
45
|
-
return
|
|
39
|
+
return `
|
|
46
40
|
CREATE TABLE ${schema(shard)}."replicationConfig" (
|
|
47
41
|
"replicaVersion" TEXT NOT NULL,
|
|
48
42
|
"publications" TEXT[] NOT NULL,
|
|
@@ -61,10 +55,10 @@ export async function setupCDCTables(lc, db, shard) {
|
|
|
61
55
|
lc.info?.(`Setting up CDC tables`);
|
|
62
56
|
await db.unsafe(createTables(shard));
|
|
63
57
|
}
|
|
64
|
-
export async function markResetRequired(
|
|
58
|
+
export async function markResetRequired(db, shard) {
|
|
65
59
|
const schema = cdcSchema(shard);
|
|
66
|
-
await
|
|
67
|
-
UPDATE ${
|
|
60
|
+
await db `
|
|
61
|
+
UPDATE ${db(schema)}."replicationConfig"
|
|
68
62
|
SET "resetRequired" = true`;
|
|
69
63
|
}
|
|
70
64
|
export async function ensureReplicationConfig(lc, db, subscriptionState, shard, autoReset) {
|
|
@@ -74,11 +68,11 @@ export async function ensureReplicationConfig(lc, db, subscriptionState, shard,
|
|
|
74
68
|
lastWatermark: replicaVersion,
|
|
75
69
|
};
|
|
76
70
|
const schema = cdcSchema(shard);
|
|
77
|
-
await db.begin(async (
|
|
71
|
+
await db.begin(async (tx) => {
|
|
78
72
|
const stmts = [];
|
|
79
|
-
const results = await
|
|
73
|
+
const results = await tx `
|
|
80
74
|
SELECT "replicaVersion", "publications", "resetRequired"
|
|
81
|
-
FROM ${
|
|
75
|
+
FROM ${tx(schema)}."replicationConfig"`;
|
|
82
76
|
if (results.length) {
|
|
83
77
|
const { replicaVersion, publications } = results[0];
|
|
84
78
|
if (replicaVersion !== replicaConfig.replicaVersion ||
|
|
@@ -90,13 +84,13 @@ export async function ensureReplicationConfig(lc, db, subscriptionState, shard,
|
|
|
90
84
|
}
|
|
91
85
|
lc.info?.(`Data in cdc tables @${replicaVersion} is incompatible ` +
|
|
92
86
|
`with replica @${replicaConfig.replicaVersion}. Clearing tables.`);
|
|
93
|
-
stmts.push(
|
|
87
|
+
stmts.push(tx `TRUNCATE TABLE ${tx(schema)}."changeLog"`, tx `TRUNCATE TABLE ${tx(schema)}."replicationConfig"`, tx `TRUNCATE TABLE ${tx(schema)}."replicationState"`);
|
|
94
88
|
}
|
|
95
89
|
}
|
|
96
90
|
// Initialize (or re-initialize TRUNCATED) tables
|
|
97
91
|
if (results.length === 0 || stmts.length > 0) {
|
|
98
|
-
stmts.push(
|
|
99
|
-
${
|
|
92
|
+
stmts.push(tx `INSERT INTO ${tx(schema)}."replicationConfig" ${tx(replicaConfig)}`, tx `INSERT INTO ${tx(schema)}."replicationState"
|
|
93
|
+
${tx(replicationState)}`);
|
|
100
94
|
return Promise.all(stmts);
|
|
101
95
|
}
|
|
102
96
|
const { resetRequired } = results[0];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tables.js","sourceRoot":"","sources":["../../../../../../../zero-cache/src/services/change-streamer/schema/tables.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,UAAU,EAAC,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAAC,KAAK,EAAC,MAAM,WAAW,CAAC;AAChC,OAAO,QAAQ,EAAE,EAA6B,MAAM,UAAU,CAAC;AAC/D,OAAO,EAAC,UAAU,EAAC,MAAM,0CAA0C,CAAC;AACpE,OAAO,EAAC,MAAM,EAAC,MAAM,wCAAwC,CAAC;AAE9D,OAAO,EAAC,SAAS,EAAe,MAAM,0BAA0B,CAAC;AAIjE,yCAAyC;AACzC,SAAS,MAAM,CAAC,KAAc;IAC5B,OAAO,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC;AACjC,CAAC;AAED,MAAM,CAAC,MAAM,SAAS,GAAG,KAAK,CAAC;AAE/B,SAAS,YAAY,CAAC,KAAc;IAClC,OAAO
|
|
1
|
+
{"version":3,"file":"tables.js","sourceRoot":"","sources":["../../../../../../../zero-cache/src/services/change-streamer/schema/tables.ts"],"names":[],"mappings":"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"}
|
|
@@ -40,7 +40,7 @@ import { Subscriber } from './subscriber.ts';
|
|
|
40
40
|
export declare class Storer implements Service {
|
|
41
41
|
#private;
|
|
42
42
|
readonly id = "storer";
|
|
43
|
-
constructor(lc: LogContext, shard: ShardID, taskID: string,
|
|
43
|
+
constructor(lc: LogContext, shard: ShardID, taskID: string, db: PostgresDB, replicaVersion: string, onConsumed: (c: Commit | StatusMessage) => void, onFatal: (err: Error) => void);
|
|
44
44
|
assumeOwnership(): Promise<void>;
|
|
45
45
|
getLastWatermarkToStartStream(): Promise<string>;
|
|
46
46
|
purgeRecordsBefore(watermark: string): Promise<number>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"storer.d.ts","sourceRoot":"","sources":["../../../../../../zero-cache/src/services/change-streamer/storer.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,UAAU,EAAC,MAAM,kBAAkB,CAAC;AAU5C,OAAO,KAAK,EAAC,UAAU,EAAC,MAAM,mBAAmB,CAAC;AAClD,OAAO,EAAY,KAAK,OAAO,EAAC,MAAM,uBAAuB,CAAC;AAC9D,OAAO,EAAC,KAAK,MAAM,EAAC,MAAM,iDAAiD,CAAC;AAC5E,OAAO,KAAK,EAAC,aAAa,EAAC,MAAM,6CAA6C,CAAC;AAC/E,OAAO,KAAK,EAAC,cAAc,EAAC,MAAM,6BAA6B,CAAC;AAChE,OAAO,KAAK,EAAC,OAAO,EAAC,MAAM,eAAe,CAAC;AAC3C,OAAO,KAAK,EAAC,iBAAiB,EAAC,MAAM,8BAA8B,CAAC;AAQpE,OAAO,EAAC,UAAU,EAAC,MAAM,iBAAiB,CAAC;AAmC3C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,qBAAa,MAAO,YAAW,OAAO;;IACpC,QAAQ,CAAC,EAAE,YAAY;
|
|
1
|
+
{"version":3,"file":"storer.d.ts","sourceRoot":"","sources":["../../../../../../zero-cache/src/services/change-streamer/storer.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,UAAU,EAAC,MAAM,kBAAkB,CAAC;AAU5C,OAAO,KAAK,EAAC,UAAU,EAAC,MAAM,mBAAmB,CAAC;AAClD,OAAO,EAAY,KAAK,OAAO,EAAC,MAAM,uBAAuB,CAAC;AAC9D,OAAO,EAAC,KAAK,MAAM,EAAC,MAAM,iDAAiD,CAAC;AAC5E,OAAO,KAAK,EAAC,aAAa,EAAC,MAAM,6CAA6C,CAAC;AAC/E,OAAO,KAAK,EAAC,cAAc,EAAC,MAAM,6BAA6B,CAAC;AAChE,OAAO,KAAK,EAAC,OAAO,EAAC,MAAM,eAAe,CAAC;AAC3C,OAAO,KAAK,EAAC,iBAAiB,EAAC,MAAM,8BAA8B,CAAC;AAQpE,OAAO,EAAC,UAAU,EAAC,MAAM,iBAAiB,CAAC;AAmC3C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,qBAAa,MAAO,YAAW,OAAO;;IACpC,QAAQ,CAAC,EAAE,YAAY;gBAWrB,EAAE,EAAE,UAAU,EACd,KAAK,EAAE,OAAO,EACd,MAAM,EAAE,MAAM,EACd,EAAE,EAAE,UAAU,EACd,cAAc,EAAE,MAAM,EACtB,UAAU,EAAE,CAAC,CAAC,EAAE,MAAM,GAAG,aAAa,KAAK,IAAI,EAC/C,OAAO,EAAE,CAAC,GAAG,EAAE,KAAK,KAAK,IAAI;IAgBzB,eAAe;IAMf,6BAA6B,IAAI,OAAO,CAAC,MAAM,CAAC;IAahD,kBAAkB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAU5D,KAAK,CAAC,KAAK,EAAE,iBAAiB;IAI9B,MAAM,CAAC,CAAC,EAAE,aAAa;IAIvB,OAAO,CAAC,UAAU,EAAE,UAAU,EAAE,IAAI,EAAE,cAAc;IAMpD,YAAY,IAAI,OAAO,CAAC,IAAI,CAAC,GAAG,SAAS;IA2BnC,GAAG;IAoNT,IAAI;CAIL"}
|