@optimystic/db-core 1.0.0-beta.2 → 1.0.0
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/cluster/structs.d.ts +62 -16
- package/dist/src/cluster/structs.d.ts.map +1 -1
- package/dist/src/cluster/structs.js +5 -3
- package/dist/src/cluster/structs.js.map +1 -1
- package/dist/src/cohort-topic/antidos/bootstrap-evidence-envelope.d.ts +2 -1
- package/dist/src/cohort-topic/antidos/bootstrap-evidence-envelope.d.ts.map +1 -1
- package/dist/src/cohort-topic/antidos/bootstrap-evidence-envelope.js +10 -3
- package/dist/src/cohort-topic/antidos/bootstrap-evidence-envelope.js.map +1 -1
- package/dist/src/cohort-topic/wire/codec.d.ts.map +1 -1
- package/dist/src/cohort-topic/wire/codec.js +8 -2
- package/dist/src/cohort-topic/wire/codec.js.map +1 -1
- package/dist/src/collection/collection.d.ts +467 -35
- package/dist/src/collection/collection.d.ts.map +1 -1
- package/dist/src/collection/collection.js +879 -149
- package/dist/src/collection/collection.js.map +1 -1
- package/dist/src/collection/struct.d.ts +109 -4
- package/dist/src/collection/struct.d.ts.map +1 -1
- package/dist/src/collection/struct.js +88 -1
- package/dist/src/collection/struct.js.map +1 -1
- package/dist/src/collections/diary/diary.d.ts +6 -2
- package/dist/src/collections/diary/diary.d.ts.map +1 -1
- package/dist/src/collections/diary/diary.js +5 -2
- package/dist/src/collections/diary/diary.js.map +1 -1
- package/dist/src/collections/tree/struct.d.ts +192 -5
- package/dist/src/collections/tree/struct.d.ts.map +1 -1
- package/dist/src/collections/tree/struct.js +134 -0
- package/dist/src/collections/tree/struct.js.map +1 -1
- package/dist/src/collections/tree/tree.d.ts +13 -3
- package/dist/src/collections/tree/tree.d.ts.map +1 -1
- package/dist/src/collections/tree/tree.js +109 -6
- package/dist/src/collections/tree/tree.js.map +1 -1
- package/dist/src/index.d.ts +2 -1
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +2 -1
- package/dist/src/index.js.map +1 -1
- package/dist/src/logger-registry.d.ts +57 -0
- package/dist/src/logger-registry.d.ts.map +1 -0
- package/dist/src/logger-registry.js +168 -0
- package/dist/src/logger-registry.js.map +1 -0
- package/dist/src/logger.d.ts.map +1 -1
- package/dist/src/logger.js +3 -0
- package/dist/src/logger.js.map +1 -1
- package/dist/src/matchmaking/wire.d.ts.map +1 -1
- package/dist/src/matchmaking/wire.js +8 -2
- package/dist/src/matchmaking/wire.js.map +1 -1
- package/dist/src/network/durability.d.ts +45 -0
- package/dist/src/network/durability.d.ts.map +1 -0
- package/dist/src/network/durability.js +114 -0
- package/dist/src/network/durability.js.map +1 -0
- package/dist/src/network/i-key-network.d.ts +14 -6
- package/dist/src/network/i-key-network.d.ts.map +1 -1
- package/dist/src/network/index.d.ts +3 -0
- package/dist/src/network/index.d.ts.map +1 -1
- package/dist/src/network/index.js +3 -0
- package/dist/src/network/index.js.map +1 -1
- package/dist/src/network/lineage.d.ts +39 -0
- package/dist/src/network/lineage.d.ts.map +1 -0
- package/dist/src/network/lineage.js +61 -0
- package/dist/src/network/lineage.js.map +1 -0
- package/dist/src/network/routing-key.d.ts +24 -0
- package/dist/src/network/routing-key.d.ts.map +1 -0
- package/dist/src/network/routing-key.js +9 -0
- package/dist/src/network/routing-key.js.map +1 -0
- package/dist/src/network/stale-failure.d.ts +5 -1
- package/dist/src/network/stale-failure.d.ts.map +1 -1
- package/dist/src/network/stale-failure.js +5 -1
- package/dist/src/network/stale-failure.js.map +1 -1
- package/dist/src/network/struct.d.ts +151 -8
- package/dist/src/network/struct.d.ts.map +1 -1
- package/dist/src/network/struct.js.map +1 -1
- package/dist/src/reactivity/wire.d.ts.map +1 -1
- package/dist/src/reactivity/wire.js +8 -2
- package/dist/src/reactivity/wire.js.map +1 -1
- package/dist/src/testing/test-transactor.d.ts +64 -7
- package/dist/src/testing/test-transactor.d.ts.map +1 -1
- package/dist/src/testing/test-transactor.js +150 -23
- package/dist/src/testing/test-transactor.js.map +1 -1
- package/dist/src/transaction/coordinator.d.ts +141 -21
- package/dist/src/transaction/coordinator.d.ts.map +1 -1
- package/dist/src/transaction/coordinator.js +408 -122
- package/dist/src/transaction/coordinator.js.map +1 -1
- package/dist/src/transaction/errors.d.ts +39 -10
- package/dist/src/transaction/errors.d.ts.map +1 -1
- package/dist/src/transaction/errors.js +34 -9
- package/dist/src/transaction/errors.js.map +1 -1
- package/dist/src/transaction/index.d.ts +1 -0
- package/dist/src/transaction/index.d.ts.map +1 -1
- package/dist/src/transaction/index.js.map +1 -1
- package/dist/src/transactor/block-floors.d.ts +78 -0
- package/dist/src/transactor/block-floors.d.ts.map +1 -0
- package/dist/src/transactor/block-floors.js +62 -0
- package/dist/src/transactor/block-floors.js.map +1 -0
- package/dist/src/transactor/change-notifier.d.ts +43 -0
- package/dist/src/transactor/change-notifier.d.ts.map +1 -1
- package/dist/src/transactor/change-notifier.js +3 -0
- package/dist/src/transactor/change-notifier.js.map +1 -1
- package/dist/src/transactor/index.d.ts +1 -0
- package/dist/src/transactor/index.d.ts.map +1 -1
- package/dist/src/transactor/index.js +1 -0
- package/dist/src/transactor/index.js.map +1 -1
- package/dist/src/transactor/network-transactor.d.ts +43 -6
- package/dist/src/transactor/network-transactor.d.ts.map +1 -1
- package/dist/src/transactor/network-transactor.js +279 -81
- package/dist/src/transactor/network-transactor.js.map +1 -1
- package/dist/src/transactor/transactor-source.d.ts +94 -4
- package/dist/src/transactor/transactor-source.d.ts.map +1 -1
- package/dist/src/transactor/transactor-source.js +120 -42
- package/dist/src/transactor/transactor-source.js.map +1 -1
- package/dist/src/transactor/transactor.d.ts +14 -1
- package/dist/src/transactor/transactor.d.ts.map +1 -1
- package/dist/src/transform/atomic.d.ts.map +1 -1
- package/dist/src/transform/atomic.js +12 -9
- package/dist/src/transform/atomic.js.map +1 -1
- package/dist/src/transform/base-pins.d.ts +50 -17
- package/dist/src/transform/base-pins.d.ts.map +1 -1
- package/dist/src/transform/base-pins.js +58 -11
- package/dist/src/transform/base-pins.js.map +1 -1
- package/dist/src/transform/cache-source.d.ts +75 -11
- package/dist/src/transform/cache-source.d.ts.map +1 -1
- package/dist/src/transform/cache-source.js +162 -36
- package/dist/src/transform/cache-source.js.map +1 -1
- package/dist/src/transform/digest.d.ts +8 -1
- package/dist/src/transform/digest.d.ts.map +1 -1
- package/dist/src/transform/digest.js +19 -9
- package/dist/src/transform/digest.js.map +1 -1
- package/dist/src/transform/helpers.d.ts +6 -2
- package/dist/src/transform/helpers.d.ts.map +1 -1
- package/dist/src/transform/helpers.js +8 -3
- package/dist/src/transform/helpers.js.map +1 -1
- package/dist/src/transform/tracker.d.ts +94 -14
- package/dist/src/transform/tracker.d.ts.map +1 -1
- package/dist/src/transform/tracker.js +222 -68
- package/dist/src/transform/tracker.js.map +1 -1
- package/dist/src/utility/structural-equals.d.ts +38 -0
- package/dist/src/utility/structural-equals.d.ts.map +1 -0
- package/dist/src/utility/structural-equals.js +77 -0
- package/dist/src/utility/structural-equals.js.map +1 -0
- package/package.json +2 -2
- package/src/cluster/structs.ts +298 -255
- package/src/cohort-topic/antidos/bootstrap-evidence-envelope.ts +260 -253
- package/src/cohort-topic/wire/codec.ts +222 -216
- package/src/collection/collection.ts +996 -158
- package/src/collection/struct.ts +99 -4
- package/src/collections/diary/diary.ts +71 -68
- package/src/collections/tree/struct.ts +248 -26
- package/src/collections/tree/tree.ts +130 -9
- package/src/index.ts +2 -1
- package/src/logger-registry.ts +224 -0
- package/src/logger.ts +4 -0
- package/src/matchmaking/wire.ts +8 -2
- package/src/network/durability.ts +123 -0
- package/src/network/i-key-network.ts +60 -52
- package/src/network/index.ts +10 -7
- package/src/network/lineage.ts +80 -0
- package/src/network/routing-key.ts +27 -0
- package/src/network/stale-failure.ts +5 -1
- package/src/network/struct.ts +156 -8
- package/src/reactivity/wire.ts +230 -224
- package/src/testing/test-transactor.ts +152 -24
- package/src/transaction/coordinator.ts +470 -131
- package/src/transaction/errors.ts +34 -9
- package/src/transaction/index.ts +1 -0
- package/src/transactor/block-floors.ts +105 -0
- package/src/transactor/change-notifier.ts +129 -80
- package/src/transactor/index.ts +1 -0
- package/src/transactor/network-transactor.ts +297 -84
- package/src/transactor/transactor-source.ts +131 -42
- package/src/transactor/transactor.ts +13 -1
- package/src/transform/atomic.ts +25 -22
- package/src/transform/base-pins.ts +76 -18
- package/src/transform/cache-source.ts +327 -194
- package/src/transform/digest.ts +21 -10
- package/src/transform/helpers.ts +8 -3
- package/src/transform/tracker.ts +423 -270
- package/src/utility/structural-equals.ts +72 -0
- package/dist/src/utility/block-id-to-bytes.d.ts +0 -3
- package/dist/src/utility/block-id-to-bytes.d.ts.map +0 -1
- package/dist/src/utility/block-id-to-bytes.js +0 -7
- package/dist/src/utility/block-id-to-bytes.js.map +0 -1
- package/src/utility/block-id-to-bytes.ts +0 -8
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"collection.js","sourceRoot":"","sources":["../../../src/collection/collection.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"collection.js","sourceRoot":"","sources":["../../../src/collection/collection.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { IBlock, BlockId, Action } from "../index.js";
|
|
1
|
+
import type { IBlock, BlockId, Action, WriteDurability } from "../index.js";
|
|
2
2
|
import type { IChainHeader } from "../chain/chain-nodes.js";
|
|
3
3
|
import type { RandFn } from "../utility/backoff.js";
|
|
4
4
|
export type CollectionId = BlockId;
|
|
@@ -44,7 +44,12 @@ export interface SyncOptions {
|
|
|
44
44
|
}
|
|
45
45
|
/** Thrown by {@link ICollection.sync} / {@link ICollection.updateAndSync} when the retry budget
|
|
46
46
|
* (attempt count or deadline) is exhausted while the transactor keeps returning stale failures.
|
|
47
|
-
* Catchable so callers can surface a clear "gave up syncing" condition instead of hanging.
|
|
47
|
+
* Catchable so callers can surface a clear "gave up syncing" condition instead of hanging.
|
|
48
|
+
*
|
|
49
|
+
* It says the write was NOT SAVED; it does not prove nothing was stored. A write's log tail is
|
|
50
|
+
* committed before its other blocks, and the attempt that spent the budget is not followed by a
|
|
51
|
+
* refresh, so that attempt's log entry may be standing in the log with none of its data — the state
|
|
52
|
+
* {@link TornActionError} names when a refresh does get to see it. */
|
|
48
53
|
export declare class SyncRetryExhaustedError extends Error {
|
|
49
54
|
readonly collectionId: CollectionId;
|
|
50
55
|
readonly attempts: number;
|
|
@@ -104,6 +109,101 @@ export declare class SyncRevisionStalledError extends SyncRetryExhaustedError {
|
|
|
104
109
|
* committed nothing. */
|
|
105
110
|
heldRev: number | undefined, lastReason?: string);
|
|
106
111
|
}
|
|
112
|
+
/** Why a half-landed write could not be finished (see {@link TornActionError}). This is the CAUSE
|
|
113
|
+
* of giving up; whether the write is then definitely not saved is a separate fact, carried by
|
|
114
|
+
* {@link TornActionError.final} — every reason can arrive with either value.
|
|
115
|
+
*
|
|
116
|
+
* - `rival-holds-revision` — finishing was refused because a DIFFERENT action holds a revision past
|
|
117
|
+
* the one the write needed on some block. That alone does NOT mean the write is lost: a later
|
|
118
|
+
* revision is often built ON the write (a rival that read it and added to it), and a write every
|
|
119
|
+
* block of which was built upon is reported SAVED, never by this error. It is raised only once
|
|
120
|
+
* the blocks' own history was asked (`ITransactor.getLineage`) and did not vouch for every block.
|
|
121
|
+
* - `completion-refused` — finishing was attempted and refused for a cause that can clear on its
|
|
122
|
+
* own (another write in flight on the block, the revision not yet held by a majority). The write
|
|
123
|
+
* paths retry this inside their own budget, so seeing it means that budget ran out.
|
|
124
|
+
* - `transforms-not-held` — the write's own log entry was found with blocks still missing, but this
|
|
125
|
+
* collection no longer holds the transforms that would finish them. */
|
|
126
|
+
export type TornActionReason = 'rival-holds-revision' | 'completion-refused' | 'transforms-not-held';
|
|
127
|
+
/** Thrown when a write HALF-LANDED and was not finished: its log entry is stored, but at least one
|
|
128
|
+
* of the other blocks that entry names is not known to hold the write.
|
|
129
|
+
*
|
|
130
|
+
* A write's log tail is committed before the rest of its blocks, so a write can be refused AFTER the
|
|
131
|
+
* tail was stored (see `NetworkTransactor.commit`). The writer's retry then finds its own log entry.
|
|
132
|
+
* That entry proves only that the tail landed; the write is saved only once EVERY block the entry
|
|
133
|
+
* names holds the write — at the write's own revision, or at a later revision that was built from
|
|
134
|
+
* it — so the retry finishes the remaining blocks at the same action id and revision (see
|
|
135
|
+
* `Collection.completeOwnEntry`). This error is what it raises when it could not — {@link reason}
|
|
136
|
+
* says why, and {@link final} says what that leaves the caller able to do.
|
|
137
|
+
*
|
|
138
|
+
* **{@link final} is the field to act on.** An application's only safe reaction to a failed write
|
|
139
|
+
* is to submit it again, and that is only safe when the first one can never show up:
|
|
140
|
+
*
|
|
141
|
+
* - `final: true` — the write is NOT saved and never will be. Every block it still needed answered
|
|
142
|
+
* for its whole cohort that it does not hold the write (its history passed the write's revision
|
|
143
|
+
* without it, or it never reached that revision), and the write's pending records were confirmed
|
|
144
|
+
* cancelled first, so nothing is left that could land it. Submitting the same change again stores
|
|
145
|
+
* it once.
|
|
146
|
+
* - `final: false` — that could NOT be established. The write may already be saved, or may still
|
|
147
|
+
* land (a block's cohort did not all answer, members contradicted each other, fewer than a
|
|
148
|
+
* majority hold it, or the cancel could not be confirmed). Submitting again can store the change
|
|
149
|
+
* twice; read the data back first.
|
|
150
|
+
*
|
|
151
|
+
* It is deliberately not a {@link SyncRetryExhaustedError}: that error says the write never landed,
|
|
152
|
+
* whereas here the log already holds an entry for it. Finishing needs the original action id and
|
|
153
|
+
* the transforms it sent, and both are gone once this escapes. Re-driving under a NEW revision
|
|
154
|
+
* records the same actions in the log twice, so nothing here does that on the caller's behalf. The
|
|
155
|
+
* staged actions are left in place on the collection, so at this level "submit again" is calling
|
|
156
|
+
* `sync()` again, and abandoning the write is the caller's to do (`Collection.restorePending`).
|
|
157
|
+
* `Tree.replace` and `Diary.append` do abandon it — they own both the staging and the flush, and a
|
|
158
|
+
* failed call that left its action staged would ride along, unasked, with the caller's next write.
|
|
159
|
+
*
|
|
160
|
+
* Raised out of {@link ICollection.sync} / {@link ICollection.updateAndSync}, and out of the
|
|
161
|
+
* refresh `TransactionCoordinator.commit` runs between attempts (`Collection.refreshInFlight`).
|
|
162
|
+
* The coordinator passes it on bare only when no other participant of the commit is saved; when
|
|
163
|
+
* one is, it arrives as the `reason` of a `CoordinatorPartialCommitError` that names the saved
|
|
164
|
+
* participants. */
|
|
165
|
+
export declare class TornActionError extends Error {
|
|
166
|
+
readonly collectionId: CollectionId;
|
|
167
|
+
/** The half-landed write's action id. */
|
|
168
|
+
readonly actionId: string;
|
|
169
|
+
/** The revision its log entry landed at — the revision every block it names had to take. */
|
|
170
|
+
readonly rev: number;
|
|
171
|
+
/** The blocks the entry names that are not known to hold the write. */
|
|
172
|
+
readonly blockIds: BlockId[];
|
|
173
|
+
/** Why finishing failed — see {@link TornActionReason}. Says nothing about {@link final}. */
|
|
174
|
+
readonly reason: TornActionReason;
|
|
175
|
+
/** Whether the write is definitely not saved and can never land — see the class comment.
|
|
176
|
+
* `false` means "not established", never "it landed". */
|
|
177
|
+
readonly final: boolean;
|
|
178
|
+
/** The refusal in the responder's own words, for a log line. Never branch on it. */
|
|
179
|
+
readonly detail: string;
|
|
180
|
+
/** The confirmed revision a responder reported holding under ANOTHER action, when the refusal
|
|
181
|
+
* carried one (see `StaleFailure.staleAt`). */
|
|
182
|
+
readonly staleAt?: {
|
|
183
|
+
blockId: BlockId;
|
|
184
|
+
rev: number;
|
|
185
|
+
} | undefined;
|
|
186
|
+
constructor(collectionId: CollectionId,
|
|
187
|
+
/** The half-landed write's action id. */
|
|
188
|
+
actionId: string,
|
|
189
|
+
/** The revision its log entry landed at — the revision every block it names had to take. */
|
|
190
|
+
rev: number,
|
|
191
|
+
/** The blocks the entry names that are not known to hold the write. */
|
|
192
|
+
blockIds: BlockId[],
|
|
193
|
+
/** Why finishing failed — see {@link TornActionReason}. Says nothing about {@link final}. */
|
|
194
|
+
reason: TornActionReason,
|
|
195
|
+
/** Whether the write is definitely not saved and can never land — see the class comment.
|
|
196
|
+
* `false` means "not established", never "it landed". */
|
|
197
|
+
final: boolean,
|
|
198
|
+
/** The refusal in the responder's own words, for a log line. Never branch on it. */
|
|
199
|
+
detail: string,
|
|
200
|
+
/** The confirmed revision a responder reported holding under ANOTHER action, when the refusal
|
|
201
|
+
* carried one (see `StaleFailure.staleAt`). */
|
|
202
|
+
staleAt?: {
|
|
203
|
+
blockId: BlockId;
|
|
204
|
+
rev: number;
|
|
205
|
+
} | undefined);
|
|
206
|
+
}
|
|
107
207
|
/** Thrown when a collection that already holds a committed revision reads its own header
|
|
108
208
|
* block as authoritatively absent.
|
|
109
209
|
*
|
|
@@ -136,8 +236,13 @@ export interface ICollection<TAction> {
|
|
|
136
236
|
readonly id: CollectionId;
|
|
137
237
|
act(...actions: Action<TAction>[]): Promise<void>;
|
|
138
238
|
update(): Promise<void>;
|
|
139
|
-
|
|
140
|
-
|
|
239
|
+
/** Push staged changes. Resolves to who holds what was committed, or `undefined` when NOTHING WAS
|
|
240
|
+
* WRITTEN — nothing was staged, so there was no pend and no commit and there is no durability to
|
|
241
|
+
* report. A write that never landed throws ({@link SyncRetryExhaustedError}) rather than returning
|
|
242
|
+
* a class. Decide "is this saved" with `isFullyDurable`, never by comparing `quorum`. */
|
|
243
|
+
sync(options?: SyncOptions): Promise<WriteDurability | undefined>;
|
|
244
|
+
/** Refresh, then {@link sync}. Same return contract. */
|
|
245
|
+
updateAndSync(options?: SyncOptions): Promise<WriteDurability | undefined>;
|
|
141
246
|
selectLog(forward?: boolean): AsyncIterableIterator<Action<TAction>>;
|
|
142
247
|
}
|
|
143
248
|
export type CreateCollectionAction = Action<void> & {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"struct.d.ts","sourceRoot":"","sources":["../../../src/collection/struct.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"struct.d.ts","sourceRoot":"","sources":["../../../src/collection/struct.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAC5E,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAC5D,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAEpD,MAAM,MAAM,YAAY,GAAG,OAAO,CAAC;AAEnC,MAAM,MAAM,qBAAqB,GAAG,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC;AAEnE;;+EAE+E;AAC/E,MAAM,WAAW,WAAW;IAC3B;;;qBAGiB;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;sFACkF;IAClF,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;gEAC4D;IAC5D,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,oEAAoE;IACpE,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;4BAEwB;IACxB,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB;2FACuF;IACvF,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;;;;;;;;;;;2FAYuF;IACvF,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED;;;;;;;sEAOsE;AACtE,qBAAa,uBAAwB,SAAQ,KAAK;IAEhD,QAAQ,CAAC,YAAY,EAAE,YAAY;IACnC,QAAQ,CAAC,QAAQ,EAAE,MAAM;IACzB,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM;IAC5B;;8FAE0F;IAC1F,QAAQ,CAAC,OAAO,CAAC,EAAE;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE;gBAN3C,YAAY,EAAE,YAAY,EAC1B,QAAQ,EAAE,MAAM,EAChB,UAAU,CAAC,EAAE,MAAM,YAAA;IAC5B;;8FAE0F;IACjF,OAAO,CAAC,EAAE;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE,YAAA;CAOrD;AAED;;;;;;;;;;;;;;;;;sBAiBsB;AACtB,qBAAa,wBAAyB,SAAQ,uBAAuB;IAQnE,0DAA0D;IAC1D,QAAQ,CAAC,YAAY,EAAE,MAAM;IAC7B;4BACwB;IACxB,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,SAAS;IAXrC,0FAA0F;IAC1F,SAAiB,OAAO,EAAE;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE,CAAC;gBAG3D,YAAY,EAAE,YAAY,EAC1B,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE;IAC1C,0DAA0D;IACjD,YAAY,EAAE,MAAM;IAC7B;4BACwB;IACf,OAAO,EAAE,MAAM,GAAG,SAAS,EACpC,UAAU,CAAC,EAAE,MAAM;CAYpB;AAED;;;;;;;;;;;;;yEAayE;AACzE,MAAM,MAAM,gBAAgB,GAAG,sBAAsB,GAAG,oBAAoB,GAAG,qBAAqB,CAAC;AAErG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;mBAqCmB;AACnB,qBAAa,eAAgB,SAAQ,KAAK;IAExC,QAAQ,CAAC,YAAY,EAAE,YAAY;IACnC,yCAAyC;IACzC,QAAQ,CAAC,QAAQ,EAAE,MAAM;IACzB,4FAA4F;IAC5F,QAAQ,CAAC,GAAG,EAAE,MAAM;IACpB,uEAAuE;IACvE,QAAQ,CAAC,QAAQ,EAAE,OAAO,EAAE;IAC5B,6FAA6F;IAC7F,QAAQ,CAAC,MAAM,EAAE,gBAAgB;IACjC;6DACyD;IACzD,QAAQ,CAAC,KAAK,EAAE,OAAO;IACvB,oFAAoF;IACpF,QAAQ,CAAC,MAAM,EAAE,MAAM;IACvB;mDAC+C;IAC/C,QAAQ,CAAC,OAAO,CAAC,EAAE;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE;gBAhB3C,YAAY,EAAE,YAAY;IACnC,yCAAyC;IAChC,QAAQ,EAAE,MAAM;IACzB,4FAA4F;IACnF,GAAG,EAAE,MAAM;IACpB,uEAAuE;IAC9D,QAAQ,EAAE,OAAO,EAAE;IAC5B,6FAA6F;IACpF,MAAM,EAAE,gBAAgB;IACjC;6DACyD;IAChD,KAAK,EAAE,OAAO;IACvB,oFAAoF;IAC3E,MAAM,EAAE,MAAM;IACvB;mDAC+C;IACtC,OAAO,CAAC,EAAE;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE,YAAA;CAWrD;AAED;;;;;;;;;;;;;;;;;;;gGAmBgG;AAChG,qBAAa,6BAA8B,SAAQ,KAAK;IAEtD,QAAQ,CAAC,YAAY,EAAE,YAAY;IACnC,yFAAyF;IACzF,QAAQ,CAAC,OAAO,EAAE,MAAM;gBAFf,YAAY,EAAE,YAAY;IACnC,yFAAyF;IAChF,OAAO,EAAE,MAAM;CAMzB;AAED,MAAM,WAAW,WAAW,CAAC,OAAO;IACnC,QAAQ,CAAC,EAAE,EAAE,YAAY,CAAC;IAC1B,GAAG,CAAC,GAAG,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAClD,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACxB;;;6FAGyF;IACzF,IAAI,CAAC,OAAO,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,eAAe,GAAG,SAAS,CAAC,CAAC;IAClE,wDAAwD;IACxD,aAAa,CAAC,OAAO,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,eAAe,GAAG,SAAS,CAAC,CAAC;IAC3E,SAAS,CAAC,OAAO,CAAC,EAAE,OAAO,GAAG,qBAAqB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;CACrE;AAED,MAAM,MAAM,sBAAsB,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG;IACnD,IAAI,EAAE,QAAQ,CAAC;CACf,CAAC"}
|
|
@@ -1,6 +1,11 @@
|
|
|
1
1
|
/** Thrown by {@link ICollection.sync} / {@link ICollection.updateAndSync} when the retry budget
|
|
2
2
|
* (attempt count or deadline) is exhausted while the transactor keeps returning stale failures.
|
|
3
|
-
* Catchable so callers can surface a clear "gave up syncing" condition instead of hanging.
|
|
3
|
+
* Catchable so callers can surface a clear "gave up syncing" condition instead of hanging.
|
|
4
|
+
*
|
|
5
|
+
* It says the write was NOT SAVED; it does not prove nothing was stored. A write's log tail is
|
|
6
|
+
* committed before its other blocks, and the attempt that spent the budget is not followed by a
|
|
7
|
+
* refresh, so that attempt's log entry may be standing in the log with none of its data — the state
|
|
8
|
+
* {@link TornActionError} names when a refresh does get to see it. */
|
|
4
9
|
export class SyncRetryExhaustedError extends Error {
|
|
5
10
|
collectionId;
|
|
6
11
|
attempts;
|
|
@@ -61,6 +66,88 @@ export class SyncRevisionStalledError extends SyncRetryExhaustedError {
|
|
|
61
66
|
this.name = 'SyncRevisionStalledError';
|
|
62
67
|
}
|
|
63
68
|
}
|
|
69
|
+
/** Thrown when a write HALF-LANDED and was not finished: its log entry is stored, but at least one
|
|
70
|
+
* of the other blocks that entry names is not known to hold the write.
|
|
71
|
+
*
|
|
72
|
+
* A write's log tail is committed before the rest of its blocks, so a write can be refused AFTER the
|
|
73
|
+
* tail was stored (see `NetworkTransactor.commit`). The writer's retry then finds its own log entry.
|
|
74
|
+
* That entry proves only that the tail landed; the write is saved only once EVERY block the entry
|
|
75
|
+
* names holds the write — at the write's own revision, or at a later revision that was built from
|
|
76
|
+
* it — so the retry finishes the remaining blocks at the same action id and revision (see
|
|
77
|
+
* `Collection.completeOwnEntry`). This error is what it raises when it could not — {@link reason}
|
|
78
|
+
* says why, and {@link final} says what that leaves the caller able to do.
|
|
79
|
+
*
|
|
80
|
+
* **{@link final} is the field to act on.** An application's only safe reaction to a failed write
|
|
81
|
+
* is to submit it again, and that is only safe when the first one can never show up:
|
|
82
|
+
*
|
|
83
|
+
* - `final: true` — the write is NOT saved and never will be. Every block it still needed answered
|
|
84
|
+
* for its whole cohort that it does not hold the write (its history passed the write's revision
|
|
85
|
+
* without it, or it never reached that revision), and the write's pending records were confirmed
|
|
86
|
+
* cancelled first, so nothing is left that could land it. Submitting the same change again stores
|
|
87
|
+
* it once.
|
|
88
|
+
* - `final: false` — that could NOT be established. The write may already be saved, or may still
|
|
89
|
+
* land (a block's cohort did not all answer, members contradicted each other, fewer than a
|
|
90
|
+
* majority hold it, or the cancel could not be confirmed). Submitting again can store the change
|
|
91
|
+
* twice; read the data back first.
|
|
92
|
+
*
|
|
93
|
+
* It is deliberately not a {@link SyncRetryExhaustedError}: that error says the write never landed,
|
|
94
|
+
* whereas here the log already holds an entry for it. Finishing needs the original action id and
|
|
95
|
+
* the transforms it sent, and both are gone once this escapes. Re-driving under a NEW revision
|
|
96
|
+
* records the same actions in the log twice, so nothing here does that on the caller's behalf. The
|
|
97
|
+
* staged actions are left in place on the collection, so at this level "submit again" is calling
|
|
98
|
+
* `sync()` again, and abandoning the write is the caller's to do (`Collection.restorePending`).
|
|
99
|
+
* `Tree.replace` and `Diary.append` do abandon it — they own both the staging and the flush, and a
|
|
100
|
+
* failed call that left its action staged would ride along, unasked, with the caller's next write.
|
|
101
|
+
*
|
|
102
|
+
* Raised out of {@link ICollection.sync} / {@link ICollection.updateAndSync}, and out of the
|
|
103
|
+
* refresh `TransactionCoordinator.commit` runs between attempts (`Collection.refreshInFlight`).
|
|
104
|
+
* The coordinator passes it on bare only when no other participant of the commit is saved; when
|
|
105
|
+
* one is, it arrives as the `reason` of a `CoordinatorPartialCommitError` that names the saved
|
|
106
|
+
* participants. */
|
|
107
|
+
export class TornActionError extends Error {
|
|
108
|
+
collectionId;
|
|
109
|
+
actionId;
|
|
110
|
+
rev;
|
|
111
|
+
blockIds;
|
|
112
|
+
reason;
|
|
113
|
+
final;
|
|
114
|
+
detail;
|
|
115
|
+
staleAt;
|
|
116
|
+
constructor(collectionId,
|
|
117
|
+
/** The half-landed write's action id. */
|
|
118
|
+
actionId,
|
|
119
|
+
/** The revision its log entry landed at — the revision every block it names had to take. */
|
|
120
|
+
rev,
|
|
121
|
+
/** The blocks the entry names that are not known to hold the write. */
|
|
122
|
+
blockIds,
|
|
123
|
+
/** Why finishing failed — see {@link TornActionReason}. Says nothing about {@link final}. */
|
|
124
|
+
reason,
|
|
125
|
+
/** Whether the write is definitely not saved and can never land — see the class comment.
|
|
126
|
+
* `false` means "not established", never "it landed". */
|
|
127
|
+
final,
|
|
128
|
+
/** The refusal in the responder's own words, for a log line. Never branch on it. */
|
|
129
|
+
detail,
|
|
130
|
+
/** The confirmed revision a responder reported holding under ANOTHER action, when the refusal
|
|
131
|
+
* carried one (see `StaleFailure.staleAt`). */
|
|
132
|
+
staleAt) {
|
|
133
|
+
super(`collection ${collectionId}: action ${actionId} is torn at rev ${rev} — its log entry is stored `
|
|
134
|
+
+ `but block(s) ${blockIds.join(', ') || '(unknown)'} are not known to hold it, and the write cannot be `
|
|
135
|
+
+ `finished: ${detail}`
|
|
136
|
+
+ (staleAt ? ` (block ${staleAt.blockId} is at rev ${staleAt.rev})` : '')
|
|
137
|
+
+ (final
|
|
138
|
+
? ' — the write is not saved and cannot land; it is safe to submit again'
|
|
139
|
+
: ' — whether the write is saved could not be established; it may be saved already or land later'));
|
|
140
|
+
this.collectionId = collectionId;
|
|
141
|
+
this.actionId = actionId;
|
|
142
|
+
this.rev = rev;
|
|
143
|
+
this.blockIds = blockIds;
|
|
144
|
+
this.reason = reason;
|
|
145
|
+
this.final = final;
|
|
146
|
+
this.detail = detail;
|
|
147
|
+
this.staleAt = staleAt;
|
|
148
|
+
this.name = 'TornActionError';
|
|
149
|
+
}
|
|
150
|
+
}
|
|
64
151
|
/** Thrown when a collection that already holds a committed revision reads its own header
|
|
65
152
|
* block as authoritatively absent.
|
|
66
153
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"struct.js","sourceRoot":"","sources":["../../../src/collection/struct.ts"],"names":[],"mappings":"AAgDA
|
|
1
|
+
{"version":3,"file":"struct.js","sourceRoot":"","sources":["../../../src/collection/struct.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { ITransactor, CollectionId } from "../../index.js";
|
|
1
|
+
import type { ITransactor, CollectionId, WriteDurability } from "../../index.js";
|
|
2
2
|
export declare class Diary<TEntry> {
|
|
3
3
|
private readonly collection;
|
|
4
4
|
private constructor();
|
|
@@ -8,7 +8,11 @@ export declare class Diary<TEntry> {
|
|
|
8
8
|
/** Open an EXISTING diary, or resolve to `undefined` when no header block has ever been
|
|
9
9
|
* committed under this id. Never brings a diary into existence — see {@link Collection.open}. */
|
|
10
10
|
static open<TEntry>(network: ITransactor, id: CollectionId): Promise<Diary<TEntry> | undefined>;
|
|
11
|
-
|
|
11
|
+
/** Append one entry and flush it. Forwards the collection's answer verbatim — see
|
|
12
|
+
* {@link Collection.sync} for what `undefined` means. This layer never interprets the value.
|
|
13
|
+
* An append that throws leaves nothing staged (see {@link Collection.actAndSync}), so a caller
|
|
14
|
+
* that appends it again records it once, not twice. */
|
|
15
|
+
append(data: TEntry): Promise<WriteDurability | undefined>;
|
|
12
16
|
/** Fetch the latest state from the network */
|
|
13
17
|
update(): Promise<void>;
|
|
14
18
|
select(forward?: boolean): AsyncIterableIterator<TEntry>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"diary.d.ts","sourceRoot":"","sources":["../../../../src/collections/diary/diary.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAA8D,YAAY,EAAE,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"diary.d.ts","sourceRoot":"","sources":["../../../../src/collections/diary/diary.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAA8D,YAAY,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAoB7I,qBAAa,KAAK,CAAC,MAAM;IAEtB,OAAO,CAAC,QAAQ,CAAC,UAAU;IAD1B,OAAO;IAKP;iFAC6E;WAChE,YAAY,CAAC,MAAM,EAAE,OAAO,EAAE,WAAW,EAAE,EAAE,EAAE,YAAY,GAAG,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAKjG;sGACkG;WACrF,IAAI,CAAC,MAAM,EAAE,OAAO,EAAE,WAAW,EAAE,EAAE,EAAE,YAAY,GAAG,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,SAAS,CAAC;IAKrG;;;4DAGwD;IAClD,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,GAAG,SAAS,CAAC;IAShE,8CAA8C;IACxC,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;IAItB,MAAM,CAAC,OAAO,UAAO,GAAG,qBAAqB,CAAC,MAAM,CAAC;CAK/D"}
|
|
@@ -33,13 +33,16 @@ export class Diary {
|
|
|
33
33
|
const collection = await Collection.open(network, id, diaryInit());
|
|
34
34
|
return collection ? new Diary(collection) : undefined;
|
|
35
35
|
}
|
|
36
|
+
/** Append one entry and flush it. Forwards the collection's answer verbatim — see
|
|
37
|
+
* {@link Collection.sync} for what `undefined` means. This layer never interprets the value.
|
|
38
|
+
* An append that throws leaves nothing staged (see {@link Collection.actAndSync}), so a caller
|
|
39
|
+
* that appends it again records it once, not twice. */
|
|
36
40
|
async append(data) {
|
|
37
41
|
const action = {
|
|
38
42
|
type: "append",
|
|
39
43
|
data: data
|
|
40
44
|
};
|
|
41
|
-
await this.collection.
|
|
42
|
-
await this.collection.updateAndSync();
|
|
45
|
+
return await this.collection.actAndSync([action]);
|
|
43
46
|
}
|
|
44
47
|
/** Fetch the latest state from the network */
|
|
45
48
|
async update() {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"diary.js","sourceRoot":"","sources":["../../../../src/collections/diary/diary.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAC;AAE5D,OAAO,EAAE,sBAAsB,EAAE,MAAM,8CAA8C,CAAC;AACtF,OAAO,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AAEnD;uDACuD;AACvD,SAAS,SAAS;IACjB,OAAO;QACN,OAAO,EAAE;YACR,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE;gBACjC,sDAAsD;gBACtD,oCAAoC;YACrC,CAAC;SACD;QACD,iBAAiB,EAAE,CAAC,EAAW,EAAE,KAAyB,EAAE,EAAE,CAAC,CAAC;YAC/D,MAAM,EAAE,KAAK,CAAC,iBAAiB,CAAC,oBAAoB,EAAE,EAAE,CAAC;SACzD,CAAC;KACF,CAAC;AACH,CAAC;AAED,MAAM,OAAO,KAAK;IAEE;IADhB,YACgB,UAA8B;QAA9B,eAAU,GAAV,UAAU,CAAoB;IAE9C,CAAC;IAED;iFAC6E;IAC7E,MAAM,CAAC,KAAK,CAAC,YAAY,CAAS,OAAoB,EAAE,EAAgB;QACpE,MAAM,UAAU,GAAG,MAAM,UAAU,CAAC,YAAY,CAAC,OAAO,EAAE,EAAE,EAAE,SAAS,EAAU,CAAC,CAAC;QACnF,OAAO,IAAI,KAAK,CAAS,UAAU,CAAC,CAAC;IACzC,CAAC;IAED;sGACkG;IAClG,MAAM,CAAC,KAAK,CAAC,IAAI,CAAS,OAAoB,EAAE,EAAgB;QAC5D,MAAM,UAAU,GAAG,MAAM,UAAU,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,EAAE,SAAS,EAAU,CAAC,CAAC;QAC3E,OAAO,UAAU,CAAC,CAAC,CAAC,IAAI,KAAK,CAAS,UAAU,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAClE,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,IAAY;QACrB,MAAM,MAAM,GAAmB;YAC3B,IAAI,EAAE,QAAQ;YACd,IAAI,EAAE,IAAI;SACb,CAAC;QAEF,MAAM,IAAI,CAAC,UAAU,CAAC,
|
|
1
|
+
{"version":3,"file":"diary.js","sourceRoot":"","sources":["../../../../src/collections/diary/diary.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAC;AAE5D,OAAO,EAAE,sBAAsB,EAAE,MAAM,8CAA8C,CAAC;AACtF,OAAO,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AAEnD;uDACuD;AACvD,SAAS,SAAS;IACjB,OAAO;QACN,OAAO,EAAE;YACR,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE;gBACjC,sDAAsD;gBACtD,oCAAoC;YACrC,CAAC;SACD;QACD,iBAAiB,EAAE,CAAC,EAAW,EAAE,KAAyB,EAAE,EAAE,CAAC,CAAC;YAC/D,MAAM,EAAE,KAAK,CAAC,iBAAiB,CAAC,oBAAoB,EAAE,EAAE,CAAC;SACzD,CAAC;KACF,CAAC;AACH,CAAC;AAED,MAAM,OAAO,KAAK;IAEE;IADhB,YACgB,UAA8B;QAA9B,eAAU,GAAV,UAAU,CAAoB;IAE9C,CAAC;IAED;iFAC6E;IAC7E,MAAM,CAAC,KAAK,CAAC,YAAY,CAAS,OAAoB,EAAE,EAAgB;QACpE,MAAM,UAAU,GAAG,MAAM,UAAU,CAAC,YAAY,CAAC,OAAO,EAAE,EAAE,EAAE,SAAS,EAAU,CAAC,CAAC;QACnF,OAAO,IAAI,KAAK,CAAS,UAAU,CAAC,CAAC;IACzC,CAAC;IAED;sGACkG;IAClG,MAAM,CAAC,KAAK,CAAC,IAAI,CAAS,OAAoB,EAAE,EAAgB;QAC5D,MAAM,UAAU,GAAG,MAAM,UAAU,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,EAAE,SAAS,EAAU,CAAC,CAAC;QAC3E,OAAO,UAAU,CAAC,CAAC,CAAC,IAAI,KAAK,CAAS,UAAU,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAClE,CAAC;IAED;;;4DAGwD;IACxD,KAAK,CAAC,MAAM,CAAC,IAAY;QACrB,MAAM,MAAM,GAAmB;YAC3B,IAAI,EAAE,QAAQ;YACd,IAAI,EAAE,IAAI;SACb,CAAC;QAEF,OAAO,MAAM,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;IACtD,CAAC;IAED,8CAA8C;IAC9C,KAAK,CAAC,MAAM;QACR,MAAM,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC;IACnC,CAAC;IAED,KAAK,CAAC,CAAC,MAAM,CAAC,OAAO,GAAG,IAAI;QACxB,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,CAAC;YAC3D,MAAM,KAAK,CAAC,IAAI,CAAC;QACrB,CAAC;IACL,CAAC;CACJ;AAED,sBAAsB,CAAC;IACtB,SAAS,EAAE,oBAAoB;IAC/B,IAAI,EAAE,OAAO;IACb,YAAY,EAAE,CAAC,UAAU,EAAE,EAAE,EAAE,EAAE,CAAC,UAAU,CAAC,YAAY,CAAC,UAAU,EAAE,EAAE,EAAE,SAAS,EAAW,CAAC;CAC/F,CAAC,CAAC"}
|