@powersync/service-core-tests 0.0.0-dev-20250317122913 → 0.0.0-dev-20250325131118
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 +20 -5
- package/dist/test-utils/MetricsHelper.d.ts +12 -0
- package/dist/test-utils/MetricsHelper.js +42 -0
- package/dist/test-utils/MetricsHelper.js.map +1 -0
- package/dist/test-utils/general-utils.d.ts +1 -1
- package/dist/test-utils/general-utils.js +3 -3
- package/dist/test-utils/general-utils.js.map +1 -1
- package/dist/test-utils/test-utils-index.d.ts +1 -1
- package/dist/test-utils/test-utils-index.js +1 -1
- package/dist/tests/register-data-storage-tests.js +254 -0
- package/dist/tests/register-data-storage-tests.js.map +1 -1
- package/dist/tests/register-sync-tests.js +250 -28
- package/dist/tests/register-sync-tests.js.map +1 -1
- package/package.json +5 -4
- package/src/test-utils/MetricsHelper.ts +54 -0
- package/src/test-utils/general-utils.ts +3 -3
- package/src/test-utils/test-utils-index.ts +1 -1
- package/src/tests/register-data-storage-tests.ts +234 -0
- package/src/tests/register-sync-tests.ts +234 -6
- package/tsconfig.tsbuildinfo +1 -1
- package/dist/test-utils/metrics-utils.d.ts +0 -2
- package/dist/test-utils/metrics-utils.js +0 -13
- package/dist/test-utils/metrics-utils.js.map +0 -1
- package/src/test-utils/metrics-utils.ts +0 -14
package/CHANGELOG.md
CHANGED
|
@@ -1,16 +1,31 @@
|
|
|
1
1
|
# @powersync/service-core-tests
|
|
2
2
|
|
|
3
|
-
## 0.0.0-dev-
|
|
3
|
+
## 0.0.0-dev-20250325131118
|
|
4
4
|
|
|
5
5
|
### Minor Changes
|
|
6
6
|
|
|
7
|
-
-
|
|
7
|
+
- d239244: Refactored Metrics to use a MetricsEngine which is telemetry framework agnostic.
|
|
8
8
|
|
|
9
9
|
### Patch Changes
|
|
10
10
|
|
|
11
|
-
- Updated dependencies [
|
|
12
|
-
- @powersync/service-core@0.0.0-dev-
|
|
13
|
-
|
|
11
|
+
- Updated dependencies [d239244]
|
|
12
|
+
- @powersync/service-core@0.0.0-dev-20250325131118
|
|
13
|
+
|
|
14
|
+
## 0.8.0
|
|
15
|
+
|
|
16
|
+
### Minor Changes
|
|
17
|
+
|
|
18
|
+
- 833e8f2: [MongoDB Storage] Stream write checkpoint changes instead of polling, reducing overhead for large numbers of concurrent connections
|
|
19
|
+
- bfece49: Cache parameter queries and buckets to reduce incremental sync overhead
|
|
20
|
+
|
|
21
|
+
### Patch Changes
|
|
22
|
+
|
|
23
|
+
- Updated dependencies [833e8f2]
|
|
24
|
+
- Updated dependencies [833e8f2]
|
|
25
|
+
- Updated dependencies [bfece49]
|
|
26
|
+
- Updated dependencies [2cb5252]
|
|
27
|
+
- @powersync/service-core@1.10.0
|
|
28
|
+
- @powersync/service-sync-rules@0.25.0
|
|
14
29
|
|
|
15
30
|
## 0.7.2
|
|
16
31
|
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { MetricsEngine, MetricsFactory } from '@powersync/service-core';
|
|
2
|
+
export declare class MetricsHelper {
|
|
3
|
+
factory: MetricsFactory;
|
|
4
|
+
metricsEngine: MetricsEngine;
|
|
5
|
+
private meterProvider;
|
|
6
|
+
private exporter;
|
|
7
|
+
private metricReader;
|
|
8
|
+
constructor();
|
|
9
|
+
resetMetrics(): void;
|
|
10
|
+
getMetricValueForTests(name: string): Promise<number | undefined>;
|
|
11
|
+
}
|
|
12
|
+
export declare const METRICS_HELPER: MetricsHelper;
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import { MetricsEngine, OpenTelemetryMetricsFactory } from '@powersync/service-core';
|
|
2
|
+
import { AggregationTemporality, InMemoryMetricExporter, MeterProvider, PeriodicExportingMetricReader } from '@opentelemetry/sdk-metrics';
|
|
3
|
+
export class MetricsHelper {
|
|
4
|
+
factory;
|
|
5
|
+
metricsEngine;
|
|
6
|
+
meterProvider;
|
|
7
|
+
exporter;
|
|
8
|
+
metricReader;
|
|
9
|
+
constructor() {
|
|
10
|
+
this.exporter = new InMemoryMetricExporter(AggregationTemporality.CUMULATIVE);
|
|
11
|
+
this.metricReader = new PeriodicExportingMetricReader({
|
|
12
|
+
exporter: this.exporter,
|
|
13
|
+
exportIntervalMillis: 100 // Export quickly for tests
|
|
14
|
+
});
|
|
15
|
+
this.meterProvider = new MeterProvider({
|
|
16
|
+
readers: [this.metricReader]
|
|
17
|
+
});
|
|
18
|
+
const meter = this.meterProvider.getMeter('powersync-tests');
|
|
19
|
+
this.factory = new OpenTelemetryMetricsFactory(meter);
|
|
20
|
+
this.metricsEngine = new MetricsEngine({
|
|
21
|
+
factory: this.factory,
|
|
22
|
+
disable_telemetry_sharing: true
|
|
23
|
+
});
|
|
24
|
+
}
|
|
25
|
+
resetMetrics() {
|
|
26
|
+
this.exporter.reset();
|
|
27
|
+
}
|
|
28
|
+
async getMetricValueForTests(name) {
|
|
29
|
+
await this.metricReader.forceFlush();
|
|
30
|
+
const metrics = this.exporter.getMetrics();
|
|
31
|
+
// Use the latest reported ResourceMetric
|
|
32
|
+
const scoped = metrics[metrics.length - 1]?.scopeMetrics?.[0]?.metrics;
|
|
33
|
+
const metric = scoped?.find((metric) => metric.descriptor.name == name);
|
|
34
|
+
if (metric == null) {
|
|
35
|
+
throw new Error(`Cannot find metric ${name}. Options: ${scoped.map((metric) => metric.descriptor.name).join(',')}`);
|
|
36
|
+
}
|
|
37
|
+
const point = metric.dataPoints[metric.dataPoints.length - 1];
|
|
38
|
+
return point?.value;
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
export const METRICS_HELPER = new MetricsHelper();
|
|
42
|
+
//# sourceMappingURL=MetricsHelper.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"MetricsHelper.js","sourceRoot":"","sources":["../../src/test-utils/MetricsHelper.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAkB,2BAA2B,EAAE,MAAM,yBAAyB,CAAC;AACrG,OAAO,EACL,sBAAsB,EACtB,sBAAsB,EACtB,aAAa,EACb,6BAA6B,EAC9B,MAAM,4BAA4B,CAAC;AAEpC,MAAM,OAAO,aAAa;IACjB,OAAO,CAAiB;IACxB,aAAa,CAAgB;IAC5B,aAAa,CAAgB;IAC7B,QAAQ,CAAyB;IACjC,YAAY,CAAgC;IAEpD;QACE,IAAI,CAAC,QAAQ,GAAG,IAAI,sBAAsB,CAAC,sBAAsB,CAAC,UAAU,CAAC,CAAC;QAE9E,IAAI,CAAC,YAAY,GAAG,IAAI,6BAA6B,CAAC;YACpD,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,oBAAoB,EAAE,GAAG,CAAC,2BAA2B;SACtD,CAAC,CAAC;QACH,IAAI,CAAC,aAAa,GAAG,IAAI,aAAa,CAAC;YACrC,OAAO,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC;SAC7B,CAAC,CAAC;QACH,MAAM,KAAK,GAAG,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,iBAAiB,CAAC,CAAC;QAC7D,IAAI,CAAC,OAAO,GAAG,IAAI,2BAA2B,CAAC,KAAK,CAAC,CAAC;QACtD,IAAI,CAAC,aAAa,GAAG,IAAI,aAAa,CAAC;YACrC,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,yBAAyB,EAAE,IAAI;SAChC,CAAC,CAAC;IACL,CAAC;IAED,YAAY;QACV,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC;IACxB,CAAC;IAED,KAAK,CAAC,sBAAsB,CAAC,IAAY;QACvC,MAAM,IAAI,CAAC,YAAY,CAAC,UAAU,EAAE,CAAC;QACrC,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE,CAAC;QAC3C,yCAAyC;QACzC,MAAM,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC;QACvE,MAAM,MAAM,GAAG,MAAM,EAAE,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,IAAI,IAAI,IAAI,CAAC,CAAC;QACxE,IAAI,MAAM,IAAI,IAAI,EAAE,CAAC;YACnB,MAAM,IAAI,KAAK,CACb,sBAAsB,IAAI,cAAc,MAAM,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CACnG,CAAC;QACJ,CAAC;QACD,MAAM,KAAK,GAAG,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QAC9D,OAAO,KAAK,EAAE,KAAe,CAAC;IAChC,CAAC;CACF;AAED,MAAM,CAAC,MAAM,cAAc,GAAG,IAAI,aAAa,EAAE,CAAC"}
|
|
@@ -4,7 +4,7 @@ export declare const ZERO_LSN = "0/0";
|
|
|
4
4
|
export declare const PARSE_OPTIONS: storage.ParseSyncRulesOptions;
|
|
5
5
|
export declare const BATCH_OPTIONS: storage.StartBatchOptions;
|
|
6
6
|
export declare function testRules(content: string): storage.PersistedSyncRulesContent;
|
|
7
|
-
export declare function makeTestTable(name: string,
|
|
7
|
+
export declare function makeTestTable(name: string, replicaIdColumns?: string[] | undefined): storage.SourceTable;
|
|
8
8
|
export declare function getBatchData(batch: utils.SyncBucketData[] | storage.SyncBucketDataBatch[] | storage.SyncBucketDataBatch): {
|
|
9
9
|
op_id: string;
|
|
10
10
|
op: "PUT" | "REMOVE" | "MOVE" | "CLEAR";
|
|
@@ -27,10 +27,10 @@ export function testRules(content) {
|
|
|
27
27
|
}
|
|
28
28
|
};
|
|
29
29
|
}
|
|
30
|
-
export function makeTestTable(name,
|
|
31
|
-
const relId = utils.hashData('table', name, (
|
|
30
|
+
export function makeTestTable(name, replicaIdColumns) {
|
|
31
|
+
const relId = utils.hashData('table', name, (replicaIdColumns ?? ['id']).join(','));
|
|
32
32
|
const id = new bson.ObjectId('6544e3899293153fa7b38331');
|
|
33
|
-
return new storage.SourceTable(id, storage.SourceTable.DEFAULT_TAG, relId, 'public', name, (
|
|
33
|
+
return new storage.SourceTable(id, storage.SourceTable.DEFAULT_TAG, relId, 'public', name, (replicaIdColumns ?? ['id']).map((column) => ({ name: column, type: 'VARCHAR', typeId: 25 })), true);
|
|
34
34
|
}
|
|
35
35
|
export function getBatchData(batch) {
|
|
36
36
|
const first = getFirst(batch);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"general-utils.js","sourceRoot":"","sources":["../../src/test-utils/general-utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,yBAAyB,CAAC;AACzD,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAC7D,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAE7B,MAAM,CAAC,MAAM,QAAQ,GAAG,KAAK,CAAC;AAE9B,MAAM,CAAC,MAAM,aAAa,GAAkC;IAC1D,aAAa,EAAE,QAAQ;CACxB,CAAC;AAEF,MAAM,CAAC,MAAM,aAAa,GAA8B;IACtD,GAAG,aAAa;IAChB,OAAO,EAAE,QAAQ;IACjB,gBAAgB,EAAE,IAAI;CACvB,CAAC;AAEF,MAAM,UAAU,SAAS,CAAC,OAAe;IACvC,OAAO;QACL,EAAE,EAAE,CAAC;QACL,kBAAkB,EAAE,OAAO;QAC3B,SAAS,EAAE,MAAM;QACjB,MAAM,CAAC,OAAO;YACZ,OAAO;gBACL,EAAE,EAAE,CAAC;gBACL,UAAU,EAAE,YAAY,CAAC,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;gBACnD,SAAS,EAAE,MAAM;aAClB,CAAC;QACJ,CAAC;QACD,IAAI;YACF,MAAM,IAAI,KAAK,CAAC,iBAAiB,CAAC,CAAC;QACrC,CAAC;KACF,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,IAAY,EAAE,
|
|
1
|
+
{"version":3,"file":"general-utils.js","sourceRoot":"","sources":["../../src/test-utils/general-utils.ts"],"names":[],"mappings":"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"}
|
|
@@ -1525,5 +1525,259 @@ bucket_definitions:
|
|
|
1525
1525
|
await result_20;
|
|
1526
1526
|
}
|
|
1527
1527
|
});
|
|
1528
|
+
test('managed write checkpoints - checkpoint after write', async (context) => {
|
|
1529
|
+
const env_21 = { stack: [], error: void 0, hasError: false };
|
|
1530
|
+
try {
|
|
1531
|
+
const factory = __addDisposableResource(env_21, await generateStorageFactory(), true);
|
|
1532
|
+
const r = await factory.configureSyncRules({
|
|
1533
|
+
content: `
|
|
1534
|
+
bucket_definitions:
|
|
1535
|
+
mybucket:
|
|
1536
|
+
data: []
|
|
1537
|
+
`,
|
|
1538
|
+
validate: false
|
|
1539
|
+
});
|
|
1540
|
+
const bucketStorage = factory.getInstance(r.persisted_sync_rules);
|
|
1541
|
+
await bucketStorage.autoActivate();
|
|
1542
|
+
const abortController = new AbortController();
|
|
1543
|
+
context.onTestFinished(() => abortController.abort());
|
|
1544
|
+
const iter = bucketStorage
|
|
1545
|
+
.watchCheckpointChanges({ user_id: 'user1', signal: abortController.signal })[Symbol.asyncIterator]();
|
|
1546
|
+
const writeCheckpoint = await bucketStorage.createManagedWriteCheckpoint({
|
|
1547
|
+
heads: { '1': '5/0' },
|
|
1548
|
+
user_id: 'user1'
|
|
1549
|
+
});
|
|
1550
|
+
await bucketStorage.startBatch(test_utils.BATCH_OPTIONS, async (batch) => {
|
|
1551
|
+
await batch.keepalive('5/0');
|
|
1552
|
+
});
|
|
1553
|
+
const result = await iter.next();
|
|
1554
|
+
expect(result).toMatchObject({
|
|
1555
|
+
done: false,
|
|
1556
|
+
value: {
|
|
1557
|
+
base: {
|
|
1558
|
+
checkpoint: 0n,
|
|
1559
|
+
lsn: '5/0'
|
|
1560
|
+
},
|
|
1561
|
+
writeCheckpoint: writeCheckpoint
|
|
1562
|
+
}
|
|
1563
|
+
});
|
|
1564
|
+
}
|
|
1565
|
+
catch (e_21) {
|
|
1566
|
+
env_21.error = e_21;
|
|
1567
|
+
env_21.hasError = true;
|
|
1568
|
+
}
|
|
1569
|
+
finally {
|
|
1570
|
+
const result_21 = __disposeResources(env_21);
|
|
1571
|
+
if (result_21)
|
|
1572
|
+
await result_21;
|
|
1573
|
+
}
|
|
1574
|
+
});
|
|
1575
|
+
test('managed write checkpoints - write after checkpoint', async (context) => {
|
|
1576
|
+
const env_22 = { stack: [], error: void 0, hasError: false };
|
|
1577
|
+
try {
|
|
1578
|
+
const factory = __addDisposableResource(env_22, await generateStorageFactory(), true);
|
|
1579
|
+
const r = await factory.configureSyncRules({
|
|
1580
|
+
content: `
|
|
1581
|
+
bucket_definitions:
|
|
1582
|
+
mybucket:
|
|
1583
|
+
data: []
|
|
1584
|
+
`,
|
|
1585
|
+
validate: false
|
|
1586
|
+
});
|
|
1587
|
+
const bucketStorage = factory.getInstance(r.persisted_sync_rules);
|
|
1588
|
+
await bucketStorage.autoActivate();
|
|
1589
|
+
const abortController = new AbortController();
|
|
1590
|
+
context.onTestFinished(() => abortController.abort());
|
|
1591
|
+
const iter = bucketStorage
|
|
1592
|
+
.watchCheckpointChanges({ user_id: 'user1', signal: abortController.signal })[Symbol.asyncIterator]();
|
|
1593
|
+
await bucketStorage.startBatch(test_utils.BATCH_OPTIONS, async (batch) => {
|
|
1594
|
+
await batch.keepalive('5/0');
|
|
1595
|
+
});
|
|
1596
|
+
const result = await iter.next();
|
|
1597
|
+
expect(result).toMatchObject({
|
|
1598
|
+
done: false,
|
|
1599
|
+
value: {
|
|
1600
|
+
base: {
|
|
1601
|
+
checkpoint: 0n,
|
|
1602
|
+
lsn: '5/0'
|
|
1603
|
+
},
|
|
1604
|
+
writeCheckpoint: null
|
|
1605
|
+
}
|
|
1606
|
+
});
|
|
1607
|
+
const writeCheckpoint = await bucketStorage.createManagedWriteCheckpoint({
|
|
1608
|
+
heads: { '1': '6/0' },
|
|
1609
|
+
user_id: 'user1'
|
|
1610
|
+
});
|
|
1611
|
+
// We have to trigger a new keepalive after the checkpoint, at least to cover postgres storage.
|
|
1612
|
+
// This is what is effetively triggered with RouteAPI.createReplicationHead().
|
|
1613
|
+
// MongoDB storage doesn't explicitly need this anymore.
|
|
1614
|
+
await bucketStorage.startBatch(test_utils.BATCH_OPTIONS, async (batch) => {
|
|
1615
|
+
await batch.keepalive('6/0');
|
|
1616
|
+
});
|
|
1617
|
+
let result2 = await iter.next();
|
|
1618
|
+
if (result2.value?.base?.lsn == '5/0') {
|
|
1619
|
+
// Events could arrive in a different order in some cases - this caters for it
|
|
1620
|
+
result2 = await iter.next();
|
|
1621
|
+
}
|
|
1622
|
+
expect(result2).toMatchObject({
|
|
1623
|
+
done: false,
|
|
1624
|
+
value: {
|
|
1625
|
+
base: {
|
|
1626
|
+
checkpoint: 0n,
|
|
1627
|
+
lsn: '6/0'
|
|
1628
|
+
},
|
|
1629
|
+
writeCheckpoint: writeCheckpoint
|
|
1630
|
+
}
|
|
1631
|
+
});
|
|
1632
|
+
}
|
|
1633
|
+
catch (e_22) {
|
|
1634
|
+
env_22.error = e_22;
|
|
1635
|
+
env_22.hasError = true;
|
|
1636
|
+
}
|
|
1637
|
+
finally {
|
|
1638
|
+
const result_22 = __disposeResources(env_22);
|
|
1639
|
+
if (result_22)
|
|
1640
|
+
await result_22;
|
|
1641
|
+
}
|
|
1642
|
+
});
|
|
1643
|
+
test('custom write checkpoints - checkpoint after write', async (context) => {
|
|
1644
|
+
const env_23 = { stack: [], error: void 0, hasError: false };
|
|
1645
|
+
try {
|
|
1646
|
+
const factory = __addDisposableResource(env_23, await generateStorageFactory(), true);
|
|
1647
|
+
const r = await factory.configureSyncRules({
|
|
1648
|
+
content: `
|
|
1649
|
+
bucket_definitions:
|
|
1650
|
+
mybucket:
|
|
1651
|
+
data: []
|
|
1652
|
+
`,
|
|
1653
|
+
validate: false
|
|
1654
|
+
});
|
|
1655
|
+
const bucketStorage = factory.getInstance(r.persisted_sync_rules);
|
|
1656
|
+
await bucketStorage.autoActivate();
|
|
1657
|
+
bucketStorage.setWriteCheckpointMode(storage.WriteCheckpointMode.CUSTOM);
|
|
1658
|
+
const abortController = new AbortController();
|
|
1659
|
+
context.onTestFinished(() => abortController.abort());
|
|
1660
|
+
const iter = bucketStorage
|
|
1661
|
+
.watchCheckpointChanges({ user_id: 'user1', signal: abortController.signal })[Symbol.asyncIterator]();
|
|
1662
|
+
await bucketStorage.batchCreateCustomWriteCheckpoints([
|
|
1663
|
+
{
|
|
1664
|
+
checkpoint: 5n,
|
|
1665
|
+
user_id: 'user1'
|
|
1666
|
+
}
|
|
1667
|
+
]);
|
|
1668
|
+
await bucketStorage.startBatch(test_utils.BATCH_OPTIONS, async (batch) => {
|
|
1669
|
+
await batch.keepalive('5/0');
|
|
1670
|
+
});
|
|
1671
|
+
const result = await iter.next();
|
|
1672
|
+
expect(result).toMatchObject({
|
|
1673
|
+
done: false,
|
|
1674
|
+
value: {
|
|
1675
|
+
base: {
|
|
1676
|
+
checkpoint: 0n,
|
|
1677
|
+
lsn: '5/0'
|
|
1678
|
+
},
|
|
1679
|
+
writeCheckpoint: 5n
|
|
1680
|
+
}
|
|
1681
|
+
});
|
|
1682
|
+
}
|
|
1683
|
+
catch (e_23) {
|
|
1684
|
+
env_23.error = e_23;
|
|
1685
|
+
env_23.hasError = true;
|
|
1686
|
+
}
|
|
1687
|
+
finally {
|
|
1688
|
+
const result_23 = __disposeResources(env_23);
|
|
1689
|
+
if (result_23)
|
|
1690
|
+
await result_23;
|
|
1691
|
+
}
|
|
1692
|
+
});
|
|
1693
|
+
test('custom write checkpoints - write after checkpoint', async (context) => {
|
|
1694
|
+
const env_24 = { stack: [], error: void 0, hasError: false };
|
|
1695
|
+
try {
|
|
1696
|
+
const factory = __addDisposableResource(env_24, await generateStorageFactory(), true);
|
|
1697
|
+
const r = await factory.configureSyncRules({
|
|
1698
|
+
content: `
|
|
1699
|
+
bucket_definitions:
|
|
1700
|
+
mybucket:
|
|
1701
|
+
data: []
|
|
1702
|
+
`,
|
|
1703
|
+
validate: false
|
|
1704
|
+
});
|
|
1705
|
+
const bucketStorage = factory.getInstance(r.persisted_sync_rules);
|
|
1706
|
+
await bucketStorage.autoActivate();
|
|
1707
|
+
bucketStorage.setWriteCheckpointMode(storage.WriteCheckpointMode.CUSTOM);
|
|
1708
|
+
const abortController = new AbortController();
|
|
1709
|
+
context.onTestFinished(() => abortController.abort());
|
|
1710
|
+
const iter = bucketStorage
|
|
1711
|
+
.watchCheckpointChanges({ user_id: 'user1', signal: abortController.signal })[Symbol.asyncIterator]();
|
|
1712
|
+
await bucketStorage.startBatch(test_utils.BATCH_OPTIONS, async (batch) => {
|
|
1713
|
+
await batch.keepalive('5/0');
|
|
1714
|
+
});
|
|
1715
|
+
const result = await iter.next();
|
|
1716
|
+
expect(result).toMatchObject({
|
|
1717
|
+
done: false,
|
|
1718
|
+
value: {
|
|
1719
|
+
base: {
|
|
1720
|
+
checkpoint: 0n,
|
|
1721
|
+
lsn: '5/0'
|
|
1722
|
+
},
|
|
1723
|
+
writeCheckpoint: null
|
|
1724
|
+
}
|
|
1725
|
+
});
|
|
1726
|
+
await bucketStorage.batchCreateCustomWriteCheckpoints([
|
|
1727
|
+
{
|
|
1728
|
+
checkpoint: 6n,
|
|
1729
|
+
user_id: 'user1'
|
|
1730
|
+
}
|
|
1731
|
+
]);
|
|
1732
|
+
// We have to trigger a new keepalive after the checkpoint, at least to cover postgres storage.
|
|
1733
|
+
// This is what is effetively triggered with RouteAPI.createReplicationHead().
|
|
1734
|
+
// MongoDB storage doesn't explicitly need this anymore.
|
|
1735
|
+
await bucketStorage.startBatch(test_utils.BATCH_OPTIONS, async (batch) => {
|
|
1736
|
+
await batch.keepalive('6/0');
|
|
1737
|
+
});
|
|
1738
|
+
let result2 = await iter.next();
|
|
1739
|
+
expect(result2).toMatchObject({
|
|
1740
|
+
done: false,
|
|
1741
|
+
value: {
|
|
1742
|
+
base: {
|
|
1743
|
+
checkpoint: 0n
|
|
1744
|
+
// can be 5/0 or 6/0 - actual value not relevant for custom write checkpoints
|
|
1745
|
+
// lsn: '6/0'
|
|
1746
|
+
},
|
|
1747
|
+
writeCheckpoint: 6n
|
|
1748
|
+
}
|
|
1749
|
+
});
|
|
1750
|
+
await bucketStorage.batchCreateCustomWriteCheckpoints([
|
|
1751
|
+
{
|
|
1752
|
+
checkpoint: 7n,
|
|
1753
|
+
user_id: 'user1'
|
|
1754
|
+
}
|
|
1755
|
+
]);
|
|
1756
|
+
await bucketStorage.startBatch(test_utils.BATCH_OPTIONS, async (batch) => {
|
|
1757
|
+
await batch.keepalive('7/0');
|
|
1758
|
+
});
|
|
1759
|
+
let result3 = await iter.next();
|
|
1760
|
+
expect(result3).toMatchObject({
|
|
1761
|
+
done: false,
|
|
1762
|
+
value: {
|
|
1763
|
+
base: {
|
|
1764
|
+
checkpoint: 0n
|
|
1765
|
+
// can be 5/0, 6/0 or 7/0 - actual value not relevant for custom write checkpoints
|
|
1766
|
+
// lsn: '7/0'
|
|
1767
|
+
},
|
|
1768
|
+
writeCheckpoint: 7n
|
|
1769
|
+
}
|
|
1770
|
+
});
|
|
1771
|
+
}
|
|
1772
|
+
catch (e_24) {
|
|
1773
|
+
env_24.error = e_24;
|
|
1774
|
+
env_24.hasError = true;
|
|
1775
|
+
}
|
|
1776
|
+
finally {
|
|
1777
|
+
const result_24 = __disposeResources(env_24);
|
|
1778
|
+
if (result_24)
|
|
1779
|
+
await result_24;
|
|
1780
|
+
}
|
|
1781
|
+
});
|
|
1528
1782
|
}
|
|
1529
1783
|
//# sourceMappingURL=register-data-storage-tests.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"register-data-storage-tests.js","sourceRoot":"","sources":["../../src/tests/register-data-storage-tests.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"register-data-storage-tests.js","sourceRoot":"","sources":["../../src/tests/register-data-storage-tests.ts"],"names":[],"mappings":"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"}
|