@powersync/service-module-mongodb 0.14.0 → 0.15.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/CHANGELOG.md CHANGED
@@ -1,5 +1,25 @@
1
1
  # @powersync/service-module-mongodb
2
2
 
3
+ ## 0.15.0
4
+
5
+ ### Minor Changes
6
+
7
+ - 8c5bb3b: [Internal] Allow using multiple BucketStorageBatch instances concurrently.
8
+ - c15efc7: [Internal] Track and propagate source on buckets and parameter indexes to storage APIs.
9
+
10
+ ### Patch Changes
11
+
12
+ - Updated dependencies [8c5bb3b]
13
+ - Updated dependencies [dcddcf1]
14
+ - Updated dependencies [c15efc7]
15
+ - Updated dependencies [e7152ce]
16
+ - Updated dependencies [e150c5c]
17
+ - Updated dependencies [b410924]
18
+ - @powersync/service-core@1.20.1
19
+ - @powersync/lib-services-framework@0.9.0
20
+ - @powersync/service-sync-rules@0.33.0
21
+ - @powersync/lib-service-mongodb@0.6.21
22
+
3
23
  ## 0.14.0
4
24
 
5
25
  ### Minor Changes
@@ -121,7 +121,7 @@ export class MongoRouteAPIAdapter {
121
121
  patternResult.tables = [];
122
122
  for (let collection of collections) {
123
123
  const sourceTable = new SourceTable({
124
- id: 0,
124
+ id: '', // not used
125
125
  connectionTag: this.connectionTag,
126
126
  objectId: collection.name,
127
127
  schema: schema,
@@ -150,7 +150,7 @@ export class MongoRouteAPIAdapter {
150
150
  }
151
151
  else {
152
152
  const sourceTable = new SourceTable({
153
- id: 0,
153
+ id: '', // not used
154
154
  connectionTag: this.connectionTag,
155
155
  objectId: tablePattern.name,
156
156
  schema: schema,
@@ -1 +1 @@
1
- {"version":3,"file":"MongoRouteAPIAdapter.js","sourceRoot":"","sources":["../../src/api/MongoRouteAPIAdapter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"MongoRouteAPIAdapter.js","sourceRoot":"","sources":["../../src/api/MongoRouteAPIAdapter.ts"],"names":[],"mappings":"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"}
@@ -328,14 +328,14 @@ export class ChangeStream {
328
328
  }
329
329
  for (let table of tablesWithStatus) {
330
330
  await this.snapshotTable(batch, table);
331
- await batch.markSnapshotDone([table], MongoLSN.ZERO.comparable);
331
+ await batch.markTableSnapshotDone([table]);
332
332
  this.touch();
333
333
  }
334
334
  // The checkpoint here is a marker - we need to replicate up to at least this
335
335
  // point before the data can be considered consistent.
336
336
  // We could do this for each individual table, but may as well just do it once for the entire snapshot.
337
337
  const checkpoint = await createCheckpoint(this.client, this.defaultDb, STANDALONE_CHECKPOINT_ID);
338
- await batch.markSnapshotDone([], checkpoint);
338
+ await batch.markAllSnapshotDone(checkpoint);
339
339
  // This will not create a consistent checkpoint yet, but will persist the op.
340
340
  // Actual checkpoint will be created when streaming replication caught up.
341
341
  await batch.commit(snapshotLsn);
@@ -444,7 +444,7 @@ export class ChangeStream {
444
444
  break;
445
445
  }
446
446
  if (this.abort_signal.aborted) {
447
- throw new ReplicationAbortedError(`Aborted initial replication`);
447
+ throw new ReplicationAbortedError(`Aborted initial replication`, this.abort_signal.reason);
448
448
  }
449
449
  // Pre-fetch next batch, so that we can read and write concurrently
450
450
  nextChunkPromise = query.nextChunk();
@@ -558,7 +558,7 @@ export class ChangeStream {
558
558
  await batch.truncate([result.table]);
559
559
  await this.snapshotTable(batch, result.table);
560
560
  const no_checkpoint_before_lsn = await createCheckpoint(this.client, this.defaultDb, STANDALONE_CHECKPOINT_ID);
561
- const [table] = await batch.markSnapshotDone([result.table], no_checkpoint_before_lsn);
561
+ const [table] = await batch.markTableSnapshotDone([result.table], no_checkpoint_before_lsn);
562
562
  return table;
563
563
  }
564
564
  return result.table;
@@ -885,8 +885,10 @@ export class ChangeStream {
885
885
  if (waitForCheckpointLsn != null && lsn >= waitForCheckpointLsn) {
886
886
  waitForCheckpointLsn = null;
887
887
  }
888
- const didCommit = await batch.commit(lsn, { oldestUncommittedChange: this.oldestUncommittedChange });
889
- if (didCommit) {
888
+ const { checkpointBlocked } = await batch.commit(lsn, {
889
+ oldestUncommittedChange: this.oldestUncommittedChange
890
+ });
891
+ if (!checkpointBlocked) {
890
892
  this.oldestUncommittedChange = null;
891
893
  this.isStartingReplication = false;
892
894
  changesSinceLastCheckpoint = 0;
@@ -1 +1 @@
1
- {"version":3,"file":"ChangeStream.js","sourceRoot":"","sources":["../../src/replication/ChangeStream.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ChangeStream.js","sourceRoot":"","sources":["../../src/replication/ChangeStream.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "name": "@powersync/service-module-mongodb",
3
3
  "repository": "https://github.com/powersync-ja/powersync-service",
4
4
  "types": "dist/index.d.ts",
5
- "version": "0.14.0",
5
+ "version": "0.15.0",
6
6
  "main": "dist/index.js",
7
7
  "license": "FSL-1.1-ALv2",
8
8
  "type": "module",
@@ -25,17 +25,17 @@
25
25
  "bson": "^6.10.4",
26
26
  "ts-codec": "^1.3.0",
27
27
  "uuid": "^11.1.0",
28
- "@powersync/lib-service-mongodb": "0.6.20",
29
- "@powersync/lib-services-framework": "0.8.3",
30
- "@powersync/service-core": "1.20.0",
28
+ "@powersync/lib-service-mongodb": "0.6.21",
29
+ "@powersync/lib-services-framework": "0.9.0",
30
+ "@powersync/service-core": "1.20.1",
31
31
  "@powersync/service-jsonbig": "0.17.12",
32
- "@powersync/service-sync-rules": "0.32.0",
32
+ "@powersync/service-sync-rules": "0.33.0",
33
33
  "@powersync/service-types": "0.15.0"
34
34
  },
35
35
  "devDependencies": {
36
- "@powersync/service-core-tests": "0.14.0",
37
- "@powersync/service-module-mongodb-storage": "0.14.0",
38
- "@powersync/service-module-postgres-storage": "0.12.0"
36
+ "@powersync/service-core-tests": "0.15.0",
37
+ "@powersync/service-module-mongodb-storage": "0.15.0",
38
+ "@powersync/service-module-postgres-storage": "0.13.0"
39
39
  },
40
40
  "scripts": {
41
41
  "build": "tsc -b",
@@ -138,7 +138,7 @@ export class MongoRouteAPIAdapter implements api.RouteAPI {
138
138
  patternResult.tables = [];
139
139
  for (let collection of collections) {
140
140
  const sourceTable = new SourceTable({
141
- id: 0,
141
+ id: '', // not used
142
142
  connectionTag: this.connectionTag,
143
143
  objectId: collection.name,
144
144
  schema: schema,
@@ -165,7 +165,7 @@ export class MongoRouteAPIAdapter implements api.RouteAPI {
165
165
  }
166
166
  } else {
167
167
  const sourceTable = new SourceTable({
168
- id: 0,
168
+ id: '', // not used
169
169
  connectionTag: this.connectionTag,
170
170
  objectId: tablePattern.name,
171
171
  schema: schema,
@@ -376,7 +376,7 @@ export class ChangeStream {
376
376
 
377
377
  for (let table of tablesWithStatus) {
378
378
  await this.snapshotTable(batch, table);
379
- await batch.markSnapshotDone([table], MongoLSN.ZERO.comparable);
379
+ await batch.markTableSnapshotDone([table]);
380
380
 
381
381
  this.touch();
382
382
  }
@@ -385,7 +385,7 @@ export class ChangeStream {
385
385
  // point before the data can be considered consistent.
386
386
  // We could do this for each individual table, but may as well just do it once for the entire snapshot.
387
387
  const checkpoint = await createCheckpoint(this.client, this.defaultDb, STANDALONE_CHECKPOINT_ID);
388
- await batch.markSnapshotDone([], checkpoint);
388
+ await batch.markAllSnapshotDone(checkpoint);
389
389
 
390
390
  // This will not create a consistent checkpoint yet, but will persist the op.
391
391
  // Actual checkpoint will be created when streaming replication caught up.
@@ -503,7 +503,7 @@ export class ChangeStream {
503
503
  }
504
504
 
505
505
  if (this.abort_signal.aborted) {
506
- throw new ReplicationAbortedError(`Aborted initial replication`);
506
+ throw new ReplicationAbortedError(`Aborted initial replication`, this.abort_signal.reason);
507
507
  }
508
508
 
509
509
  // Pre-fetch next batch, so that we can read and write concurrently
@@ -640,7 +640,7 @@ export class ChangeStream {
640
640
  await this.snapshotTable(batch, result.table);
641
641
  const no_checkpoint_before_lsn = await createCheckpoint(this.client, this.defaultDb, STANDALONE_CHECKPOINT_ID);
642
642
 
643
- const [table] = await batch.markSnapshotDone([result.table], no_checkpoint_before_lsn);
643
+ const [table] = await batch.markTableSnapshotDone([result.table], no_checkpoint_before_lsn);
644
644
  return table;
645
645
  }
646
646
 
@@ -1022,9 +1022,11 @@ export class ChangeStream {
1022
1022
  if (waitForCheckpointLsn != null && lsn >= waitForCheckpointLsn) {
1023
1023
  waitForCheckpointLsn = null;
1024
1024
  }
1025
- const didCommit = await batch.commit(lsn, { oldestUncommittedChange: this.oldestUncommittedChange });
1025
+ const { checkpointBlocked } = await batch.commit(lsn, {
1026
+ oldestUncommittedChange: this.oldestUncommittedChange
1027
+ });
1026
1028
 
1027
- if (didCommit) {
1029
+ if (!checkpointBlocked) {
1028
1030
  this.oldestUncommittedChange = null;
1029
1031
  this.isStartingReplication = false;
1030
1032
  changesSinceLastCheckpoint = 0;
@@ -8,13 +8,14 @@ import {
8
8
  OplogEntry,
9
9
  ProtocolOpId,
10
10
  ReplicationCheckpoint,
11
+ storage,
11
12
  STORAGE_VERSION_CONFIG,
12
13
  SyncRulesBucketStorage,
13
14
  TestStorageOptions,
14
15
  updateSyncRulesFromYaml,
15
16
  utils
16
17
  } from '@powersync/service-core';
17
- import { METRICS_HELPER, test_utils } from '@powersync/service-core-tests';
18
+ import { bucketRequest, METRICS_HELPER, test_utils } from '@powersync/service-core-tests';
18
19
 
19
20
  import { ChangeStream, ChangeStreamOptions } from '@module/replication/ChangeStream.js';
20
21
  import { MongoManager } from '@module/replication/MongoManager.js';
@@ -26,8 +27,9 @@ import { clearTestDb, TEST_CONNECTION_OPTIONS } from './util.js';
26
27
  export class ChangeStreamTestContext {
27
28
  private _walStream?: ChangeStream;
28
29
  private abortController = new AbortController();
29
- private streamPromise?: Promise<void>;
30
+ private streamPromise?: Promise<PromiseSettledResult<void>>;
30
31
  private syncRulesId?: number;
32
+ private syncRulesContent?: storage.PersistedSyncRulesContent;
31
33
  public storage?: SyncRulesBucketStorage;
32
34
 
33
35
  /**
@@ -104,6 +106,7 @@ export class ChangeStreamTestContext {
104
106
  updateSyncRulesFromYaml(content, { validate: true, storageVersion: this.storageVersion })
105
107
  );
106
108
  this.syncRulesId = syncRules.id;
109
+ this.syncRulesContent = syncRules;
107
110
  this.storage = this.factory.getInstance(syncRules);
108
111
  return this.storage!;
109
112
  }
@@ -115,11 +118,19 @@ export class ChangeStreamTestContext {
115
118
  }
116
119
 
117
120
  this.syncRulesId = syncRules.id;
121
+ this.syncRulesContent = syncRules;
118
122
  this.storage = this.factory.getInstance(syncRules);
119
123
  return this.storage!;
120
124
  }
121
125
 
122
- get walStream() {
126
+ private getSyncRulesContent(): storage.PersistedSyncRulesContent {
127
+ if (this.syncRulesContent == null) {
128
+ throw new Error('Sync rules not configured - call updateSyncRules() first');
129
+ }
130
+ return this.syncRulesContent;
131
+ }
132
+
133
+ get streamer() {
123
134
  if (this.storage == null) {
124
135
  throw new Error('updateSyncRules() first');
125
136
  }
@@ -141,7 +152,7 @@ export class ChangeStreamTestContext {
141
152
  }
142
153
 
143
154
  async replicateSnapshot() {
144
- await this.walStream.initReplication();
155
+ await this.streamer.initReplication();
145
156
  }
146
157
 
147
158
  /**
@@ -159,13 +170,21 @@ export class ChangeStreamTestContext {
159
170
  }
160
171
 
161
172
  startStreaming() {
162
- return (this.streamPromise = this.walStream.streamChanges());
173
+ this.streamPromise = this.streamer
174
+ .streamChanges()
175
+ .then(() => ({ status: 'fulfilled', value: undefined }) satisfies PromiseFulfilledResult<void>)
176
+ .catch((reason) => ({ status: 'rejected', reason }) satisfies PromiseRejectedResult);
177
+ return this.streamPromise;
163
178
  }
164
179
 
165
180
  async getCheckpoint(options?: { timeout?: number }) {
166
181
  let checkpoint = await Promise.race([
167
182
  getClientCheckpoint(this.client, this.db, this.factory, { timeout: options?.timeout ?? 15_000 }),
168
- this.streamPromise
183
+ this.streamPromise?.then((e) => {
184
+ if (e.status == 'rejected') {
185
+ throw e.reason;
186
+ }
187
+ })
169
188
  ]);
170
189
  if (checkpoint == null) {
171
190
  // This indicates an issue with the test setup - streamingPromise completed instead
@@ -175,21 +194,10 @@ export class ChangeStreamTestContext {
175
194
  return checkpoint;
176
195
  }
177
196
 
178
- private resolveBucketName(bucket: string) {
179
- if (!this.versionedBuckets || /^\d+#/.test(bucket)) {
180
- return bucket;
181
- }
182
- if (this.syncRulesId == null) {
183
- throw new Error('Sync rules not configured - call updateSyncRules() first');
184
- }
185
- return `${this.syncRulesId}#${bucket}`;
186
- }
187
-
188
197
  async getBucketsDataBatch(buckets: Record<string, InternalOpId>, options?: { timeout?: number }) {
189
198
  let checkpoint = await this.getCheckpoint(options);
190
- const map = new Map<string, InternalOpId>(
191
- Object.entries(buckets).map(([bucket, opId]) => [this.resolveBucketName(bucket), opId])
192
- );
199
+ const syncRules = this.getSyncRulesContent();
200
+ const map = Object.entries(buckets).map(([bucket, start]) => bucketRequest(syncRules, bucket, start));
193
201
  return test_utils.fromAsync(this.storage!.getBucketDataBatch(checkpoint, map));
194
202
  }
195
203
 
@@ -198,9 +206,9 @@ export class ChangeStreamTestContext {
198
206
  if (typeof start == 'string') {
199
207
  start = BigInt(start);
200
208
  }
201
- const resolvedBucket = this.resolveBucketName(bucket);
209
+ const syncRules = this.getSyncRulesContent();
202
210
  const checkpoint = await this.getCheckpoint(options);
203
- const map = new Map<string, InternalOpId>([[resolvedBucket, start]]);
211
+ let map = [bucketRequest(syncRules, bucket, start)];
204
212
  let data: OplogEntry[] = [];
205
213
  while (true) {
206
214
  const batch = this.storage!.getBucketDataBatch(checkpoint, map);
@@ -210,19 +218,20 @@ export class ChangeStreamTestContext {
210
218
  if (batches.length == 0 || !batches[0]!.chunkData.has_more) {
211
219
  break;
212
220
  }
213
- map.set(resolvedBucket, BigInt(batches[0]!.chunkData.next_after));
221
+ map = [bucketRequest(syncRules, bucket, BigInt(batches[0]!.chunkData.next_after))];
214
222
  }
215
223
  return data;
216
224
  }
217
225
 
218
226
  async getChecksums(buckets: string[], options?: { timeout?: number }): Promise<utils.ChecksumMap> {
219
227
  let checkpoint = await this.getCheckpoint(options);
220
- const versionedBuckets = buckets.map((bucket) => this.resolveBucketName(bucket));
228
+ const syncRules = this.getSyncRulesContent();
229
+ const versionedBuckets = buckets.map((bucket) => bucketRequest(syncRules, bucket, 0n));
221
230
  const checksums = await this.storage!.getChecksums(checkpoint, versionedBuckets);
222
231
 
223
232
  const unversioned: utils.ChecksumMap = new Map();
224
233
  for (let i = 0; i < buckets.length; i++) {
225
- unversioned.set(buckets[i], checksums.get(versionedBuckets[i])!);
234
+ unversioned.set(buckets[i], checksums.get(versionedBuckets[i].bucket)!);
226
235
  }
227
236
  return unversioned;
228
237
  }
@@ -61,8 +61,9 @@ function defineResumeTest({ factory: factoryGenerator, storageVersion }: Storage
61
61
  context2.storage = factory.getInstance(activeContent!);
62
62
 
63
63
  // If this test times out, it likely didn't throw the expected error here.
64
- const error = await context2.startStreaming().catch((ex) => ex);
64
+ const result = await context2.startStreaming();
65
65
  // The ChangeStreamReplicationJob will detect this and throw a ChangeStreamInvalidatedError
66
- expect(error).toBeInstanceOf(ChangeStreamInvalidatedError);
66
+ expect(result.status).toEqual('rejected');
67
+ expect((result as PromiseRejectedResult).reason).toBeInstanceOf(ChangeStreamInvalidatedError);
67
68
  });
68
69
  }
package/test/src/util.ts CHANGED
@@ -5,8 +5,8 @@ import * as postgres_storage from '@powersync/service-module-postgres-storage';
5
5
  import * as types from '@module/types/types.js';
6
6
  import {
7
7
  BSON_DESERIALIZE_DATA_OPTIONS,
8
- CURRENT_STORAGE_VERSION,
9
- LEGACY_STORAGE_VERSION,
8
+ SUPPORTED_STORAGE_VERSIONS,
9
+ TestStorageConfig,
10
10
  TestStorageFactory
11
11
  } from '@powersync/service-core';
12
12
  import { describe, TestOptions } from 'vitest';
@@ -24,11 +24,11 @@ export const INITIALIZED_MONGO_STORAGE_FACTORY = mongo_storage.test_utils.mongoT
24
24
  isCI: env.CI
25
25
  });
26
26
 
27
- export const INITIALIZED_POSTGRES_STORAGE_FACTORY = postgres_storage.test_utils.postgresTestStorageFactoryGenerator({
27
+ export const INITIALIZED_POSTGRES_STORAGE_FACTORY = postgres_storage.test_utils.postgresTestSetup({
28
28
  url: env.PG_STORAGE_TEST_URL
29
29
  });
30
30
 
31
- const TEST_STORAGE_VERSIONS = [LEGACY_STORAGE_VERSION, CURRENT_STORAGE_VERSION];
31
+ export const TEST_STORAGE_VERSIONS = SUPPORTED_STORAGE_VERSIONS;
32
32
 
33
33
  export interface StorageVersionTestContext {
34
34
  factory: TestStorageFactory;
@@ -36,12 +36,12 @@ export interface StorageVersionTestContext {
36
36
  }
37
37
 
38
38
  export function describeWithStorage(options: TestOptions, fn: (context: StorageVersionTestContext) => void) {
39
- const describeFactory = (storageName: string, factory: TestStorageFactory) => {
39
+ const describeFactory = (storageName: string, config: TestStorageConfig) => {
40
40
  describe(`${storageName} storage`, options, function () {
41
41
  for (const storageVersion of TEST_STORAGE_VERSIONS) {
42
42
  describe(`storage v${storageVersion}`, function () {
43
43
  fn({
44
- factory,
44
+ factory: config.factory,
45
45
  storageVersion
46
46
  });
47
47
  });