@quereus/sync 4.5.0 → 4.7.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/README.md +14 -6
- package/dist/src/index.d.ts +1 -1
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +1 -1
- package/dist/src/index.js.map +1 -1
- package/dist/src/metadata/column-version.d.ts.map +1 -1
- package/dist/src/metadata/column-version.js +8 -9
- package/dist/src/metadata/column-version.js.map +1 -1
- package/dist/src/metadata/keys.d.ts +99 -39
- package/dist/src/metadata/keys.d.ts.map +1 -1
- package/dist/src/metadata/keys.js +213 -158
- package/dist/src/metadata/keys.js.map +1 -1
- package/dist/src/metadata/pk-identity.d.ts +19 -14
- package/dist/src/metadata/pk-identity.d.ts.map +1 -1
- package/dist/src/metadata/pk-identity.js +21 -28
- package/dist/src/metadata/pk-identity.js.map +1 -1
- package/dist/src/metadata/schema-migration.d.ts +33 -10
- package/dist/src/metadata/schema-migration.d.ts.map +1 -1
- package/dist/src/metadata/schema-migration.js +77 -18
- package/dist/src/metadata/schema-migration.js.map +1 -1
- package/dist/src/sync/change-applicator.d.ts +19 -3
- package/dist/src/sync/change-applicator.d.ts.map +1 -1
- package/dist/src/sync/change-applicator.js +253 -63
- package/dist/src/sync/change-applicator.js.map +1 -1
- package/dist/src/sync/maintenance.d.ts +8 -5
- package/dist/src/sync/maintenance.d.ts.map +1 -1
- package/dist/src/sync/maintenance.js +7 -4
- package/dist/src/sync/maintenance.js.map +1 -1
- package/dist/src/sync/manager.d.ts +46 -1
- package/dist/src/sync/manager.d.ts.map +1 -1
- package/dist/src/sync/protocol.d.ts +42 -3
- package/dist/src/sync/protocol.d.ts.map +1 -1
- package/dist/src/sync/protocol.js +40 -0
- package/dist/src/sync/protocol.js.map +1 -1
- package/dist/src/sync/snapshot-identity.d.ts.map +1 -1
- package/dist/src/sync/snapshot-identity.js +1 -9
- package/dist/src/sync/snapshot-identity.js.map +1 -1
- package/dist/src/sync/snapshot-stream.d.ts +11 -0
- package/dist/src/sync/snapshot-stream.d.ts.map +1 -1
- package/dist/src/sync/snapshot-stream.js +134 -67
- package/dist/src/sync/snapshot-stream.js.map +1 -1
- package/dist/src/sync/snapshot.d.ts.map +1 -1
- package/dist/src/sync/snapshot.js +15 -30
- package/dist/src/sync/snapshot.js.map +1 -1
- package/dist/src/sync/store-adapter.d.ts +5 -4
- package/dist/src/sync/store-adapter.d.ts.map +1 -1
- package/dist/src/sync/store-adapter.js +328 -108
- package/dist/src/sync/store-adapter.js.map +1 -1
- package/dist/src/sync/sync-manager-impl.d.ts +37 -4
- package/dist/src/sync/sync-manager-impl.d.ts.map +1 -1
- package/dist/src/sync/sync-manager-impl.js +110 -56
- package/dist/src/sync/sync-manager-impl.js.map +1 -1
- package/dist/src/sync/wire.d.ts +6 -0
- package/dist/src/sync/wire.d.ts.map +1 -1
- package/dist/src/sync/wire.js +3 -0
- package/dist/src/sync/wire.js.map +1 -1
- package/package.json +7 -7
|
@@ -173,7 +173,7 @@ export declare class SyncManagerImpl implements SyncManager, SyncContext {
|
|
|
173
173
|
* every fact of the transaction shares that base `(wallTime, counter, siteId)`
|
|
174
174
|
* and differs only in `opSeq` (a contiguous, 0-based sub-order). DDL is recorded
|
|
175
175
|
* before DML so migrations sort below the same transaction's data facts
|
|
176
|
-
* (docs/sync.md § DDL Application Order). All metadata for the transaction —
|
|
176
|
+
* (docs/sync-schema.md § DDL Application Order). All metadata for the transaction —
|
|
177
177
|
* schema migrations, column versions, tombstones, change-log entries, and the
|
|
178
178
|
* HLC clock state — lands in a single KV batch.
|
|
179
179
|
*/
|
|
@@ -354,9 +354,9 @@ export declare class SyncManagerImpl implements SyncManager, SyncContext {
|
|
|
354
354
|
* Each migration shares its transaction's base HLC, so the grouping step
|
|
355
355
|
* rejoins it with that transaction's data facts (or forms a DDL-only ChangeSet).
|
|
356
356
|
*
|
|
357
|
-
* The `sm:` range is keyed by `
|
|
358
|
-
*
|
|
359
|
-
*
|
|
357
|
+
* The `sm:` range is keyed by `(schema, kind, object, version)`, not by HLC, so
|
|
358
|
+
* this read cannot early-exit the way {@link collectChangesSince} does — the whole
|
|
359
|
+
* range is drained even when the fact side stops early. That is acceptable because
|
|
360
360
|
* migrations are few, and {@link buildTransactionChangeSets} drops any migration
|
|
361
361
|
* that sorts past the bounded fact watermark (its DDL-only group falls beyond the
|
|
362
362
|
* `batchSize` cut), so over-scanning here costs work but never correctness. A
|
|
@@ -389,10 +389,43 @@ export declare class SyncManagerImpl implements SyncManager, SyncContext {
|
|
|
389
389
|
* outside the delivery guarantee.
|
|
390
390
|
*/
|
|
391
391
|
pruneQuarantine(): Promise<number>;
|
|
392
|
+
/**
|
|
393
|
+
* One-shot repair pass over the whole change log: delete every entry whose
|
|
394
|
+
* target ({@link resolveLogEntry}) is already gone.
|
|
395
|
+
*
|
|
396
|
+
* {@link pruneTombstones} / `deleteRowVersionsAndLogEntries` (`sync-context.ts`)
|
|
397
|
+
* only stop *new* orphans — each deletes a `cl:` entry *via* the record it
|
|
398
|
+
* points at, so an entry whose record died before that forward fix landed can
|
|
399
|
+
* never be reached that way and is orphaned forever. This sweep reaches those
|
|
400
|
+
* by scanning the change log itself instead of a record's deletion path.
|
|
401
|
+
*
|
|
402
|
+
* Safe to run at any time, on any replica, with no peer coordination: an
|
|
403
|
+
* entry that resolves to `null` already produced no output for
|
|
404
|
+
* {@link collectChangesSince} (`resolveLogEntry` returning `null` is exactly
|
|
405
|
+
* what makes it an orphan), so deleting it changes nothing observable. Full
|
|
406
|
+
* scan, same shape as {@link pruneTombstones} — a replica with no pre-fix
|
|
407
|
+
* orphans (or one already repaired) resolves every entry and deletes nothing,
|
|
408
|
+
* so a caught-up replica pays only the scan.
|
|
409
|
+
*
|
|
410
|
+
* NOTE: the scan is one KV point-read per change-log entry, and the log holds
|
|
411
|
+
* roughly one entry per live cell, so a caught-up replica still pays O(live
|
|
412
|
+
* cells) reads on every maintenance tick for a repair that can only ever find
|
|
413
|
+
* something once. If that cost shows up (large replica, 5-minute quoomb-web
|
|
414
|
+
* cadence), stop re-scanning after a clean pass — see
|
|
415
|
+
* `debt-sync-repair-changelog-rescans-every-tick`.
|
|
416
|
+
*
|
|
417
|
+
* NOTE: entries whose key `parseChangeLogKey` cannot decode are skipped by
|
|
418
|
+
* `getAllChanges`, so this sweep cannot reach them either. Only reachable via
|
|
419
|
+
* key-format drift or corruption; if that ever happens, repair needs to iterate
|
|
420
|
+
* raw `cl:` keys rather than parsed entries.
|
|
421
|
+
*/
|
|
422
|
+
repairChangeLog(): Promise<number>;
|
|
392
423
|
getEventEmitter(): SyncEventEmitterImpl;
|
|
393
424
|
getSnapshotStream(chunkSize?: number): AsyncIterable<SnapshotChunk>;
|
|
394
425
|
applySnapshotStream(chunks: AsyncIterable<SnapshotChunk>, onProgress?: (progress: SnapshotProgress) => void): Promise<void>;
|
|
395
426
|
getSnapshotCheckpoint(snapshotId: string): Promise<SnapshotCheckpoint | undefined>;
|
|
427
|
+
listSnapshotCheckpoints(): Promise<SnapshotCheckpoint[]>;
|
|
428
|
+
clearSnapshotCheckpoint(snapshotId: string): Promise<void>;
|
|
396
429
|
resumeSnapshotStream(checkpoint: SnapshotCheckpoint): AsyncIterable<SnapshotChunk>;
|
|
397
430
|
}
|
|
398
431
|
//# sourceMappingURL=sync-manager-impl.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sync-manager-impl.d.ts","sourceRoot":"","sources":["../../../src/sync/sync-manager-impl.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAc,MAAM,gBAAgB,CAAC;AAC1D,OAAO,KAAK,EAGX,QAAQ,EACR,qBAAqB,EACrB,sBAAsB,EACtB,sBAAsB,EAGtB,MAAM,kBAAkB,CAAC;AAE1B,OAAO,KAAK,EAAE,sBAAsB,EAAE,uBAAuB,EAAE,MAAM,0BAA0B,CAAC;AAChG,OAAO,EAAE,UAAU,EAAE,KAAK,GAAG,EAAwD,MAAM,iBAAiB,CAAC;AAC7G,OAAO,EAEN,KAAK,MAAM,EAKX,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,kBAAkB,EAAoD,MAAM,+BAA+B,CAAC;AACrH,OAAO,EAAE,cAAc,EAAwB,MAAM,2BAA2B,CAAC;AAEjF,OAAO,EAAE,oBAAoB,
|
|
1
|
+
{"version":3,"file":"sync-manager-impl.d.ts","sourceRoot":"","sources":["../../../src/sync/sync-manager-impl.ts"],"names":[],"mappings":"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"}
|
|
@@ -10,18 +10,19 @@ import { generateSiteId, SITE_ID_KEY, serializeSiteIdentity, deserializeSiteIden
|
|
|
10
10
|
import { ColumnVersionStore, deserializeColumnVersion } from '../metadata/column-version.js';
|
|
11
11
|
import { TombstoneStore, deserializeTombstone } from '../metadata/tombstones.js';
|
|
12
12
|
import { PeerStateStore } from '../metadata/peer-state.js';
|
|
13
|
-
import { SchemaMigrationStore
|
|
13
|
+
import { SchemaMigrationStore } from '../metadata/schema-migration.js';
|
|
14
14
|
import { ChangeLogStore } from '../metadata/change-log.js';
|
|
15
15
|
import { QuarantineStore } from '../metadata/quarantine.js';
|
|
16
16
|
import { BasisLifecycleStore, classifyBasisLifecycle, basisLifecycleRecordChanged, splitRelKey, parseEvictPolicyTag, isEvictable, quietSince, } from '../metadata/basis-lifecycle.js';
|
|
17
|
-
import { SYNC_KEY_PREFIX, SYNC_METADATA_FORMAT_VERSION, buildAllColumnVersionsScanBounds, buildAllTombstonesScanBounds,
|
|
17
|
+
import { SYNC_KEY_PREFIX, SYNC_METADATA_FORMAT_VERSION, buildAllColumnVersionsScanBounds, buildAllTombstonesScanBounds, parseColumnVersionKey, parseTombstoneKey, joinKeyParts, } from '../metadata/keys.js';
|
|
18
|
+
import { migrationObjectKind } from './protocol.js';
|
|
18
19
|
import { createPkKeyingResolver } from '../metadata/pk-identity.js';
|
|
19
20
|
import { persistHLCStateBatch, toError, deleteRowVersionsAndLogEntries } from './sync-context.js';
|
|
20
21
|
import { StagedTransactionMetadata } from './staged-transaction-metadata.js';
|
|
21
22
|
import { applyChanges as applyChangesImpl, drainHeldChanges as drainHeldChangesImpl, drainReappearedTables } from './change-applicator.js';
|
|
22
23
|
import { buildTransactionChangeSets } from './change-grouping.js';
|
|
23
24
|
import { getSnapshot as getSnapshotImpl, applySnapshot as applySnapshotImpl } from './snapshot.js';
|
|
24
|
-
import { getSnapshotStream as getSnapshotStreamImpl, applySnapshotStream as applySnapshotStreamImpl, getSnapshotCheckpoint as getSnapshotCheckpointImpl, resumeSnapshotStream as resumeSnapshotStreamImpl, } from './snapshot-stream.js';
|
|
25
|
+
import { getSnapshotStream as getSnapshotStreamImpl, applySnapshotStream as applySnapshotStreamImpl, getSnapshotCheckpoint as getSnapshotCheckpointImpl, listSnapshotCheckpoints as listSnapshotCheckpointsImpl, clearSnapshotCheckpoint as clearSnapshotCheckpointImpl, resumeSnapshotStream as resumeSnapshotStreamImpl, } from './snapshot-stream.js';
|
|
25
26
|
/**
|
|
26
27
|
* Guard a transaction's running `opSeq` against the uint32 bound. `opSeq` is
|
|
27
28
|
* serialized as a big-endian uint32 in the HLC comparison key, so a fact count
|
|
@@ -35,14 +36,22 @@ export function assertOpSeqInRange(opSeq) {
|
|
|
35
36
|
}
|
|
36
37
|
}
|
|
37
38
|
/**
|
|
38
|
-
* Map an engine schema-change event
|
|
39
|
-
*
|
|
40
|
-
*
|
|
41
|
-
*
|
|
42
|
-
*
|
|
39
|
+
* Map an engine schema-change event to the sync {@link SchemaMigrationType} it
|
|
40
|
+
* records, or `undefined` when the combination is not tracked for replication
|
|
41
|
+
* (e.g. column-level or view/trigger objects, or an `alter` on an index). Takes
|
|
42
|
+
* the whole event rather than `(objectType, type)` because a rename is only
|
|
43
|
+
* distinguishable by `oldObjectName`, which exactly the three RENAME TO emit sites
|
|
44
|
+
* set — `StoreModuleRename.renameTable`, the memory module's `renameTable`, and the
|
|
45
|
+
* engine's own `runRenameTable` tail (for a module with no emitter of its own). All
|
|
46
|
+
* three put the NEW name in `objectName`. Every other `'table' alter` is recorded as
|
|
47
|
+
* `alter_column` — the coarse "table definition changed" migration the schema-sync
|
|
48
|
+
* layer replays.
|
|
43
49
|
*/
|
|
44
|
-
function mapSchemaMigrationType(
|
|
50
|
+
function mapSchemaMigrationType(event) {
|
|
51
|
+
const { objectType, type } = event;
|
|
45
52
|
if (objectType === 'table') {
|
|
53
|
+
if (type === 'alter' && event.oldObjectName !== undefined)
|
|
54
|
+
return 'rename_table';
|
|
46
55
|
switch (type) {
|
|
47
56
|
case 'create': return 'create_table';
|
|
48
57
|
case 'drop': return 'drop_table';
|
|
@@ -149,9 +158,9 @@ export class SyncManagerImpl {
|
|
|
149
158
|
const siteIdKey = new TextEncoder().encode(SITE_ID_KEY);
|
|
150
159
|
let siteId;
|
|
151
160
|
const existingIdentity = await kv.get(siteIdKey);
|
|
152
|
-
// Sync-metadata format gate:
|
|
153
|
-
//
|
|
154
|
-
//
|
|
161
|
+
// Sync-metadata format gate: the key layout has changed across versions (see
|
|
162
|
+
// SYNC_METADATA_FORMAT_VERSION); older metadata is unreadable under the
|
|
163
|
+
// current layout, and writing new-format records beside it would corrupt
|
|
155
164
|
// both. A replica with existing identity but a missing/mismatched version
|
|
156
165
|
// must re-bootstrap from a peer snapshot (docs/sync.md § Metadata format
|
|
157
166
|
// version) — refuse loudly rather than silently mis-keying.
|
|
@@ -159,7 +168,7 @@ export class SyncManagerImpl {
|
|
|
159
168
|
const storedFormat = formatData ? parseInt(new TextDecoder().decode(formatData), 10) : undefined;
|
|
160
169
|
if (storedFormat === undefined) {
|
|
161
170
|
if (existingIdentity) {
|
|
162
|
-
throw new QuereusError(`Sync metadata predates format version ${SYNC_METADATA_FORMAT_VERSION}
|
|
171
|
+
throw new QuereusError(`Sync metadata predates format version ${SYNC_METADATA_FORMAT_VERSION}. `
|
|
163
172
|
+ `Clear this replica's sync metadata and re-bootstrap from a peer snapshot (docs/sync.md § Metadata format version).`, StatusCode.ERROR);
|
|
164
173
|
}
|
|
165
174
|
await kv.put(SYNC_KEY_PREFIX.FORMAT_VERSION, new TextEncoder().encode(String(SYNC_METADATA_FORMAT_VERSION)));
|
|
@@ -561,7 +570,7 @@ export class SyncManagerImpl {
|
|
|
561
570
|
* every fact of the transaction shares that base `(wallTime, counter, siteId)`
|
|
562
571
|
* and differs only in `opSeq` (a contiguous, 0-based sub-order). DDL is recorded
|
|
563
572
|
* before DML so migrations sort below the same transaction's data facts
|
|
564
|
-
* (docs/sync.md § DDL Application Order). All metadata for the transaction —
|
|
573
|
+
* (docs/sync-schema.md § DDL Application Order). All metadata for the transaction —
|
|
565
574
|
* schema migrations, column versions, tombstones, change-log entries, and the
|
|
566
575
|
* HLC clock state — lands in a single KV batch.
|
|
567
576
|
*/
|
|
@@ -693,37 +702,48 @@ export class SyncManagerImpl {
|
|
|
693
702
|
* running per-table schema version across this transaction's migrations.
|
|
694
703
|
*/
|
|
695
704
|
async recordSchemaMigration(batch, event, nextHlc, versionCounters) {
|
|
696
|
-
const migrationType = mapSchemaMigrationType(event
|
|
705
|
+
const migrationType = mapSchemaMigrationType(event);
|
|
697
706
|
if (!migrationType)
|
|
698
707
|
return;
|
|
699
708
|
const { schemaName, objectName, ddl } = event;
|
|
700
|
-
//
|
|
701
|
-
//
|
|
702
|
-
//
|
|
703
|
-
//
|
|
704
|
-
//
|
|
705
|
-
//
|
|
706
|
-
//
|
|
707
|
-
if (migrationType === 'alter_column' && !ddl?.trim()) {
|
|
709
|
+
// Every tracked type now carries canonical DDL — ALTER TABLE events included
|
|
710
|
+
// (the engine renders the statement's schema-qualified SQL at plan-build and the
|
|
711
|
+
// store module puts it on the event; see SchemaChangeInfo.ddl). A blank
|
|
712
|
+
// `alter_column`/`rename_table` can therefore only come from an older event
|
|
713
|
+
// producer; the migration below still records and still advances the schema
|
|
714
|
+
// version (destructiveness comparison depends on it), but a blank one reaches a
|
|
715
|
+
// peer as an empty statement, so it is still worth an operator hearing about.
|
|
716
|
+
if ((migrationType === 'alter_column' || migrationType === 'rename_table') && !ddl?.trim()) {
|
|
708
717
|
console.warn(`[Sync] ${schemaName}.${objectName}: recording an ${migrationType} migration with no DDL — `
|
|
709
718
|
+ `this table alteration will NOT reach other synced devices`);
|
|
710
719
|
}
|
|
711
|
-
// NOTE: for an index migration `objectName` is the INDEX name, so
|
|
712
|
-
// is
|
|
713
|
-
// `SchemaManager.createIndex` enforces index names unique per schema
|
|
714
|
-
// same-named indexes on different tables
|
|
715
|
-
// counter and suppress each other's
|
|
716
|
-
//
|
|
717
|
-
|
|
718
|
-
|
|
720
|
+
// NOTE: for an index migration `objectName` is the INDEX name, so the counter
|
|
721
|
+
// is per `(schema, kind, index name)` — index-vs-index it is unambiguous only
|
|
722
|
+
// because `SchemaManager.createIndex` enforces index names unique per schema
|
|
723
|
+
// (SCH-001, docs/invariants.md). Two same-named indexes on different tables
|
|
724
|
+
// would otherwise share one version counter and suppress each other's
|
|
725
|
+
// migrations.
|
|
726
|
+
const kind = migrationObjectKind(migrationType);
|
|
727
|
+
// Length-prefixed, like the stored key: a schema or object name may contain
|
|
728
|
+
// any character, so a bare-delimiter join could fold two distinct objects
|
|
729
|
+
// onto one in-transaction counter.
|
|
730
|
+
const counterKey = joinKeyParts(schemaName, kind, objectName);
|
|
719
731
|
let version = versionCounters.get(counterKey);
|
|
720
732
|
if (version === undefined) {
|
|
721
|
-
version = await this.schemaMigrations.getCurrentVersion(schemaName, objectName);
|
|
733
|
+
version = await this.schemaMigrations.getCurrentVersion(schemaName, kind, objectName);
|
|
722
734
|
}
|
|
723
735
|
version += 1;
|
|
724
736
|
versionCounters.set(counterKey, version);
|
|
725
|
-
|
|
737
|
+
// A rename files under the NEW name (`objectName`) with the old one in
|
|
738
|
+
// `fromTable`, so later alterations of the renamed table share one contiguous
|
|
739
|
+
// version stream where the table actually lives. The rename may start a fresh
|
|
740
|
+
// counter under the new name (version 1 if nothing was ever named that) —
|
|
741
|
+
// harmless, the same thing happens when a dropped name is reused.
|
|
742
|
+
this.schemaMigrations.recordMigrationBatch(batch, schemaName, kind, objectName, {
|
|
726
743
|
type: migrationType,
|
|
744
|
+
...(migrationType === 'rename_table' && event.oldObjectName !== undefined
|
|
745
|
+
? { fromTable: event.oldObjectName }
|
|
746
|
+
: {}),
|
|
727
747
|
ddl: ddl || '',
|
|
728
748
|
hlc: nextHlc(),
|
|
729
749
|
schemaVersion: version,
|
|
@@ -1115,9 +1135,9 @@ export class SyncManagerImpl {
|
|
|
1115
1135
|
* Each migration shares its transaction's base HLC, so the grouping step
|
|
1116
1136
|
* rejoins it with that transaction's data facts (or forms a DDL-only ChangeSet).
|
|
1117
1137
|
*
|
|
1118
|
-
* The `sm:` range is keyed by `
|
|
1119
|
-
*
|
|
1120
|
-
*
|
|
1138
|
+
* The `sm:` range is keyed by `(schema, kind, object, version)`, not by HLC, so
|
|
1139
|
+
* this read cannot early-exit the way {@link collectChangesSince} does — the whole
|
|
1140
|
+
* range is drained even when the fact side stops early. That is acceptable because
|
|
1121
1141
|
* migrations are few, and {@link buildTransactionChangeSets} drops any migration
|
|
1122
1142
|
* that sorts past the bounded fact watermark (its DDL-only group falls beyond the
|
|
1123
1143
|
* `batchSize` cut), so over-scanning here costs work but never correctness. A
|
|
@@ -1125,27 +1145,12 @@ export class SyncManagerImpl {
|
|
|
1125
1145
|
* unbounded; see the bounded-extraction ticket's handoff.
|
|
1126
1146
|
*/
|
|
1127
1147
|
async collectSchemaMigrations(peerSiteId, sinceHLC) {
|
|
1128
|
-
const
|
|
1129
|
-
|
|
1130
|
-
for await (const entry of this.kv.iterate(smBounds)) {
|
|
1131
|
-
const parsed = parseSchemaMigrationKey(entry.key);
|
|
1132
|
-
if (!parsed)
|
|
1133
|
-
continue;
|
|
1134
|
-
const migration = deserializeMigration(entry.value);
|
|
1148
|
+
const all = await this.schemaMigrations.listAllMigrations();
|
|
1149
|
+
return all.filter(migration => {
|
|
1135
1150
|
if (sinceHLC && compareHLC(migration.hlc, sinceHLC) <= 0)
|
|
1136
|
-
|
|
1137
|
-
|
|
1138
|
-
|
|
1139
|
-
schemaMigrations.push({
|
|
1140
|
-
type: migration.type,
|
|
1141
|
-
schema: parsed.schema,
|
|
1142
|
-
table: parsed.table,
|
|
1143
|
-
ddl: migration.ddl,
|
|
1144
|
-
hlc: migration.hlc,
|
|
1145
|
-
schemaVersion: migration.schemaVersion,
|
|
1146
|
-
});
|
|
1147
|
-
}
|
|
1148
|
-
return schemaMigrations;
|
|
1151
|
+
return false;
|
|
1152
|
+
return !siteIdEquals(migration.hlc.siteId, peerSiteId); // echo filter
|
|
1153
|
+
});
|
|
1149
1154
|
}
|
|
1150
1155
|
// ============================================================================
|
|
1151
1156
|
// Delegated: Change Application
|
|
@@ -1236,6 +1241,49 @@ export class SyncManagerImpl {
|
|
|
1236
1241
|
const cutoff = Date.now() - this.config.retentionHorizonMs;
|
|
1237
1242
|
return this.quarantine.pruneOlderThan(cutoff);
|
|
1238
1243
|
}
|
|
1244
|
+
/**
|
|
1245
|
+
* One-shot repair pass over the whole change log: delete every entry whose
|
|
1246
|
+
* target ({@link resolveLogEntry}) is already gone.
|
|
1247
|
+
*
|
|
1248
|
+
* {@link pruneTombstones} / `deleteRowVersionsAndLogEntries` (`sync-context.ts`)
|
|
1249
|
+
* only stop *new* orphans — each deletes a `cl:` entry *via* the record it
|
|
1250
|
+
* points at, so an entry whose record died before that forward fix landed can
|
|
1251
|
+
* never be reached that way and is orphaned forever. This sweep reaches those
|
|
1252
|
+
* by scanning the change log itself instead of a record's deletion path.
|
|
1253
|
+
*
|
|
1254
|
+
* Safe to run at any time, on any replica, with no peer coordination: an
|
|
1255
|
+
* entry that resolves to `null` already produced no output for
|
|
1256
|
+
* {@link collectChangesSince} (`resolveLogEntry` returning `null` is exactly
|
|
1257
|
+
* what makes it an orphan), so deleting it changes nothing observable. Full
|
|
1258
|
+
* scan, same shape as {@link pruneTombstones} — a replica with no pre-fix
|
|
1259
|
+
* orphans (or one already repaired) resolves every entry and deletes nothing,
|
|
1260
|
+
* so a caught-up replica pays only the scan.
|
|
1261
|
+
*
|
|
1262
|
+
* NOTE: the scan is one KV point-read per change-log entry, and the log holds
|
|
1263
|
+
* roughly one entry per live cell, so a caught-up replica still pays O(live
|
|
1264
|
+
* cells) reads on every maintenance tick for a repair that can only ever find
|
|
1265
|
+
* something once. If that cost shows up (large replica, 5-minute quoomb-web
|
|
1266
|
+
* cadence), stop re-scanning after a clean pass — see
|
|
1267
|
+
* `debt-sync-repair-changelog-rescans-every-tick`.
|
|
1268
|
+
*
|
|
1269
|
+
* NOTE: entries whose key `parseChangeLogKey` cannot decode are skipped by
|
|
1270
|
+
* `getAllChanges`, so this sweep cannot reach them either. Only reachable via
|
|
1271
|
+
* key-format drift or corruption; if that ever happens, repair needs to iterate
|
|
1272
|
+
* raw `cl:` keys rather than parsed entries.
|
|
1273
|
+
*/
|
|
1274
|
+
async repairChangeLog() {
|
|
1275
|
+
const batch = this.kv.batch();
|
|
1276
|
+
let count = 0;
|
|
1277
|
+
for await (const logEntry of this.changeLog.getAllChanges()) {
|
|
1278
|
+
const resolved = await this.resolveLogEntry(logEntry);
|
|
1279
|
+
if (resolved)
|
|
1280
|
+
continue;
|
|
1281
|
+
this.changeLog.deleteEntryByIdentityBatch(batch, logEntry.hlc, logEntry.entryType, logEntry.schema, logEntry.table, logEntry.identity, logEntry.column);
|
|
1282
|
+
count++;
|
|
1283
|
+
}
|
|
1284
|
+
await batch.write();
|
|
1285
|
+
return count;
|
|
1286
|
+
}
|
|
1239
1287
|
getEventEmitter() {
|
|
1240
1288
|
return this.syncEvents;
|
|
1241
1289
|
}
|
|
@@ -1251,6 +1299,12 @@ export class SyncManagerImpl {
|
|
|
1251
1299
|
async getSnapshotCheckpoint(snapshotId) {
|
|
1252
1300
|
return getSnapshotCheckpointImpl(this, snapshotId);
|
|
1253
1301
|
}
|
|
1302
|
+
async listSnapshotCheckpoints() {
|
|
1303
|
+
return listSnapshotCheckpointsImpl(this);
|
|
1304
|
+
}
|
|
1305
|
+
async clearSnapshotCheckpoint(snapshotId) {
|
|
1306
|
+
return clearSnapshotCheckpointImpl(this, snapshotId);
|
|
1307
|
+
}
|
|
1254
1308
|
async *resumeSnapshotStream(checkpoint) {
|
|
1255
1309
|
yield* resumeSnapshotStreamImpl(this, checkpoint);
|
|
1256
1310
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sync-manager-impl.js","sourceRoot":"","sources":["../../../src/sync/sync-manager-impl.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"sync-manager-impl.js","sourceRoot":"","sources":["../../../src/sync/sync-manager-impl.ts"],"names":[],"mappings":"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"}
|
package/dist/src/sync/wire.d.ts
CHANGED
|
@@ -77,6 +77,12 @@ export interface SerializedSchemaMigration {
|
|
|
77
77
|
type: string;
|
|
78
78
|
schema: string;
|
|
79
79
|
table: string;
|
|
80
|
+
/**
|
|
81
|
+
* `rename_table` only: the table name before the rename. Optional so a peer
|
|
82
|
+
* that omits it deserializes to `undefined` — the receiver then treats the
|
|
83
|
+
* rename as undecidable (see store-adapter.ts `decideSchemaChange`).
|
|
84
|
+
*/
|
|
85
|
+
fromTable?: string;
|
|
80
86
|
ddl: string;
|
|
81
87
|
hlc: string;
|
|
82
88
|
schemaVersion: number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wire.d.ts","sourceRoot":"","sources":["../../../src/sync/wire.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"wire.d.ts","sourceRoot":"","sources":["../../../src/sync/wire.ts"],"names":[],"mappings":"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"}
|
package/dist/src/sync/wire.js
CHANGED
|
@@ -88,6 +88,8 @@ function serializeSchemaMigration(m) {
|
|
|
88
88
|
type: m.type,
|
|
89
89
|
schema: m.schema,
|
|
90
90
|
table: m.table,
|
|
91
|
+
// Present-only: never emit a phantom `fromTable` key for a non-rename.
|
|
92
|
+
...(m.fromTable !== undefined ? { fromTable: m.fromTable } : {}),
|
|
91
93
|
ddl: m.ddl,
|
|
92
94
|
hlc: serializeHLCForTransport(m.hlc),
|
|
93
95
|
schemaVersion: m.schemaVersion,
|
|
@@ -98,6 +100,7 @@ function deserializeSchemaMigration(m) {
|
|
|
98
100
|
type: m.type,
|
|
99
101
|
schema: m.schema,
|
|
100
102
|
table: m.table,
|
|
103
|
+
...(m.fromTable !== undefined ? { fromTable: m.fromTable } : {}),
|
|
101
104
|
ddl: m.ddl,
|
|
102
105
|
hlc: deserializeHLCFromTransport(m.hlc),
|
|
103
106
|
schemaVersion: m.schemaVersion,
|