@rocicorp/zero 0.23.2025081401 → 0.23.2025081900
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/analyze-query/src/bin-analyze.d.ts.map +1 -1
- package/out/analyze-query/src/bin-analyze.js +56 -99
- package/out/analyze-query/src/bin-analyze.js.map +1 -1
- package/out/analyze-query/src/explain-queries.d.ts +4 -0
- package/out/analyze-query/src/explain-queries.d.ts.map +1 -0
- package/out/analyze-query/src/explain-queries.js +18 -0
- package/out/analyze-query/src/explain-queries.js.map +1 -0
- package/out/analyze-query/src/run-ast.d.ts +29 -0
- package/out/analyze-query/src/run-ast.d.ts.map +1 -0
- package/out/analyze-query/src/run-ast.js +68 -0
- package/out/analyze-query/src/run-ast.js.map +1 -0
- package/out/{chunk-O536GEIT.js → chunk-RPVWLROJ.js} +80 -35
- package/out/{chunk-O536GEIT.js.map → chunk-RPVWLROJ.js.map} +3 -3
- package/out/{chunk-ZIZNSAHP.js → chunk-ZKQCPILX.js} +55 -58
- package/out/chunk-ZKQCPILX.js.map +7 -0
- package/out/{chunk-KKPRF2XZ.js → chunk-ZZJ2SCHD.js} +124 -63
- package/out/{chunk-KKPRF2XZ.js.map → chunk-ZZJ2SCHD.js.map} +4 -4
- package/out/{inspector-J5P4DOGH.js → inspector-NC47TWFX.js} +4 -3
- package/out/{inspector-J5P4DOGH.js.map → inspector-NC47TWFX.js.map} +2 -2
- package/out/react.js +2 -2
- package/out/solid.js +3 -3
- package/out/zero/package.json +1 -1
- package/out/zero/src/server/reaper.d.ts +2 -0
- package/out/zero/src/server/reaper.d.ts.map +1 -0
- package/out/zero/src/server/reaper.js +2 -0
- package/out/zero/src/server/reaper.js.map +1 -0
- package/out/zero-cache/src/auth/write-authorizer.d.ts.map +1 -1
- package/out/zero-cache/src/auth/write-authorizer.js +2 -3
- package/out/zero-cache/src/auth/write-authorizer.js.map +1 -1
- package/out/zero-cache/src/config/zero-config.d.ts +4 -0
- package/out/zero-cache/src/config/zero-config.d.ts.map +1 -1
- package/out/zero-cache/src/config/zero-config.js +9 -1
- package/out/zero-cache/src/config/zero-config.js.map +1 -1
- package/out/zero-cache/src/custom-queries/transform-query.d.ts +2 -3
- package/out/zero-cache/src/custom-queries/transform-query.d.ts.map +1 -1
- package/out/zero-cache/src/custom-queries/transform-query.js +18 -4
- package/out/zero-cache/src/custom-queries/transform-query.js.map +1 -1
- package/out/zero-cache/src/observability/events.js +1 -2
- package/out/zero-cache/src/observability/events.js.map +1 -1
- package/out/zero-cache/src/server/inspect-metrics-delegate.d.ts +23 -0
- package/out/zero-cache/src/server/inspect-metrics-delegate.d.ts.map +1 -0
- package/out/zero-cache/src/server/inspect-metrics-delegate.js +55 -0
- package/out/zero-cache/src/server/inspect-metrics-delegate.js.map +1 -0
- package/out/zero-cache/src/server/main.d.ts.map +1 -1
- package/out/zero-cache/src/server/main.js +12 -15
- package/out/zero-cache/src/server/main.js.map +1 -1
- package/out/zero-cache/src/server/reaper.d.ts +3 -0
- package/out/zero-cache/src/server/reaper.d.ts.map +1 -0
- package/out/zero-cache/src/server/reaper.js +31 -0
- package/out/zero-cache/src/server/reaper.js.map +1 -0
- package/out/zero-cache/src/server/runner/zero-dispatcher.d.ts.map +1 -1
- package/out/zero-cache/src/server/runner/zero-dispatcher.js +6 -0
- package/out/zero-cache/src/server/runner/zero-dispatcher.js.map +1 -1
- package/out/zero-cache/src/server/syncer.d.ts.map +1 -1
- package/out/zero-cache/src/server/syncer.js +3 -1
- package/out/zero-cache/src/server/syncer.js.map +1 -1
- package/out/zero-cache/src/services/analyze.d.ts +6 -0
- package/out/zero-cache/src/services/analyze.d.ts.map +1 -0
- package/out/zero-cache/src/services/analyze.js +70 -0
- package/out/zero-cache/src/services/analyze.js.map +1 -0
- package/out/zero-cache/src/services/change-source/custom/change-source.js +1 -1
- package/out/zero-cache/src/services/change-source/pg/initial-sync.d.ts.map +1 -1
- package/out/zero-cache/src/services/change-source/pg/initial-sync.js +8 -3
- package/out/zero-cache/src/services/change-source/pg/initial-sync.js.map +1 -1
- package/out/zero-cache/src/services/mutagen/pusher.d.ts +38 -2
- package/out/zero-cache/src/services/mutagen/pusher.d.ts.map +1 -1
- package/out/zero-cache/src/services/replicator/change-processor.d.ts +3 -2
- package/out/zero-cache/src/services/replicator/change-processor.d.ts.map +1 -1
- package/out/zero-cache/src/services/replicator/change-processor.js +39 -34
- package/out/zero-cache/src/services/replicator/change-processor.js.map +1 -1
- package/out/zero-cache/src/services/replicator/incremental-sync.d.ts.map +1 -1
- package/out/zero-cache/src/services/replicator/incremental-sync.js +1 -3
- package/out/zero-cache/src/services/replicator/incremental-sync.js.map +1 -1
- package/out/zero-cache/src/services/replicator/replication-status.js +1 -1
- package/out/zero-cache/src/services/replicator/replication-status.js.map +1 -1
- package/out/zero-cache/src/services/running-state.d.ts +5 -0
- package/out/zero-cache/src/services/running-state.d.ts.map +1 -1
- package/out/zero-cache/src/services/running-state.js +8 -1
- package/out/zero-cache/src/services/running-state.js.map +1 -1
- package/out/zero-cache/src/services/view-syncer/client-handler.d.ts +2 -0
- package/out/zero-cache/src/services/view-syncer/client-handler.d.ts.map +1 -1
- package/out/zero-cache/src/services/view-syncer/client-handler.js +3 -0
- package/out/zero-cache/src/services/view-syncer/client-handler.js.map +1 -1
- package/out/zero-cache/src/services/view-syncer/cvr-purger.d.ts +16 -0
- package/out/zero-cache/src/services/view-syncer/cvr-purger.d.ts.map +1 -0
- package/out/zero-cache/src/services/view-syncer/cvr-purger.js +86 -0
- package/out/zero-cache/src/services/view-syncer/cvr-purger.js.map +1 -0
- package/out/zero-cache/src/services/view-syncer/pipeline-driver.d.ts +16 -9
- package/out/zero-cache/src/services/view-syncer/pipeline-driver.d.ts.map +1 -1
- package/out/zero-cache/src/services/view-syncer/pipeline-driver.js +50 -30
- package/out/zero-cache/src/services/view-syncer/pipeline-driver.js.map +1 -1
- package/out/zero-cache/src/services/view-syncer/schema/cvr.d.ts.map +1 -1
- package/out/zero-cache/src/services/view-syncer/schema/cvr.js +36 -26
- package/out/zero-cache/src/services/view-syncer/schema/cvr.js.map +1 -1
- package/out/zero-cache/src/services/view-syncer/schema/init.d.ts.map +1 -1
- package/out/zero-cache/src/services/view-syncer/schema/init.js +27 -0
- package/out/zero-cache/src/services/view-syncer/schema/init.js.map +1 -1
- package/out/zero-cache/src/services/view-syncer/view-syncer.d.ts +2 -9
- package/out/zero-cache/src/services/view-syncer/view-syncer.d.ts.map +1 -1
- package/out/zero-cache/src/services/view-syncer/view-syncer.js +93 -75
- package/out/zero-cache/src/services/view-syncer/view-syncer.js.map +1 -1
- package/out/zero-cache/src/types/pg.d.ts +1 -1
- package/out/zero-cache/src/types/pg.js +1 -1
- package/out/zero-client/src/client/context.d.ts +1 -0
- package/out/zero-client/src/client/context.d.ts.map +1 -1
- package/out/zero-client/src/client/inspector/inspector.d.ts.map +1 -1
- package/out/zero-client/src/client/inspector/types.d.ts +1 -0
- package/out/zero-client/src/client/inspector/types.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 +1 -1
- package/out/zero-client/src/mod.d.ts.map +1 -1
- package/out/zero-events/src/status.d.ts +10 -9
- package/out/zero-events/src/status.d.ts.map +1 -1
- package/out/zero-events/src/status.js +7 -10
- package/out/zero-events/src/status.js.map +1 -1
- package/out/zero-protocol/src/custom-queries.d.ts +77 -5
- package/out/zero-protocol/src/custom-queries.d.ts.map +1 -1
- package/out/zero-protocol/src/custom-queries.js +19 -1
- package/out/zero-protocol/src/custom-queries.js.map +1 -1
- package/out/zero-protocol/src/down.d.ts +19 -1
- package/out/zero-protocol/src/down.d.ts.map +1 -1
- package/out/zero-protocol/src/down.js +2 -1
- package/out/zero-protocol/src/down.js.map +1 -1
- package/out/zero-protocol/src/inspect-down.d.ts +8 -0
- package/out/zero-protocol/src/inspect-down.d.ts.map +1 -1
- package/out/zero-protocol/src/inspect-down.js +1 -0
- package/out/zero-protocol/src/inspect-down.js.map +1 -1
- package/out/zero-protocol/src/protocol-version.d.ts +1 -1
- package/out/zero-protocol/src/protocol-version.d.ts.map +1 -1
- package/out/zero-protocol/src/protocol-version.js +3 -1
- package/out/zero-protocol/src/protocol-version.js.map +1 -1
- package/out/zero-server/src/mod.d.ts +1 -0
- package/out/zero-server/src/mod.d.ts.map +1 -1
- package/out/zero-server/src/mod.js +1 -0
- package/out/zero-server/src/mod.js.map +1 -1
- package/out/zero-server/src/process-mutations.d.ts +46 -0
- package/out/zero-server/src/process-mutations.d.ts.map +1 -0
- package/out/zero-server/src/process-mutations.js +187 -0
- package/out/zero-server/src/process-mutations.js.map +1 -0
- package/out/zero-server/src/push-processor.d.ts +2 -27
- package/out/zero-server/src/push-processor.d.ts.map +1 -1
- package/out/zero-server/src/push-processor.js +17 -154
- package/out/zero-server/src/push-processor.js.map +1 -1
- package/out/zero-server/src/queries/process-queries.d.ts +1 -1
- package/out/zero-server/src/queries/process-queries.d.ts.map +1 -1
- package/out/zero-server/src/queries/process-queries.js +1 -1
- package/out/zero-server/src/queries/process-queries.js.map +1 -1
- package/out/zero-server/src/zql-database.d.ts +1 -1
- package/out/zero-server/src/zql-database.d.ts.map +1 -1
- package/out/zero.js +14 -10
- package/out/zql/src/builder/builder.d.ts +5 -1
- package/out/zql/src/builder/builder.d.ts.map +1 -1
- package/out/zql/src/builder/builder.js +49 -16
- package/out/zql/src/builder/builder.js.map +1 -1
- package/out/zql/src/builder/debug-delegate.d.ts +29 -0
- package/out/zql/src/builder/debug-delegate.d.ts.map +1 -0
- package/out/zql/src/builder/debug-delegate.js +55 -0
- package/out/zql/src/builder/debug-delegate.js.map +1 -0
- package/out/zql/src/builder/filter.d.ts +0 -3
- package/out/zql/src/builder/filter.d.ts.map +1 -1
- package/out/zql/src/builder/filter.js +0 -3
- package/out/zql/src/builder/filter.js.map +1 -1
- package/out/zql/src/ivm/filter-operators.d.ts +2 -1
- package/out/zql/src/ivm/filter-operators.d.ts.map +1 -1
- package/out/zql/src/ivm/filter-operators.js +7 -2
- package/out/zql/src/ivm/filter-operators.js.map +1 -1
- package/out/zql/src/ivm/memory-source.d.ts +2 -0
- package/out/zql/src/ivm/memory-source.d.ts.map +1 -1
- package/out/zql/src/ivm/memory-source.js.map +1 -1
- package/out/zql/src/ivm/source.d.ts +2 -1
- package/out/zql/src/ivm/source.d.ts.map +1 -1
- package/out/zql/src/query/measure-push-operator.d.ts +19 -0
- package/out/zql/src/query/measure-push-operator.d.ts.map +1 -0
- package/out/zql/src/query/measure-push-operator.js +36 -0
- package/out/zql/src/query/measure-push-operator.js.map +1 -0
- package/out/zql/src/query/metrics-delegate.d.ts +3 -0
- package/out/zql/src/query/metrics-delegate.d.ts.map +1 -1
- package/out/zql/src/query/metrics-delegate.js +6 -1
- package/out/zql/src/query/metrics-delegate.js.map +1 -1
- package/out/zql/src/query/named.d.ts +38 -9
- package/out/zql/src/query/named.d.ts.map +1 -1
- package/out/zql/src/query/named.js +49 -24
- package/out/zql/src/query/named.js.map +1 -1
- package/out/zql/src/query/query-impl.d.ts +1 -1
- package/out/zql/src/query/query-impl.d.ts.map +1 -1
- package/out/zql/src/query/query-impl.js.map +1 -1
- package/out/zqlite/src/query-delegate.d.ts +1 -0
- package/out/zqlite/src/query-delegate.d.ts.map +1 -1
- package/out/zqlite/src/query-delegate.js +2 -1
- package/out/zqlite/src/query-delegate.js.map +1 -1
- package/out/zqlite/src/table-source.d.ts +3 -2
- package/out/zqlite/src/table-source.d.ts.map +1 -1
- package/out/zqlite/src/table-source.js +8 -10
- package/out/zqlite/src/table-source.js.map +1 -1
- package/package.json +1 -1
- package/out/chunk-ZIZNSAHP.js.map +0 -7
- package/out/zero-client/src/client/measure-push-operator.d.ts +0 -17
- package/out/zero-client/src/client/measure-push-operator.d.ts.map +0 -1
- package/out/zqlite/src/runtime-debug.d.ts +0 -23
- package/out/zqlite/src/runtime-debug.d.ts.map +0 -1
- package/out/zqlite/src/runtime-debug.js +0 -69
- package/out/zqlite/src/runtime-debug.js.map +0 -1
|
@@ -7,15 +7,14 @@ import { assert, unreachable } from "../../../../shared/src/asserts.js";
|
|
|
7
7
|
import { stringify } from "../../../../shared/src/bigint-json.js";
|
|
8
8
|
import { CustomKeyMap } from "../../../../shared/src/custom-key-map.js";
|
|
9
9
|
import { must } from "../../../../shared/src/must.js";
|
|
10
|
-
import { mapValues } from "../../../../shared/src/objects.js";
|
|
11
10
|
import { randInt } from "../../../../shared/src/rand.js";
|
|
12
|
-
import { TDigest } from "../../../../shared/src/tdigest.js";
|
|
13
11
|
import { ErrorKind } from "../../../../zero-protocol/src/error-kind.js";
|
|
14
12
|
import { clampTTL, MAX_TTL_MS } from "../../../../zql/src/query/ttl.js";
|
|
15
13
|
import { transformAndHashQuery, } from "../../auth/read-authorizer.js";
|
|
16
14
|
import { getServerVersion } from "../../config/zero-config.js";
|
|
17
15
|
import { CustomQueryTransformer } from "../../custom-queries/transform-query.js";
|
|
18
16
|
import { getOrCreateCounter, getOrCreateHistogram, getOrCreateUpDownCounter, } from "../../observability/metrics.js";
|
|
17
|
+
import { InspectMetricsDelegate } from "../../server/inspect-metrics-delegate.js";
|
|
19
18
|
import { ErrorForClient, getLogLevel } from "../../types/error-for-client.js";
|
|
20
19
|
import { rowIDString } from "../../types/row-key.js";
|
|
21
20
|
import { Subscription } from "../../types/subscription.js";
|
|
@@ -27,6 +26,7 @@ import { PipelineDriver } from "./pipeline-driver.js";
|
|
|
27
26
|
import { cmpVersions, EMPTY_CVR_VERSION, versionFromString, versionString, versionToCookie, } from "./schema/types.js";
|
|
28
27
|
import { ResetPipelinesSignal } from "./snapshotter.js";
|
|
29
28
|
import { ttlClockAsNumber, ttlClockFromNumber, } from "./ttl-clock.js";
|
|
29
|
+
import { wrapIterable } from "../../../../shared/src/iterables.js";
|
|
30
30
|
const tracer = trace.getTracer('view-syncer', version);
|
|
31
31
|
const PROTOCOL_VERSION_ATTR = 'protocol.version';
|
|
32
32
|
const DEFAULT_KEEPALIVE_MS = 5_000;
|
|
@@ -112,13 +112,9 @@ export class ViewSyncerService {
|
|
|
112
112
|
description: 'Time to advance all queries for a given client group after applying a new transaction to the replica.',
|
|
113
113
|
unit: 's',
|
|
114
114
|
});
|
|
115
|
-
|
|
116
|
-
#perQueryServerMetrics = new Map();
|
|
117
|
-
#serverMetrics = {
|
|
118
|
-
'query-materialization-server': new TDigest(),
|
|
119
|
-
};
|
|
115
|
+
#inspectMetricsDelegate;
|
|
120
116
|
#config;
|
|
121
|
-
constructor(config, lc, shard, taskID, clientGroupID, cvrDb, upstreamDb, pipelineDriver, versionChanges, drainCoordinator, slowHydrateThreshold, keepaliveMs = DEFAULT_KEEPALIVE_MS, setTimeoutFn = setTimeout.bind(globalThis)) {
|
|
117
|
+
constructor(config, lc, shard, taskID, clientGroupID, cvrDb, upstreamDb, pipelineDriver, versionChanges, drainCoordinator, slowHydrateThreshold, inspectMetricsDelegate, keepaliveMs = DEFAULT_KEEPALIVE_MS, setTimeoutFn = setTimeout.bind(globalThis)) {
|
|
122
118
|
const { query: pullConfig } = config;
|
|
123
119
|
this.#config = config;
|
|
124
120
|
this.id = clientGroupID;
|
|
@@ -130,6 +126,7 @@ export class ViewSyncerService {
|
|
|
130
126
|
this.#drainCoordinator = drainCoordinator;
|
|
131
127
|
this.#keepaliveMs = keepaliveMs;
|
|
132
128
|
this.#slowHydrateThreshold = slowHydrateThreshold;
|
|
129
|
+
this.#inspectMetricsDelegate = inspectMetricsDelegate;
|
|
133
130
|
this.#cvrStore = new CVRStore(lc, cvrDb, upstreamDb, shard, taskID, clientGroupID,
|
|
134
131
|
// On failure, cancel the #stateChanges subscription. The run()
|
|
135
132
|
// loop will then await #cvrStore.flushed() which rejects if necessary.
|
|
@@ -627,7 +624,7 @@ export class ViewSyncerService {
|
|
|
627
624
|
return; // hydration needs to be run with the CVR updater.
|
|
628
625
|
}
|
|
629
626
|
const gotQueries = Object.entries(cvr.queries).filter(([_, state]) => state.transformationHash !== undefined);
|
|
630
|
-
const customQueries =
|
|
627
|
+
const customQueries = new Map();
|
|
631
628
|
const otherQueries = [];
|
|
632
629
|
for (const [, query] of gotQueries) {
|
|
633
630
|
if (query.type !== 'internal' &&
|
|
@@ -635,38 +632,27 @@ export class ViewSyncerService {
|
|
|
635
632
|
continue; // No longer desired.
|
|
636
633
|
}
|
|
637
634
|
if (query.type === 'custom') {
|
|
638
|
-
customQueries.
|
|
635
|
+
customQueries.set(query.id, query);
|
|
639
636
|
}
|
|
640
637
|
else {
|
|
641
638
|
otherQueries.push(query);
|
|
642
639
|
}
|
|
643
640
|
}
|
|
644
641
|
const transformedQueries = [];
|
|
645
|
-
if (customQueries.
|
|
642
|
+
if (customQueries.size > 0 && !this.#customQueryTransformer) {
|
|
646
643
|
lc.error?.('Custom/named queries were requested but no `ZERO_QUERY_URL` is configured for Zero Cache.');
|
|
647
644
|
}
|
|
648
|
-
|
|
645
|
+
const [_, byOriginalHash] = this.#pipelines.addedQueries();
|
|
646
|
+
if (this.#customQueryTransformer && customQueries.size > 0) {
|
|
647
|
+
const filteredCustomQueries = this.#filterCustomQueries(customQueries.values(), byOriginalHash, undefined);
|
|
649
648
|
const transformedCustomQueries = await this.#customQueryTransformer.transform({
|
|
650
649
|
apiKey: this.#queryConfig.apiKey,
|
|
651
650
|
token: this.#authData?.raw,
|
|
652
651
|
cookie: this.#queryConfig.forwardCookies
|
|
653
652
|
? this.#httpCookie
|
|
654
653
|
: undefined,
|
|
655
|
-
},
|
|
656
|
-
|
|
657
|
-
if (Array.isArray(transformedCustomQueries)) {
|
|
658
|
-
for (const q of transformedCustomQueries) {
|
|
659
|
-
if ('error' in q) {
|
|
660
|
-
lc.error?.(`Error transforming custom query ${q.name}: ${q.error}`);
|
|
661
|
-
continue;
|
|
662
|
-
}
|
|
663
|
-
transformedQueries.push(q);
|
|
664
|
-
}
|
|
665
|
-
}
|
|
666
|
-
else {
|
|
667
|
-
// If the result is not an array, it is an error.
|
|
668
|
-
lc.error?.('Error calling API server to transform custom queries', transformedCustomQueries);
|
|
669
|
-
}
|
|
654
|
+
}, filteredCustomQueries);
|
|
655
|
+
this.#processTransformedCustomQueries(lc, transformedCustomQueries, (q) => transformedQueries.push(q), customQueries);
|
|
670
656
|
}
|
|
671
657
|
for (const q of otherQueries) {
|
|
672
658
|
const transformed = transformAndHashQuery(lc, q.id, q.ast, must(this.#pipelines.currentPermissions()).permissions ?? {
|
|
@@ -684,7 +670,7 @@ export class ViewSyncerService {
|
|
|
684
670
|
span.setAttribute('queryHash', hash);
|
|
685
671
|
span.setAttribute('transformationHash', transformationHash);
|
|
686
672
|
span.setAttribute('table', transformedAst.table);
|
|
687
|
-
for (const _ of this.#pipelines.addQuery(transformationHash, transformedAst, timer.start())) {
|
|
673
|
+
for (const _ of this.#pipelines.addQuery(transformationHash, hash, transformedAst, timer.start())) {
|
|
688
674
|
if (++count % TIME_SLICE_CHECK_SIZE === 0) {
|
|
689
675
|
if (timer.elapsedLap() > TIME_SLICE_MS) {
|
|
690
676
|
timer.stopLap();
|
|
@@ -697,19 +683,45 @@ export class ViewSyncerService {
|
|
|
697
683
|
const elapsed = timer.totalElapsed();
|
|
698
684
|
this.#hydrations.add(1);
|
|
699
685
|
this.#hydrationTime.record(elapsed / 1000);
|
|
700
|
-
this.#addQueryMaterializationServerMetric(
|
|
686
|
+
this.#addQueryMaterializationServerMetric(transformationHash, elapsed);
|
|
701
687
|
lc.debug?.(`hydrated ${count} rows for ${hash} (${elapsed} ms)`);
|
|
702
688
|
}
|
|
703
689
|
}
|
|
704
|
-
#
|
|
705
|
-
|
|
706
|
-
|
|
707
|
-
|
|
708
|
-
|
|
709
|
-
|
|
690
|
+
#processTransformedCustomQueries(lc, transformedCustomQueries, cb, customQueryMap) {
|
|
691
|
+
const errors = [];
|
|
692
|
+
for (const q of transformedCustomQueries) {
|
|
693
|
+
if ('error' in q) {
|
|
694
|
+
lc.error?.(`Error transforming custom query ${q.name}: ${q.error}`);
|
|
695
|
+
errors.push(q);
|
|
696
|
+
continue;
|
|
697
|
+
}
|
|
698
|
+
cb(q);
|
|
699
|
+
}
|
|
700
|
+
// todo: fan errors out to connected clients
|
|
701
|
+
// based on the client data from queries
|
|
702
|
+
this.#sendQueryTransformErrorToClients(customQueryMap, errors);
|
|
703
|
+
}
|
|
704
|
+
#sendQueryTransformErrorToClients(customQueryMap, errors) {
|
|
705
|
+
const errorGroups = new Map();
|
|
706
|
+
for (const err of errors) {
|
|
707
|
+
const q = customQueryMap.get(err.id);
|
|
708
|
+
assert(q, 'got an error that does not map back to a custom query');
|
|
709
|
+
const clientIds = Object.keys(q.clientState);
|
|
710
|
+
for (const clientId of clientIds) {
|
|
711
|
+
const group = errorGroups.get(clientId) ?? [];
|
|
712
|
+
group.push(err);
|
|
713
|
+
errorGroups.set(clientId, group);
|
|
714
|
+
}
|
|
715
|
+
}
|
|
716
|
+
for (const [clientId, errors] of errorGroups) {
|
|
717
|
+
const client = this.#clients.get(clientId);
|
|
718
|
+
if (client) {
|
|
719
|
+
client.sendQueryTransformErrors(errors);
|
|
720
|
+
}
|
|
710
721
|
}
|
|
711
|
-
|
|
712
|
-
|
|
722
|
+
}
|
|
723
|
+
#addQueryMaterializationServerMetric(transformationHash, elapsed) {
|
|
724
|
+
this.#inspectMetricsDelegate.addMetric('query-materialization-server', elapsed, transformationHash);
|
|
713
725
|
}
|
|
714
726
|
/**
|
|
715
727
|
* Adds and/or removes queries to/from the PipelineDriver to bring it
|
|
@@ -722,7 +734,7 @@ export class ViewSyncerService {
|
|
|
722
734
|
#syncQueryPipelineSet(lc, cvr) {
|
|
723
735
|
return startAsyncSpan(tracer, 'vs.#syncQueryPipelineSet', async () => {
|
|
724
736
|
assert(this.#pipelines.initialized(), 'pipelines must be initialized (syncQueryPipelineSet)');
|
|
725
|
-
const hydratedQueries = this.#pipelines.addedQueries();
|
|
737
|
+
const [hydratedQueries, byOriginalHash] = this.#pipelines.addedQueries();
|
|
726
738
|
// Convert queries to their transformed ast's and hashes
|
|
727
739
|
const hashToIDs = new Map();
|
|
728
740
|
if (this.#ttlClock === undefined) {
|
|
@@ -766,29 +778,29 @@ export class ViewSyncerService {
|
|
|
766
778
|
lc.error?.('Custom/named queries were requested but no `ZERO_QUERY_URL` is configured for Zero Cache.');
|
|
767
779
|
}
|
|
768
780
|
if (this.#customQueryTransformer && customQueries.size > 0) {
|
|
781
|
+
const filteredCustomQueries = this.#filterCustomQueries(customQueries.values(), byOriginalHash, (origQuery, existing) => {
|
|
782
|
+
for (const transformed of existing) {
|
|
783
|
+
transformedQueries.push({
|
|
784
|
+
id: origQuery.id,
|
|
785
|
+
origQuery,
|
|
786
|
+
transformed: {
|
|
787
|
+
id: origQuery.id,
|
|
788
|
+
transformationHash: transformed.transformationHash,
|
|
789
|
+
transformedAst: transformed.transformedAst,
|
|
790
|
+
},
|
|
791
|
+
});
|
|
792
|
+
}
|
|
793
|
+
});
|
|
769
794
|
const transformedCustomQueries = await this.#customQueryTransformer.transform({
|
|
770
795
|
apiKey: this.#queryConfig.apiKey,
|
|
771
796
|
token: this.#authData?.raw,
|
|
772
797
|
cookie: this.#httpCookie,
|
|
773
|
-
},
|
|
774
|
-
|
|
775
|
-
|
|
776
|
-
|
|
777
|
-
|
|
778
|
-
|
|
779
|
-
continue;
|
|
780
|
-
}
|
|
781
|
-
transformedQueries.push({
|
|
782
|
-
id: q.id,
|
|
783
|
-
origQuery: must(customQueries.get(q.id)),
|
|
784
|
-
transformed: q,
|
|
785
|
-
});
|
|
786
|
-
}
|
|
787
|
-
}
|
|
788
|
-
else {
|
|
789
|
-
// If the result is not an array, it is an error.
|
|
790
|
-
lc.error?.('Error calling API server to transform custom queries', transformedCustomQueries);
|
|
791
|
-
}
|
|
798
|
+
}, filteredCustomQueries);
|
|
799
|
+
this.#processTransformedCustomQueries(lc, transformedCustomQueries, (q) => transformedQueries.push({
|
|
800
|
+
id: q.id,
|
|
801
|
+
origQuery: must(customQueries.get(q.id)),
|
|
802
|
+
transformed: q,
|
|
803
|
+
}), customQueries);
|
|
792
804
|
}
|
|
793
805
|
const serverQueries = transformedQueries.map(({ id, origQuery, transformed }) => {
|
|
794
806
|
const ids = hashToIDs.get(transformed.transformationHash);
|
|
@@ -823,6 +835,21 @@ export class ViewSyncerService {
|
|
|
823
835
|
}
|
|
824
836
|
});
|
|
825
837
|
}
|
|
838
|
+
// Removes queries from `customQueries` that are already
|
|
839
|
+
// transformed and in the pipelines. We do not want to re-transform
|
|
840
|
+
// a query that has already been transformed. The reason is that
|
|
841
|
+
// we do not want a query that is already running to suddenly flip
|
|
842
|
+
// to error due to re-calling transform.
|
|
843
|
+
#filterCustomQueries(customQueries, byOriginalHash, onExisting) {
|
|
844
|
+
return wrapIterable(customQueries).filter(origQuery => {
|
|
845
|
+
const existing = byOriginalHash.get(origQuery.id);
|
|
846
|
+
if (existing) {
|
|
847
|
+
onExisting?.(origQuery, existing);
|
|
848
|
+
return false;
|
|
849
|
+
}
|
|
850
|
+
return true;
|
|
851
|
+
});
|
|
852
|
+
}
|
|
826
853
|
// This must be called from within the #lock.
|
|
827
854
|
#addAndRemoveQueries(lc, cvr, addQueries, removeQueries, unhydrateQueries, hashToIDs) {
|
|
828
855
|
return startAsyncSpan(tracer, 'vs.#addAndRemoveQueries', async () => {
|
|
@@ -847,7 +874,7 @@ export class ViewSyncerService {
|
|
|
847
874
|
for (const q of removeQueries) {
|
|
848
875
|
this.#pipelines.removeQuery(q.transformationHash);
|
|
849
876
|
// Remove per-query server metrics when query is deleted
|
|
850
|
-
this.#
|
|
877
|
+
this.#inspectMetricsDelegate.deleteMetricsForQuery(q.id);
|
|
851
878
|
}
|
|
852
879
|
for (const hash of unhydrateQueries) {
|
|
853
880
|
this.#pipelines.removeQuery(hash);
|
|
@@ -855,7 +882,7 @@ export class ViewSyncerService {
|
|
|
855
882
|
const ids = hashToIDs.get(hash);
|
|
856
883
|
if (ids) {
|
|
857
884
|
for (const id of ids) {
|
|
858
|
-
this.#
|
|
885
|
+
this.#inspectMetricsDelegate.deleteMetricsForQuery(id);
|
|
859
886
|
}
|
|
860
887
|
}
|
|
861
888
|
}
|
|
@@ -872,10 +899,10 @@ export class ViewSyncerService {
|
|
|
872
899
|
.withContext('hash', q.id)
|
|
873
900
|
.withContext('transformationHash', q.transformationHash);
|
|
874
901
|
lc.debug?.(`adding pipeline for query`, q.ast);
|
|
875
|
-
yield* pipelines.addQuery(q.transformationHash, q.ast, timer.start());
|
|
902
|
+
yield* pipelines.addQuery(q.transformationHash, q.id, q.ast, timer.start());
|
|
876
903
|
const elapsed = timer.stop();
|
|
877
904
|
totalProcessTime += elapsed;
|
|
878
|
-
self.#addQueryMaterializationServerMetric(q.
|
|
905
|
+
self.#addQueryMaterializationServerMetric(q.transformationHash, elapsed);
|
|
879
906
|
if (elapsed > slowHydrateThreshold) {
|
|
880
907
|
lc.warn?.('Slow query materialization', elapsed, q.ast);
|
|
881
908
|
}
|
|
@@ -1093,18 +1120,10 @@ export class ViewSyncerService {
|
|
|
1093
1120
|
case 'queries': {
|
|
1094
1121
|
const queryRows = await this.#cvrStore.inspectQueries(lc, cvr.ttlClock, body.clientID);
|
|
1095
1122
|
// Enhance query rows with server-side materialization metrics
|
|
1096
|
-
const enhancedRows = queryRows.map(row => {
|
|
1097
|
-
|
|
1098
|
-
|
|
1099
|
-
|
|
1100
|
-
'query-materialization-server': serverMetrics['query-materialization-server'].toJSON(),
|
|
1101
|
-
}
|
|
1102
|
-
: null;
|
|
1103
|
-
return {
|
|
1104
|
-
...row,
|
|
1105
|
-
metrics,
|
|
1106
|
-
};
|
|
1107
|
-
});
|
|
1123
|
+
const enhancedRows = queryRows.map(row => ({
|
|
1124
|
+
...row,
|
|
1125
|
+
metrics: this.#inspectMetricsDelegate.getMetricsJSONForQuery(row.queryID),
|
|
1126
|
+
}));
|
|
1108
1127
|
client.sendInspectResponse(lc, {
|
|
1109
1128
|
op: 'queries',
|
|
1110
1129
|
id: body.id,
|
|
@@ -1113,11 +1132,10 @@ export class ViewSyncerService {
|
|
|
1113
1132
|
break;
|
|
1114
1133
|
}
|
|
1115
1134
|
case 'metrics': {
|
|
1116
|
-
const serverMetrics = mapValues(this.#serverMetrics, metric => metric.toJSON());
|
|
1117
1135
|
client.sendInspectResponse(lc, {
|
|
1118
1136
|
op: 'metrics',
|
|
1119
1137
|
id: body.id,
|
|
1120
|
-
value:
|
|
1138
|
+
value: this.#inspectMetricsDelegate.getMetricsJSON(),
|
|
1121
1139
|
});
|
|
1122
1140
|
break;
|
|
1123
1141
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"view-syncer.js","sourceRoot":"","sources":["../../../../../../zero-cache/src/services/view-syncer/view-syncer.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"view-syncer.js","sourceRoot":"","sources":["../../../../../../zero-cache/src/services/view-syncer/view-syncer.ts"],"names":[],"mappings":"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"}
|
|
@@ -270,7 +270,7 @@ export const pgToZqlTypeMap = Object.freeze({
|
|
|
270
270
|
...pgToZqlNumericTypeMap,
|
|
271
271
|
// Date/Time types
|
|
272
272
|
'date': 'number',
|
|
273
|
-
'time': '
|
|
273
|
+
'time': 'number',
|
|
274
274
|
'timestamp': 'number',
|
|
275
275
|
'timestamptz': 'number',
|
|
276
276
|
'timestamp with time zone': 'number',
|
|
@@ -41,6 +41,7 @@ export declare class ZeroContext implements QueryDelegate {
|
|
|
41
41
|
decorateInput(input: Input): Input;
|
|
42
42
|
decorateFilterInput(input: FilterInput): FilterInput;
|
|
43
43
|
decorateSourceInput(input: SourceInput, queryID: string): Input;
|
|
44
|
+
addEdge(): void;
|
|
44
45
|
onTransactionCommit(cb: CommitListener): () => void;
|
|
45
46
|
batchViewUpdates<T>(applyViewUpdates: () => T): T;
|
|
46
47
|
processChanges(expectedHead: Hash | undefined, newHead: Hash, changes: NoIndexDiff): void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../../../../zero-client/src/client/context.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,WAAW,EAAC,MAAM,uCAAuC,CAAC;AACvE,OAAO,KAAK,EAAC,IAAI,EAAC,MAAM,iCAAiC,CAAC;AAE1D,OAAO,KAAK,EAAC,GAAG,EAAC,MAAM,mCAAmC,CAAC;AAE3D,OAAO,KAAK,EAAC,WAAW,EAAC,MAAM,0CAA0C,CAAC;AAE1E,OAAO,KAAK,EAAC,KAAK,EAAE,OAAO,EAAC,MAAM,kCAAkC,CAAC;AACrE,OAAO,KAAK,EAAC,MAAM,EAAE,WAAW,EAAC,MAAM,gCAAgC,CAAC;
|
|
1
|
+
{"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../../../../zero-client/src/client/context.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"inspector.d.ts","sourceRoot":"","sources":["../../../../../../zero-client/src/client/inspector/inspector.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAC,cAAc,EAAC,MAAM,+CAA+C,CAAC;AAKlF,OAAO,EAAU,KAAK,eAAe,EAAC,MAAM,mCAAmC,CAAC;AAiBhF,OAAO,KAAK,EAAC,MAAM,EAAC,MAAM,uDAAuD,CAAC;AAClF,OAAO,KAAK,EACV,eAAe,
|
|
1
|
+
{"version":3,"file":"inspector.d.ts","sourceRoot":"","sources":["../../../../../../zero-client/src/client/inspector/inspector.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAC,cAAc,EAAC,MAAM,+CAA+C,CAAC;AAKlF,OAAO,EAAU,KAAK,eAAe,EAAC,MAAM,mCAAmC,CAAC;AAiBhF,OAAO,KAAK,EAAC,MAAM,EAAC,MAAM,uDAAuD,CAAC;AAClF,OAAO,KAAK,EACV,eAAe,EAEhB,MAAM,+CAA+C,CAAC;AAIvD,OAAO,KAAK,EAAC,WAAW,EAAC,MAAM,wBAAwB,CAAC;AACxD,OAAO,KAAK,EAGV,SAAS,IAAI,kBAAkB,EAEhC,MAAM,YAAY,CAAC;AAEpB,KAAK,GAAG,GAAG,cAAc,CAAC,WAAW,CAAC,CAAC;AAEvC,KAAK,YAAY,GAAG,MAAM,OAAO,CAAC,SAAS,CAAC,CAAC;AAM7C,KAAK,aAAa,GAAG;IACnB,QAAQ,EAAE,CAAC,IAAI,MAAM,eAAe,GAAG,eAAe;CACvD,CAAC;AAMF,MAAM,WAAW,8BAA8B;IAC7C,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,aAAa,GAAG,SAAS,CAAC;IACzD,QAAQ,CAAC,OAAO,EAAE,aAAa,CAAC;CACjC;AAED,wBAAsB,YAAY,CAChC,GAAG,EAAE,GAAG,EACR,qBAAqB,EAAE,8BAA8B,EACrD,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,YAAY,GACnB,OAAO,CAAC,kBAAkB,CAAC,CAU7B"}
|
|
@@ -11,6 +11,7 @@ export type Metrics = {
|
|
|
11
11
|
'query-materialization-end-to-end': ReadonlyTDigest;
|
|
12
12
|
'query-update-client': ReadonlyTDigest;
|
|
13
13
|
'query-materialization-server': ReadonlyTDigest;
|
|
14
|
+
'query-update-server': ReadonlyTDigest;
|
|
14
15
|
};
|
|
15
16
|
export interface Inspector {
|
|
16
17
|
readonly client: Client;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../../zero-client/src/client/inspector/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,iBAAiB,EAAC,MAAM,gCAAgC,CAAC;AACtE,OAAO,KAAK,EAAC,eAAe,EAAC,MAAM,mCAAmC,CAAC;AACvE,OAAO,KAAK,EAAC,GAAG,EAAC,MAAM,sCAAsC,CAAC;AAC9D,OAAO,KAAK,EAAC,GAAG,EAAC,MAAM,uCAAuC,CAAC;AAC/D,OAAO,KAAK,EAAC,GAAG,EAAC,MAAM,kCAAkC,CAAC;AAE1D,MAAM,WAAW,YAAY;IAC3B,OAAO,IAAI,OAAO,CAAC,SAAS,CAAC,CAAC;CAC/B;AAED,MAAM,MAAM,OAAO,GAAG;IACpB,8BAA8B,EAAE,eAAe,CAAC;IAChD,kCAAkC,EAAE,eAAe,CAAC;IACpD,qBAAqB,EAAE,eAAe,CAAC;IACvC,8BAA8B,EAAE,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../../zero-client/src/client/inspector/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,iBAAiB,EAAC,MAAM,gCAAgC,CAAC;AACtE,OAAO,KAAK,EAAC,eAAe,EAAC,MAAM,mCAAmC,CAAC;AACvE,OAAO,KAAK,EAAC,GAAG,EAAC,MAAM,sCAAsC,CAAC;AAC9D,OAAO,KAAK,EAAC,GAAG,EAAC,MAAM,uCAAuC,CAAC;AAC/D,OAAO,KAAK,EAAC,GAAG,EAAC,MAAM,kCAAkC,CAAC;AAE1D,MAAM,WAAW,YAAY;IAC3B,OAAO,IAAI,OAAO,CAAC,SAAS,CAAC,CAAC;CAC/B;AAED,MAAM,MAAM,OAAO,GAAG;IACpB,8BAA8B,EAAE,eAAe,CAAC;IAChD,kCAAkC,EAAE,eAAe,CAAC;IACpD,qBAAqB,EAAE,eAAe,CAAC;IACvC,8BAA8B,EAAE,eAAe,CAAC;IAChD,qBAAqB,EAAE,eAAe,CAAC;CACxC,CAAC;AAEF,MAAM,WAAW,SAAS;IACxB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,WAAW,EAAE,WAAW,CAAC;IAClC,OAAO,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;IAC7B,kBAAkB,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;IACxC,OAAO,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC;IAC5B,aAAa,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;CAClC;AAED,MAAM,WAAW,MAAM;IACrB,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,WAAW,EAAE,WAAW,CAAC;IAClC,OAAO,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC;IAC5B,GAAG,IAAI,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAAC,CAAC;IAC/C,IAAI,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;CACzC;AAED,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,OAAO,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;IAC7B,kBAAkB,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;IACxC,OAAO,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC;CAC7B;AAED,MAAM,WAAW,KAAK;IACpB,QAAQ,CAAC,GAAG,EAAE,GAAG,GAAG,IAAI,CAAC;IACzB,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,QAAQ,CAAC,IAAI,EAAE,aAAa,CAAC,iBAAiB,CAAC,GAAG,IAAI,CAAC;IACvD,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,GAAG,EAAE,OAAO,CAAC;IACtB,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,aAAa,EAAE,IAAI,GAAG,IAAI,CAAC;IACpC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,GAAG,EAAE,GAAG,CAAC;IAClB,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,QAAQ,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAAC;CAClC"}
|