@peerbit/shared-log 10.4.12 → 11.0.0-6ba92be
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/src/debounce.d.ts +4 -16
- package/dist/src/debounce.d.ts.map +1 -1
- package/dist/src/debounce.js +2 -74
- package/dist/src/debounce.js.map +1 -1
- package/dist/src/index.d.ts +1 -0
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +20 -15
- package/dist/src/index.js.map +1 -1
- package/dist/src/ranges.d.ts +9 -2
- package/dist/src/ranges.d.ts.map +1 -1
- package/dist/src/ranges.js +14 -1
- package/dist/src/ranges.js.map +1 -1
- package/dist/src/sync/rateless-iblt.d.ts +2 -2
- package/dist/src/sync/rateless-iblt.d.ts.map +1 -1
- package/dist/src/sync/rateless-iblt.js +10 -15
- package/dist/src/sync/rateless-iblt.js.map +1 -1
- package/dist/src/sync/simple.d.ts +2 -2
- package/dist/src/sync/simple.d.ts.map +1 -1
- package/dist/src/sync/simple.js +9 -11
- package/dist/src/sync/simple.js.map +1 -1
- package/package.json +70 -70
- package/src/debounce.ts +2 -100
- package/src/index.ts +28 -16
- package/src/ranges.ts +13 -1
- package/src/sync/rateless-iblt.ts +13 -23
- package/src/sync/simple.ts +9 -11
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"simple.js","sourceRoot":"","sources":["../../../src/sync/simple.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"simple.js","sourceRoot":"","sources":["../../../src/sync/simple.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,72 +1,72 @@
|
|
|
1
1
|
{
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
2
|
+
"name": "@peerbit/shared-log",
|
|
3
|
+
"version": "11.0.0-6ba92be",
|
|
4
|
+
"description": "Shared log",
|
|
5
|
+
"sideEffects": false,
|
|
6
|
+
"type": "module",
|
|
7
|
+
"types": "./dist/src/index.d.ts",
|
|
8
|
+
"typesVersions": {
|
|
9
|
+
"*": {
|
|
10
|
+
"*": [
|
|
11
|
+
"*",
|
|
12
|
+
"dist/*",
|
|
13
|
+
"dist/src/*",
|
|
14
|
+
"dist/src/*/index"
|
|
15
|
+
],
|
|
16
|
+
"src/*": [
|
|
17
|
+
"*",
|
|
18
|
+
"dist/*",
|
|
19
|
+
"dist/src/*",
|
|
20
|
+
"dist/src/*/index"
|
|
21
|
+
]
|
|
22
|
+
}
|
|
23
|
+
},
|
|
24
|
+
"files": [
|
|
25
|
+
"src",
|
|
26
|
+
"dist",
|
|
27
|
+
"!dist/e2e",
|
|
28
|
+
"!dist/test",
|
|
29
|
+
"!**/*.tsbuildinfo"
|
|
30
|
+
],
|
|
31
|
+
"exports": {
|
|
32
|
+
".": {
|
|
33
|
+
"types": "./dist/src/index.d.ts",
|
|
34
|
+
"import": "./dist/src/index.js"
|
|
35
|
+
}
|
|
36
|
+
},
|
|
37
|
+
"eslintConfig": {
|
|
38
|
+
"extends": "peerbit",
|
|
39
|
+
"parserOptions": {
|
|
40
|
+
"project": true,
|
|
41
|
+
"sourceType": "module"
|
|
42
|
+
},
|
|
43
|
+
"ignorePatterns": [
|
|
44
|
+
"!.aegir.js",
|
|
45
|
+
"test/ts-use",
|
|
46
|
+
"*.d.ts"
|
|
47
|
+
]
|
|
48
|
+
},
|
|
49
|
+
"publishConfig": {
|
|
50
|
+
"access": "public"
|
|
51
|
+
},
|
|
52
|
+
"scripts": {
|
|
53
|
+
"clean": "aegir clean",
|
|
54
|
+
"build": "aegir build --no-bundle",
|
|
55
|
+
"test": "aegir test --target node",
|
|
56
|
+
"lint": "aegir lint"
|
|
57
|
+
},
|
|
58
|
+
"author": "dao.xyz",
|
|
59
|
+
"license": "MIT",
|
|
60
|
+
"dependencies": {
|
|
61
|
+
"@dao-xyz/borsh": "^5.2.3",
|
|
62
|
+
"@peerbit/logger": "1.0.3-6ba92be",
|
|
63
|
+
"@peerbit/program": "5.2.1-6ba92be",
|
|
64
|
+
"@peerbit/log": "4.0.48-6ba92be",
|
|
65
|
+
"@peerbit/rpc": "5.2.3-6ba92be",
|
|
66
|
+
"@peerbit/time": "2.0.8-6ba92be",
|
|
67
|
+
"@peerbit/riblt": "1.0.6-6ba92be"
|
|
68
|
+
},
|
|
69
|
+
"devDependencies": {
|
|
70
|
+
"@peerbit/test-utils": "2.1.36-6ba92be"
|
|
71
|
+
}
|
|
72
72
|
}
|
package/src/debounce.ts
CHANGED
|
@@ -1,103 +1,4 @@
|
|
|
1
|
-
|
|
2
|
-
T extends (...args: any[]) => any | Promise<any>,
|
|
3
|
-
>(
|
|
4
|
-
fn: T,
|
|
5
|
-
delay: number | (() => number),
|
|
6
|
-
options?: { onError?: (error: Error) => void },
|
|
7
|
-
) => {
|
|
8
|
-
// A debounce function that waits for the delay after the async function finishes
|
|
9
|
-
// before invoking the function again
|
|
10
|
-
let delayFn: () => number = typeof delay === "number" ? () => delay : delay;
|
|
11
|
-
const onError =
|
|
12
|
-
options?.onError ||
|
|
13
|
-
((error: Error) => {
|
|
14
|
-
throw error;
|
|
15
|
-
});
|
|
16
|
-
let timeout: NodeJS.Timeout | null = null;
|
|
17
|
-
let lastArgs: any[] | null = null;
|
|
18
|
-
let lastThis: any;
|
|
19
|
-
let invokePromise: Promise<any> = Promise.resolve();
|
|
20
|
-
let pendingCall = false;
|
|
21
|
-
let isRunning = false;
|
|
22
|
-
|
|
23
|
-
const invoke = async () => {
|
|
24
|
-
if (!lastArgs) {
|
|
25
|
-
// No pending calls to process
|
|
26
|
-
timeout = null;
|
|
27
|
-
return;
|
|
28
|
-
}
|
|
29
|
-
|
|
30
|
-
const args = lastArgs;
|
|
31
|
-
lastArgs = null; // Reset arguments
|
|
32
|
-
pendingCall = false; // Reset pending call flag
|
|
33
|
-
isRunning = true;
|
|
34
|
-
try {
|
|
35
|
-
const fnCall = fn.apply(lastThis, args);
|
|
36
|
-
invokePromise = Promise.resolve(fnCall ?? {});
|
|
37
|
-
|
|
38
|
-
await invokePromise;
|
|
39
|
-
} catch (error) {
|
|
40
|
-
onError(error as Error);
|
|
41
|
-
} finally {
|
|
42
|
-
isRunning = false;
|
|
43
|
-
timeout = null;
|
|
44
|
-
|
|
45
|
-
// If there are pending calls, schedule the next invocation
|
|
46
|
-
if (pendingCall) {
|
|
47
|
-
timeout = setTimeout(invoke, delayFn());
|
|
48
|
-
}
|
|
49
|
-
}
|
|
50
|
-
};
|
|
51
|
-
|
|
52
|
-
const debounced = (...args: Parameters<T>) => {
|
|
53
|
-
lastArgs = args;
|
|
54
|
-
lastThis = this;
|
|
55
|
-
pendingCall = true;
|
|
56
|
-
|
|
57
|
-
if (isRunning || timeout) {
|
|
58
|
-
// Function is currently running or timeout is set, do nothing
|
|
59
|
-
return;
|
|
60
|
-
}
|
|
61
|
-
|
|
62
|
-
// No function running and no timeout set, so schedule the invocation
|
|
63
|
-
timeout = setTimeout(invoke, delayFn());
|
|
64
|
-
};
|
|
65
|
-
|
|
66
|
-
return debounced as T;
|
|
67
|
-
};
|
|
68
|
-
|
|
69
|
-
export const debounceAccumulator = <K, T, V>(
|
|
70
|
-
fn: (args: V) => any,
|
|
71
|
-
create: () => {
|
|
72
|
-
delete: (string: K) => void;
|
|
73
|
-
add: (value: T) => void;
|
|
74
|
-
size: () => number;
|
|
75
|
-
value: V;
|
|
76
|
-
},
|
|
77
|
-
delay: number | (() => number),
|
|
78
|
-
) => {
|
|
79
|
-
let accumulator = create();
|
|
80
|
-
|
|
81
|
-
const invoke = async () => {
|
|
82
|
-
let toSend = accumulator.value;
|
|
83
|
-
accumulator = create();
|
|
84
|
-
await fn(toSend);
|
|
85
|
-
};
|
|
86
|
-
|
|
87
|
-
const debounced = debounceFixedInterval(invoke, delay);
|
|
88
|
-
|
|
89
|
-
return {
|
|
90
|
-
add: (value: T) => {
|
|
91
|
-
accumulator.add(value);
|
|
92
|
-
debounced();
|
|
93
|
-
},
|
|
94
|
-
delete: (key: K) => {
|
|
95
|
-
accumulator.delete(key);
|
|
96
|
-
},
|
|
97
|
-
size: () => accumulator.size,
|
|
98
|
-
invoke,
|
|
99
|
-
};
|
|
100
|
-
};
|
|
1
|
+
import { debounceAccumulator } from "@peerbit/time";
|
|
101
2
|
|
|
102
3
|
export const debouncedAccumulatorMap = <T>(
|
|
103
4
|
fn: (args: Map<string, T>) => any,
|
|
@@ -126,6 +27,7 @@ export const debouncedAccumulatorMap = <T>(
|
|
|
126
27
|
size: () => map.size,
|
|
127
28
|
value: map,
|
|
128
29
|
clear: () => map.clear(),
|
|
30
|
+
has: (key: string) => map.has(key),
|
|
129
31
|
};
|
|
130
32
|
},
|
|
131
33
|
delay,
|
package/src/index.ts
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { BorshError, field, variant } from "@dao-xyz/borsh";
|
|
2
2
|
import { AnyBlockStore, RemoteBlocks } from "@peerbit/blocks";
|
|
3
|
+
import { cidifyString } from "@peerbit/blocks-interface";
|
|
3
4
|
import { Cache } from "@peerbit/cache";
|
|
4
5
|
import {
|
|
5
6
|
AccessError,
|
|
@@ -45,7 +46,12 @@ import {
|
|
|
45
46
|
SilentDelivery,
|
|
46
47
|
type WithMode,
|
|
47
48
|
} from "@peerbit/stream-interface";
|
|
48
|
-
import {
|
|
49
|
+
import {
|
|
50
|
+
AbortError,
|
|
51
|
+
debounceAccumulator,
|
|
52
|
+
debounceFixedInterval,
|
|
53
|
+
waitFor,
|
|
54
|
+
} from "@peerbit/time";
|
|
49
55
|
import pDefer, { type DeferredPromise } from "p-defer";
|
|
50
56
|
import PQueue from "p-queue";
|
|
51
57
|
import { concat } from "uint8arrays";
|
|
@@ -53,8 +59,6 @@ import { BlocksMessage } from "./blocks.js";
|
|
|
53
59
|
import { type CPUUsage, CPUUsageIntervalLag } from "./cpu.js";
|
|
54
60
|
import {
|
|
55
61
|
type DebouncedAccumulatorMap,
|
|
56
|
-
debounceAccumulator,
|
|
57
|
-
debounceFixedInterval,
|
|
58
62
|
debouncedAccumulatorMap,
|
|
59
63
|
} from "./debounce.js";
|
|
60
64
|
import {
|
|
@@ -276,6 +280,7 @@ interface IndexableDomain<R extends "u32" | "u64"> {
|
|
|
276
280
|
hash: string;
|
|
277
281
|
meta: Meta;
|
|
278
282
|
assignedToRangeBoundary: boolean;
|
|
283
|
+
hashNumber: NumberFromType<R>;
|
|
279
284
|
}) => EntryReplicated<R>;
|
|
280
285
|
constructorRange: new (
|
|
281
286
|
properties: {
|
|
@@ -986,7 +991,7 @@ export class SharedLog<
|
|
|
986
991
|
}
|
|
987
992
|
|
|
988
993
|
if (!isMe) {
|
|
989
|
-
this.rebalanceParticipationDebounced?.();
|
|
994
|
+
this.rebalanceParticipationDebounced?.call();
|
|
990
995
|
}
|
|
991
996
|
}
|
|
992
997
|
|
|
@@ -1070,7 +1075,7 @@ export class SharedLog<
|
|
|
1070
1075
|
);
|
|
1071
1076
|
|
|
1072
1077
|
if (!from.equals(this.node.identity.publicKey)) {
|
|
1073
|
-
this.rebalanceParticipationDebounced?.();
|
|
1078
|
+
this.rebalanceParticipationDebounced?.call();
|
|
1074
1079
|
}
|
|
1075
1080
|
}
|
|
1076
1081
|
|
|
@@ -1317,7 +1322,7 @@ export class SharedLog<
|
|
|
1317
1322
|
}
|
|
1318
1323
|
|
|
1319
1324
|
if (!from.equals(this.node.identity.publicKey)) {
|
|
1320
|
-
this.rebalanceParticipationDebounced?.();
|
|
1325
|
+
this.rebalanceParticipationDebounced?.call();
|
|
1321
1326
|
}
|
|
1322
1327
|
}
|
|
1323
1328
|
return diffs;
|
|
@@ -1522,7 +1527,7 @@ export class SharedLog<
|
|
|
1522
1527
|
value: { entry: result.entry, leaders },
|
|
1523
1528
|
});
|
|
1524
1529
|
}
|
|
1525
|
-
this.rebalanceParticipationDebounced?.();
|
|
1530
|
+
this.rebalanceParticipationDebounced?.call();
|
|
1526
1531
|
|
|
1527
1532
|
return result;
|
|
1528
1533
|
}
|
|
@@ -1632,7 +1637,7 @@ export class SharedLog<
|
|
|
1632
1637
|
>(
|
|
1633
1638
|
(change) =>
|
|
1634
1639
|
this.onReplicationChange(change).then(() =>
|
|
1635
|
-
this.rebalanceParticipationDebounced?.(),
|
|
1640
|
+
this.rebalanceParticipationDebounced?.call(),
|
|
1636
1641
|
),
|
|
1637
1642
|
this.distributionDebounceTime,
|
|
1638
1643
|
);
|
|
@@ -1702,6 +1707,7 @@ export class SharedLog<
|
|
|
1702
1707
|
size: () => accumulator.size,
|
|
1703
1708
|
clear: () => accumulator.clear(),
|
|
1704
1709
|
value: accumulator,
|
|
1710
|
+
has: (hash: string) => accumulator.has(hash),
|
|
1705
1711
|
};
|
|
1706
1712
|
},
|
|
1707
1713
|
PRUNE_DEBOUNCE_INTERVAL, // TODO make this dynamic on the number of replicators
|
|
@@ -1810,7 +1816,7 @@ export class SharedLog<
|
|
|
1810
1816
|
await this.syncronizer.open();
|
|
1811
1817
|
|
|
1812
1818
|
this.interval = setInterval(() => {
|
|
1813
|
-
this.rebalanceParticipationDebounced?.();
|
|
1819
|
+
this.rebalanceParticipationDebounced?.call();
|
|
1814
1820
|
}, RECALCULATE_PARTICIPATION_DEBOUNCE_INTERVAL);
|
|
1815
1821
|
}
|
|
1816
1822
|
|
|
@@ -2269,7 +2275,7 @@ export class SharedLog<
|
|
|
2269
2275
|
value: { entry: x, leaders: leaders as Map<string, any> },
|
|
2270
2276
|
}),
|
|
2271
2277
|
);
|
|
2272
|
-
this.rebalanceParticipationDebounced?.();
|
|
2278
|
+
this.rebalanceParticipationDebounced?.call();
|
|
2273
2279
|
}
|
|
2274
2280
|
|
|
2275
2281
|
if (maybeDelete) {
|
|
@@ -3000,12 +3006,18 @@ export class SharedLog<
|
|
|
3000
3006
|
return; // no change
|
|
3001
3007
|
}
|
|
3002
3008
|
|
|
3009
|
+
const cidObject = cidifyString(properties.entry.hash);
|
|
3010
|
+
const hashNumber = this.indexableDomain.numbers.bytesToNumber(
|
|
3011
|
+
cidObject.multihash.digest,
|
|
3012
|
+
);
|
|
3013
|
+
|
|
3003
3014
|
await this.entryCoordinatesIndex.put(
|
|
3004
3015
|
new this.indexableDomain.constructorEntry({
|
|
3005
3016
|
assignedToRangeBoundary,
|
|
3006
3017
|
coordinates: properties.coordinates,
|
|
3007
3018
|
meta: properties.entry.meta,
|
|
3008
3019
|
hash: properties.entry.hash,
|
|
3020
|
+
hashNumber,
|
|
3009
3021
|
}),
|
|
3010
3022
|
);
|
|
3011
3023
|
|
|
@@ -3659,14 +3671,14 @@ export class SharedLog<
|
|
|
3659
3671
|
async _onUnsubscription(evt: CustomEvent<UnsubcriptionEvent>) {
|
|
3660
3672
|
logger.trace(
|
|
3661
3673
|
`Peer disconnected '${evt.detail.from.hashcode()}' from '${JSON.stringify(
|
|
3662
|
-
evt.detail.
|
|
3674
|
+
evt.detail.topics.map((x) => x),
|
|
3663
3675
|
)} '`,
|
|
3664
3676
|
);
|
|
3665
3677
|
this.latestReplicationInfoMessage.delete(evt.detail.from.hashcode());
|
|
3666
3678
|
|
|
3667
3679
|
return this.handleSubscriptionChange(
|
|
3668
3680
|
evt.detail.from,
|
|
3669
|
-
evt.detail.
|
|
3681
|
+
evt.detail.topics,
|
|
3670
3682
|
false,
|
|
3671
3683
|
);
|
|
3672
3684
|
}
|
|
@@ -3674,14 +3686,14 @@ export class SharedLog<
|
|
|
3674
3686
|
async _onSubscription(evt: CustomEvent<SubscriptionEvent>) {
|
|
3675
3687
|
logger.trace(
|
|
3676
3688
|
`New peer '${evt.detail.from.hashcode()}' connected to '${JSON.stringify(
|
|
3677
|
-
evt.detail.
|
|
3689
|
+
evt.detail.topics.map((x) => x),
|
|
3678
3690
|
)}'`,
|
|
3679
3691
|
);
|
|
3680
3692
|
this.remoteBlocks.onReachable(evt.detail.from);
|
|
3681
3693
|
|
|
3682
3694
|
return this.handleSubscriptionChange(
|
|
3683
3695
|
evt.detail.from,
|
|
3684
|
-
evt.detail.
|
|
3696
|
+
evt.detail.topics,
|
|
3685
3697
|
true,
|
|
3686
3698
|
);
|
|
3687
3699
|
}
|
|
@@ -3748,11 +3760,11 @@ export class SharedLog<
|
|
|
3748
3760
|
});
|
|
3749
3761
|
|
|
3750
3762
|
/* await this._updateRole(newRole, onRoleChange); */
|
|
3751
|
-
this.rebalanceParticipationDebounced?.();
|
|
3763
|
+
this.rebalanceParticipationDebounced?.call();
|
|
3752
3764
|
|
|
3753
3765
|
return true;
|
|
3754
3766
|
} else {
|
|
3755
|
-
this.rebalanceParticipationDebounced?.();
|
|
3767
|
+
this.rebalanceParticipationDebounced?.call();
|
|
3756
3768
|
}
|
|
3757
3769
|
return false;
|
|
3758
3770
|
}
|
package/src/ranges.ts
CHANGED
|
@@ -30,7 +30,7 @@ import {
|
|
|
30
30
|
} from "@peerbit/indexer-interface";
|
|
31
31
|
import { id } from "@peerbit/indexer-interface";
|
|
32
32
|
import { Meta, ShallowMeta } from "@peerbit/log";
|
|
33
|
-
import { debounceAccumulator } from "
|
|
33
|
+
import { debounceAccumulator } from "@peerbit/time";
|
|
34
34
|
import {
|
|
35
35
|
MAX_U32,
|
|
36
36
|
MAX_U64,
|
|
@@ -91,6 +91,7 @@ export const shouldAssigneToRangeBoundary = (
|
|
|
91
91
|
};
|
|
92
92
|
export interface EntryReplicated<R extends "u32" | "u64"> {
|
|
93
93
|
hash: string; // id of the entry
|
|
94
|
+
hashNumber: NumberFromType<R>; // hash of the entry in number format
|
|
94
95
|
gid: string;
|
|
95
96
|
coordinates: NumberFromType<R>[];
|
|
96
97
|
wallTime: bigint;
|
|
@@ -106,6 +107,9 @@ export class EntryReplicatedU32 implements EntryReplicated<"u32"> {
|
|
|
106
107
|
@id({ type: "string" })
|
|
107
108
|
hash: string;
|
|
108
109
|
|
|
110
|
+
@field({ type: "u32" })
|
|
111
|
+
hashNumber: number;
|
|
112
|
+
|
|
109
113
|
@field({ type: "string" })
|
|
110
114
|
gid: string;
|
|
111
115
|
|
|
@@ -128,11 +132,13 @@ export class EntryReplicatedU32 implements EntryReplicated<"u32"> {
|
|
|
128
132
|
hash: string;
|
|
129
133
|
meta: Meta;
|
|
130
134
|
assignedToRangeBoundary: boolean;
|
|
135
|
+
hashNumber: number;
|
|
131
136
|
}) {
|
|
132
137
|
this.coordinates = properties.coordinates;
|
|
133
138
|
this.hash = properties.hash;
|
|
134
139
|
this.gid = properties.meta.gid;
|
|
135
140
|
this.wallTime = properties.meta.clock.timestamp.wallTime;
|
|
141
|
+
this.hashNumber = properties.hashNumber;
|
|
136
142
|
const shallow =
|
|
137
143
|
properties.meta instanceof Meta
|
|
138
144
|
? new ShallowMeta(properties.meta)
|
|
@@ -155,6 +161,9 @@ export class EntryReplicatedU64 implements EntryReplicated<"u64"> {
|
|
|
155
161
|
@id({ type: "string" })
|
|
156
162
|
hash: string;
|
|
157
163
|
|
|
164
|
+
@field({ type: "u64" })
|
|
165
|
+
hashNumber: bigint;
|
|
166
|
+
|
|
158
167
|
@field({ type: "string" })
|
|
159
168
|
gid: string;
|
|
160
169
|
|
|
@@ -177,9 +186,11 @@ export class EntryReplicatedU64 implements EntryReplicated<"u64"> {
|
|
|
177
186
|
hash: string;
|
|
178
187
|
meta: Meta;
|
|
179
188
|
assignedToRangeBoundary: boolean;
|
|
189
|
+
hashNumber: bigint;
|
|
180
190
|
}) {
|
|
181
191
|
this.coordinates = properties.coordinates;
|
|
182
192
|
this.hash = properties.hash;
|
|
193
|
+
this.hashNumber = properties.hashNumber;
|
|
183
194
|
this.gid = properties.meta.gid;
|
|
184
195
|
this.wallTime = properties.meta.clock.timestamp.wallTime;
|
|
185
196
|
const shallow =
|
|
@@ -2487,6 +2498,7 @@ export const debounceAggregationChanges = <
|
|
|
2487
2498
|
},
|
|
2488
2499
|
size: () => aggregated.size,
|
|
2489
2500
|
value: aggregated,
|
|
2501
|
+
has: (key: string) => aggregated.has(key),
|
|
2490
2502
|
};
|
|
2491
2503
|
},
|
|
2492
2504
|
delay,
|
|
@@ -9,7 +9,7 @@ import type { RPC, RequestContext } from "@peerbit/rpc";
|
|
|
9
9
|
import { SilentDelivery } from "@peerbit/stream-interface";
|
|
10
10
|
import type { SyncableKey, Syncronizer } from ".";
|
|
11
11
|
import { type EntryWithRefs } from "../exchange-heads.js";
|
|
12
|
-
import { type
|
|
12
|
+
import { type Numbers } from "../integers.js";
|
|
13
13
|
import { TransportMessage } from "../message.js";
|
|
14
14
|
import {
|
|
15
15
|
type EntryReplicated,
|
|
@@ -145,9 +145,6 @@ const buildEncoderOrDecoderFromRange = async <
|
|
|
145
145
|
const encoder =
|
|
146
146
|
type === "encoder" ? new EncoderWrapper() : new DecoderWrapper();
|
|
147
147
|
|
|
148
|
-
/* const buildDecoderStart = +new Date(); */
|
|
149
|
-
let symbolCount = 0;
|
|
150
|
-
|
|
151
148
|
const entries = await entryIndex
|
|
152
149
|
.iterate(
|
|
153
150
|
{
|
|
@@ -160,7 +157,8 @@ const buildEncoderOrDecoderFromRange = async <
|
|
|
160
157
|
},
|
|
161
158
|
{
|
|
162
159
|
shape: {
|
|
163
|
-
|
|
160
|
+
hash: true,
|
|
161
|
+
hashNumber: true,
|
|
164
162
|
},
|
|
165
163
|
},
|
|
166
164
|
)
|
|
@@ -171,19 +169,13 @@ const buildEncoderOrDecoderFromRange = async <
|
|
|
171
169
|
}
|
|
172
170
|
|
|
173
171
|
for (const entry of entries) {
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
for (const coordinate of entry.value.coordinates) {
|
|
177
|
-
encoder.add_symbol(coerceBigInt(coordinate));
|
|
178
|
-
}
|
|
172
|
+
encoder.add_symbol(coerceBigInt(entry.value.hashNumber));
|
|
179
173
|
}
|
|
180
174
|
return encoder as E;
|
|
181
175
|
};
|
|
182
176
|
|
|
183
|
-
export class RatelessIBLTSynchronizer<
|
|
184
|
-
D
|
|
185
|
-
N = NumberFromType<D>,
|
|
186
|
-
> implements Syncronizer<D>
|
|
177
|
+
export class RatelessIBLTSynchronizer<D extends "u32" | "u64">
|
|
178
|
+
implements Syncronizer<D>
|
|
187
179
|
{
|
|
188
180
|
simple: SimpleSyncronizer<D>;
|
|
189
181
|
|
|
@@ -254,9 +246,7 @@ export class RatelessIBLTSynchronizer<
|
|
|
254
246
|
) {
|
|
255
247
|
entriesToSyncNaively.set(entry.hash, entry);
|
|
256
248
|
} else {
|
|
257
|
-
|
|
258
|
-
allCoordinatesToSyncWithIblt.push(coerceBigInt(coordinate));
|
|
259
|
-
}
|
|
249
|
+
allCoordinatesToSyncWithIblt.push(coerceBigInt(entry.hashNumber));
|
|
260
250
|
}
|
|
261
251
|
}
|
|
262
252
|
|
|
@@ -267,7 +257,7 @@ export class RatelessIBLTSynchronizer<
|
|
|
267
257
|
// add all coordinates to sync with iblt
|
|
268
258
|
allCoordinatesToSyncWithIblt = Array.from(
|
|
269
259
|
properties.entries.values(),
|
|
270
|
-
).
|
|
260
|
+
).map((x) => coerceBigInt(x.hashNumber));
|
|
271
261
|
} else {
|
|
272
262
|
// TODO what happens if too many
|
|
273
263
|
await this.simple.onMaybeMissingEntries({
|
|
@@ -323,7 +313,7 @@ export class RatelessIBLTSynchronizer<
|
|
|
323
313
|
const startSync = new StartSync({ from: start, to: end, symbols: [] });
|
|
324
314
|
const encoder = new EncoderWrapper();
|
|
325
315
|
for (const entry of sortedEntries) {
|
|
326
|
-
encoder.add_symbol(
|
|
316
|
+
encoder.add_symbol(coerceBigInt(entry));
|
|
327
317
|
}
|
|
328
318
|
|
|
329
319
|
let initialSymbols = Math.round(
|
|
@@ -336,7 +326,7 @@ export class RatelessIBLTSynchronizer<
|
|
|
336
326
|
}
|
|
337
327
|
|
|
338
328
|
const clear = () => {
|
|
339
|
-
|
|
329
|
+
encoder.free();
|
|
340
330
|
clearTimeout(
|
|
341
331
|
this.outgoingSyncProcesses.get(getSyncIdString(startSync))?.timeout,
|
|
342
332
|
);
|
|
@@ -425,7 +415,7 @@ export class RatelessIBLTSynchronizer<
|
|
|
425
415
|
|
|
426
416
|
const createTimeout = () => {
|
|
427
417
|
return setTimeout(() => {
|
|
428
|
-
|
|
418
|
+
decoder.free();
|
|
429
419
|
this.ingoingSyncProcesses.delete(syncId);
|
|
430
420
|
}, 2e4); // TODO arg
|
|
431
421
|
};
|
|
@@ -481,7 +471,7 @@ export class RatelessIBLTSynchronizer<
|
|
|
481
471
|
) {
|
|
482
472
|
// TODO in some way test this code path
|
|
483
473
|
logger.error(error?.message ?? error);
|
|
484
|
-
|
|
474
|
+
obj.free();
|
|
485
475
|
await this.simple.rpc.send(
|
|
486
476
|
new RequestAll({
|
|
487
477
|
syncId: message.syncId,
|
|
@@ -516,7 +506,7 @@ export class RatelessIBLTSynchronizer<
|
|
|
516
506
|
return false;
|
|
517
507
|
},
|
|
518
508
|
free: () => {
|
|
519
|
-
|
|
509
|
+
decoder.free();
|
|
520
510
|
clearTimeout(this.ingoingSyncProcesses.get(syncId)?.timeout);
|
|
521
511
|
this.ingoingSyncProcesses.delete(syncId);
|
|
522
512
|
},
|