@rocicorp/zero 0.12.2025012902 → 0.12.2025013001
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/advanced.js +1 -1
- package/out/{chunk-QAAJZ32T.js → chunk-ZVLXEWWB.js} +71 -11
- package/out/chunk-ZVLXEWWB.js.map +7 -0
- package/out/{chunk-HQA4Z25K.js → chunk-ZXVUJVVO.js} +125 -171
- package/out/{chunk-HQA4Z25K.js.map → chunk-ZXVUJVVO.js.map} +4 -4
- package/out/solid.js +2 -2
- package/out/zero-cache/src/services/change-source/pg/change-source.d.ts.map +1 -1
- package/out/zero-cache/src/services/change-source/pg/change-source.js +86 -117
- package/out/zero-cache/src/services/change-source/pg/change-source.js.map +1 -1
- package/out/zero-cache/src/services/change-streamer/error-type-enum.d.ts +0 -2
- package/out/zero-cache/src/services/change-streamer/error-type-enum.d.ts.map +1 -1
- package/out/zero-cache/src/services/change-streamer/error-type-enum.js +0 -1
- package/out/zero-cache/src/services/change-streamer/error-type-enum.js.map +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 +6 -6
- package/out/zero-cache/src/services/change-streamer/storer.js.map +1 -1
- package/out/zero-cache/src/services/view-syncer/pipeline-driver.js +1 -1
- package/out/zero-cache/src/services/view-syncer/pipeline-driver.js.map +1 -1
- 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 +26 -2
- package/out/zero-cache/src/services/view-syncer/view-syncer.js.map +1 -1
- package/out/zero.js +2 -2
- package/out/zql/src/ivm/change.d.ts +4 -4
- package/out/zql/src/ivm/change.d.ts.map +1 -1
- package/out/zql/src/ivm/change.js +1 -4
- package/out/zql/src/ivm/change.js.map +1 -1
- package/out/zql/src/ivm/data.d.ts +2 -1
- package/out/zql/src/ivm/data.d.ts.map +1 -1
- package/out/zql/src/ivm/data.js +7 -0
- package/out/zql/src/ivm/data.js.map +1 -1
- package/out/zql/src/ivm/exists.d.ts +3 -2
- package/out/zql/src/ivm/exists.d.ts.map +1 -1
- package/out/zql/src/ivm/exists.js +55 -64
- package/out/zql/src/ivm/exists.js.map +1 -1
- package/out/zql/src/ivm/filter-push.js +1 -1
- package/out/zql/src/ivm/filter-push.js.map +1 -1
- package/out/zql/src/ivm/filter.d.ts +2 -3
- package/out/zql/src/ivm/filter.d.ts.map +1 -1
- package/out/zql/src/ivm/filter.js +12 -7
- package/out/zql/src/ivm/filter.js.map +1 -1
- package/out/zql/src/ivm/join.d.ts +4 -1
- package/out/zql/src/ivm/join.d.ts.map +1 -1
- package/out/zql/src/ivm/join.js +32 -25
- package/out/zql/src/ivm/join.js.map +1 -1
- package/out/zql/src/ivm/skip.d.ts.map +1 -1
- package/out/zql/src/ivm/skip.js +1 -2
- package/out/zql/src/ivm/skip.js.map +1 -1
- package/out/zql/src/ivm/take.d.ts.map +1 -1
- package/out/zql/src/ivm/take.js +4 -3
- package/out/zql/src/ivm/take.js.map +1 -1
- package/out/zql/src/ivm/view-apply-change.d.ts.map +1 -1
- package/out/zql/src/ivm/view-apply-change.js +4 -10
- package/out/zql/src/ivm/view-apply-change.js.map +1 -1
- package/package.json +2 -1
- package/out/chunk-QAAJZ32T.js.map +0 -7
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { trace } from '@opentelemetry/api';
|
|
2
2
|
import { Lock } from '@rocicorp/lock';
|
|
3
3
|
import { resolver } from '@rocicorp/resolver';
|
|
4
|
+
import { Stopwatch } from 'magic-stopwatch';
|
|
4
5
|
import { manualSpan, startAsyncSpan, startSpan, } from "../../../../otel/src/span.js";
|
|
5
6
|
import { version } from "../../../../otel/src/version.js";
|
|
6
7
|
import { assert, unreachable } from "../../../../shared/src/asserts.js";
|
|
@@ -476,7 +477,7 @@ export class ViewSyncerService {
|
|
|
476
477
|
}
|
|
477
478
|
// #processChanges does batched de-duping of rows. Wrap all pipelines in
|
|
478
479
|
// a single generator in order to maximize de-duping.
|
|
479
|
-
await this.#processChanges(lc, generateRowChanges(), updater, pokers, transformationHashToHash);
|
|
480
|
+
const processTime = await this.#processChanges(lc, generateRowChanges(), updater, pokers, transformationHashToHash);
|
|
480
481
|
for (const patch of await updater.deleteUnreferencedRows(lc)) {
|
|
481
482
|
pokers.forEach(poker => poker.addPatch(patch));
|
|
482
483
|
}
|
|
@@ -486,7 +487,8 @@ export class ViewSyncerService {
|
|
|
486
487
|
await this.#catchupClients(lc, cvr, this.#cvr.version, addQueries.map(q => q.id), pokers);
|
|
487
488
|
// Signal clients to commit.
|
|
488
489
|
pokers.forEach(poker => poker.end());
|
|
489
|
-
|
|
490
|
+
const wallTime = Date.now() - start;
|
|
491
|
+
lc.info?.(`finished processing queries (process: ${processTime} ms, wall: ${wallTime} ms)`);
|
|
490
492
|
});
|
|
491
493
|
}
|
|
492
494
|
/**
|
|
@@ -558,8 +560,10 @@ export class ViewSyncerService {
|
|
|
558
560
|
}
|
|
559
561
|
});
|
|
560
562
|
}
|
|
563
|
+
/** Returns the time spent processing rows (i.e. excludes yielded time) */
|
|
561
564
|
#processChanges(lc, changes, updater, pokers, transformationHashToHash) {
|
|
562
565
|
return startAsyncSpan(tracer, 'vs.#processChanges', async () => {
|
|
566
|
+
const stopwatch = new Stopwatch({ type: 'date' });
|
|
563
567
|
const start = Date.now();
|
|
564
568
|
const rows = new CustomKeyMap(rowIDString);
|
|
565
569
|
let total = 0;
|
|
@@ -612,12 +616,23 @@ export class ViewSyncerService {
|
|
|
612
616
|
if (rows.size % CURSOR_PAGE_SIZE === 0) {
|
|
613
617
|
await processBatch();
|
|
614
618
|
}
|
|
619
|
+
if (rows.size % TIME_SLICE_CHECK_SIZE === 0) {
|
|
620
|
+
const { elapsed } = stopwatch;
|
|
621
|
+
if (elapsed > TIME_SLICE_MS) {
|
|
622
|
+
lc.debug?.(`yielding at ${rows.size} rows (${elapsed} ms)`);
|
|
623
|
+
stopwatch.stop(RECORD_LAP);
|
|
624
|
+
await yieldProcess();
|
|
625
|
+
stopwatch.start();
|
|
626
|
+
}
|
|
627
|
+
}
|
|
615
628
|
}
|
|
616
629
|
if (rows.size) {
|
|
617
630
|
await processBatch();
|
|
618
631
|
}
|
|
619
632
|
span.setAttribute('totalRows', total);
|
|
620
633
|
});
|
|
634
|
+
stopwatch.stop(RECORD_LAP);
|
|
635
|
+
return stopwatch.laps.reduce((total, lap) => total + lap.elapsed, 0);
|
|
621
636
|
});
|
|
622
637
|
}
|
|
623
638
|
/**
|
|
@@ -683,7 +698,16 @@ export class ViewSyncerService {
|
|
|
683
698
|
}
|
|
684
699
|
}
|
|
685
700
|
}
|
|
701
|
+
// Update CVR after every 10000 rows.
|
|
686
702
|
const CURSOR_PAGE_SIZE = 10000;
|
|
703
|
+
// Check the elapsed time every 500 rows.
|
|
704
|
+
const TIME_SLICE_CHECK_SIZE = 500;
|
|
705
|
+
// Yield the process after churning for > 500ms.
|
|
706
|
+
const TIME_SLICE_MS = 500;
|
|
707
|
+
const RECORD_LAP = true; // Readability for Stopwatch.stop(recordlap: boolean);
|
|
708
|
+
function yieldProcess() {
|
|
709
|
+
return new Promise(resolve => setTimeout(resolve, 0));
|
|
710
|
+
}
|
|
687
711
|
function contentsAndVersion(row) {
|
|
688
712
|
const { [ZERO_VERSION_COLUMN_NAME]: version, ...contents } = row;
|
|
689
713
|
if (typeof version !== 'string' || version.length === 0) {
|
|
@@ -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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"}
|
package/out/zero.js
CHANGED
|
@@ -18,9 +18,9 @@ import {
|
|
|
18
18
|
relationships,
|
|
19
19
|
string,
|
|
20
20
|
table
|
|
21
|
-
} from "./chunk-
|
|
21
|
+
} from "./chunk-ZXVUJVVO.js";
|
|
22
22
|
import "./chunk-HARIWJ2J.js";
|
|
23
|
-
import "./chunk-
|
|
23
|
+
import "./chunk-ZVLXEWWB.js";
|
|
24
24
|
import "./chunk-424PT5DM.js";
|
|
25
25
|
export {
|
|
26
26
|
ANYONE_CAN,
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import type { Row } from '../../../zero-protocol/src/data.ts';
|
|
2
1
|
import type { Node } from './data.ts';
|
|
3
2
|
export type Change = AddChange | RemoveChange | ChildChange | EditChange;
|
|
4
3
|
export type ChangeType = Change['type'];
|
|
@@ -17,11 +16,13 @@ export type RemoveChange = {
|
|
|
17
16
|
node: Node;
|
|
18
17
|
};
|
|
19
18
|
/**
|
|
20
|
-
* The node
|
|
19
|
+
* The node's row is unchanged, but one of its descendants has changed.
|
|
20
|
+
* The node's relationships will reflect the change, `child` specifies the
|
|
21
|
+
* specific descendant change.
|
|
21
22
|
*/
|
|
22
23
|
export type ChildChange = {
|
|
23
24
|
type: 'child';
|
|
24
|
-
|
|
25
|
+
node: Node;
|
|
25
26
|
child: {
|
|
26
27
|
relationshipName: string;
|
|
27
28
|
change: Change;
|
|
@@ -54,5 +55,4 @@ export type EditChange = {
|
|
|
54
55
|
node: Node;
|
|
55
56
|
oldNode: Node;
|
|
56
57
|
};
|
|
57
|
-
export declare function rowForChange(change: Change): Row;
|
|
58
58
|
//# sourceMappingURL=change.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"change.d.ts","sourceRoot":"","sources":["../../../../../zql/src/ivm/change.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,
|
|
1
|
+
{"version":3,"file":"change.d.ts","sourceRoot":"","sources":["../../../../../zql/src/ivm/change.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,IAAI,EAAC,MAAM,WAAW,CAAC;AAEpC,MAAM,MAAM,MAAM,GAAG,SAAS,GAAG,YAAY,GAAG,WAAW,GAAG,UAAU,CAAC;AACzE,MAAM,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC;AAKxC;;GAEG;AACH,MAAM,MAAM,SAAS,GAAG;IACtB,IAAI,EAAE,KAAK,CAAC;IACZ,IAAI,EAAE,IAAI,CAAC;CACZ,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,YAAY,GAAG;IACzB,IAAI,EAAE,QAAQ,CAAC;IACf,IAAI,EAAE,IAAI,CAAC;CACZ,CAAC;AAEF;;;;GAIG;AACH,MAAM,MAAM,WAAW,GAAG;IACxB,IAAI,EAAE,OAAO,CAAC;IACd,IAAI,EAAE,IAAI,CAAC;IACX,KAAK,EAAE;QACL,gBAAgB,EAAE,MAAM,CAAC;QACzB,MAAM,EAAE,MAAM,CAAC;KAChB,CAAC;CACH,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,MAAM,MAAM,UAAU,GAAG;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,IAAI,CAAC;IACX,OAAO,EAAE,IAAI,CAAC;CACf,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"change.js","sourceRoot":"","sources":["../../../../../zql/src/ivm/change.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"change.js","sourceRoot":"","sources":["../../../../../zql/src/ivm/change.ts"],"names":[],"mappings":""}
|
|
@@ -7,7 +7,7 @@ import type { Stream } from './stream.ts';
|
|
|
7
7
|
*/
|
|
8
8
|
export type Node = {
|
|
9
9
|
row: Row;
|
|
10
|
-
relationships: Record<string, Stream<Node>>;
|
|
10
|
+
relationships: Record<string, () => Stream<Node>>;
|
|
11
11
|
};
|
|
12
12
|
/**
|
|
13
13
|
* Compare two values. The values must be of the same type. This function
|
|
@@ -38,4 +38,5 @@ export declare function makeComparator(order: Ordering, reverse?: boolean | unde
|
|
|
38
38
|
* semantic for your application.
|
|
39
39
|
*/
|
|
40
40
|
export declare function valuesEqual(a: Value, b: Value): boolean;
|
|
41
|
+
export declare function drainStreams(node: Node): void;
|
|
41
42
|
//# sourceMappingURL=data.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"data.d.ts","sourceRoot":"","sources":["../../../../../zql/src/ivm/data.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAC,QAAQ,EAAC,MAAM,mCAAmC,CAAC;AAChE,OAAO,KAAK,EAAC,GAAG,EAAE,KAAK,EAAC,MAAM,oCAAoC,CAAC;AACnE,OAAO,KAAK,EAAC,MAAM,EAAC,MAAM,aAAa,CAAC;AAExC;;;GAGG;AACH,MAAM,MAAM,IAAI,GAAG;IACjB,GAAG,EAAE,GAAG,CAAC;IACT,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"data.d.ts","sourceRoot":"","sources":["../../../../../zql/src/ivm/data.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAC,QAAQ,EAAC,MAAM,mCAAmC,CAAC;AAChE,OAAO,KAAK,EAAC,GAAG,EAAE,KAAK,EAAC,MAAM,oCAAoC,CAAC;AACnE,OAAO,KAAK,EAAC,MAAM,EAAC,MAAM,aAAa,CAAC;AAExC;;;GAGG;AACH,MAAM,MAAM,IAAI,GAAG;IACjB,GAAG,EAAE,GAAG,CAAC;IACT,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;CACnD,CAAC;AAEF;;;;;;;;;;;GAWG;AACH,wBAAgB,aAAa,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,GAAG,MAAM,CAkCxD;AAED,MAAM,MAAM,eAAe,GAAG,OAAO,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;AAExD;;;;GAIG;AACH,wBAAgB,kBAAkB,CAAC,CAAC,EAAE,KAAK,GAAG,eAAe,CAE5D;AAED,MAAM,MAAM,UAAU,GAAG,CAAC,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,KAAK,MAAM,CAAC;AAEtD,wBAAgB,cAAc,CAC5B,KAAK,EAAE,QAAQ,EACf,OAAO,CAAC,EAAE,OAAO,GAAG,SAAS,GAC5B,UAAU,CAaZ;AAED;;;;;GAKG;AACH,wBAAgB,WAAW,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,GAAG,OAAO,CAMvD;AAED,wBAAgB,YAAY,CAAC,IAAI,EAAE,IAAI,QAMtC"}
|
package/out/zql/src/ivm/data.js
CHANGED
|
@@ -81,4 +81,11 @@ export function valuesEqual(a, b) {
|
|
|
81
81
|
}
|
|
82
82
|
return a === b;
|
|
83
83
|
}
|
|
84
|
+
export function drainStreams(node) {
|
|
85
|
+
for (const stream of Object.values(node.relationships)) {
|
|
86
|
+
for (const node of stream()) {
|
|
87
|
+
drainStreams(node);
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
}
|
|
84
91
|
//# sourceMappingURL=data.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"data.js","sourceRoot":"","sources":["../../../../../zql/src/ivm/data.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,WAAW,EAAC,MAAM,cAAc,CAAC;AACzC,OAAO,EACL,aAAa,EACb,YAAY,EACZ,YAAY,GACb,MAAM,gCAAgC,CAAC;AAcxC;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,aAAa,CAAC,CAAQ,EAAE,CAAQ;IAC9C,CAAC,GAAG,kBAAkB,CAAC,CAAC,CAAC,CAAC;IAC1B,CAAC,GAAG,kBAAkB,CAAC,CAAC,CAAC,CAAC;IAE1B,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;QACZ,OAAO,CAAC,CAAC;IACX,CAAC;IACD,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC;QACf,OAAO,CAAC,CAAC,CAAC;IACZ,CAAC;IACD,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC;QACf,OAAO,CAAC,CAAC;IACX,CAAC;IACD,IAAI,OAAO,CAAC,KAAK,SAAS,EAAE,CAAC;QAC3B,aAAa,CAAC,CAAC,CAAC,CAAC;QACjB,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACpB,CAAC;IACD,IAAI,OAAO,CAAC,KAAK,QAAQ,EAAE,CAAC;QAC1B,YAAY,CAAC,CAAC,CAAC,CAAC;QAChB,OAAO,CAAC,GAAG,CAAC,CAAC;IACf,CAAC;IACD,IAAI,OAAO,CAAC,KAAK,QAAQ,EAAE,CAAC;QAC1B,YAAY,CAAC,CAAC,CAAC,CAAC;QAChB,yEAAyE;QACzE,gCAAgC;QAChC,8EAA8E;QAC9E,EAAE;QACF,0EAA0E;QAC1E,+BAA+B;QAC/B,EAAE;QACF,qDAAqD;QACrD,OAAO,WAAW,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAC3B,CAAC;IACD,MAAM,IAAI,KAAK,CAAC,qBAAqB,CAAC,EAAE,CAAC,CAAC;AAC5C,CAAC;AAID;;;;GAIG;AACH,MAAM,UAAU,kBAAkB,CAAC,CAAQ;IACzC,OAAO,CAAC,IAAI,IAAI,CAAC;AACnB,CAAC;AAID,MAAM,UAAU,cAAc,CAC5B,KAAe,EACf,OAA6B;IAE7B,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;QACd,gDAAgD;QAChD,KAAK,MAAM,GAAG,IAAI,KAAK,EAAE,CAAC;YACxB,MAAM,KAAK,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC;YACrB,MAAM,IAAI,GAAG,aAAa,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;YAC/C,IAAI,IAAI,KAAK,CAAC,EAAE,CAAC;gBACf,MAAM,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;gBAC/C,OAAO,OAAO,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC;YACpC,CAAC;QACH,CAAC;QACD,OAAO,CAAC,CAAC;IACX,CAAC,CAAC;AACJ,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,WAAW,CAAC,CAAQ,EAAE,CAAQ;IAC5C,kCAAkC;IAClC,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,IAAI,EAAE,CAAC;QAC3B,OAAO,KAAK,CAAC;IACf,CAAC;IACD,OAAO,CAAC,KAAK,CAAC,CAAC;AACjB,CAAC"}
|
|
1
|
+
{"version":3,"file":"data.js","sourceRoot":"","sources":["../../../../../zql/src/ivm/data.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import type { CompoundKey } from '../../../zero-protocol/src/ast.ts';
|
|
2
2
|
import { type Change } from './change.ts';
|
|
3
|
+
import { type Node } from './data.ts';
|
|
3
4
|
import { type FetchRequest, type Input, type Operator, type Output, type Storage } from './operator.ts';
|
|
4
5
|
import type { SourceSchema } from './schema.ts';
|
|
5
6
|
/**
|
|
@@ -12,8 +13,8 @@ export declare class Exists implements Operator {
|
|
|
12
13
|
setOutput(output: Output): void;
|
|
13
14
|
destroy(): void;
|
|
14
15
|
getSchema(): SourceSchema;
|
|
15
|
-
fetch(req: FetchRequest): Generator<
|
|
16
|
-
cleanup(req: FetchRequest): Generator<
|
|
16
|
+
fetch(req: FetchRequest): Generator<Node, void, unknown>;
|
|
17
|
+
cleanup(req: FetchRequest): Generator<Node, void, unknown>;
|
|
17
18
|
push(change: Change): void;
|
|
18
19
|
}
|
|
19
20
|
//# sourceMappingURL=exists.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"exists.d.ts","sourceRoot":"","sources":["../../../../../zql/src/ivm/exists.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"exists.d.ts","sourceRoot":"","sources":["../../../../../zql/src/ivm/exists.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAC,WAAW,EAAC,MAAM,mCAAmC,CAAC;AACnE,OAAO,EAAC,KAAK,MAAM,EAAC,MAAM,aAAa,CAAC;AACxC,OAAO,EAGL,KAAK,IAAI,EAEV,MAAM,WAAW,CAAC;AACnB,OAAO,EAEL,KAAK,YAAY,EACjB,KAAK,KAAK,EACV,KAAK,QAAQ,EACb,KAAK,MAAM,EACX,KAAK,OAAO,EACb,MAAM,eAAe,CAAC;AACvB,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,aAAa,CAAC;AAa9C;;;GAGG;AACH,qBAAa,MAAO,YAAW,QAAQ;;gBAWnC,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,OAAO,EAChB,gBAAgB,EAAE,MAAM,EACxB,aAAa,EAAE,WAAW,EAC1B,IAAI,EAAE,QAAQ,GAAG,YAAY;IAiB/B,SAAS,CAAC,MAAM,EAAE,MAAM;IAIxB,OAAO,IAAI,IAAI;IAIf,SAAS,IAAI,YAAY;IAIxB,KAAK,CAAC,GAAG,EAAE,YAAY;IAQvB,OAAO,CAAC,GAAG,EAAE,YAAY;IAW1B,IAAI,CAAC,MAAM,EAAE,MAAM;CAoNpB"}
|
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
import { areEqual } from "../../../shared/src/arrays.js";
|
|
2
2
|
import { assert, unreachable } from "../../../shared/src/asserts.js";
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
import { normalizeUndefined } from "./data.js";
|
|
3
|
+
import {} from "./change.js";
|
|
4
|
+
import { drainStreams, normalizeUndefined, } from "./data.js";
|
|
6
5
|
import { throwOutput, } from "./operator.js";
|
|
7
6
|
import { first } from "./stream.js";
|
|
8
7
|
/**
|
|
@@ -39,17 +38,20 @@ export class Exists {
|
|
|
39
38
|
}
|
|
40
39
|
*fetch(req) {
|
|
41
40
|
for (const node of this.#input.fetch(req)) {
|
|
42
|
-
if (this.#filter(node
|
|
41
|
+
if (this.#filter(node)) {
|
|
43
42
|
yield node;
|
|
44
43
|
}
|
|
45
44
|
}
|
|
46
45
|
}
|
|
47
46
|
*cleanup(req) {
|
|
48
47
|
for (const node of this.#input.cleanup(req)) {
|
|
49
|
-
if (this.#filter(node
|
|
48
|
+
if (this.#filter(node)) {
|
|
50
49
|
yield node;
|
|
51
50
|
}
|
|
52
|
-
|
|
51
|
+
else {
|
|
52
|
+
drainStreams(node);
|
|
53
|
+
}
|
|
54
|
+
this.#delSize(node);
|
|
53
55
|
}
|
|
54
56
|
}
|
|
55
57
|
push(change) {
|
|
@@ -62,17 +64,17 @@ export class Exists {
|
|
|
62
64
|
return;
|
|
63
65
|
}
|
|
64
66
|
case 'remove': {
|
|
65
|
-
const size = this.#getSize(change.node
|
|
67
|
+
const size = this.#getSize(change.node);
|
|
66
68
|
// If size is undefined, this operator has not output
|
|
67
69
|
// this row before and so it is unnecessary to output a remove for
|
|
68
|
-
// it. Which is fortunate, since #fetchSize
|
|
70
|
+
// it. Which is fortunate, since #fetchSize would
|
|
69
71
|
// not be able to fetch a Node for this change since it is
|
|
70
72
|
// removed from the source.
|
|
71
73
|
if (size === undefined) {
|
|
72
74
|
return;
|
|
73
75
|
}
|
|
74
76
|
this.#pushWithFilter(change, size);
|
|
75
|
-
this.#delSize(change.node
|
|
77
|
+
this.#delSize(change.node);
|
|
76
78
|
return;
|
|
77
79
|
}
|
|
78
80
|
case 'child':
|
|
@@ -88,14 +90,14 @@ export class Exists {
|
|
|
88
90
|
}
|
|
89
91
|
switch (change.child.change.type) {
|
|
90
92
|
case 'add': {
|
|
91
|
-
let size = this.#getSize(change.
|
|
93
|
+
let size = this.#getSize(change.node);
|
|
92
94
|
if (size !== undefined) {
|
|
93
95
|
size++;
|
|
94
|
-
this.#setCachedSize(change.
|
|
95
|
-
this.#setSize(change.
|
|
96
|
+
this.#setCachedSize(change.node, size);
|
|
97
|
+
this.#setSize(change.node, size);
|
|
96
98
|
}
|
|
97
99
|
else {
|
|
98
|
-
size = this.#fetchSize(change.
|
|
100
|
+
size = this.#fetchSize(change.node);
|
|
99
101
|
}
|
|
100
102
|
if (size === 1) {
|
|
101
103
|
const type = this.#not ? 'remove' : 'add';
|
|
@@ -109,7 +111,7 @@ export class Exists {
|
|
|
109
111
|
}
|
|
110
112
|
this.#output.push({
|
|
111
113
|
type,
|
|
112
|
-
node:
|
|
114
|
+
node: change.node,
|
|
113
115
|
});
|
|
114
116
|
}
|
|
115
117
|
else {
|
|
@@ -118,7 +120,7 @@ export class Exists {
|
|
|
118
120
|
return;
|
|
119
121
|
}
|
|
120
122
|
case 'remove': {
|
|
121
|
-
let size = this.#getSize(change.
|
|
123
|
+
let size = this.#getSize(change.node);
|
|
122
124
|
if (size !== undefined) {
|
|
123
125
|
// Work around for issue https://bugs.rocicorp.dev/issue/3204
|
|
124
126
|
// assert(size > 0);
|
|
@@ -126,11 +128,11 @@ export class Exists {
|
|
|
126
128
|
return;
|
|
127
129
|
}
|
|
128
130
|
size--;
|
|
129
|
-
this.#setCachedSize(change.
|
|
130
|
-
this.#setSize(change.
|
|
131
|
+
this.#setCachedSize(change.node, size);
|
|
132
|
+
this.#setSize(change.node, size);
|
|
131
133
|
}
|
|
132
134
|
else {
|
|
133
|
-
size = this.#fetchSize(change.
|
|
135
|
+
size = this.#fetchSize(change.node);
|
|
134
136
|
}
|
|
135
137
|
if (size === 0) {
|
|
136
138
|
const type = this.#not ? 'add' : 'remove';
|
|
@@ -143,7 +145,7 @@ export class Exists {
|
|
|
143
145
|
}
|
|
144
146
|
this.#output.push({
|
|
145
147
|
type,
|
|
146
|
-
node:
|
|
148
|
+
node: change.node,
|
|
147
149
|
});
|
|
148
150
|
}
|
|
149
151
|
else {
|
|
@@ -158,99 +160,88 @@ export class Exists {
|
|
|
158
160
|
}
|
|
159
161
|
}
|
|
160
162
|
/**
|
|
161
|
-
* Returns whether or not the
|
|
163
|
+
* Returns whether or not the node's this.#relationshipName
|
|
162
164
|
* relationship passes the exist/not exists filter condition.
|
|
163
165
|
* If the optional `size` is passed it is used.
|
|
164
166
|
* Otherwise, if there is a stored size for the row it is used.
|
|
165
|
-
* Otherwise the size is computed by
|
|
166
|
-
* this.#
|
|
167
|
+
* Otherwise the size is computed by streaming the node's
|
|
168
|
+
* relationship with this.#relationshipName (this computed size is also
|
|
169
|
+
* stored).
|
|
167
170
|
*/
|
|
168
|
-
#filter(
|
|
169
|
-
const exists = (size ?? this.#getOrFetchSize(
|
|
171
|
+
#filter(node, size) {
|
|
172
|
+
const exists = (size ?? this.#getOrFetchSize(node)) > 0;
|
|
170
173
|
return this.#not ? !exists : exists;
|
|
171
174
|
}
|
|
172
175
|
/**
|
|
173
176
|
* Pushes a change if this.#filter is true for its row.
|
|
174
177
|
*/
|
|
175
178
|
#pushWithFilter(change, size) {
|
|
176
|
-
|
|
177
|
-
if (this.#filter(row, size)) {
|
|
179
|
+
if (this.#filter(change.node, size)) {
|
|
178
180
|
this.#output.push(change);
|
|
179
181
|
}
|
|
180
182
|
}
|
|
181
|
-
#getSize(
|
|
182
|
-
return this.#storage.get(this.#makeSizeStorageKey(
|
|
183
|
+
#getSize(node) {
|
|
184
|
+
return this.#storage.get(this.#makeSizeStorageKey(node));
|
|
183
185
|
}
|
|
184
|
-
#setSize(
|
|
185
|
-
this.#storage.set(this.#makeSizeStorageKey(
|
|
186
|
+
#setSize(node, size) {
|
|
187
|
+
this.#storage.set(this.#makeSizeStorageKey(node), size);
|
|
186
188
|
}
|
|
187
|
-
#setCachedSize(
|
|
189
|
+
#setCachedSize(node, size) {
|
|
188
190
|
if (this.#skipCache) {
|
|
189
191
|
return;
|
|
190
192
|
}
|
|
191
|
-
this.#storage.set(this.#makeCacheStorageKey(
|
|
193
|
+
this.#storage.set(this.#makeCacheStorageKey(node), size);
|
|
192
194
|
}
|
|
193
|
-
#getCachedSize(
|
|
195
|
+
#getCachedSize(node) {
|
|
194
196
|
if (this.#skipCache) {
|
|
195
197
|
return undefined;
|
|
196
198
|
}
|
|
197
|
-
return this.#storage.get(this.#makeCacheStorageKey(
|
|
199
|
+
return this.#storage.get(this.#makeCacheStorageKey(node));
|
|
198
200
|
}
|
|
199
|
-
#delSize(
|
|
200
|
-
this.#storage.del(this.#makeSizeStorageKey(
|
|
201
|
+
#delSize(node) {
|
|
202
|
+
this.#storage.del(this.#makeSizeStorageKey(node));
|
|
201
203
|
if (!this.#skipCache) {
|
|
202
|
-
const cacheKey = this.#makeCacheStorageKey(
|
|
204
|
+
const cacheKey = this.#makeCacheStorageKey(node);
|
|
203
205
|
if (first(this.#storage.scan({ prefix: `${cacheKey}/` })) === undefined) {
|
|
204
206
|
this.#storage.del(cacheKey);
|
|
205
207
|
}
|
|
206
208
|
}
|
|
207
209
|
}
|
|
208
|
-
#getOrFetchSize(
|
|
209
|
-
const size = this.#getSize(
|
|
210
|
+
#getOrFetchSize(node) {
|
|
211
|
+
const size = this.#getSize(node);
|
|
210
212
|
if (size !== undefined) {
|
|
211
213
|
return size;
|
|
212
214
|
}
|
|
213
|
-
|
|
214
|
-
// determine its size (we can't consume the relationship of
|
|
215
|
-
// the node we are going to push or return via fetch to
|
|
216
|
-
// our output, because the relationships are one time use streams).
|
|
217
|
-
return this.#fetchSize(row);
|
|
215
|
+
return this.#fetchSize(node);
|
|
218
216
|
}
|
|
219
|
-
#fetchSize(
|
|
220
|
-
const cachedSize = this.#getCachedSize(
|
|
217
|
+
#fetchSize(node) {
|
|
218
|
+
const cachedSize = this.#getCachedSize(node);
|
|
221
219
|
if (cachedSize !== undefined) {
|
|
222
|
-
this.#setSize(
|
|
220
|
+
this.#setSize(node, cachedSize);
|
|
223
221
|
return cachedSize;
|
|
224
222
|
}
|
|
225
|
-
const relationship =
|
|
223
|
+
const relationship = node.relationships[this.#relationshipName];
|
|
226
224
|
assert(relationship);
|
|
227
225
|
let size = 0;
|
|
228
|
-
for (const _relatedNode of relationship) {
|
|
226
|
+
for (const _relatedNode of relationship()) {
|
|
229
227
|
size++;
|
|
230
228
|
}
|
|
231
|
-
this.#setCachedSize(
|
|
232
|
-
this.#setSize(
|
|
229
|
+
this.#setCachedSize(node, size);
|
|
230
|
+
this.#setSize(node, size);
|
|
233
231
|
return size;
|
|
234
232
|
}
|
|
235
|
-
#
|
|
236
|
-
|
|
237
|
-
start: { row, basis: 'at' },
|
|
238
|
-
})));
|
|
239
|
-
assert(this.getSchema().compareRows(row, fetched.row) === 0, () => `fetchNodeForRow returned unexpected row, expected ${JSON.stringify(row)}, received ${JSON.stringify(fetched.row)}`);
|
|
240
|
-
return fetched;
|
|
241
|
-
}
|
|
242
|
-
#makeCacheStorageKey(row) {
|
|
243
|
-
return `row/${JSON.stringify(this.#getKeyValues(row, this.#parentJoinKey))}`;
|
|
233
|
+
#makeCacheStorageKey(node) {
|
|
234
|
+
return `row/${JSON.stringify(this.#getKeyValues(node, this.#parentJoinKey))}`;
|
|
244
235
|
}
|
|
245
|
-
#makeSizeStorageKey(
|
|
236
|
+
#makeSizeStorageKey(node) {
|
|
246
237
|
return `row/${this.#skipCache
|
|
247
238
|
? ''
|
|
248
|
-
: JSON.stringify(this.#getKeyValues(
|
|
239
|
+
: JSON.stringify(this.#getKeyValues(node, this.#parentJoinKey))}/${JSON.stringify(this.#getKeyValues(node, this.#input.getSchema().primaryKey))}`;
|
|
249
240
|
}
|
|
250
|
-
#getKeyValues(
|
|
241
|
+
#getKeyValues(node, def) {
|
|
251
242
|
const values = [];
|
|
252
243
|
for (const key of def) {
|
|
253
|
-
values.push(normalizeUndefined(row[key]));
|
|
244
|
+
values.push(normalizeUndefined(node.row[key]));
|
|
254
245
|
}
|
|
255
246
|
return values;
|
|
256
247
|
}
|