@powersync/service-core 1.25.0 → 1.26.1
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/CHANGELOG.md +52 -0
- package/dist/api/diagnostics.js +2 -0
- package/dist/api/diagnostics.js.map +1 -1
- package/dist/entry/commands/compact-action.js +28 -24
- package/dist/entry/commands/compact-action.js.map +1 -1
- package/dist/metrics/metrics-interfaces.d.ts +5 -1
- package/dist/metrics/metrics-interfaces.js.map +1 -1
- package/dist/metrics/open-telemetry/MetricAttributeFilteringExporter.d.ts +36 -0
- package/dist/metrics/open-telemetry/MetricAttributeFilteringExporter.js +70 -0
- package/dist/metrics/open-telemetry/MetricAttributeFilteringExporter.js.map +1 -0
- package/dist/metrics/open-telemetry/OpenTelemetryMetricsFactory.js +6 -1
- package/dist/metrics/open-telemetry/OpenTelemetryMetricsFactory.js.map +1 -1
- package/dist/metrics/open-telemetry/util.js +7 -3
- package/dist/metrics/open-telemetry/util.js.map +1 -1
- package/dist/replication/AbstractReplicator.js +16 -6
- package/dist/replication/AbstractReplicator.js.map +1 -1
- package/dist/routes/configure-fastify.d.ts +9 -0
- package/dist/routes/endpoints/admin.d.ts +18 -0
- package/dist/routes/endpoints/admin.js +3 -1
- package/dist/routes/endpoints/admin.js.map +1 -1
- package/dist/routes/endpoints/sync-rules.js +3 -1
- package/dist/routes/endpoints/sync-rules.js.map +1 -1
- package/dist/storage/BucketStorageBatch.d.ts +2 -1
- package/dist/storage/BucketStorageBatch.js.map +1 -1
- package/dist/storage/BucketStorageFactory.d.ts +28 -4
- package/dist/storage/BucketStorageFactory.js +8 -4
- package/dist/storage/BucketStorageFactory.js.map +1 -1
- package/dist/storage/PersistedSyncConfigContent.d.ts +2 -0
- package/dist/storage/PersistedSyncConfigContent.js +23 -10
- package/dist/storage/PersistedSyncConfigContent.js.map +1 -1
- package/dist/storage/ReplicationEventPayload.d.ts +6 -1
- package/dist/storage/SourceTable.d.ts +13 -5
- package/dist/storage/SourceTable.js +8 -4
- package/dist/storage/SourceTable.js.map +1 -1
- package/dist/storage/StorageVersionConfig.d.ts +4 -0
- package/dist/storage/StorageVersionConfig.js +10 -1
- package/dist/storage/StorageVersionConfig.js.map +1 -1
- package/dist/storage/SyncRulesBucketStorage.d.ts +39 -7
- package/dist/storage/SyncRulesBucketStorage.js.map +1 -1
- package/dist/storage/WriteCheckpointAPI.d.ts +25 -3
- package/dist/storage/WriteCheckpointAPI.js.map +1 -1
- package/dist/storage/implementation/BucketDefinitionMapping.d.ts +23 -7
- package/dist/storage/implementation/BucketDefinitionMapping.js +88 -14
- package/dist/storage/implementation/BucketDefinitionMapping.js.map +1 -1
- package/dist/storage/implementation/IncrementalReprocessingSyncConfigLog.js +9 -1
- package/dist/storage/implementation/IncrementalReprocessingSyncConfigLog.js.map +1 -1
- package/dist/storage/storage-metrics.js +120 -4
- package/dist/storage/storage-metrics.js.map +1 -1
- package/dist/sync/BucketChecksumState.d.ts +1 -1
- package/dist/sync/BucketChecksumState.js.map +1 -1
- package/dist/sync/sync.js +37 -9
- package/dist/sync/sync.js.map +1 -1
- package/dist/sync/util.d.ts +1 -1
- package/dist/sync/util.js +13 -1
- package/dist/sync/util.js.map +1 -1
- package/dist/util/config/compound-config-collector.js +5 -0
- package/dist/util/config/compound-config-collector.js.map +1 -1
- package/dist/util/config/sync-rules/impl/base64-sync-rules-collector.js +1 -0
- package/dist/util/config/sync-rules/impl/base64-sync-rules-collector.js.map +1 -1
- package/dist/util/config/sync-rules/impl/filesystem-sync-rules-collector.js +1 -0
- package/dist/util/config/sync-rules/impl/filesystem-sync-rules-collector.js.map +1 -1
- package/dist/util/config/sync-rules/sync-rules-provider.d.ts +2 -0
- package/dist/util/config/sync-rules/sync-rules-provider.js +3 -0
- package/dist/util/config/sync-rules/sync-rules-provider.js.map +1 -1
- package/dist/util/config/types.d.ts +1 -0
- package/dist/util/protocol-types.d.ts +4 -4
- package/dist/util/protocol-types.js +3 -2
- package/dist/util/protocol-types.js.map +1 -1
- package/dist/util/utils.d.ts +1 -0
- package/dist/util/utils.js +15 -0
- package/dist/util/utils.js.map +1 -1
- package/package.json +6 -5
- package/src/api/diagnostics.ts +2 -0
- package/src/entry/commands/compact-action.ts +32 -24
- package/src/metrics/metrics-interfaces.ts +6 -1
- package/src/metrics/open-telemetry/MetricAttributeFilteringExporter.ts +85 -0
- package/src/metrics/open-telemetry/OpenTelemetryMetricsFactory.ts +7 -2
- package/src/metrics/open-telemetry/util.ts +7 -3
- package/src/replication/AbstractReplicator.ts +22 -6
- package/src/routes/endpoints/admin.ts +3 -1
- package/src/routes/endpoints/sync-rules.ts +3 -1
- package/src/storage/BucketStorageBatch.ts +2 -1
- package/src/storage/BucketStorageFactory.ts +44 -8
- package/src/storage/PersistedSyncConfigContent.ts +26 -11
- package/src/storage/ReplicationEventPayload.ts +6 -1
- package/src/storage/SourceTable.ts +17 -4
- package/src/storage/StorageVersionConfig.ts +11 -1
- package/src/storage/SyncRulesBucketStorage.ts +47 -7
- package/src/storage/WriteCheckpointAPI.ts +32 -3
- package/src/storage/implementation/BucketDefinitionMapping.ts +120 -17
- package/src/storage/implementation/IncrementalReprocessingSyncConfigLog.ts +22 -5
- package/src/storage/storage-metrics.ts +154 -8
- package/src/sync/BucketChecksumState.ts +3 -1
- package/src/sync/sync.ts +40 -11
- package/src/sync/util.ts +25 -9
- package/src/util/config/compound-config-collector.ts +6 -0
- package/src/util/config/sync-rules/impl/base64-sync-rules-collector.ts +1 -0
- package/src/util/config/sync-rules/impl/filesystem-sync-rules-collector.ts +1 -0
- package/src/util/config/sync-rules/sync-rules-provider.ts +5 -0
- package/src/util/config/types.ts +1 -0
- package/src/util/protocol-types.ts +3 -2
- package/src/util/utils.ts +14 -0
- package/test/src/AbstractReplicator.test.ts +30 -0
- package/test/src/MetricAttributeFilteringExporter.test.ts +96 -0
- package/test/src/PersistedSyncConfigContent.test.ts +152 -0
- package/test/src/config.test.ts +40 -0
- package/test/src/diagnostics.test.ts +25 -0
- package/test/src/routes/admin.test.ts +8 -2
- package/test/src/routes/stream.test.ts +123 -2
- package/test/src/storage/SourceTable.test.ts +4 -1
- package/test/src/storage-metrics.test.ts +148 -0
- package/test/src/sync/util.test.ts +34 -0
- package/test/src/util/utils.test.ts +23 -0
- package/tsconfig.tsbuildinfo +1 -1
|
@@ -76,11 +76,18 @@ export interface SyncRulesBucketStorage extends ObserverClient<SyncRulesBucketSt
|
|
|
76
76
|
* Errors are cleared on flush.
|
|
77
77
|
*/
|
|
78
78
|
reportError(e: any): Promise<void>;
|
|
79
|
+
/**
|
|
80
|
+
* Whether parameter compaction can run when {@link CompactOptions.incrementalOnly} is set.
|
|
81
|
+
*
|
|
82
|
+
* Storage implementations that do not support incremental parameter compaction must return
|
|
83
|
+
* false; the compact command will skip parameter compaction in that mode.
|
|
84
|
+
*/
|
|
85
|
+
supportsIncrementalParameterCompaction(): boolean;
|
|
79
86
|
compact(options?: CompactOptions): Promise<void>;
|
|
80
87
|
/**
|
|
81
|
-
*
|
|
88
|
+
* Compact storage after initial replication, before the first checkpoint exists.
|
|
82
89
|
*/
|
|
83
|
-
|
|
90
|
+
compactInitialReplication(options: CompactInitialReplicationOptions): Promise<CompactInitialReplicationResults>;
|
|
84
91
|
getCheckpoint(): Promise<ReplicationCheckpoint>;
|
|
85
92
|
/**
|
|
86
93
|
* Given two checkpoints, return the changes in bucket data and parameters that may have occurred
|
|
@@ -226,6 +233,13 @@ export interface CreateWriterOptions extends ParseSyncConfigOptions {
|
|
|
226
233
|
hooks?: StorageHooks;
|
|
227
234
|
tracer?: PerformanceTracer<'storage' | 'evaluate'>;
|
|
228
235
|
logger?: Logger;
|
|
236
|
+
/**
|
|
237
|
+
* Aborts long-running storage work started by this writer, such as uploads to object storage.
|
|
238
|
+
*
|
|
239
|
+
* This does not replace flushing or committing at the appropriate source boundary: it only
|
|
240
|
+
* cancels work that is still in flight when replication stops.
|
|
241
|
+
*/
|
|
242
|
+
signal?: AbortSignal;
|
|
229
243
|
}
|
|
230
244
|
export interface StorageHooks {
|
|
231
245
|
beforeBatchFlush?: (batch: BucketStorageBatch) => Promise<void>;
|
|
@@ -264,6 +278,14 @@ export interface CompactOptions {
|
|
|
264
278
|
*/
|
|
265
279
|
compactBuckets?: string[];
|
|
266
280
|
compactParameterData?: boolean;
|
|
281
|
+
/**
|
|
282
|
+
* Only perform compaction that can be done incrementally.
|
|
283
|
+
*
|
|
284
|
+
* This includes full bucket compaction on MongoDB V3 storage.
|
|
285
|
+
*
|
|
286
|
+
* On MongoDB v1 and Postgres storage, this makes compacting a no-op.
|
|
287
|
+
*/
|
|
288
|
+
incrementalOnly?: boolean;
|
|
267
289
|
/**
|
|
268
290
|
* Delete client-requested write checkpoints created before this time.
|
|
269
291
|
*
|
|
@@ -290,6 +312,14 @@ export interface CompactOptions {
|
|
|
290
312
|
* Number between 0 and 1, default of 0.1.
|
|
291
313
|
*/
|
|
292
314
|
minChangeRatio?: number;
|
|
315
|
+
/** Minimum delay before a V3 bucket is checked for chunk compaction. Default: five minutes. */
|
|
316
|
+
minCompactChunkIntervalMs?: number;
|
|
317
|
+
/** Minimum elapsed write pressure before the v3 sliding-scale full compact. Default: two hours. */
|
|
318
|
+
minCompactFullIntervalMs?: number;
|
|
319
|
+
/** Maximum age of writes not covered by a v3 full compact. */
|
|
320
|
+
maxCompactFullIntervalMs?: number;
|
|
321
|
+
/** How long a v3 worker owns a claimed bucket before another worker may recover it. */
|
|
322
|
+
compactLeaseDurationMs?: number;
|
|
293
323
|
/**
|
|
294
324
|
* Internal/testing use: Cache size for compacting parameters.
|
|
295
325
|
*/
|
|
@@ -297,21 +327,21 @@ export interface CompactOptions {
|
|
|
297
327
|
signal?: AbortSignal;
|
|
298
328
|
logger?: Logger;
|
|
299
329
|
}
|
|
300
|
-
export interface
|
|
330
|
+
export interface CompactInitialReplicationOptions {
|
|
301
331
|
/**
|
|
302
|
-
*
|
|
332
|
+
* Compact data up to this op id.
|
|
303
333
|
*
|
|
304
334
|
* Defaults to the highest persisted op id for the replication stream, which covers
|
|
305
|
-
* the common case of
|
|
335
|
+
* the common case of compacting right after initial replication, before
|
|
306
336
|
* the first checkpoint exists.
|
|
307
337
|
*/
|
|
308
338
|
maxOpId?: util.InternalOpId;
|
|
309
339
|
minBucketChanges?: number;
|
|
310
340
|
signal?: AbortSignal;
|
|
311
341
|
}
|
|
312
|
-
export interface
|
|
342
|
+
export interface CompactInitialReplicationResults {
|
|
313
343
|
/**
|
|
314
|
-
* Number of buckets
|
|
344
|
+
* Number of buckets processed.
|
|
315
345
|
*/
|
|
316
346
|
buckets: number;
|
|
317
347
|
}
|
|
@@ -344,6 +374,8 @@ export interface BucketDataBatchOptions {
|
|
|
344
374
|
requestHint?: BucketRequestHint;
|
|
345
375
|
/** Abort any in-progress work for this batch, including object-storage downloads. */
|
|
346
376
|
signal?: AbortSignal;
|
|
377
|
+
/** Traces data reads performed by the storage implementation. */
|
|
378
|
+
tracer?: PerformanceTracer<string>;
|
|
347
379
|
/** Limit number of documents returned. Defaults to 1000. */
|
|
348
380
|
limit?: number;
|
|
349
381
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SyncRulesBucketStorage.js","sourceRoot":"","sources":["../../src/storage/SyncRulesBucketStorage.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"SyncRulesBucketStorage.js","sourceRoot":"","sources":["../../src/storage/SyncRulesBucketStorage.ts"],"names":[],"mappings":"AA2eA,MAAM,UAAU,UAAU,CAAC,KAAmD;IAC5E,OAAQ,KAAgC,CAAC,OAAO,KAAK,SAAS,CAAC;AACjE,CAAC;AAiBD;;;;GAIG;AACH,MAAM,OAAO,8BAA+B,SAAQ,KAAK;IAE5C;IACA;IAFX,YACW,KAAa,EACb,SAAyC;QAElD,KAAK,CAAC,yCAAyC,KAAK,GAAG,CAAC,CAAC;QAHhD,UAAK,GAAL,KAAK,CAAQ;QACb,cAAS,GAAT,SAAS,CAAgC;IAGpD,CAAC;CACF;AAqDD,MAAM,CAAC,MAAM,yBAAyB,GAAsB;IAC1D,kBAAkB,EAAE,IAAI,GAAG,EAAU;IACrC,qBAAqB,EAAE,IAAI;IAC3B,uBAAuB,EAAE,IAAI,GAAG,EAAU;IAC1C,0BAA0B,EAAE,IAAI;CACjC,CAAC"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { EventDefinitionId } from '@powersync/service-sync-rules';
|
|
1
2
|
export declare enum WriteCheckpointMode {
|
|
2
3
|
/**
|
|
3
4
|
* Raw mappings of `user_id` to `write_checkpoint`s should
|
|
@@ -28,7 +29,8 @@ export interface ClientRequestedCheckpointOptions {
|
|
|
28
29
|
*/
|
|
29
30
|
checkpoint_request_id?: bigint;
|
|
30
31
|
}
|
|
31
|
-
export
|
|
32
|
+
export type SyncStorageCustomWriteCheckpointFilters = BaseWriteCheckpointIdentifier;
|
|
33
|
+
export interface CustomWriteCheckpointFilters extends SyncStorageCustomWriteCheckpointFilters {
|
|
32
34
|
/**
|
|
33
35
|
* Replication stream which was active when this checkpoint was created.
|
|
34
36
|
*/
|
|
@@ -40,6 +42,14 @@ export interface BatchedCustomWriteCheckpointOptions extends BaseWriteCheckpoint
|
|
|
40
42
|
* "write checkpoint" in storage APIs for backwards compatibility.
|
|
41
43
|
*/
|
|
42
44
|
checkpoint: bigint;
|
|
45
|
+
/**
|
|
46
|
+
* Compiled event definition which created the checkpoint.
|
|
47
|
+
*
|
|
48
|
+
* Incremental replication uses this to keep checkpoint records produced by
|
|
49
|
+
* active and processing sync configs separate. This is required by v3
|
|
50
|
+
* storage and unused by legacy storage versions.
|
|
51
|
+
*/
|
|
52
|
+
event_id?: EventDefinitionId;
|
|
43
53
|
/**
|
|
44
54
|
* Required when this custom checkpoint was created from a client checkpoint
|
|
45
55
|
* request and should be eligible for checkpoint request retention cleanup.
|
|
@@ -102,11 +112,23 @@ export interface CreateManagedWriteCheckpointsResult {
|
|
|
102
112
|
shouldAdvance: boolean;
|
|
103
113
|
}
|
|
104
114
|
export declare function uniqueManagedWriteCheckpoints(checkpoints: ManagedWriteCheckpointOptions[]): ManagedWriteCheckpointOptions[];
|
|
105
|
-
export type SyncStorageLastWriteCheckpointFilters =
|
|
115
|
+
export type SyncStorageLastWriteCheckpointFilters = SyncStorageCustomWriteCheckpointFilters | ManagedWriteCheckpointFilters;
|
|
106
116
|
export type LastWriteCheckpointFilters = CustomWriteCheckpointFilters | ManagedWriteCheckpointFilters;
|
|
117
|
+
/** Configures checkpoint ownership and generation for a storage instance. */
|
|
118
|
+
export type WriteCheckpointModeConfig = {
|
|
119
|
+
mode: WriteCheckpointMode.CUSTOM;
|
|
120
|
+
/**
|
|
121
|
+
* Name of the event whose custom checkpoints are served. Storage resolves this name through the active sync
|
|
122
|
+
* config's persisted mapping; integrations must not construct or persist event ids themselves. Required by
|
|
123
|
+
* storage implementations that scope custom checkpoints by event definition.
|
|
124
|
+
*/
|
|
125
|
+
eventName?: string;
|
|
126
|
+
} | {
|
|
127
|
+
mode: WriteCheckpointMode.MANAGED;
|
|
128
|
+
};
|
|
107
129
|
export interface BaseWriteCheckpointAPI {
|
|
108
130
|
readonly writeCheckpointMode: WriteCheckpointMode;
|
|
109
|
-
setWriteCheckpointMode(
|
|
131
|
+
setWriteCheckpointMode(config: WriteCheckpointModeConfig): void;
|
|
110
132
|
createManagedWriteCheckpoints(checkpoints: ManagedWriteCheckpointOptions[]): Promise<CreateManagedWriteCheckpointsResult>;
|
|
111
133
|
}
|
|
112
134
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WriteCheckpointAPI.js","sourceRoot":"","sources":["../../src/storage/WriteCheckpointAPI.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"WriteCheckpointAPI.js","sourceRoot":"","sources":["../../src/storage/WriteCheckpointAPI.ts"],"names":[],"mappings":"AAEA,MAAM,CAAN,IAAY,mBAYX;AAZD,WAAY,mBAAmB;IAC7B;;;OAGG;IACH,wCAAiB,CAAA;IACjB;;;;OAIG;IACH,0CAAmB,CAAA;AACrB,CAAC,EAZW,mBAAmB,KAAnB,mBAAmB,QAY9B;AA8GD,MAAM,UAAU,6BAA6B,CAC3C,WAA4C;IAE5C,MAAM,MAAM,GAAG,IAAI,GAAG,EAAyC,CAAC;IAEhE,KAAK,MAAM,UAAU,IAAI,WAAW,EAAE,CAAC;QACrC,MAAM,QAAQ,GAAG,MAAM,CAAC,GAAG,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;QAChD,0EAA0E;QAC1E,4EAA4E;QAC5E,2EAA2E;QAC3E,uEAAuE;QACvE,qEAAqE;QACrE,0EAA0E;QAC1E,4EAA4E;QAC5E,WAAW;QACX,EAAE;QACF,8EAA8E;QAC9E,0EAA0E;QAC1E,sDAAsD;QACtD,IAAI,QAAQ,IAAI,IAAI,IAAI,mCAAmC,CAAC,QAAQ,EAAE,UAAU,CAAC,EAAE,CAAC;YAClF,MAAM,CAAC,GAAG,CAAC,UAAU,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;QAC7C,CAAC;IACH,CAAC;IAED,OAAO,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;AAC9B,CAAC;AAED,SAAS,mCAAmC,CAC1C,QAAuC,EACvC,SAAwC;IAExC,MAAM,iBAAiB,GAAG,QAAQ,CAAC,qBAAqB,CAAC;IACzD,MAAM,kBAAkB,GAAG,SAAS,CAAC,qBAAqB,CAAC;IAE3D,IAAI,kBAAkB,IAAI,IAAI,EAAE,CAAC;QAC/B,OAAO,iBAAiB,IAAI,IAAI,CAAC;IACnC,CAAC;IAED,IAAI,iBAAiB,IAAI,IAAI,EAAE,CAAC;QAC9B,OAAO,IAAI,CAAC;IACd,CAAC;IAED,OAAO,kBAAkB,GAAG,iBAAiB,CAAC;AAChD,CAAC;AA+CD,MAAM,CAAC,MAAM,6BAA6B,GAAG,mBAAmB,CAAC,OAAO,CAAC"}
|
|
@@ -1,13 +1,17 @@
|
|
|
1
|
-
import { BucketDataSource, BucketDefinitionId, ParameterIndexId, ParameterIndexLookupCreator, ParameterLookupDefinitionId, SerializedSyncPlan, SourceTableRef, SyncConfigWithErrors } from '@powersync/service-sync-rules';
|
|
1
|
+
import { BucketDataSource, BucketDefinitionId, EventDefinitionId, ParameterIndexId, ParameterIndexLookupCreator, ParameterLookupDefinitionId, SerializedSyncPlan, SourceTableRef, SyncConfigWithErrors } from '@powersync/service-sync-rules';
|
|
2
|
+
/** Minimal shape required to resolve an event's assigned id: its name is the per-config key. */
|
|
3
|
+
export interface NamedEventDefinition {
|
|
4
|
+
readonly name: string;
|
|
5
|
+
}
|
|
2
6
|
export interface SerializedSyncConfigWithMapping {
|
|
3
7
|
plan: SerializedSyncPlan;
|
|
4
8
|
mapping: SingleSyncConfigBucketDefinitionMapping;
|
|
5
9
|
}
|
|
6
|
-
export type IncrementalMappingDefinitionType = 'bucket_data' | 'parameter_lookup';
|
|
10
|
+
export type IncrementalMappingDefinitionType = 'bucket_data' | 'parameter_lookup' | 'event';
|
|
7
11
|
export interface IncrementalMappingDefinitionChange {
|
|
8
12
|
type: IncrementalMappingDefinitionType;
|
|
9
13
|
name: string;
|
|
10
|
-
id: BucketDefinitionId | ParameterIndexId;
|
|
14
|
+
id: BucketDefinitionId | ParameterIndexId | EventDefinitionId;
|
|
11
15
|
}
|
|
12
16
|
export interface IncrementalMappingChanges {
|
|
13
17
|
reusedDefinitions: IncrementalMappingDefinitionChange[];
|
|
@@ -36,6 +40,10 @@ export interface PersistedDefinitionMapping {
|
|
|
36
40
|
* Map of (lookupName, queryId) -> id, unique per replication stream.
|
|
37
41
|
*/
|
|
38
42
|
parameter_indexes: Record<string, string>;
|
|
43
|
+
/**
|
|
44
|
+
* Map of event name -> id, unique per replication stream. Absent for mappings persisted before events were tracked.
|
|
45
|
+
*/
|
|
46
|
+
events?: Record<string, string>;
|
|
39
47
|
}
|
|
40
48
|
/**
|
|
41
49
|
* Represents a mapping from bucket data sources and parameter lookup sources to stable IDs used for bucket definition and parameter index persistence.
|
|
@@ -53,7 +61,8 @@ export interface BucketDefinitionMapping {
|
|
|
53
61
|
parameterLookupId(source: ParameterIndexLookupCreator): ParameterIndexId;
|
|
54
62
|
allBucketDefinitionIds(): BucketDefinitionId[];
|
|
55
63
|
allParameterIndexIds(): ParameterIndexId[];
|
|
56
|
-
|
|
64
|
+
allEventDefinitionIds(): EventDefinitionId[];
|
|
65
|
+
syncConfigIdsForSourceTable(selectedSyncConfigIds: string[], table: SourceTableRef, bucketDataSourceIds: BucketDefinitionId[], parameterLookupSourceIds: ParameterIndexId[], eventDefinitionIds: EventDefinitionId[]): string[];
|
|
57
66
|
snapshotBlockingSourceTablesFilter(syncConfigId: string): Record<string, unknown>;
|
|
58
67
|
}
|
|
59
68
|
/**
|
|
@@ -67,6 +76,7 @@ export interface BucketDefinitionMapping {
|
|
|
67
76
|
export declare class SingleSyncConfigBucketDefinitionMapping implements BucketDefinitionMapping {
|
|
68
77
|
private definitions;
|
|
69
78
|
private parameterLookupMapping;
|
|
79
|
+
private events;
|
|
70
80
|
static fromPersistedMapping(mapping: PersistedDefinitionMapping): SingleSyncConfigBucketDefinitionMapping;
|
|
71
81
|
static fromParsedSyncConfig(syncConfig: SyncConfigWithErrors): SingleSyncConfigBucketDefinitionMapping;
|
|
72
82
|
/**
|
|
@@ -78,18 +88,22 @@ export declare class SingleSyncConfigBucketDefinitionMapping implements BucketDe
|
|
|
78
88
|
*/
|
|
79
89
|
static constructIncrementalMappingFromSerializedPlans(compatibleConfigs: SerializedSyncConfigWithMapping[], newPlan: SerializedSyncPlan, reservedMappings: SingleSyncConfigBucketDefinitionMapping[]): SingleSyncConfigBucketDefinitionMapping;
|
|
80
90
|
static constructIncrementalMappingWithChanges(compatibleConfigs: SerializedSyncConfigWithMapping[], newPlan: SerializedSyncPlan, reservedMappings: SingleSyncConfigBucketDefinitionMapping[]): IncrementalMappingResult;
|
|
81
|
-
constructor(definitions?: Record<string, BucketDefinitionId>, parameterLookupMapping?: Record<string, ParameterIndexId>);
|
|
91
|
+
constructor(definitions?: Record<string, BucketDefinitionId>, parameterLookupMapping?: Record<string, ParameterIndexId>, events?: Record<string, EventDefinitionId>);
|
|
82
92
|
bucketSourceId(source: BucketDataSource): BucketDefinitionId;
|
|
83
93
|
bucketSourceIdByName(uniqueName: string): BucketDefinitionId;
|
|
84
94
|
allBucketDefinitionIds(): BucketDefinitionId[];
|
|
85
95
|
bucketDefinitionEntries(): IncrementalMappingDefinitionChange[];
|
|
86
96
|
allParameterIndexIds(): ParameterIndexId[];
|
|
87
97
|
parameterIndexEntries(): IncrementalMappingDefinitionChange[];
|
|
98
|
+
allEventDefinitionIds(): EventDefinitionId[];
|
|
99
|
+
eventDefinitionEntries(): IncrementalMappingDefinitionChange[];
|
|
88
100
|
allDefinitionEntries(): IncrementalMappingDefinitionChange[];
|
|
89
101
|
parameterLookupId(source: ParameterIndexLookupCreator): ParameterIndexId;
|
|
90
102
|
parameterLookupIdByKey(key: string): ParameterIndexId;
|
|
103
|
+
eventId(event: NamedEventDefinition): EventDefinitionId;
|
|
104
|
+
eventDefinitionIdByName(name: string): EventDefinitionId;
|
|
91
105
|
serialize(): PersistedDefinitionMapping;
|
|
92
|
-
syncConfigIdsForSourceTable(selectedSyncConfigIds: string[], _table: SourceTableRef, bucketDataSourceIds: BucketDefinitionId[], parameterLookupSourceIds: ParameterIndexId[]): string[];
|
|
106
|
+
syncConfigIdsForSourceTable(selectedSyncConfigIds: string[], _table: SourceTableRef, bucketDataSourceIds: BucketDefinitionId[], parameterLookupSourceIds: ParameterIndexId[], eventDefinitionIds: EventDefinitionId[]): string[];
|
|
93
107
|
snapshotBlockingSourceTablesFilter(_syncConfigId: string): Record<string, unknown>;
|
|
94
108
|
}
|
|
95
109
|
/**
|
|
@@ -104,6 +118,7 @@ export declare class MultiSyncConfigBucketDefinitionMapping implements BucketDef
|
|
|
104
118
|
private bucketDataSourceSyncConfigIdsById;
|
|
105
119
|
private parameterLookupMappings;
|
|
106
120
|
private parameterLookupSyncConfigIdsById;
|
|
121
|
+
private eventDefinitionSyncConfigIdsById;
|
|
107
122
|
private syncConfigsById;
|
|
108
123
|
private mappings;
|
|
109
124
|
constructor(syncConfigs: SyncConfigWithRequiredMapping[]);
|
|
@@ -111,7 +126,8 @@ export declare class MultiSyncConfigBucketDefinitionMapping implements BucketDef
|
|
|
111
126
|
allBucketDefinitionIds(): BucketDefinitionId[];
|
|
112
127
|
parameterLookupId(source: ParameterIndexLookupCreator): ParameterIndexId;
|
|
113
128
|
allParameterIndexIds(): ParameterIndexId[];
|
|
114
|
-
|
|
129
|
+
allEventDefinitionIds(): EventDefinitionId[];
|
|
130
|
+
syncConfigIdsForSourceTable(_selectedSyncConfigIds: string[], _table: SourceTableRef, bucketDataSourceIds: BucketDefinitionId[], parameterLookupSourceIds: ParameterIndexId[], eventDefinitionIds: EventDefinitionId[]): string[];
|
|
115
131
|
snapshotBlockingSourceTablesFilter(syncConfigId: string): Record<string, unknown>;
|
|
116
132
|
}
|
|
117
133
|
export declare function parameterLookupKey(id: ParameterLookupDefinitionId): string;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { ServiceAssertionError } from '@powersync/lib-services-framework';
|
|
2
|
-
import { HashMap, serializedStreamBucketDataSourceEquality, serializedStreamParameterIndexLookupCreatorEquality } from '@powersync/service-sync-rules';
|
|
2
|
+
import { HashMap, serializedEventDefinitionEquality, serializedStreamBucketDataSourceEquality, serializedStreamParameterIndexLookupCreatorEquality } from '@powersync/service-sync-rules';
|
|
3
3
|
/**
|
|
4
4
|
* A BucketDefinitionMapping associated with a single SyncConfig.
|
|
5
5
|
*
|
|
@@ -11,23 +11,29 @@ import { HashMap, serializedStreamBucketDataSourceEquality, serializedStreamPara
|
|
|
11
11
|
export class SingleSyncConfigBucketDefinitionMapping {
|
|
12
12
|
definitions;
|
|
13
13
|
parameterLookupMapping;
|
|
14
|
+
events;
|
|
14
15
|
static fromPersistedMapping(mapping) {
|
|
15
|
-
return new SingleSyncConfigBucketDefinitionMapping(mapping.definitions ?? {}, mapping.parameter_indexes ?? {});
|
|
16
|
+
return new SingleSyncConfigBucketDefinitionMapping(mapping.definitions ?? {}, mapping.parameter_indexes ?? {}, mapping.events ?? {});
|
|
16
17
|
}
|
|
17
18
|
static fromParsedSyncConfig(syncConfig) {
|
|
18
19
|
const definitionNames = syncConfig.config.bucketDataSources.map((source) => source.uniqueName).sort();
|
|
19
20
|
const parameterKeys = syncConfig.config.bucketParameterLookupSources
|
|
20
21
|
.map((source) => `${source.sourceId.lookupName}#${source.sourceId.queryId}`)
|
|
21
22
|
.sort();
|
|
23
|
+
const eventNames = syncConfig.config.eventDefinitions.map((event) => event.name).sort();
|
|
22
24
|
const definitions = {};
|
|
23
25
|
const parameterLookups = {};
|
|
26
|
+
const events = {};
|
|
24
27
|
for (const [index, uniqueName] of definitionNames.entries()) {
|
|
25
28
|
definitions[uniqueName] = (index + 1).toString(16);
|
|
26
29
|
}
|
|
27
30
|
for (const [index, key] of parameterKeys.entries()) {
|
|
28
31
|
parameterLookups[key] = (index + 1).toString(16);
|
|
29
32
|
}
|
|
30
|
-
|
|
33
|
+
for (const [index, name] of eventNames.entries()) {
|
|
34
|
+
events[name] = (index + 1).toString(16);
|
|
35
|
+
}
|
|
36
|
+
return new SingleSyncConfigBucketDefinitionMapping(definitions, parameterLookups, events);
|
|
31
37
|
}
|
|
32
38
|
/**
|
|
33
39
|
*
|
|
@@ -58,14 +64,30 @@ export class SingleSyncConfigBucketDefinitionMapping {
|
|
|
58
64
|
nextParameterIndexId++;
|
|
59
65
|
return id;
|
|
60
66
|
}
|
|
67
|
+
// Event ids are deliberately allocated per replication stream instead of being hashes or UUIDs derived from a
|
|
68
|
+
// compiled plan. Compatibility decides whether to reuse an existing id, keeping the storage identifier separate
|
|
69
|
+
// from event content and allowing the comparison to evolve independently. That comparison must remain
|
|
70
|
+
// conservative: a false negative only causes a new id and resnapshot, while a false positive could incorrectly
|
|
71
|
+
// reuse existing event state.
|
|
72
|
+
let nextEventDefinitionId = reservedMappings
|
|
73
|
+
.map((mapping) => mapping.allEventDefinitionIds())
|
|
74
|
+
.flat()
|
|
75
|
+
.reduce((maxId, id) => Math.max(maxId, parseInt(id, 16)), 0) + 1;
|
|
76
|
+
function generateNewEventDefinitionId() {
|
|
77
|
+
const id = nextEventDefinitionId.toString(16);
|
|
78
|
+
nextEventDefinitionId++;
|
|
79
|
+
return id;
|
|
80
|
+
}
|
|
61
81
|
const definitions = {};
|
|
62
82
|
const parameterLookups = {};
|
|
83
|
+
const events = {};
|
|
63
84
|
const changes = {
|
|
64
85
|
reusedDefinitions: [],
|
|
65
86
|
addedDefinitions: []
|
|
66
87
|
};
|
|
67
88
|
const compatibleBuckets = new HashMap(serializedStreamBucketDataSourceEquality);
|
|
68
89
|
const compatibleParameterLookups = new HashMap(serializedStreamParameterIndexLookupCreatorEquality);
|
|
90
|
+
const compatibleEvents = new HashMap(serializedEventDefinitionEquality);
|
|
69
91
|
for (const config of compatibleConfigs) {
|
|
70
92
|
for (const bucket of config.plan.buckets) {
|
|
71
93
|
compatibleBuckets.putIfAbsent({ bucket, dataSources: config.plan.dataSources }, () => config.mapping.bucketSourceIdByName(bucket.uniqueName));
|
|
@@ -73,6 +95,9 @@ export class SingleSyncConfigBucketDefinitionMapping {
|
|
|
73
95
|
for (const parameterLookup of config.plan.parameterIndexes) {
|
|
74
96
|
compatibleParameterLookups.putIfAbsent(parameterLookup, () => config.mapping.parameterLookupIdByKey(parameterLookupKey(parameterLookup.lookupScope)));
|
|
75
97
|
}
|
|
98
|
+
for (const event of config.plan.events ?? []) {
|
|
99
|
+
compatibleEvents.putIfAbsent(event, () => config.mapping.eventDefinitionIdByName(event.name));
|
|
100
|
+
}
|
|
76
101
|
}
|
|
77
102
|
for (const bucket of newPlan.buckets) {
|
|
78
103
|
const compatibleId = compatibleBuckets.get({ bucket, dataSources: newPlan.dataSources });
|
|
@@ -107,14 +132,31 @@ export class SingleSyncConfigBucketDefinitionMapping {
|
|
|
107
132
|
changes.reusedDefinitions.push(change);
|
|
108
133
|
}
|
|
109
134
|
}
|
|
135
|
+
for (const event of newPlan.events ?? []) {
|
|
136
|
+
const compatibleId = compatibleEvents.get(event);
|
|
137
|
+
const id = compatibleId ?? generateNewEventDefinitionId();
|
|
138
|
+
events[event.name] = id;
|
|
139
|
+
const change = {
|
|
140
|
+
type: 'event',
|
|
141
|
+
name: event.name,
|
|
142
|
+
id
|
|
143
|
+
};
|
|
144
|
+
if (compatibleId == null) {
|
|
145
|
+
changes.addedDefinitions.push(change);
|
|
146
|
+
}
|
|
147
|
+
else {
|
|
148
|
+
changes.reusedDefinitions.push(change);
|
|
149
|
+
}
|
|
150
|
+
}
|
|
110
151
|
return {
|
|
111
|
-
mapping: new SingleSyncConfigBucketDefinitionMapping(definitions, parameterLookups),
|
|
152
|
+
mapping: new SingleSyncConfigBucketDefinitionMapping(definitions, parameterLookups, events),
|
|
112
153
|
changes
|
|
113
154
|
};
|
|
114
155
|
}
|
|
115
|
-
constructor(definitions = {}, parameterLookupMapping = {}) {
|
|
156
|
+
constructor(definitions = {}, parameterLookupMapping = {}, events = {}) {
|
|
116
157
|
this.definitions = definitions;
|
|
117
158
|
this.parameterLookupMapping = parameterLookupMapping;
|
|
159
|
+
this.events = events;
|
|
118
160
|
}
|
|
119
161
|
bucketSourceId(source) {
|
|
120
162
|
return this.bucketSourceIdByName(source.uniqueName);
|
|
@@ -146,8 +188,18 @@ export class SingleSyncConfigBucketDefinitionMapping {
|
|
|
146
188
|
id
|
|
147
189
|
}));
|
|
148
190
|
}
|
|
191
|
+
allEventDefinitionIds() {
|
|
192
|
+
return Object.values(this.events);
|
|
193
|
+
}
|
|
194
|
+
eventDefinitionEntries() {
|
|
195
|
+
return Object.entries(this.events).map(([name, id]) => ({
|
|
196
|
+
type: 'event',
|
|
197
|
+
name,
|
|
198
|
+
id
|
|
199
|
+
}));
|
|
200
|
+
}
|
|
149
201
|
allDefinitionEntries() {
|
|
150
|
-
return [...this.bucketDefinitionEntries(), ...this.parameterIndexEntries()];
|
|
202
|
+
return [...this.bucketDefinitionEntries(), ...this.parameterIndexEntries(), ...this.eventDefinitionEntries()];
|
|
151
203
|
}
|
|
152
204
|
parameterLookupId(source) {
|
|
153
205
|
return this.parameterLookupIdByKey(parameterLookupKey(source.sourceId));
|
|
@@ -159,14 +211,27 @@ export class SingleSyncConfigBucketDefinitionMapping {
|
|
|
159
211
|
}
|
|
160
212
|
return defId;
|
|
161
213
|
}
|
|
214
|
+
eventId(event) {
|
|
215
|
+
return this.eventDefinitionIdByName(event.name);
|
|
216
|
+
}
|
|
217
|
+
eventDefinitionIdByName(name) {
|
|
218
|
+
const id = this.events[name];
|
|
219
|
+
if (id == null) {
|
|
220
|
+
throw new ServiceAssertionError(`No mapping found for event definition ${name}`);
|
|
221
|
+
}
|
|
222
|
+
return id;
|
|
223
|
+
}
|
|
162
224
|
serialize() {
|
|
163
225
|
return {
|
|
164
226
|
definitions: { ...this.definitions },
|
|
165
|
-
parameter_indexes: { ...this.parameterLookupMapping }
|
|
227
|
+
parameter_indexes: { ...this.parameterLookupMapping },
|
|
228
|
+
events: { ...this.events }
|
|
166
229
|
};
|
|
167
230
|
}
|
|
168
|
-
syncConfigIdsForSourceTable(selectedSyncConfigIds, _table, bucketDataSourceIds, parameterLookupSourceIds) {
|
|
169
|
-
return bucketDataSourceIds.length > 0 || parameterLookupSourceIds.length > 0
|
|
231
|
+
syncConfigIdsForSourceTable(selectedSyncConfigIds, _table, bucketDataSourceIds, parameterLookupSourceIds, eventDefinitionIds) {
|
|
232
|
+
return bucketDataSourceIds.length > 0 || parameterLookupSourceIds.length > 0 || eventDefinitionIds.length > 0
|
|
233
|
+
? selectedSyncConfigIds
|
|
234
|
+
: [];
|
|
170
235
|
}
|
|
171
236
|
snapshotBlockingSourceTablesFilter(_syncConfigId) {
|
|
172
237
|
const clauses = [];
|
|
@@ -178,6 +243,10 @@ export class SingleSyncConfigBucketDefinitionMapping {
|
|
|
178
243
|
if (parameterLookupSourceIds.length > 0) {
|
|
179
244
|
clauses.push({ parameter_lookup_source_ids: { $in: parameterLookupSourceIds } });
|
|
180
245
|
}
|
|
246
|
+
const eventDefinitionIds = this.allEventDefinitionIds();
|
|
247
|
+
if (eventDefinitionIds.length > 0) {
|
|
248
|
+
clauses.push({ event_definition_ids: { $in: eventDefinitionIds } });
|
|
249
|
+
}
|
|
181
250
|
if (clauses.length == 0) {
|
|
182
251
|
return {
|
|
183
252
|
snapshot_done: false,
|
|
@@ -202,6 +271,7 @@ export class MultiSyncConfigBucketDefinitionMapping {
|
|
|
202
271
|
bucketDataSourceSyncConfigIdsById = new Map();
|
|
203
272
|
parameterLookupMappings = new WeakMap();
|
|
204
273
|
parameterLookupSyncConfigIdsById = new Map();
|
|
274
|
+
eventDefinitionSyncConfigIdsById = new Map();
|
|
205
275
|
syncConfigsById = new Map();
|
|
206
276
|
mappings;
|
|
207
277
|
constructor(syncConfigs) {
|
|
@@ -216,6 +286,9 @@ export class MultiSyncConfigBucketDefinitionMapping {
|
|
|
216
286
|
this.parameterLookupMappings.set(source, config.mapping);
|
|
217
287
|
addSetEntry(this.parameterLookupSyncConfigIdsById, config.mapping.parameterLookupId(source), config.syncConfigId);
|
|
218
288
|
}
|
|
289
|
+
for (const event of config.syncConfig.config.eventDefinitions) {
|
|
290
|
+
addSetEntry(this.eventDefinitionSyncConfigIdsById, config.mapping.eventId(event), config.syncConfigId);
|
|
291
|
+
}
|
|
219
292
|
}
|
|
220
293
|
}
|
|
221
294
|
bucketSourceId(source) {
|
|
@@ -238,7 +311,10 @@ export class MultiSyncConfigBucketDefinitionMapping {
|
|
|
238
311
|
allParameterIndexIds() {
|
|
239
312
|
return [...new Set(this.mappings.flatMap((mapping) => mapping.allParameterIndexIds()))];
|
|
240
313
|
}
|
|
241
|
-
|
|
314
|
+
allEventDefinitionIds() {
|
|
315
|
+
return [...new Set(this.mappings.flatMap((mapping) => mapping.allEventDefinitionIds()))];
|
|
316
|
+
}
|
|
317
|
+
syncConfigIdsForSourceTable(_selectedSyncConfigIds, _table, bucketDataSourceIds, parameterLookupSourceIds, eventDefinitionIds) {
|
|
242
318
|
const ids = new Set();
|
|
243
319
|
for (const sourceId of bucketDataSourceIds) {
|
|
244
320
|
addAll(ids, this.bucketDataSourceSyncConfigIdsById.get(sourceId));
|
|
@@ -246,10 +322,8 @@ export class MultiSyncConfigBucketDefinitionMapping {
|
|
|
246
322
|
for (const sourceId of parameterLookupSourceIds) {
|
|
247
323
|
addAll(ids, this.parameterLookupSyncConfigIdsById.get(sourceId));
|
|
248
324
|
}
|
|
249
|
-
for (const
|
|
250
|
-
|
|
251
|
-
ids.add(syncConfigId);
|
|
252
|
-
}
|
|
325
|
+
for (const eventDefinitionId of eventDefinitionIds) {
|
|
326
|
+
addAll(ids, this.eventDefinitionSyncConfigIdsById.get(eventDefinitionId));
|
|
253
327
|
}
|
|
254
328
|
return [...ids];
|
|
255
329
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BucketDefinitionMapping.js","sourceRoot":"","sources":["../../../src/storage/implementation/BucketDefinitionMapping.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"BucketDefinitionMapping.js","sourceRoot":"","sources":["../../../src/storage/implementation/BucketDefinitionMapping.ts"],"names":[],"mappings":"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"}
|
|
@@ -7,6 +7,8 @@ export function formatIncrementalSyncConfigUpdateLog(log) {
|
|
|
7
7
|
}
|
|
8
8
|
export function describeIncrementalSyncConfigUpdate(options) {
|
|
9
9
|
const { activeMappings, newMapping, newSyncConfig, mappingChanges } = options;
|
|
10
|
+
// Buckets, parameter lookups and events all flow through the mapping's assigned ids, so their changes are
|
|
11
|
+
// already present in mappingChanges and allDefinitionEntries().
|
|
10
12
|
const newDefinitionKeys = new Set(newMapping.allDefinitionEntries().map(definitionKey));
|
|
11
13
|
const activeDefinitions = uniqueDefinitions(activeMappings.flatMap((mapping) => mapping.allDefinitionEntries()));
|
|
12
14
|
return {
|
|
@@ -25,11 +27,17 @@ function sourceTablesForDefinition(syncConfig, mapping, definition) {
|
|
|
25
27
|
if (definition.type == 'bucket_data') {
|
|
26
28
|
return sourceTablesForSources(syncConfig.config.bucketDataSources.filter((source) => mapping.bucketSourceId(source) == definition.id));
|
|
27
29
|
}
|
|
28
|
-
|
|
30
|
+
if (definition.type == 'parameter_lookup') {
|
|
31
|
+
return sourceTablesForSources(syncConfig.config.bucketParameterLookupSources.filter((source) => mapping.parameterLookupId(source) == definition.id));
|
|
32
|
+
}
|
|
33
|
+
return sourceTablesForEvents(syncConfig.config.eventDefinitions.filter((event) => mapping.eventId(event) == definition.id));
|
|
29
34
|
}
|
|
30
35
|
function sourceTablesForSources(sources) {
|
|
31
36
|
return uniqueSorted(sources.flatMap((source) => [...source.getSourceTables()].map((table) => table.tablePattern)));
|
|
32
37
|
}
|
|
38
|
+
function sourceTablesForEvents(events) {
|
|
39
|
+
return uniqueSorted(events.flatMap((event) => [...event.getSourceTables()].map((table) => table.tablePattern)));
|
|
40
|
+
}
|
|
33
41
|
function definitionKey(definition) {
|
|
34
42
|
return `${definition.type}:${definition.id}`;
|
|
35
43
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"IncrementalReprocessingSyncConfigLog.js","sourceRoot":"","sources":["../../../src/storage/implementation/IncrementalReprocessingSyncConfigLog.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"IncrementalReprocessingSyncConfigLog.js","sourceRoot":"","sources":["../../../src/storage/implementation/IncrementalReprocessingSyncConfigLog.ts"],"names":[],"mappings":"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"}
|