@tanstack/browser-db-sqlite-persistence 0.2.30 → 0.2.33
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/README.md +16 -3
- package/dist/assets/opfs-worker-accoEoax.js.map +1 -1
- package/package.json +3 -3
package/README.md
CHANGED
|
@@ -124,9 +124,22 @@ the transaction to the resolved adapter for that collection.
|
|
|
124
124
|
If a mutating RPC loses its response, Browser coordination replays it only
|
|
125
125
|
while the requester still knows the same non-null leader id and term. An
|
|
126
126
|
unknown initial route or any leader/term change rejects with
|
|
127
|
-
`IndeterminateCommitError
|
|
128
|
-
|
|
129
|
-
|
|
127
|
+
`IndeterminateCommitError`. The coordinator does not retry that mutation
|
|
128
|
+
against an unknown or replacement leader. Direct mutation callers must
|
|
129
|
+
reconcile the outcome.
|
|
130
|
+
|
|
131
|
+
For a source sync transaction, the persisted wrapper keeps its applied receipt
|
|
132
|
+
pending while the replacement leader checks the exact transaction ID in SQLite
|
|
133
|
+
under the writer lock. If the ID is present, the receipt fulfills and peers
|
|
134
|
+
reload any committed rows they missed. If the ID is absent and the durable row
|
|
135
|
+
version and reset epoch still match the pre-send snapshot, the replacement
|
|
136
|
+
applies that transaction once and the receipt fulfills. The Collection and its
|
|
137
|
+
dependent live queries stay in the same sync run. If another write, reset, or
|
|
138
|
+
pruning makes the outcome unsafe to certify, the receipt rejects with the
|
|
139
|
+
original `IndeterminateCommitError` and the source run enters error. This
|
|
140
|
+
reconciliation applies only when both the coordinator and adapter provide the
|
|
141
|
+
exact-ID operation; it does not change direct RPC behavior. Tabs running an
|
|
142
|
+
older protocol version do not participate in this same-run recovery contract.
|
|
130
143
|
|
|
131
144
|
### Remote subset requests
|
|
132
145
|
|