@peerbit/shared-log 13.2.12 → 13.2.13
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/benchmark/receive-prune.js +31 -29
- package/dist/benchmark/receive-prune.js.map +1 -1
- package/dist/src/checked-prune.d.ts +43 -10
- package/dist/src/checked-prune.d.ts.map +1 -1
- package/dist/src/checked-prune.js +257 -27
- package/dist/src/checked-prune.js.map +1 -1
- package/dist/src/exchange-heads.d.ts +26 -0
- package/dist/src/exchange-heads.d.ts.map +1 -1
- package/dist/src/exchange-heads.js +99 -0
- package/dist/src/exchange-heads.js.map +1 -1
- package/dist/src/index.d.ts +71 -14
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +3492 -1493
- package/dist/src/index.js.map +1 -1
- package/dist/src/sync/index.d.ts +2 -0
- package/dist/src/sync/index.d.ts.map +1 -1
- package/dist/src/sync/rateless-iblt.d.ts +96 -20
- package/dist/src/sync/rateless-iblt.d.ts.map +1 -1
- package/dist/src/sync/rateless-iblt.js +1616 -428
- package/dist/src/sync/rateless-iblt.js.map +1 -1
- package/dist/src/sync/simple.d.ts +176 -1
- package/dist/src/sync/simple.d.ts.map +1 -1
- package/dist/src/sync/simple.js +2919 -525
- package/dist/src/sync/simple.js.map +1 -1
- package/package.json +8 -8
- package/src/checked-prune.ts +338 -29
- package/src/exchange-heads.ts +52 -0
- package/src/index.ts +6370 -2792
- package/src/sync/index.ts +2 -1
- package/src/sync/rateless-iblt.ts +2036 -498
- package/src/sync/simple.ts +3779 -634
package/dist/src/sync/index.d.ts
CHANGED
|
@@ -101,6 +101,7 @@ export type SharedLogNativeWireSync = {
|
|
|
101
101
|
*/
|
|
102
102
|
export type RawExchangeHeadsSender = (hashes: string[], to: string[], options?: {
|
|
103
103
|
priority?: number;
|
|
104
|
+
signal?: AbortSignal;
|
|
104
105
|
}) => Promise<number | undefined>;
|
|
105
106
|
export type HashSymbolInput = readonly bigint[] | BigUint64Array;
|
|
106
107
|
export type HashSymbolResolver = (symbols: HashSymbolInput) => ReadonlyMap<bigint, Iterable<string>> | undefined | Promise<ReadonlyMap<bigint, Iterable<string>> | undefined>;
|
|
@@ -155,6 +156,7 @@ export interface Syncronizer<R extends "u32" | "u64"> {
|
|
|
155
156
|
onMaybeMissingEntries(properties: {
|
|
156
157
|
entries: Map<string, SyncEntryCoordinates<R>>;
|
|
157
158
|
targets: string[];
|
|
159
|
+
signal?: AbortSignal;
|
|
158
160
|
}): Promise<void> | void;
|
|
159
161
|
onMessage(message: TransportMessage, context: RequestContext): Promise<boolean> | boolean;
|
|
160
162
|
onReceivedEntries(properties: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/sync/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AAC5C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AACrD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,4BAA4B,CAAC;AACxD,OAAO,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,cAAc,CAAC;AAC/C,OAAO,KAAK,EAAE,GAAG,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AACxD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AACtD,OAAO,KAAK,EAAE,eAAe,EAAE,yBAAyB,EAAE,MAAM,cAAc,CAAC;AAC/E,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAElD,YAAY,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAEpE,MAAM,MAAM,cAAc,CAAC,CAAC,SAAS,KAAK,GAAG,KAAK,IAAI,CACrD,KAAK,EAAE,eAAe,CAAC,CAAC,CAAC,KACrB,MAAM,CAAC;AAEZ,MAAM,MAAM,oBAAoB,CAAC,CAAC,SAAS,KAAK,GAAG,KAAK,IAAI,IAAI,CAC/D,eAAe,CAAC,CAAC,CAAC,EAClB,yBAAyB,GAAG,MAAM,GAAG,YAAY,CACjD,CAAC;AAEF,MAAM,MAAM,WAAW,CAAC,CAAC,SAAS,KAAK,GAAG,KAAK,IAAI;IAClD;;;;OAIG;IACH,QAAQ,CAAC,EAAE,cAAc,CAAC,CAAC,CAAC,CAAC;IAE7B;;;OAGG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAE1B;;OAEG;IACH,yBAAyB,CAAC,EAAE,MAAM,CAAC;IAEnC;;OAEG;IACH,8BAA8B,CAAC,EAAE,MAAM,CAAC;IAExC;;;;OAIG;IACH,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAE3B;;;;;;OAMG;IACH,6CAA6C,CAAC,EAAE,OAAO,CAAC;IAExD;;;;OAIG;IACH,0BAA0B,CAAC,EAAE,MAAM,CAAC;IAEpC;;;;OAIG;IACH,2BAA2B,CAAC,EAAE,MAAM,CAAC;IAErC;;;;;;OAMG;IACH,cAAc,CAAC,EAAE,uBAAuB,CAAC;IAEzC;;;OAGG;IACH,OAAO,CAAC,EAAE,aAAa,CAAC;CACxB,CAAC;AAEF;;;;;GAKG;AACH,MAAM,MAAM,uBAAuB,GAAG;IACrC,uEAAuE;IACvE,MAAM,EAAE,OAAO,CAAC;IAChB,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACnC,eAAe,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC;IACxC,WAAW,CAAC,EAAE,EAAE,UAAU,GACvB;QACA,MAAM,EAAE,MAAM,EAAE,CAAC;QACjB,YAAY,EAAE,MAAM,EAAE,EAAE,CAAC;QACzB,WAAW,EAAE,WAAW,CAAC;QACzB,QAAQ,EAAE,UAAU,CAAC;QACrB,aAAa,EAAE,MAAM,CAAC;KACrB,GACD,SAAS,CAAC;IACb,aAAa,CACZ,EAAE,EAAE,UAAU,EACd,OAAO,CAAC,EAAE,WAAW,GACnB,UAAU,EAAE,GAAG,SAAS,CAAC;IAC5B,OAAO,CAAC,EAAE,EAAE,UAAU,GAAG,OAAO,CAAC;CACjC,CAAC;AAEF;;;;;;GAMG;AACH,MAAM,MAAM,sBAAsB,GAAG,CACpC,MAAM,EAAE,MAAM,EAAE,EAChB,EAAE,EAAE,MAAM,EAAE,EACZ,OAAO,CAAC,EAAE;IAAE,QAAQ,CAAC,EAAE,MAAM,CAAA;CAAE,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/sync/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -38,6 +38,9 @@ export declare class CodedSymbolBatch implements Iterable<CodedSymbol> {
|
|
|
38
38
|
toSymbols(): SymbolSerialized[];
|
|
39
39
|
[Symbol.iterator](): IterableIterator<CodedSymbol>;
|
|
40
40
|
}
|
|
41
|
+
export declare const MAX_ACTIVE_RATELESS_RESPONSES_PER_PEER = 4;
|
|
42
|
+
export declare const MAX_ACTIVE_RATELESS_RESPONSES_GLOBAL = 32;
|
|
43
|
+
type IncomingRatelessProcessResult = boolean | undefined | "fallback-to-simple";
|
|
41
44
|
export declare class StartSync extends TransportMessage {
|
|
42
45
|
syncId: Uint8Array;
|
|
43
46
|
start: bigint;
|
|
@@ -73,38 +76,98 @@ export declare class RequestAll extends TransportMessage {
|
|
|
73
76
|
syncId: Uint8Array;
|
|
74
77
|
});
|
|
75
78
|
}
|
|
79
|
+
type RatelessDispatchLifecycle = {
|
|
80
|
+
ownershipLifecycleController: AbortController;
|
|
81
|
+
callerSignal?: AbortSignal;
|
|
82
|
+
controller: AbortController;
|
|
83
|
+
targets: Map<string, RatelessDispatchTargetLifecycle>;
|
|
84
|
+
onOwnerOrCallerAbort: () => void;
|
|
85
|
+
dispatchFinished: boolean;
|
|
86
|
+
disposed: boolean;
|
|
87
|
+
};
|
|
88
|
+
type RatelessDispatchTargetLifecycle = {
|
|
89
|
+
lifecycle: RatelessDispatchLifecycle;
|
|
90
|
+
target: string;
|
|
91
|
+
controller: AbortController;
|
|
92
|
+
retainedByProcess: boolean;
|
|
93
|
+
responseLeases: number;
|
|
94
|
+
};
|
|
95
|
+
type OutgoingRatelessSyncProcess = {
|
|
96
|
+
target: string;
|
|
97
|
+
targetLifecycle: RatelessDispatchTargetLifecycle;
|
|
98
|
+
outgoingHashes: string[];
|
|
99
|
+
authorizedHashes: ReadonlySet<string>;
|
|
100
|
+
consumedResponseHashes: Set<string>;
|
|
101
|
+
encoder: EncoderWrapper;
|
|
102
|
+
timeout?: ReturnType<typeof setTimeout>;
|
|
103
|
+
deadlineTimeout?: ReturnType<typeof setTimeout>;
|
|
104
|
+
refresh: () => void;
|
|
105
|
+
next: (message: {
|
|
106
|
+
lastSeqNo: bigint;
|
|
107
|
+
}) => {
|
|
108
|
+
symbols: CodedSymbolBatch;
|
|
109
|
+
exhaustedAfterSend: boolean;
|
|
110
|
+
} | undefined;
|
|
111
|
+
startSimpleFallback: () => Promise<void>;
|
|
112
|
+
simpleFallbackStarted: boolean;
|
|
113
|
+
free: (reason?: unknown) => void;
|
|
114
|
+
processController: AbortController;
|
|
115
|
+
signal: AbortSignal;
|
|
116
|
+
callerSignal?: AbortSignal;
|
|
117
|
+
};
|
|
118
|
+
type IncomingRatelessSyncProcess = {
|
|
119
|
+
key: string;
|
|
120
|
+
syncId: string;
|
|
121
|
+
sender: string;
|
|
122
|
+
from: PublicSignKey;
|
|
123
|
+
ownershipLifecycleController: AbortController;
|
|
124
|
+
controller: AbortController;
|
|
125
|
+
decoder?: DecoderWrapper;
|
|
126
|
+
completedSynchronizations: Cache<string>;
|
|
127
|
+
timeout?: ReturnType<typeof setTimeout>;
|
|
128
|
+
deadlineTimeout?: ReturnType<typeof setTimeout>;
|
|
129
|
+
refresh: () => void;
|
|
130
|
+
lastSeqNo: bigint;
|
|
131
|
+
processedSymbols: number;
|
|
132
|
+
queuedSymbols: number;
|
|
133
|
+
symbolBudget: number;
|
|
134
|
+
process: (message: {
|
|
135
|
+
seqNo: bigint;
|
|
136
|
+
symbols: CodedSymbolInput;
|
|
137
|
+
}) => Promise<IncomingRatelessProcessResult>;
|
|
138
|
+
requestAll: () => Promise<void>;
|
|
139
|
+
fallbackToSimple: (reason?: unknown) => Promise<void>;
|
|
140
|
+
free: (reason?: unknown) => void;
|
|
141
|
+
complete: () => void;
|
|
142
|
+
};
|
|
76
143
|
export declare class RatelessIBLTSynchronizer<D extends "u32" | "u64"> implements Syncronizer<D> {
|
|
77
144
|
readonly properties: SynchronizerComponents<D>;
|
|
78
145
|
simple: SimpleSyncronizer<D>;
|
|
79
146
|
private repairSessionCounter;
|
|
147
|
+
private ratelessRepairSessions;
|
|
80
148
|
startedOrCompletedSynchronizations: Cache<string>;
|
|
81
149
|
private localRangeEncoderCacheVersion;
|
|
82
150
|
private localRangeEncoderCache;
|
|
83
151
|
private localRangeEncoderCacheMax;
|
|
84
|
-
ingoingSyncProcesses: Map<string,
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
}>;
|
|
94
|
-
outgoingSyncProcesses: Map<string, {
|
|
95
|
-
outgoingHashes: string[];
|
|
96
|
-
encoder: EncoderWrapper;
|
|
97
|
-
timeout: ReturnType<typeof setTimeout>;
|
|
98
|
-
refresh: () => void;
|
|
99
|
-
next: (message: {
|
|
100
|
-
lastSeqNo: bigint;
|
|
101
|
-
}) => CodedSymbolBatch;
|
|
102
|
-
free: () => void;
|
|
103
|
-
}>;
|
|
152
|
+
ingoingSyncProcesses: Map<string, IncomingRatelessSyncProcess>;
|
|
153
|
+
private incomingRatelessProcessAdmissions;
|
|
154
|
+
outgoingSyncProcesses: Map<string, OutgoingRatelessSyncProcess>;
|
|
155
|
+
private outgoingSyncProcessByTarget;
|
|
156
|
+
private ratelessDispatchLifecycleController;
|
|
157
|
+
private ratelessDispatchTargets;
|
|
158
|
+
private activeRatelessResponseCount;
|
|
159
|
+
private activeRatelessResponseCountByPeer;
|
|
160
|
+
private ratelessClosed;
|
|
104
161
|
constructor(properties: SynchronizerComponents<D>);
|
|
105
162
|
private get maxConvergentTrackedHashes();
|
|
106
163
|
private normalizeRetryIntervals;
|
|
107
164
|
private getPrioritizedEntries;
|
|
165
|
+
private isRatelessRepairSessionActive;
|
|
166
|
+
private cancelRatelessRepairSession;
|
|
167
|
+
private disposeRatelessRepairSession;
|
|
168
|
+
private cancelRatelessRepairSessions;
|
|
169
|
+
private waitForRatelessRepairRetry;
|
|
170
|
+
private waitForRatelessRepairDispatch;
|
|
108
171
|
startRepairSession(properties: {
|
|
109
172
|
entries: Map<string, SyncEntryCoordinates<D>>;
|
|
110
173
|
targets: string[];
|
|
@@ -117,10 +180,23 @@ export declare class RatelessIBLTSynchronizer<D extends "u32" | "u64"> implement
|
|
|
117
180
|
private localRangeEncoderCacheKey;
|
|
118
181
|
private decoderFromCachedEncoder;
|
|
119
182
|
private getLocalDecoderForRange;
|
|
183
|
+
private captureRatelessDispatchLifecycle;
|
|
184
|
+
private abortRatelessDispatchTarget;
|
|
185
|
+
private abortRatelessDispatchLifecycle;
|
|
186
|
+
private finishRatelessDispatchLifecycle;
|
|
187
|
+
private maybeDisposeRatelessDispatchLifecycle;
|
|
188
|
+
private isRatelessDispatchLifecycleActive;
|
|
189
|
+
private getIncomingSyncProcessKey;
|
|
190
|
+
private isIncomingSyncGenerationActive;
|
|
191
|
+
private isIncomingSyncProcessActive;
|
|
120
192
|
onMaybeMissingEntries(properties: {
|
|
121
193
|
entries: Map<string, SyncEntryCoordinates<D>>;
|
|
122
194
|
targets: string[];
|
|
195
|
+
signal?: AbortSignal;
|
|
123
196
|
}): Promise<void>;
|
|
197
|
+
private onMaybeMissingEntriesWithLifecycle;
|
|
198
|
+
private startOutgoingRatelessSyncForTarget;
|
|
199
|
+
private consumeAuthorizedRatelessResponse;
|
|
124
200
|
onMessage(message: TransportMessage, context: RequestContext): Promise<boolean>;
|
|
125
201
|
onReceivedEntries(properties: {
|
|
126
202
|
entries: EntryWithRefs<any>[];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rateless-iblt.d.ts","sourceRoot":"","sources":["../../../src/sync/rateless-iblt.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AACvC,OAAO,EAAE,KAAK,aAAa,EAAyB,MAAM,iBAAiB,CAAC;AAQ5E,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,cAAc,CAAC;AAE1C,OAAO,EACN,cAAc,EACd,cAAc,EAEd,MAAM,gBAAgB,CAAC;AACxB,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAEnD,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAEjD,OAAO,KAAK,EAEX,aAAa,EACb,iBAAiB,EAEjB,oBAAoB,EACpB,WAAW,EACX,sBAAsB,EACtB,WAAW,EACX,MAAM,YAAY,CAAC;AAOpB,OAAO,
|
|
1
|
+
{"version":3,"file":"rateless-iblt.d.ts","sourceRoot":"","sources":["../../../src/sync/rateless-iblt.ts"],"names":[],"mappings":"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"}
|