@powersync/service-core-tests 0.9.3 → 0.9.4

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.
@@ -207,8 +207,7 @@ bucket_definitions:
207
207
  await result_2;
208
208
  }
209
209
  });
210
- // Temporarily skipped - interruption disabled
211
- test.skip('sync interrupts low-priority buckets on new checkpoints', async () => {
210
+ test('sync interrupts low-priority buckets on new checkpoints', async () => {
212
211
  const env_3 = { stack: [], error: void 0, hasError: false };
213
212
  try {
214
213
  const f = __addDisposableResource(env_3, await factory(), true);
@@ -319,10 +318,144 @@ bucket_definitions:
319
318
  await result_3;
320
319
  }
321
320
  });
322
- test('sends checkpoint complete line for empty checkpoint', async () => {
321
+ test('sync interruptions with unrelated data', async () => {
323
322
  const env_4 = { stack: [], error: void 0, hasError: false };
324
323
  try {
325
324
  const f = __addDisposableResource(env_4, await factory(), true);
325
+ const syncRules = await f.updateSyncRules({
326
+ content: `
327
+ bucket_definitions:
328
+ b0:
329
+ priority: 2
330
+ data:
331
+ - SELECT * FROM test WHERE LENGTH(id) <= 5;
332
+ b1:
333
+ priority: 1
334
+ parameters: SELECT request.user_id() as user_id
335
+ data:
336
+ - SELECT * FROM test WHERE LENGTH(id) > 5 AND description = bucket.user_id;
337
+ `
338
+ });
339
+ const bucketStorage = f.getInstance(syncRules);
340
+ await bucketStorage.autoActivate();
341
+ await bucketStorage.startBatch(test_utils.BATCH_OPTIONS, async (batch) => {
342
+ // Initial data: Add one priority row and 10k low-priority rows.
343
+ await batch.save({
344
+ sourceTable: TEST_TABLE,
345
+ tag: storage.SaveOperationTag.INSERT,
346
+ after: {
347
+ id: 'highprio',
348
+ description: 'user_one'
349
+ },
350
+ afterReplicaId: 'highprio'
351
+ });
352
+ for (let i = 0; i < 10_000; i++) {
353
+ await batch.save({
354
+ sourceTable: TEST_TABLE,
355
+ tag: storage.SaveOperationTag.INSERT,
356
+ after: {
357
+ id: `${i}`,
358
+ description: 'low prio'
359
+ },
360
+ afterReplicaId: `${i}`
361
+ });
362
+ }
363
+ await batch.commit('0/1');
364
+ });
365
+ const stream = sync.streamResponse({
366
+ syncContext,
367
+ bucketStorage,
368
+ syncRules: bucketStorage.getParsedSyncRules(test_utils.PARSE_OPTIONS),
369
+ params: {
370
+ buckets: [],
371
+ include_checksum: true,
372
+ raw_data: true
373
+ },
374
+ tracker,
375
+ syncParams: new RequestParameters({ sub: 'user_one' }, {}),
376
+ token: { sub: 'user_one', exp: Date.now() / 1000 + 100000 }
377
+ });
378
+ let sentCheckpoints = 0;
379
+ let completedCheckpoints = 0;
380
+ let sentRows = 0;
381
+ // Expected flow:
382
+ // 1. Stream starts, we receive a checkpoint followed by the one high-prio row and a partial completion.
383
+ // 2. We insert a new row that is not part of a bucket relevant to this stream.
384
+ // 3. This means that no interruption happens and we receive all the low-priority data, followed by a checkpoint.
385
+ // 4. After the checkpoint, add a new row that _is_ relevant for this sync, which should trigger a new iteration.
386
+ for await (let next of stream) {
387
+ if (typeof next == 'string') {
388
+ next = JSON.parse(next);
389
+ }
390
+ if (typeof next === 'object' && next !== null) {
391
+ if ('partial_checkpoint_complete' in next) {
392
+ if (sentCheckpoints == 1) {
393
+ await bucketStorage.startBatch(test_utils.BATCH_OPTIONS, async (batch) => {
394
+ // Add a high-priority row that doesn't affect this sync stream.
395
+ await batch.save({
396
+ sourceTable: TEST_TABLE,
397
+ tag: storage.SaveOperationTag.INSERT,
398
+ after: {
399
+ id: 'highprio2',
400
+ description: 'user_two'
401
+ },
402
+ afterReplicaId: 'highprio2'
403
+ });
404
+ await batch.commit('0/2');
405
+ });
406
+ }
407
+ else {
408
+ expect(sentCheckpoints).toBe(2);
409
+ expect(sentRows).toBe(10002);
410
+ }
411
+ }
412
+ if ('checkpoint' in next || 'checkpoint_diff' in next) {
413
+ sentCheckpoints += 1;
414
+ }
415
+ if ('data' in next) {
416
+ sentRows += next.data.data.length;
417
+ }
418
+ if ('checkpoint_complete' in next) {
419
+ completedCheckpoints++;
420
+ if (completedCheckpoints == 2) {
421
+ break;
422
+ }
423
+ if (completedCheckpoints == 1) {
424
+ expect(sentRows).toBe(10001);
425
+ await bucketStorage.startBatch(test_utils.BATCH_OPTIONS, async (batch) => {
426
+ // Add a high-priority row that affects this sync stream.
427
+ await batch.save({
428
+ sourceTable: TEST_TABLE,
429
+ tag: storage.SaveOperationTag.INSERT,
430
+ after: {
431
+ id: 'highprio3',
432
+ description: 'user_one'
433
+ },
434
+ afterReplicaId: 'highprio3'
435
+ });
436
+ await batch.commit('0/3');
437
+ });
438
+ }
439
+ }
440
+ }
441
+ }
442
+ expect(sentCheckpoints).toBe(2);
443
+ expect(sentRows).toBe(10002);
444
+ }
445
+ catch (e_4) {
446
+ env_4.error = e_4;
447
+ env_4.hasError = true;
448
+ }
449
+ finally {
450
+ const result_4 = __disposeResources(env_4);
451
+ if (result_4)
452
+ await result_4;
453
+ }
454
+ });
455
+ test('sends checkpoint complete line for empty checkpoint', async () => {
456
+ const env_5 = { stack: [], error: void 0, hasError: false };
457
+ try {
458
+ const f = __addDisposableResource(env_5, await factory(), true);
326
459
  const syncRules = await f.updateSyncRules({
327
460
  content: BASIC_SYNC_RULES
328
461
  });
@@ -378,14 +511,14 @@ bucket_definitions:
378
511
  }
379
512
  expect(lines).toMatchSnapshot();
380
513
  }
381
- catch (e_4) {
382
- env_4.error = e_4;
383
- env_4.hasError = true;
514
+ catch (e_5) {
515
+ env_5.error = e_5;
516
+ env_5.hasError = true;
384
517
  }
385
518
  finally {
386
- const result_4 = __disposeResources(env_4);
387
- if (result_4)
388
- await result_4;
519
+ const result_5 = __disposeResources(env_5);
520
+ if (result_5)
521
+ await result_5;
389
522
  }
390
523
  });
391
524
  test('sync legacy non-raw data', async () => {
@@ -427,9 +560,9 @@ bucket_definitions:
427
560
  expect(lines[1].data.data[0].data.large_num).toEqual(12345678901234567890n);
428
561
  });
429
562
  test('expired token', async () => {
430
- const env_5 = { stack: [], error: void 0, hasError: false };
563
+ const env_6 = { stack: [], error: void 0, hasError: false };
431
564
  try {
432
- const f = __addDisposableResource(env_5, await factory(), true);
565
+ const f = __addDisposableResource(env_6, await factory(), true);
433
566
  const syncRules = await f.updateSyncRules({
434
567
  content: BASIC_SYNC_RULES
435
568
  });
@@ -451,20 +584,20 @@ bucket_definitions:
451
584
  const lines = await consumeCheckpointLines(stream);
452
585
  expect(lines).toMatchSnapshot();
453
586
  }
454
- catch (e_5) {
455
- env_5.error = e_5;
456
- env_5.hasError = true;
587
+ catch (e_6) {
588
+ env_6.error = e_6;
589
+ env_6.hasError = true;
457
590
  }
458
591
  finally {
459
- const result_5 = __disposeResources(env_5);
460
- if (result_5)
461
- await result_5;
592
+ const result_6 = __disposeResources(env_6);
593
+ if (result_6)
594
+ await result_6;
462
595
  }
463
596
  });
464
597
  test('sync updates to global data', async (context) => {
465
- const env_6 = { stack: [], error: void 0, hasError: false };
598
+ const env_7 = { stack: [], error: void 0, hasError: false };
466
599
  try {
467
- const f = __addDisposableResource(env_6, await factory(), true);
600
+ const f = __addDisposableResource(env_7, await factory(), true);
468
601
  const syncRules = await f.updateSyncRules({
469
602
  content: BASIC_SYNC_RULES
470
603
  });
@@ -515,20 +648,20 @@ bucket_definitions:
515
648
  });
516
649
  expect(await getCheckpointLines(iter)).toMatchSnapshot();
517
650
  }
518
- catch (e_6) {
519
- env_6.error = e_6;
520
- env_6.hasError = true;
651
+ catch (e_7) {
652
+ env_7.error = e_7;
653
+ env_7.hasError = true;
521
654
  }
522
655
  finally {
523
- const result_6 = __disposeResources(env_6);
524
- if (result_6)
525
- await result_6;
656
+ const result_7 = __disposeResources(env_7);
657
+ if (result_7)
658
+ await result_7;
526
659
  }
527
660
  });
528
661
  test('sync updates to parameter query only', async (context) => {
529
- const env_7 = { stack: [], error: void 0, hasError: false };
662
+ const env_8 = { stack: [], error: void 0, hasError: false };
530
663
  try {
531
- const f = __addDisposableResource(env_7, await factory(), true);
664
+ const f = __addDisposableResource(env_8, await factory(), true);
532
665
  const syncRules = await f.updateSyncRules({
533
666
  content: `bucket_definitions:
534
667
  by_user:
@@ -579,20 +712,20 @@ bucket_definitions:
579
712
  expect(checkpoint2[0].checkpoint_diff?.updated_buckets?.map((b) => b.bucket)).toEqual(['by_user["user1"]']);
580
713
  expect(checkpoint2).toMatchSnapshot();
581
714
  }
582
- catch (e_7) {
583
- env_7.error = e_7;
584
- env_7.hasError = true;
715
+ catch (e_8) {
716
+ env_8.error = e_8;
717
+ env_8.hasError = true;
585
718
  }
586
719
  finally {
587
- const result_7 = __disposeResources(env_7);
588
- if (result_7)
589
- await result_7;
720
+ const result_8 = __disposeResources(env_8);
721
+ if (result_8)
722
+ await result_8;
590
723
  }
591
724
  });
592
725
  test('sync updates to data query only', async (context) => {
593
- const env_8 = { stack: [], error: void 0, hasError: false };
726
+ const env_9 = { stack: [], error: void 0, hasError: false };
594
727
  try {
595
- const f = __addDisposableResource(env_8, await factory(), true);
728
+ const f = __addDisposableResource(env_9, await factory(), true);
596
729
  const syncRules = await f.updateSyncRules({
597
730
  content: `bucket_definitions:
598
731
  by_user:
@@ -656,20 +789,20 @@ bucket_definitions:
656
789
  expect(checkpoint2[0].checkpoint_diff?.updated_buckets?.map((b) => b.bucket)).toEqual(['by_user["user1"]']);
657
790
  expect(checkpoint2).toMatchSnapshot();
658
791
  }
659
- catch (e_8) {
660
- env_8.error = e_8;
661
- env_8.hasError = true;
792
+ catch (e_9) {
793
+ env_9.error = e_9;
794
+ env_9.hasError = true;
662
795
  }
663
796
  finally {
664
- const result_8 = __disposeResources(env_8);
665
- if (result_8)
666
- await result_8;
797
+ const result_9 = __disposeResources(env_9);
798
+ if (result_9)
799
+ await result_9;
667
800
  }
668
801
  });
669
802
  test('sync updates to parameter query + data', async (context) => {
670
- const env_9 = { stack: [], error: void 0, hasError: false };
803
+ const env_10 = { stack: [], error: void 0, hasError: false };
671
804
  try {
672
- const f = __addDisposableResource(env_9, await factory(), true);
805
+ const f = __addDisposableResource(env_10, await factory(), true);
673
806
  const syncRules = await f.updateSyncRules({
674
807
  content: `bucket_definitions:
675
808
  by_user:
@@ -727,20 +860,20 @@ bucket_definitions:
727
860
  expect(checkpoint2[0].checkpoint_diff?.updated_buckets?.map((b) => b.bucket)).toEqual(['by_user["user1"]']);
728
861
  expect(checkpoint2).toMatchSnapshot();
729
862
  }
730
- catch (e_9) {
731
- env_9.error = e_9;
732
- env_9.hasError = true;
863
+ catch (e_10) {
864
+ env_10.error = e_10;
865
+ env_10.hasError = true;
733
866
  }
734
867
  finally {
735
- const result_9 = __disposeResources(env_9);
736
- if (result_9)
737
- await result_9;
868
+ const result_10 = __disposeResources(env_10);
869
+ if (result_10)
870
+ await result_10;
738
871
  }
739
872
  });
740
873
  test('expiring token', async (context) => {
741
- const env_10 = { stack: [], error: void 0, hasError: false };
874
+ const env_11 = { stack: [], error: void 0, hasError: false };
742
875
  try {
743
- const f = __addDisposableResource(env_10, await factory(), true);
876
+ const f = __addDisposableResource(env_11, await factory(), true);
744
877
  const syncRules = await f.updateSyncRules({
745
878
  content: BASIC_SYNC_RULES
746
879
  });
@@ -769,24 +902,24 @@ bucket_definitions:
769
902
  const expLines = await getCheckpointLines(iter);
770
903
  expect(expLines).toMatchSnapshot();
771
904
  }
772
- catch (e_10) {
773
- env_10.error = e_10;
774
- env_10.hasError = true;
905
+ catch (e_11) {
906
+ env_11.error = e_11;
907
+ env_11.hasError = true;
775
908
  }
776
909
  finally {
777
- const result_10 = __disposeResources(env_10);
778
- if (result_10)
779
- await result_10;
910
+ const result_11 = __disposeResources(env_11);
911
+ if (result_11)
912
+ await result_11;
780
913
  }
781
914
  });
782
915
  test('compacting data - invalidate checkpoint', async (context) => {
783
- const env_11 = { stack: [], error: void 0, hasError: false };
916
+ const env_12 = { stack: [], error: void 0, hasError: false };
784
917
  try {
785
918
  // This tests a case of a compact operation invalidating a checkpoint in the
786
919
  // middle of syncing data.
787
920
  // This is expected to be rare in practice, but it is important to handle
788
921
  // this case correctly to maintain consistency on the client.
789
- const f = __addDisposableResource(env_11, await factory(), true);
922
+ const f = __addDisposableResource(env_12, await factory(), true);
790
923
  const syncRules = await f.updateSyncRules({
791
924
  content: BASIC_SYNC_RULES
792
925
  });
@@ -905,20 +1038,20 @@ bucket_definitions:
905
1038
  })
906
1039
  });
907
1040
  }
908
- catch (e_11) {
909
- env_11.error = e_11;
910
- env_11.hasError = true;
1041
+ catch (e_12) {
1042
+ env_12.error = e_12;
1043
+ env_12.hasError = true;
911
1044
  }
912
1045
  finally {
913
- const result_11 = __disposeResources(env_11);
914
- if (result_11)
915
- await result_11;
1046
+ const result_12 = __disposeResources(env_12);
1047
+ if (result_12)
1048
+ await result_12;
916
1049
  }
917
1050
  });
918
1051
  test('write checkpoint', async () => {
919
- const env_12 = { stack: [], error: void 0, hasError: false };
1052
+ const env_13 = { stack: [], error: void 0, hasError: false };
920
1053
  try {
921
- const f = __addDisposableResource(env_12, await factory(), true);
1054
+ const f = __addDisposableResource(env_13, await factory(), true);
922
1055
  const syncRules = await f.updateSyncRules({
923
1056
  content: BASIC_SYNC_RULES
924
1057
  });
@@ -970,14 +1103,14 @@ bucket_definitions:
970
1103
  })
971
1104
  });
972
1105
  }
973
- catch (e_12) {
974
- env_12.error = e_12;
975
- env_12.hasError = true;
1106
+ catch (e_13) {
1107
+ env_13.error = e_13;
1108
+ env_13.hasError = true;
976
1109
  }
977
1110
  finally {
978
- const result_12 = __disposeResources(env_12);
979
- if (result_12)
980
- await result_12;
1111
+ const result_13 = __disposeResources(env_13);
1112
+ if (result_13)
1113
+ await result_13;
981
1114
  }
982
1115
  });
983
1116
  }
@@ -1 +1 @@
1
- {"version":3,"file":"register-sync-tests.js","sourceRoot":"","sources":["../../src/tests/register-sync-tests.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"register-sync-tests.js","sourceRoot":"","sources":["../../src/tests/register-sync-tests.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -5,14 +5,14 @@
5
5
  "publishConfig": {
6
6
  "access": "public"
7
7
  },
8
- "version": "0.9.3",
8
+ "version": "0.9.4",
9
9
  "main": "dist/index.js",
10
10
  "license": "FSL-1.1-Apache-2.0",
11
11
  "type": "module",
12
12
  "dependencies": {
13
- "@powersync/service-core": "^1.11.3",
13
+ "@powersync/service-core": "^1.12.0",
14
14
  "@powersync/service-jsonbig": "^0.17.10",
15
- "@powersync/service-sync-rules": "^0.26.0"
15
+ "@powersync/service-sync-rules": "^0.26.1"
16
16
  },
17
17
  "peerDependencies": {
18
18
  "vite-tsconfig-paths": "^5.1.4",
@@ -1878,4 +1878,54 @@ bucket_definitions:
1878
1878
  }
1879
1879
  });
1880
1880
  });
1881
+
1882
+ test('op_id initialization edge case', async () => {
1883
+ // Test syncing a batch of data that is small in count,
1884
+ // but large enough in size to be split over multiple returned chunks.
1885
+ // Similar to the above test, but splits over 1MB chunks.
1886
+ const sync_rules = test_utils.testRules(
1887
+ `
1888
+ bucket_definitions:
1889
+ global:
1890
+ data:
1891
+ - SELECT id FROM test
1892
+ - SELECT id FROM test_ignore WHERE false
1893
+ `
1894
+ );
1895
+ await using factory = await generateStorageFactory();
1896
+ const bucketStorage = factory.getInstance(sync_rules);
1897
+
1898
+ const sourceTable = test_utils.makeTestTable('test', ['id']);
1899
+ const sourceTableIgnore = test_utils.makeTestTable('test_ignore', ['id']);
1900
+
1901
+ const result1 = await bucketStorage.startBatch(test_utils.BATCH_OPTIONS, async (batch) => {
1902
+ // This saves a record to current_data, but not bucket_data.
1903
+ // This causes a checkpoint to be created without increasing the op_id sequence.
1904
+ await batch.save({
1905
+ sourceTable: sourceTableIgnore,
1906
+ tag: storage.SaveOperationTag.INSERT,
1907
+ after: {
1908
+ id: 'test1'
1909
+ },
1910
+ afterReplicaId: test_utils.rid('test1')
1911
+ });
1912
+ });
1913
+
1914
+ const checkpoint1 = result1!.flushed_op;
1915
+
1916
+ const result2 = await bucketStorage.startBatch(test_utils.BATCH_OPTIONS, async (batch) => {
1917
+ await batch.save({
1918
+ sourceTable: sourceTable,
1919
+ tag: storage.SaveOperationTag.INSERT,
1920
+ after: {
1921
+ id: 'test2'
1922
+ },
1923
+ afterReplicaId: test_utils.rid('test2')
1924
+ });
1925
+ });
1926
+
1927
+ const checkpoint2 = result2!.flushed_op;
1928
+ // we expect 0n and 1n, or 1n and 2n.
1929
+ expect(checkpoint2).toBeGreaterThan(checkpoint1);
1930
+ });
1881
1931
  }