@powersync/service-module-mongodb 0.18.0 → 0.18.2
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,30 @@
|
|
|
1
1
|
# @powersync/service-module-mongodb
|
|
2
2
|
|
|
3
|
+
## 0.18.2
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- e4f683d: [MongoDB Storage] Add experimental option to allow reading data from secondaries.
|
|
8
|
+
- df9ab1e: Batch concurrent write checkpoint requests and increase request limits to improve throughput.
|
|
9
|
+
- Updated dependencies [71d4a0a]
|
|
10
|
+
- Updated dependencies [e4f683d]
|
|
11
|
+
- Updated dependencies [71d4a0a]
|
|
12
|
+
- Updated dependencies [a6ae678]
|
|
13
|
+
- Updated dependencies [c2edf86]
|
|
14
|
+
- Updated dependencies [df9ab1e]
|
|
15
|
+
- @powersync/service-core@1.23.2
|
|
16
|
+
- @powersync/lib-service-mongodb@0.6.28
|
|
17
|
+
- @powersync/service-sync-rules@0.38.1
|
|
18
|
+
- @powersync/service-types@0.16.1
|
|
19
|
+
- @powersync/lib-services-framework@0.9.7
|
|
20
|
+
|
|
21
|
+
## 0.18.1
|
|
22
|
+
|
|
23
|
+
### Patch Changes
|
|
24
|
+
|
|
25
|
+
- Updated dependencies [7e65360]
|
|
26
|
+
- @powersync/service-core@1.23.1
|
|
27
|
+
|
|
3
28
|
## 0.18.0
|
|
4
29
|
|
|
5
30
|
### Minor Changes
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@powersync/service-module-mongodb",
|
|
3
3
|
"repository": "https://github.com/powersync-ja/powersync-service",
|
|
4
|
-
"version": "0.18.
|
|
4
|
+
"version": "0.18.2",
|
|
5
5
|
"license": "FSL-1.1-ALv2",
|
|
6
6
|
"type": "module",
|
|
7
7
|
"publishConfig": {
|
|
@@ -15,17 +15,17 @@
|
|
|
15
15
|
"bson": "^6.10.4",
|
|
16
16
|
"ts-codec": "^1.3.0",
|
|
17
17
|
"uuid": "^14.0.0",
|
|
18
|
-
"@powersync/lib-service-mongodb": "0.6.
|
|
19
|
-
"@powersync/lib-services-framework": "0.9.
|
|
20
|
-
"@powersync/service-core": "1.23.
|
|
18
|
+
"@powersync/lib-service-mongodb": "0.6.28",
|
|
19
|
+
"@powersync/lib-services-framework": "0.9.7",
|
|
20
|
+
"@powersync/service-core": "1.23.2",
|
|
21
21
|
"@powersync/service-jsonbig": "0.17.13",
|
|
22
|
-
"@powersync/service-sync-rules": "0.38.
|
|
23
|
-
"@powersync/service-types": "0.16.
|
|
22
|
+
"@powersync/service-sync-rules": "0.38.1",
|
|
23
|
+
"@powersync/service-types": "0.16.1"
|
|
24
24
|
},
|
|
25
25
|
"devDependencies": {
|
|
26
|
-
"@powersync/service-core-tests": "0.17.
|
|
27
|
-
"@powersync/service-module-mongodb-storage": "0.18.
|
|
28
|
-
"@powersync/service-module-postgres-storage": "0.16.
|
|
26
|
+
"@powersync/service-core-tests": "0.17.1",
|
|
27
|
+
"@powersync/service-module-mongodb-storage": "0.18.2",
|
|
28
|
+
"@powersync/service-module-postgres-storage": "0.16.2"
|
|
29
29
|
},
|
|
30
30
|
"scripts": {
|
|
31
31
|
"build": "tsc -b",
|
|
@@ -3,7 +3,7 @@ import { setTimeout } from 'node:timers/promises';
|
|
|
3
3
|
import { describe, expect, test, vi } from 'vitest';
|
|
4
4
|
|
|
5
5
|
import { mongo } from '@powersync/lib-service-mongodb';
|
|
6
|
-
import { createWriteCheckpoint, storage } from '@powersync/service-core';
|
|
6
|
+
import { createWriteCheckpoint, storage, WriteCheckpointBatcher } from '@powersync/service-core';
|
|
7
7
|
import { test_utils } from '@powersync/service-core-tests';
|
|
8
8
|
|
|
9
9
|
import { MongoRouteAPIAdapter } from '@module/api/MongoRouteAPIAdapter.js';
|
|
@@ -625,6 +625,10 @@ bucket_definitions:
|
|
|
625
625
|
type: 'mongodb',
|
|
626
626
|
...TEST_CONNECTION_OPTIONS
|
|
627
627
|
});
|
|
628
|
+
const writeCheckpointBatcher = new WriteCheckpointBatcher(
|
|
629
|
+
() => api,
|
|
630
|
+
() => context.factory
|
|
631
|
+
);
|
|
628
632
|
|
|
629
633
|
context.startStreaming();
|
|
630
634
|
|
|
@@ -641,8 +645,7 @@ bucket_definitions:
|
|
|
641
645
|
createWriteCheckpoint({
|
|
642
646
|
userId: 'test_user',
|
|
643
647
|
clientId: 'test_client' + i,
|
|
644
|
-
|
|
645
|
-
storage: context.factory
|
|
648
|
+
batcher: writeCheckpointBatcher
|
|
646
649
|
})
|
|
647
650
|
)
|
|
648
651
|
);
|
|
@@ -248,7 +248,7 @@ export async function getClientCheckpoint(
|
|
|
248
248
|
db: mongo.Db,
|
|
249
249
|
storageFactory: BucketStorageFactory,
|
|
250
250
|
options?: { timeout?: number }
|
|
251
|
-
): Promise<
|
|
251
|
+
): Promise<ReplicationCheckpoint> {
|
|
252
252
|
const start = Date.now();
|
|
253
253
|
const lsn = await createCheckpoint(client, db, STANDALONE_CHECKPOINT_ID);
|
|
254
254
|
// This old API needs a persisted checkpoint id.
|
|
@@ -263,7 +263,7 @@ export async function getClientCheckpoint(
|
|
|
263
263
|
if (cp != null) {
|
|
264
264
|
lastCp = cp;
|
|
265
265
|
if (cp.lsn && cp.lsn >= lsn) {
|
|
266
|
-
return cp
|
|
266
|
+
return cp;
|
|
267
267
|
}
|
|
268
268
|
}
|
|
269
269
|
await new Promise((resolve) => setTimeout(resolve, 30));
|