@powersync/service-core 0.12.2 → 0.14.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 +32 -0
- package/dist/auth/KeySpec.d.ts +1 -0
- package/dist/auth/KeySpec.js +5 -2
- package/dist/auth/KeySpec.js.map +1 -1
- package/dist/auth/RemoteJWKSCollector.js +1 -1
- package/dist/auth/RemoteJWKSCollector.js.map +1 -1
- package/dist/entry/commands/compact-action.js +14 -14
- package/dist/entry/commands/compact-action.js.map +1 -1
- package/dist/entry/commands/migrate-action.js +15 -4
- package/dist/entry/commands/migrate-action.js.map +1 -1
- package/dist/index.d.ts +1 -3
- package/dist/index.js +1 -3
- package/dist/index.js.map +1 -1
- package/dist/migrations/PowerSyncMigrationManager.d.ts +17 -0
- package/dist/migrations/PowerSyncMigrationManager.js +21 -0
- package/dist/migrations/PowerSyncMigrationManager.js.map +1 -0
- package/dist/migrations/ensure-automatic-migrations.d.ts +4 -0
- package/dist/migrations/ensure-automatic-migrations.js +14 -0
- package/dist/migrations/ensure-automatic-migrations.js.map +1 -0
- package/dist/migrations/migrations-index.d.ts +2 -3
- package/dist/migrations/migrations-index.js +2 -3
- package/dist/migrations/migrations-index.js.map +1 -1
- package/dist/routes/configure-fastify.d.ts +12 -12
- package/dist/routes/endpoints/admin.d.ts +24 -24
- package/dist/routes/endpoints/probes.d.ts +1 -1
- package/dist/routes/endpoints/probes.js +5 -5
- package/dist/routes/endpoints/probes.js.map +1 -1
- package/dist/storage/BucketStorage.d.ts +49 -1
- package/dist/storage/BucketStorage.js +26 -0
- package/dist/storage/BucketStorage.js.map +1 -1
- package/dist/storage/SourceTable.d.ts +4 -0
- package/dist/storage/SourceTable.js +4 -0
- package/dist/storage/SourceTable.js.map +1 -1
- package/dist/storage/bson.d.ts +24 -0
- package/dist/storage/bson.js +73 -0
- package/dist/storage/bson.js.map +1 -0
- package/dist/storage/storage-index.d.ts +3 -14
- package/dist/storage/storage-index.js +3 -14
- package/dist/storage/storage-index.js.map +1 -1
- package/dist/sync/sync.js +3 -1
- package/dist/sync/sync.js.map +1 -1
- package/dist/system/ServiceContext.d.ts +3 -0
- package/dist/system/ServiceContext.js +11 -3
- package/dist/system/ServiceContext.js.map +1 -1
- package/dist/util/config/types.d.ts +2 -2
- package/dist/util/utils.d.ts +13 -1
- package/dist/util/utils.js +20 -1
- package/dist/util/utils.js.map +1 -1
- package/package.json +7 -8
- package/src/auth/KeySpec.ts +5 -3
- package/src/auth/RemoteJWKSCollector.ts +1 -1
- package/src/entry/commands/compact-action.ts +19 -14
- package/src/entry/commands/migrate-action.ts +17 -4
- package/src/index.ts +1 -4
- package/src/migrations/PowerSyncMigrationManager.ts +42 -0
- package/src/migrations/ensure-automatic-migrations.ts +15 -0
- package/src/migrations/migrations-index.ts +2 -3
- package/src/routes/endpoints/probes.ts +6 -6
- package/src/storage/BucketStorage.ts +53 -1
- package/src/storage/SourceTable.ts +4 -0
- package/src/storage/bson.ts +78 -0
- package/src/storage/storage-index.ts +3 -15
- package/src/sync/sync.ts +3 -1
- package/src/system/ServiceContext.ts +17 -4
- package/src/util/config/types.ts +2 -2
- package/src/util/utils.ts +21 -1
- package/test/src/auth.test.ts +33 -0
- package/test/src/env.ts +0 -1
- package/test/src/routes/probes.test.ts +6 -1
- package/tsconfig.tsbuildinfo +1 -1
- package/dist/db/db-index.d.ts +0 -1
- package/dist/db/db-index.js +0 -2
- package/dist/db/db-index.js.map +0 -1
- package/dist/db/mongo.d.ts +0 -35
- package/dist/db/mongo.js +0 -73
- package/dist/db/mongo.js.map +0 -1
- package/dist/locks/LockManager.d.ts +0 -10
- package/dist/locks/LockManager.js +0 -7
- package/dist/locks/LockManager.js.map +0 -1
- package/dist/locks/MongoLocks.d.ts +0 -36
- package/dist/locks/MongoLocks.js +0 -81
- package/dist/locks/MongoLocks.js.map +0 -1
- package/dist/locks/locks-index.d.ts +0 -2
- package/dist/locks/locks-index.js +0 -3
- package/dist/locks/locks-index.js.map +0 -1
- package/dist/migrations/db/migrations/1684951997326-init.d.ts +0 -3
- package/dist/migrations/db/migrations/1684951997326-init.js +0 -33
- package/dist/migrations/db/migrations/1684951997326-init.js.map +0 -1
- package/dist/migrations/db/migrations/1688556755264-initial-sync-rules.d.ts +0 -2
- package/dist/migrations/db/migrations/1688556755264-initial-sync-rules.js +0 -5
- package/dist/migrations/db/migrations/1688556755264-initial-sync-rules.js.map +0 -1
- package/dist/migrations/db/migrations/1702295701188-sync-rule-state.d.ts +0 -3
- package/dist/migrations/db/migrations/1702295701188-sync-rule-state.js +0 -56
- package/dist/migrations/db/migrations/1702295701188-sync-rule-state.js.map +0 -1
- package/dist/migrations/db/migrations/1711543888062-write-checkpoint-index.d.ts +0 -3
- package/dist/migrations/db/migrations/1711543888062-write-checkpoint-index.js +0 -29
- package/dist/migrations/db/migrations/1711543888062-write-checkpoint-index.js.map +0 -1
- package/dist/migrations/db/migrations/1727099539247-custom-write-checkpoint-index.d.ts +0 -3
- package/dist/migrations/db/migrations/1727099539247-custom-write-checkpoint-index.js +0 -31
- package/dist/migrations/db/migrations/1727099539247-custom-write-checkpoint-index.js.map +0 -1
- package/dist/migrations/definitions.d.ts +0 -18
- package/dist/migrations/definitions.js +0 -6
- package/dist/migrations/definitions.js.map +0 -1
- package/dist/migrations/executor.d.ts +0 -16
- package/dist/migrations/executor.js +0 -64
- package/dist/migrations/executor.js.map +0 -1
- package/dist/migrations/migrations.d.ts +0 -18
- package/dist/migrations/migrations.js +0 -110
- package/dist/migrations/migrations.js.map +0 -1
- package/dist/migrations/store/migration-store.d.ts +0 -11
- package/dist/migrations/store/migration-store.js +0 -46
- package/dist/migrations/store/migration-store.js.map +0 -1
- package/dist/storage/MongoBucketStorage.d.ts +0 -48
- package/dist/storage/MongoBucketStorage.js +0 -427
- package/dist/storage/MongoBucketStorage.js.map +0 -1
- package/dist/storage/mongo/MongoBucketBatch.d.ts +0 -74
- package/dist/storage/mongo/MongoBucketBatch.js +0 -683
- package/dist/storage/mongo/MongoBucketBatch.js.map +0 -1
- package/dist/storage/mongo/MongoCompactor.d.ts +0 -40
- package/dist/storage/mongo/MongoCompactor.js +0 -310
- package/dist/storage/mongo/MongoCompactor.js.map +0 -1
- package/dist/storage/mongo/MongoIdSequence.d.ts +0 -12
- package/dist/storage/mongo/MongoIdSequence.js +0 -21
- package/dist/storage/mongo/MongoIdSequence.js.map +0 -1
- package/dist/storage/mongo/MongoPersistedSyncRules.d.ts +0 -9
- package/dist/storage/mongo/MongoPersistedSyncRules.js +0 -9
- package/dist/storage/mongo/MongoPersistedSyncRules.js.map +0 -1
- package/dist/storage/mongo/MongoPersistedSyncRulesContent.d.ts +0 -20
- package/dist/storage/mongo/MongoPersistedSyncRulesContent.js +0 -26
- package/dist/storage/mongo/MongoPersistedSyncRulesContent.js.map +0 -1
- package/dist/storage/mongo/MongoStorageProvider.d.ts +0 -5
- package/dist/storage/mongo/MongoStorageProvider.js +0 -26
- package/dist/storage/mongo/MongoStorageProvider.js.map +0 -1
- package/dist/storage/mongo/MongoSyncBucketStorage.d.ts +0 -38
- package/dist/storage/mongo/MongoSyncBucketStorage.js +0 -534
- package/dist/storage/mongo/MongoSyncBucketStorage.js.map +0 -1
- package/dist/storage/mongo/MongoSyncRulesLock.d.ts +0 -16
- package/dist/storage/mongo/MongoSyncRulesLock.js +0 -65
- package/dist/storage/mongo/MongoSyncRulesLock.js.map +0 -1
- package/dist/storage/mongo/MongoWriteCheckpointAPI.d.ts +0 -20
- package/dist/storage/mongo/MongoWriteCheckpointAPI.js +0 -104
- package/dist/storage/mongo/MongoWriteCheckpointAPI.js.map +0 -1
- package/dist/storage/mongo/OperationBatch.d.ts +0 -35
- package/dist/storage/mongo/OperationBatch.js +0 -119
- package/dist/storage/mongo/OperationBatch.js.map +0 -1
- package/dist/storage/mongo/PersistedBatch.d.ts +0 -46
- package/dist/storage/mongo/PersistedBatch.js +0 -223
- package/dist/storage/mongo/PersistedBatch.js.map +0 -1
- package/dist/storage/mongo/config.d.ts +0 -19
- package/dist/storage/mongo/config.js +0 -26
- package/dist/storage/mongo/config.js.map +0 -1
- package/dist/storage/mongo/db.d.ts +0 -36
- package/dist/storage/mongo/db.js +0 -47
- package/dist/storage/mongo/db.js.map +0 -1
- package/dist/storage/mongo/models.d.ts +0 -163
- package/dist/storage/mongo/models.js +0 -27
- package/dist/storage/mongo/models.js.map +0 -1
- package/dist/storage/mongo/util.d.ts +0 -54
- package/dist/storage/mongo/util.js +0 -190
- package/dist/storage/mongo/util.js.map +0 -1
- package/src/db/db-index.ts +0 -1
- package/src/db/mongo.ts +0 -81
- package/src/locks/LockManager.ts +0 -16
- package/src/locks/MongoLocks.ts +0 -142
- package/src/locks/locks-index.ts +0 -2
- package/src/migrations/db/migrations/1684951997326-init.ts +0 -38
- package/src/migrations/db/migrations/1688556755264-initial-sync-rules.ts +0 -5
- package/src/migrations/db/migrations/1702295701188-sync-rule-state.ts +0 -102
- package/src/migrations/db/migrations/1711543888062-write-checkpoint-index.ts +0 -34
- package/src/migrations/db/migrations/1727099539247-custom-write-checkpoint-index.ts +0 -37
- package/src/migrations/definitions.ts +0 -21
- package/src/migrations/executor.ts +0 -87
- package/src/migrations/migrations.ts +0 -142
- package/src/migrations/store/migration-store.ts +0 -63
- package/src/storage/MongoBucketStorage.ts +0 -541
- package/src/storage/mongo/MongoBucketBatch.ts +0 -900
- package/src/storage/mongo/MongoCompactor.ts +0 -393
- package/src/storage/mongo/MongoIdSequence.ts +0 -24
- package/src/storage/mongo/MongoPersistedSyncRules.ts +0 -16
- package/src/storage/mongo/MongoPersistedSyncRulesContent.ts +0 -50
- package/src/storage/mongo/MongoStorageProvider.ts +0 -31
- package/src/storage/mongo/MongoSyncBucketStorage.ts +0 -640
- package/src/storage/mongo/MongoSyncRulesLock.ts +0 -85
- package/src/storage/mongo/MongoWriteCheckpointAPI.ts +0 -154
- package/src/storage/mongo/OperationBatch.ts +0 -131
- package/src/storage/mongo/PersistedBatch.ts +0 -285
- package/src/storage/mongo/config.ts +0 -40
- package/src/storage/mongo/db.ts +0 -88
- package/src/storage/mongo/models.ts +0 -187
- package/src/storage/mongo/util.ts +0 -203
- package/test/src/__snapshots__/sync.test.ts.snap +0 -332
- package/test/src/bucket_validation.test.ts +0 -143
- package/test/src/bucket_validation.ts +0 -60
- package/test/src/compacting.test.ts +0 -295
- package/test/src/data_storage.test.ts +0 -1569
- package/test/src/stream_utils.ts +0 -42
- package/test/src/sync.test.ts +0 -511
- package/test/src/util.ts +0 -150
|
@@ -6,11 +6,11 @@ export declare const executeSql: router.Endpoint<{
|
|
|
6
6
|
};
|
|
7
7
|
connection_id?: string | undefined;
|
|
8
8
|
}, {
|
|
9
|
+
success: boolean;
|
|
9
10
|
results: {
|
|
10
11
|
columns: string[];
|
|
11
12
|
rows: (string | number | boolean | null)[][];
|
|
12
13
|
};
|
|
13
|
-
success: boolean;
|
|
14
14
|
error?: string | undefined;
|
|
15
15
|
}, import("../router.js").Context, import("../router.js").RequestEndpointHandlerPayload<{
|
|
16
16
|
sql: {
|
|
@@ -25,11 +25,11 @@ export declare const executeSql: router.Endpoint<{
|
|
|
25
25
|
};
|
|
26
26
|
connection_id?: string | undefined;
|
|
27
27
|
}, import("../router.js").Context, import("../router.js").BasicRouterRequest>, {
|
|
28
|
+
success: boolean;
|
|
28
29
|
results: {
|
|
29
30
|
columns: string[];
|
|
30
31
|
rows: (string | number | boolean | null)[][];
|
|
31
32
|
};
|
|
32
|
-
success: boolean;
|
|
33
33
|
error?: string | undefined;
|
|
34
34
|
}>> & {
|
|
35
35
|
path: string;
|
|
@@ -55,11 +55,11 @@ export declare const executeSql: router.Endpoint<{
|
|
|
55
55
|
};
|
|
56
56
|
connection_id?: string | undefined;
|
|
57
57
|
}, import("../router.js").Context, import("../router.js").BasicRouterRequest>) => Promise<{
|
|
58
|
+
success: boolean;
|
|
58
59
|
results: {
|
|
59
60
|
columns: string[];
|
|
60
61
|
rows: (string | number | boolean | null)[][];
|
|
61
62
|
};
|
|
62
|
-
success: boolean;
|
|
63
63
|
error?: string | undefined;
|
|
64
64
|
}>;
|
|
65
65
|
};
|
|
@@ -405,8 +405,8 @@ export declare const validate: router.Endpoint<{
|
|
|
405
405
|
level: "warning" | "fatal";
|
|
406
406
|
}[];
|
|
407
407
|
connections: {
|
|
408
|
-
id: string;
|
|
409
408
|
tag: string;
|
|
409
|
+
id: string;
|
|
410
410
|
slot_name: string;
|
|
411
411
|
initial_replication_done: boolean;
|
|
412
412
|
tables: {
|
|
@@ -421,9 +421,9 @@ export declare const validate: router.Endpoint<{
|
|
|
421
421
|
parameter_queries: boolean;
|
|
422
422
|
pattern?: string | undefined;
|
|
423
423
|
}[];
|
|
424
|
-
last_checkpoint_ts?: string | undefined;
|
|
425
|
-
last_keepalive_ts?: string | undefined;
|
|
426
424
|
last_lsn?: string | undefined;
|
|
425
|
+
last_keepalive_ts?: string | undefined;
|
|
426
|
+
last_checkpoint_ts?: string | undefined;
|
|
427
427
|
replication_lag_bytes?: number | undefined;
|
|
428
428
|
}[];
|
|
429
429
|
content?: string | undefined;
|
|
@@ -437,8 +437,8 @@ export declare const validate: router.Endpoint<{
|
|
|
437
437
|
level: "warning" | "fatal";
|
|
438
438
|
}[];
|
|
439
439
|
connections: {
|
|
440
|
-
id: string;
|
|
441
440
|
tag: string;
|
|
441
|
+
id: string;
|
|
442
442
|
slot_name: string;
|
|
443
443
|
initial_replication_done: boolean;
|
|
444
444
|
tables: {
|
|
@@ -453,9 +453,9 @@ export declare const validate: router.Endpoint<{
|
|
|
453
453
|
parameter_queries: boolean;
|
|
454
454
|
pattern?: string | undefined;
|
|
455
455
|
}[];
|
|
456
|
-
last_checkpoint_ts?: string | undefined;
|
|
457
|
-
last_keepalive_ts?: string | undefined;
|
|
458
456
|
last_lsn?: string | undefined;
|
|
457
|
+
last_keepalive_ts?: string | undefined;
|
|
458
|
+
last_checkpoint_ts?: string | undefined;
|
|
459
459
|
replication_lag_bytes?: number | undefined;
|
|
460
460
|
}[];
|
|
461
461
|
content?: string | undefined;
|
|
@@ -480,8 +480,8 @@ export declare const validate: router.Endpoint<{
|
|
|
480
480
|
level: "warning" | "fatal";
|
|
481
481
|
}[];
|
|
482
482
|
connections: {
|
|
483
|
-
id: string;
|
|
484
483
|
tag: string;
|
|
484
|
+
id: string;
|
|
485
485
|
slot_name: string;
|
|
486
486
|
initial_replication_done: boolean;
|
|
487
487
|
tables: {
|
|
@@ -496,9 +496,9 @@ export declare const validate: router.Endpoint<{
|
|
|
496
496
|
parameter_queries: boolean;
|
|
497
497
|
pattern?: string | undefined;
|
|
498
498
|
}[];
|
|
499
|
-
last_checkpoint_ts?: string | undefined;
|
|
500
|
-
last_keepalive_ts?: string | undefined;
|
|
501
499
|
last_lsn?: string | undefined;
|
|
500
|
+
last_keepalive_ts?: string | undefined;
|
|
501
|
+
last_checkpoint_ts?: string | undefined;
|
|
502
502
|
replication_lag_bytes?: number | undefined;
|
|
503
503
|
}[];
|
|
504
504
|
content?: string | undefined;
|
|
@@ -511,11 +511,11 @@ export declare const ADMIN_ROUTES: ((router.Endpoint<{
|
|
|
511
511
|
};
|
|
512
512
|
connection_id?: string | undefined;
|
|
513
513
|
}, {
|
|
514
|
+
success: boolean;
|
|
514
515
|
results: {
|
|
515
516
|
columns: string[];
|
|
516
517
|
rows: (string | number | boolean | null)[][];
|
|
517
518
|
};
|
|
518
|
-
success: boolean;
|
|
519
519
|
error?: string | undefined;
|
|
520
520
|
}, import("../router.js").Context, import("../router.js").RequestEndpointHandlerPayload<{
|
|
521
521
|
sql: {
|
|
@@ -530,11 +530,11 @@ export declare const ADMIN_ROUTES: ((router.Endpoint<{
|
|
|
530
530
|
};
|
|
531
531
|
connection_id?: string | undefined;
|
|
532
532
|
}, import("../router.js").Context, import("../router.js").BasicRouterRequest>, {
|
|
533
|
+
success: boolean;
|
|
533
534
|
results: {
|
|
534
535
|
columns: string[];
|
|
535
536
|
rows: (string | number | boolean | null)[][];
|
|
536
537
|
};
|
|
537
|
-
success: boolean;
|
|
538
538
|
error?: string | undefined;
|
|
539
539
|
}>> & {
|
|
540
540
|
path: string;
|
|
@@ -560,11 +560,11 @@ export declare const ADMIN_ROUTES: ((router.Endpoint<{
|
|
|
560
560
|
};
|
|
561
561
|
connection_id?: string | undefined;
|
|
562
562
|
}, import("../router.js").Context, import("../router.js").BasicRouterRequest>) => Promise<{
|
|
563
|
+
success: boolean;
|
|
563
564
|
results: {
|
|
564
565
|
columns: string[];
|
|
565
566
|
rows: (string | number | boolean | null)[][];
|
|
566
567
|
};
|
|
567
|
-
success: boolean;
|
|
568
568
|
error?: string | undefined;
|
|
569
569
|
}>;
|
|
570
570
|
}) | (router.Endpoint<{
|
|
@@ -906,8 +906,8 @@ export declare const ADMIN_ROUTES: ((router.Endpoint<{
|
|
|
906
906
|
level: "warning" | "fatal";
|
|
907
907
|
}[];
|
|
908
908
|
connections: {
|
|
909
|
-
id: string;
|
|
910
909
|
tag: string;
|
|
910
|
+
id: string;
|
|
911
911
|
slot_name: string;
|
|
912
912
|
initial_replication_done: boolean;
|
|
913
913
|
tables: {
|
|
@@ -922,9 +922,9 @@ export declare const ADMIN_ROUTES: ((router.Endpoint<{
|
|
|
922
922
|
parameter_queries: boolean;
|
|
923
923
|
pattern?: string | undefined;
|
|
924
924
|
}[];
|
|
925
|
-
last_checkpoint_ts?: string | undefined;
|
|
926
|
-
last_keepalive_ts?: string | undefined;
|
|
927
925
|
last_lsn?: string | undefined;
|
|
926
|
+
last_keepalive_ts?: string | undefined;
|
|
927
|
+
last_checkpoint_ts?: string | undefined;
|
|
928
928
|
replication_lag_bytes?: number | undefined;
|
|
929
929
|
}[];
|
|
930
930
|
content?: string | undefined;
|
|
@@ -938,8 +938,8 @@ export declare const ADMIN_ROUTES: ((router.Endpoint<{
|
|
|
938
938
|
level: "warning" | "fatal";
|
|
939
939
|
}[];
|
|
940
940
|
connections: {
|
|
941
|
-
id: string;
|
|
942
941
|
tag: string;
|
|
942
|
+
id: string;
|
|
943
943
|
slot_name: string;
|
|
944
944
|
initial_replication_done: boolean;
|
|
945
945
|
tables: {
|
|
@@ -954,9 +954,9 @@ export declare const ADMIN_ROUTES: ((router.Endpoint<{
|
|
|
954
954
|
parameter_queries: boolean;
|
|
955
955
|
pattern?: string | undefined;
|
|
956
956
|
}[];
|
|
957
|
-
last_checkpoint_ts?: string | undefined;
|
|
958
|
-
last_keepalive_ts?: string | undefined;
|
|
959
957
|
last_lsn?: string | undefined;
|
|
958
|
+
last_keepalive_ts?: string | undefined;
|
|
959
|
+
last_checkpoint_ts?: string | undefined;
|
|
960
960
|
replication_lag_bytes?: number | undefined;
|
|
961
961
|
}[];
|
|
962
962
|
content?: string | undefined;
|
|
@@ -981,8 +981,8 @@ export declare const ADMIN_ROUTES: ((router.Endpoint<{
|
|
|
981
981
|
level: "warning" | "fatal";
|
|
982
982
|
}[];
|
|
983
983
|
connections: {
|
|
984
|
-
id: string;
|
|
985
984
|
tag: string;
|
|
985
|
+
id: string;
|
|
986
986
|
slot_name: string;
|
|
987
987
|
initial_replication_done: boolean;
|
|
988
988
|
tables: {
|
|
@@ -997,9 +997,9 @@ export declare const ADMIN_ROUTES: ((router.Endpoint<{
|
|
|
997
997
|
parameter_queries: boolean;
|
|
998
998
|
pattern?: string | undefined;
|
|
999
999
|
}[];
|
|
1000
|
-
last_checkpoint_ts?: string | undefined;
|
|
1001
|
-
last_keepalive_ts?: string | undefined;
|
|
1002
1000
|
last_lsn?: string | undefined;
|
|
1001
|
+
last_keepalive_ts?: string | undefined;
|
|
1002
|
+
last_checkpoint_ts?: string | undefined;
|
|
1003
1003
|
replication_lag_bytes?: number | undefined;
|
|
1004
1004
|
}[];
|
|
1005
1005
|
content?: string | undefined;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { container, router } from
|
|
2
|
-
import { routeDefinition } from
|
|
1
|
+
import { container, router } from '@powersync/lib-services-framework';
|
|
2
|
+
import { routeDefinition } from '../router.js';
|
|
3
3
|
export var ProbeRoutes;
|
|
4
4
|
(function (ProbeRoutes) {
|
|
5
5
|
ProbeRoutes["STARTUP"] = "/probes/startup";
|
|
@@ -14,7 +14,7 @@ export const startupCheck = routeDefinition({
|
|
|
14
14
|
return new router.RouterResponse({
|
|
15
15
|
status: state.started ? 200 : 400,
|
|
16
16
|
data: {
|
|
17
|
-
...state
|
|
17
|
+
...state
|
|
18
18
|
}
|
|
19
19
|
});
|
|
20
20
|
}
|
|
@@ -29,7 +29,7 @@ export const livenessCheck = routeDefinition({
|
|
|
29
29
|
return new router.RouterResponse({
|
|
30
30
|
status,
|
|
31
31
|
data: {
|
|
32
|
-
...state
|
|
32
|
+
...state
|
|
33
33
|
}
|
|
34
34
|
});
|
|
35
35
|
}
|
|
@@ -42,7 +42,7 @@ export const readinessCheck = routeDefinition({
|
|
|
42
42
|
return new router.RouterResponse({
|
|
43
43
|
status: state.ready ? 200 : 400,
|
|
44
44
|
data: {
|
|
45
|
-
...state
|
|
45
|
+
...state
|
|
46
46
|
}
|
|
47
47
|
});
|
|
48
48
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"probes.js","sourceRoot":"","sources":["../../../src/routes/endpoints/probes.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,mCAAmC,CAAC;AACtE,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAE/C,MAAM,CAAN,IAAY,WAIX;AAJD,WAAY,WAAW;IACrB,0CAA2B,CAAA;IAC3B,4CAA6B,CAAA;IAC7B,8CAA+B,CAAA;AACjC,CAAC,EAJW,WAAW,KAAX,WAAW,QAItB;AAED,MAAM,CAAC,MAAM,YAAY,GAAG,eAAe,CAAC;IAC1C,IAAI,EAAE,WAAW,CAAC,OAAO;IACzB,MAAM,EAAE,MAAM,CAAC,UAAU,CAAC,GAAG;IAC7B,OAAO,EAAE,KAAK,IAAI,EAAE;QAClB,MAAM,KAAK,GAAG,SAAS,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;QAEvC,OAAO,IAAI,MAAM,CAAC,cAAc,CAAC;YAC/B,MAAM,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG;YACjC,IAAI,EAAE;gBACJ,GAAG,KAAK;aACT;SACF,CAAC,CAAC;IACL,CAAC;CACF,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,aAAa,GAAG,eAAe,CAAC;IAC3C,IAAI,EAAE,WAAW,CAAC,QAAQ;IAC1B,MAAM,EAAE,MAAM,CAAC,UAAU,CAAC,GAAG;IAC7B,OAAO,EAAE,KAAK,IAAI,EAAE;QAClB,MAAM,KAAK,GAAG,SAAS,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;QAEvC,MAAM,cAAc,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK,CAAC,UAAU,CAAC,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"probes.js","sourceRoot":"","sources":["../../../src/routes/endpoints/probes.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,mCAAmC,CAAC;AACtE,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAE/C,MAAM,CAAN,IAAY,WAIX;AAJD,WAAY,WAAW;IACrB,0CAA2B,CAAA;IAC3B,4CAA6B,CAAA;IAC7B,8CAA+B,CAAA;AACjC,CAAC,EAJW,WAAW,KAAX,WAAW,QAItB;AAED,MAAM,CAAC,MAAM,YAAY,GAAG,eAAe,CAAC;IAC1C,IAAI,EAAE,WAAW,CAAC,OAAO;IACzB,MAAM,EAAE,MAAM,CAAC,UAAU,CAAC,GAAG;IAC7B,OAAO,EAAE,KAAK,IAAI,EAAE;QAClB,MAAM,KAAK,GAAG,SAAS,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;QAEvC,OAAO,IAAI,MAAM,CAAC,cAAc,CAAC;YAC/B,MAAM,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG;YACjC,IAAI,EAAE;gBACJ,GAAG,KAAK;aACT;SACF,CAAC,CAAC;IACL,CAAC;CACF,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,aAAa,GAAG,eAAe,CAAC;IAC3C,IAAI,EAAE,WAAW,CAAC,QAAQ;IAC1B,MAAM,EAAE,MAAM,CAAC,UAAU,CAAC,GAAG;IAC7B,OAAO,EAAE,KAAK,IAAI,EAAE;QAClB,MAAM,KAAK,GAAG,SAAS,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;QAEvC,MAAM,cAAc,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC;QAC/D,MAAM,MAAM,GAAG,cAAc,GAAG,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;QAElD,OAAO,IAAI,MAAM,CAAC,cAAc,CAAC;YAC/B,MAAM;YACN,IAAI,EAAE;gBACJ,GAAG,KAAK;aACT;SACF,CAAC,CAAC;IACL,CAAC;CACF,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,cAAc,GAAG,eAAe,CAAC;IAC5C,IAAI,EAAE,WAAW,CAAC,SAAS;IAC3B,MAAM,EAAE,MAAM,CAAC,UAAU,CAAC,GAAG;IAC7B,OAAO,EAAE,KAAK,IAAI,EAAE;QAClB,MAAM,KAAK,GAAG,SAAS,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;QAEvC,OAAO,IAAI,MAAM,CAAC,cAAc,CAAC;YAC/B,MAAM,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG;YAC/B,IAAI,EAAE;gBACJ,GAAG,KAAK;aACT;SACF,CAAC,CAAC;IACL,CAAC;CACF,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,YAAY,EAAE,aAAa,EAAE,cAAc,CAAC,CAAC"}
|
|
@@ -1,11 +1,45 @@
|
|
|
1
1
|
import { DisposableListener, DisposableObserverClient } from '@powersync/lib-services-framework';
|
|
2
2
|
import { EvaluatedParameters, EvaluatedRow, SqlSyncRules, SqliteJsonRow, SqliteJsonValue, SqliteRow, ToastableSqliteRow } from '@powersync/service-sync-rules';
|
|
3
|
+
import { BSON } from 'bson';
|
|
3
4
|
import * as util from '../util/util-index.js';
|
|
4
5
|
import { ReplicationEventPayload } from './ReplicationEventPayload.js';
|
|
5
6
|
import { SourceEntityDescriptor } from './SourceEntity.js';
|
|
6
7
|
import { SourceTable } from './SourceTable.js';
|
|
7
|
-
import { BatchedCustomWriteCheckpointOptions
|
|
8
|
+
import { BatchedCustomWriteCheckpointOptions } from './storage-index.js';
|
|
8
9
|
import { SyncStorageWriteCheckpointAPI } from './WriteCheckpointAPI.js';
|
|
10
|
+
/**
|
|
11
|
+
* Replica id uniquely identifying a row on the source database.
|
|
12
|
+
*
|
|
13
|
+
* Can be any value serializable to BSON.
|
|
14
|
+
*
|
|
15
|
+
* If the value is an entire document, the data serialized to a v5 UUID may be a good choice here.
|
|
16
|
+
*/
|
|
17
|
+
export type ReplicaId = BSON.UUID | BSON.Document | any;
|
|
18
|
+
export declare enum SyncRuleState {
|
|
19
|
+
/**
|
|
20
|
+
* New sync rules - needs to be processed (initial replication).
|
|
21
|
+
*
|
|
22
|
+
* While multiple sets of sync rules _can_ be in PROCESSING,
|
|
23
|
+
* it's generally pointless, so we only keep one in that state.
|
|
24
|
+
*/
|
|
25
|
+
PROCESSING = "PROCESSING",
|
|
26
|
+
/**
|
|
27
|
+
* Sync rule processing is done, and can be used for sync.
|
|
28
|
+
*
|
|
29
|
+
* Only one set of sync rules should be in ACTIVE state.
|
|
30
|
+
*/
|
|
31
|
+
ACTIVE = "ACTIVE",
|
|
32
|
+
/**
|
|
33
|
+
* This state is used when the sync rules has been replaced,
|
|
34
|
+
* and replication is or should be stopped.
|
|
35
|
+
*/
|
|
36
|
+
STOP = "STOP",
|
|
37
|
+
/**
|
|
38
|
+
* After sync rules have been stopped, the data needs to be
|
|
39
|
+
* deleted. Once deleted, the state is TERMINATED.
|
|
40
|
+
*/
|
|
41
|
+
TERMINATED = "TERMINATED"
|
|
42
|
+
}
|
|
9
43
|
export interface BucketStorageFactoryListener extends DisposableListener {
|
|
10
44
|
syncStorageCreated: (storage: SyncRulesBucketStorage) => void;
|
|
11
45
|
replicationEvent: (event: ReplicationEventPayload) => void;
|
|
@@ -393,3 +427,17 @@ export interface TerminateOptions {
|
|
|
393
427
|
*/
|
|
394
428
|
clearStorage: boolean;
|
|
395
429
|
}
|
|
430
|
+
/**
|
|
431
|
+
* Helper for tests.
|
|
432
|
+
* This is not in the `service-core-tests` package in order for storage modules
|
|
433
|
+
* to provide relevant factories without requiring `service-core-tests` as a direct dependency.
|
|
434
|
+
*/
|
|
435
|
+
export interface TestStorageOptions {
|
|
436
|
+
/**
|
|
437
|
+
* By default, collections are only cleared/
|
|
438
|
+
* Setting this to true will drop the collections completely.
|
|
439
|
+
*/
|
|
440
|
+
dropAll?: boolean;
|
|
441
|
+
doNotClear?: boolean;
|
|
442
|
+
}
|
|
443
|
+
export type TestStorageFactory = (options?: TestStorageOptions) => Promise<BucketStorageFactory>;
|
|
@@ -1,3 +1,29 @@
|
|
|
1
|
+
export var SyncRuleState;
|
|
2
|
+
(function (SyncRuleState) {
|
|
3
|
+
/**
|
|
4
|
+
* New sync rules - needs to be processed (initial replication).
|
|
5
|
+
*
|
|
6
|
+
* While multiple sets of sync rules _can_ be in PROCESSING,
|
|
7
|
+
* it's generally pointless, so we only keep one in that state.
|
|
8
|
+
*/
|
|
9
|
+
SyncRuleState["PROCESSING"] = "PROCESSING";
|
|
10
|
+
/**
|
|
11
|
+
* Sync rule processing is done, and can be used for sync.
|
|
12
|
+
*
|
|
13
|
+
* Only one set of sync rules should be in ACTIVE state.
|
|
14
|
+
*/
|
|
15
|
+
SyncRuleState["ACTIVE"] = "ACTIVE";
|
|
16
|
+
/**
|
|
17
|
+
* This state is used when the sync rules has been replaced,
|
|
18
|
+
* and replication is or should be stopped.
|
|
19
|
+
*/
|
|
20
|
+
SyncRuleState["STOP"] = "STOP";
|
|
21
|
+
/**
|
|
22
|
+
* After sync rules have been stopped, the data needs to be
|
|
23
|
+
* deleted. Once deleted, the state is TERMINATED.
|
|
24
|
+
*/
|
|
25
|
+
SyncRuleState["TERMINATED"] = "TERMINATED";
|
|
26
|
+
})(SyncRuleState || (SyncRuleState = {}));
|
|
1
27
|
export const DEFAULT_DOCUMENT_BATCH_LIMIT = 1000;
|
|
2
28
|
export const DEFAULT_DOCUMENT_CHUNK_LIMIT_BYTES = 1 * 1024 * 1024;
|
|
3
29
|
export var SaveOperationTag;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BucketStorage.js","sourceRoot":"","sources":["../../src/storage/BucketStorage.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"BucketStorage.js","sourceRoot":"","sources":["../../src/storage/BucketStorage.ts"],"names":[],"mappings":"AA2BA,MAAM,CAAN,IAAY,aAyBX;AAzBD,WAAY,aAAa;IACvB;;;;;OAKG;IACH,0CAAyB,CAAA;IAEzB;;;;OAIG;IACH,kCAAiB,CAAA;IACjB;;;OAGG;IACH,8BAAa,CAAA;IACb;;;OAGG;IACH,0CAAyB,CAAA;AAC3B,CAAC,EAzBW,aAAa,KAAb,aAAa,QAyBxB;AAsKD,MAAM,CAAC,MAAM,4BAA4B,GAAG,IAAI,CAAC;AACjD,MAAM,CAAC,MAAM,kCAAkC,GAAG,CAAC,GAAG,IAAI,GAAG,IAAI,CAAC;AAgOlE,MAAM,CAAN,IAAY,gBAIX;AAJD,WAAY,gBAAgB;IAC1B,qCAAiB,CAAA;IACjB,qCAAiB,CAAA;IACjB,qCAAiB,CAAA;AACnB,CAAC,EAJW,gBAAgB,KAAhB,gBAAgB,QAI3B;AA4CD,MAAM,UAAU,UAAU,CAAC,MAA0B,EAAE,SAA6B;IAClF,MAAM,SAAS,GAAuB,EAAE,CAAC;IACzC,KAAK,IAAI,GAAG,IAAI,MAAM,EAAE,CAAC;QACvB,IAAI,OAAO,MAAM,CAAC,GAAG,CAAC,IAAI,WAAW,EAAE,CAAC;YACtC,SAAS,CAAC,GAAG,CAAC,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC;QAClC,CAAC;aAAM,CAAC;YACN,SAAS,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;QAC/B,CAAC;IACH,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC"}
|
|
@@ -35,10 +35,14 @@ export declare class SourceTable {
|
|
|
35
35
|
constructor(id: any, connectionTag: string, objectId: number | string, schema: string, table: string, replicaIdColumns: ColumnDescriptor[], snapshotComplete: boolean);
|
|
36
36
|
get hasReplicaIdentity(): boolean;
|
|
37
37
|
/**
|
|
38
|
+
* Use for postgres only.
|
|
39
|
+
*
|
|
38
40
|
* Usage: db.query({statement: `SELECT $1::regclass`, params: [{type: 'varchar', value: table.qualifiedName}]})
|
|
39
41
|
*/
|
|
40
42
|
get qualifiedName(): string;
|
|
41
43
|
/**
|
|
44
|
+
* Use for postgres and logs only.
|
|
45
|
+
*
|
|
42
46
|
* Usage: db.query(`SELECT * FROM ${table.escapedIdentifier}`)
|
|
43
47
|
*/
|
|
44
48
|
get escapedIdentifier(): string;
|
|
@@ -38,12 +38,16 @@ export class SourceTable {
|
|
|
38
38
|
return this.replicaIdColumns.length > 0;
|
|
39
39
|
}
|
|
40
40
|
/**
|
|
41
|
+
* Use for postgres only.
|
|
42
|
+
*
|
|
41
43
|
* Usage: db.query({statement: `SELECT $1::regclass`, params: [{type: 'varchar', value: table.qualifiedName}]})
|
|
42
44
|
*/
|
|
43
45
|
get qualifiedName() {
|
|
44
46
|
return this.escapedIdentifier;
|
|
45
47
|
}
|
|
46
48
|
/**
|
|
49
|
+
* Use for postgres and logs only.
|
|
50
|
+
*
|
|
47
51
|
* Usage: db.query(`SELECT * FROM ${table.escapedIdentifier}`)
|
|
48
52
|
*/
|
|
49
53
|
get escapedIdentifier() {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SourceTable.js","sourceRoot":"","sources":["../../src/storage/SourceTable.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,+BAA+B,CAAC;AAC5D,OAAO,KAAK,IAAI,MAAM,uBAAuB,CAAC;AAG9C,MAAM,OAAO,WAAW;IA8BtB,YACkB,EAAO,EACP,aAAqB,EACrB,QAAyB,EACzB,MAAc,EACd,KAAa,EAEb,gBAAoC,EACpC,gBAAyB;QAPzB,OAAE,GAAF,EAAE,CAAK;QACP,kBAAa,GAAb,aAAa,CAAQ;QACrB,aAAQ,GAAR,QAAQ,CAAiB;QACzB,WAAM,GAAN,MAAM,CAAQ;QACd,UAAK,GAAL,KAAK,CAAQ;QAEb,qBAAgB,GAAhB,gBAAgB,CAAoB;QACpC,qBAAgB,GAAhB,gBAAgB,CAAS;QAnC3C;;;;;;WAMG;QACI,aAAQ,GAAG,IAAI,CAAC;QAEvB;;;;;;WAMG;QACI,mBAAc,GAAG,IAAI,CAAC;QAE7B;;;;;;WAMG;QACI,cAAS,GAAG,IAAI,CAAC;IAWrB,CAAC;IAEJ,IAAI,kBAAkB;QACpB,OAAO,IAAI,CAAC,gBAAgB,CAAC,MAAM,GAAG,CAAC,CAAC;IAC1C,CAAC;IAED
|
|
1
|
+
{"version":3,"file":"SourceTable.js","sourceRoot":"","sources":["../../src/storage/SourceTable.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,+BAA+B,CAAC;AAC5D,OAAO,KAAK,IAAI,MAAM,uBAAuB,CAAC;AAG9C,MAAM,OAAO,WAAW;IA8BtB,YACkB,EAAO,EACP,aAAqB,EACrB,QAAyB,EACzB,MAAc,EACd,KAAa,EAEb,gBAAoC,EACpC,gBAAyB;QAPzB,OAAE,GAAF,EAAE,CAAK;QACP,kBAAa,GAAb,aAAa,CAAQ;QACrB,aAAQ,GAAR,QAAQ,CAAiB;QACzB,WAAM,GAAN,MAAM,CAAQ;QACd,UAAK,GAAL,KAAK,CAAQ;QAEb,qBAAgB,GAAhB,gBAAgB,CAAoB;QACpC,qBAAgB,GAAhB,gBAAgB,CAAS;QAnC3C;;;;;;WAMG;QACI,aAAQ,GAAG,IAAI,CAAC;QAEvB;;;;;;WAMG;QACI,mBAAc,GAAG,IAAI,CAAC;QAE7B;;;;;;WAMG;QACI,cAAS,GAAG,IAAI,CAAC;IAWrB,CAAC;IAEJ,IAAI,kBAAkB;QACpB,OAAO,IAAI,CAAC,gBAAgB,CAAC,MAAM,GAAG,CAAC,CAAC;IAC1C,CAAC;IAED;;;;OAIG;IACH,IAAI,aAAa;QACf,OAAO,IAAI,CAAC,iBAAiB,CAAC;IAChC,CAAC;IAED;;;;OAIG;IACH,IAAI,iBAAiB;QACnB,OAAO,GAAG,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;IACtF,CAAC;IAED,IAAI,OAAO;QACT,OAAO,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,cAAc,IAAI,IAAI,CAAC,SAAS,CAAC;IAChE,CAAC;;AAhEe,uBAAW,GAAG,WAAW,AAAd,CAAe"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import * as bson from 'bson';
|
|
2
|
+
import { SqliteJsonValue } from '@powersync/service-sync-rules';
|
|
3
|
+
import { ReplicaId } from './BucketStorage.js';
|
|
4
|
+
export declare const BSON_DESERIALIZE_OPTIONS: bson.DeserializeOptions;
|
|
5
|
+
/**
|
|
6
|
+
* Lookup serialization must be number-agnostic. I.e. normalize numbers, instead of preserving numbers.
|
|
7
|
+
* @param lookup
|
|
8
|
+
*/
|
|
9
|
+
export declare const serializeLookupBuffer: (lookup: SqliteJsonValue[]) => Buffer;
|
|
10
|
+
export declare const serializeLookup: (lookup: SqliteJsonValue[]) => bson.Binary;
|
|
11
|
+
/**
|
|
12
|
+
* True if this is a bson.UUID.
|
|
13
|
+
*
|
|
14
|
+
* Works even with multiple copies of the bson package.
|
|
15
|
+
*/
|
|
16
|
+
export declare const isUUID: (value: any) => value is bson.UUID;
|
|
17
|
+
export declare const serializeReplicaId: (id: ReplicaId) => Buffer;
|
|
18
|
+
export declare const deserializeReplicaId: (id: Buffer) => ReplicaId;
|
|
19
|
+
export declare const deserializeBson: (buffer: Buffer) => bson.Document;
|
|
20
|
+
export declare const serializeBson: (document: any) => Buffer;
|
|
21
|
+
/**
|
|
22
|
+
* Returns true if two ReplicaId values are the same (serializes to the same BSON value).
|
|
23
|
+
*/
|
|
24
|
+
export declare const replicaIdEquals: (a: ReplicaId, b: ReplicaId) => boolean;
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
import * as bson from 'bson';
|
|
2
|
+
export const BSON_DESERIALIZE_OPTIONS = {
|
|
3
|
+
// use bigint instead of Long
|
|
4
|
+
useBigInt64: true
|
|
5
|
+
};
|
|
6
|
+
/**
|
|
7
|
+
* Lookup serialization must be number-agnostic. I.e. normalize numbers, instead of preserving numbers.
|
|
8
|
+
* @param lookup
|
|
9
|
+
*/
|
|
10
|
+
export const serializeLookupBuffer = (lookup) => {
|
|
11
|
+
const normalized = lookup.map((value) => {
|
|
12
|
+
if (typeof value == 'number' && Number.isInteger(value)) {
|
|
13
|
+
return BigInt(value);
|
|
14
|
+
}
|
|
15
|
+
else {
|
|
16
|
+
return value;
|
|
17
|
+
}
|
|
18
|
+
});
|
|
19
|
+
return bson.serialize({ l: normalized });
|
|
20
|
+
};
|
|
21
|
+
export const serializeLookup = (lookup) => {
|
|
22
|
+
return new bson.Binary(serializeLookupBuffer(lookup));
|
|
23
|
+
};
|
|
24
|
+
/**
|
|
25
|
+
* True if this is a bson.UUID.
|
|
26
|
+
*
|
|
27
|
+
* Works even with multiple copies of the bson package.
|
|
28
|
+
*/
|
|
29
|
+
export const isUUID = (value) => {
|
|
30
|
+
if (value == null || typeof value != 'object') {
|
|
31
|
+
return false;
|
|
32
|
+
}
|
|
33
|
+
const uuid = value;
|
|
34
|
+
return uuid._bsontype == 'Binary' && uuid.sub_type == bson.Binary.SUBTYPE_UUID;
|
|
35
|
+
};
|
|
36
|
+
export const serializeReplicaId = (id) => {
|
|
37
|
+
return bson.serialize({ id });
|
|
38
|
+
};
|
|
39
|
+
export const deserializeReplicaId = (id) => {
|
|
40
|
+
const deserialized = deserializeBson(id);
|
|
41
|
+
return deserialized.id;
|
|
42
|
+
};
|
|
43
|
+
export const deserializeBson = (buffer) => {
|
|
44
|
+
return bson.deserialize(buffer, BSON_DESERIALIZE_OPTIONS);
|
|
45
|
+
};
|
|
46
|
+
export const serializeBson = (document) => {
|
|
47
|
+
return bson.serialize(document);
|
|
48
|
+
};
|
|
49
|
+
/**
|
|
50
|
+
* Returns true if two ReplicaId values are the same (serializes to the same BSON value).
|
|
51
|
+
*/
|
|
52
|
+
export const replicaIdEquals = (a, b) => {
|
|
53
|
+
if (a === b) {
|
|
54
|
+
return true;
|
|
55
|
+
}
|
|
56
|
+
else if (typeof a == 'string' && typeof b == 'string') {
|
|
57
|
+
return a == b;
|
|
58
|
+
}
|
|
59
|
+
else if (isUUID(a) && isUUID(b)) {
|
|
60
|
+
return a.equals(b);
|
|
61
|
+
}
|
|
62
|
+
else if (a == null && b == null) {
|
|
63
|
+
return true;
|
|
64
|
+
}
|
|
65
|
+
else if ((b == null && a != null) || (a == null && b != null)) {
|
|
66
|
+
return false;
|
|
67
|
+
}
|
|
68
|
+
else {
|
|
69
|
+
// There are many possible primitive values, this covers them all
|
|
70
|
+
return serializeReplicaId(a).equals(serializeReplicaId(b));
|
|
71
|
+
}
|
|
72
|
+
};
|
|
73
|
+
//# sourceMappingURL=bson.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bson.js","sourceRoot":"","sources":["../../src/storage/bson.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,20 +1,9 @@
|
|
|
1
|
+
export * from './bson.js';
|
|
1
2
|
export * from './BucketStorage.js';
|
|
2
|
-
export * from './
|
|
3
|
+
export * from './ChecksumCache.js';
|
|
3
4
|
export * from './ReplicationEventPayload.js';
|
|
4
5
|
export * from './SourceEntity.js';
|
|
5
6
|
export * from './SourceTable.js';
|
|
6
7
|
export * from './StorageEngine.js';
|
|
7
|
-
export * from './
|
|
8
|
-
export * from './mongo/db.js';
|
|
9
|
-
export * from './mongo/models.js';
|
|
10
|
-
export * from './mongo/MongoBucketBatch.js';
|
|
11
|
-
export * from './mongo/MongoIdSequence.js';
|
|
12
|
-
export * from './mongo/MongoPersistedSyncRules.js';
|
|
13
|
-
export * from './mongo/MongoPersistedSyncRulesContent.js';
|
|
14
|
-
export * from './mongo/MongoStorageProvider.js';
|
|
15
|
-
export * from './mongo/MongoSyncBucketStorage.js';
|
|
16
|
-
export * from './mongo/MongoSyncRulesLock.js';
|
|
17
|
-
export * from './mongo/OperationBatch.js';
|
|
18
|
-
export * from './mongo/PersistedBatch.js';
|
|
19
|
-
export * from './mongo/util.js';
|
|
8
|
+
export * from './StorageProvider.js';
|
|
20
9
|
export * from './WriteCheckpointAPI.js';
|
|
@@ -1,21 +1,10 @@
|
|
|
1
|
+
export * from './bson.js';
|
|
1
2
|
export * from './BucketStorage.js';
|
|
2
|
-
export * from './
|
|
3
|
+
export * from './ChecksumCache.js';
|
|
3
4
|
export * from './ReplicationEventPayload.js';
|
|
4
5
|
export * from './SourceEntity.js';
|
|
5
6
|
export * from './SourceTable.js';
|
|
6
7
|
export * from './StorageEngine.js';
|
|
7
|
-
export * from './
|
|
8
|
-
export * from './mongo/db.js';
|
|
9
|
-
export * from './mongo/models.js';
|
|
10
|
-
export * from './mongo/MongoBucketBatch.js';
|
|
11
|
-
export * from './mongo/MongoIdSequence.js';
|
|
12
|
-
export * from './mongo/MongoPersistedSyncRules.js';
|
|
13
|
-
export * from './mongo/MongoPersistedSyncRulesContent.js';
|
|
14
|
-
export * from './mongo/MongoStorageProvider.js';
|
|
15
|
-
export * from './mongo/MongoSyncBucketStorage.js';
|
|
16
|
-
export * from './mongo/MongoSyncRulesLock.js';
|
|
17
|
-
export * from './mongo/OperationBatch.js';
|
|
18
|
-
export * from './mongo/PersistedBatch.js';
|
|
19
|
-
export * from './mongo/util.js';
|
|
8
|
+
export * from './StorageProvider.js';
|
|
20
9
|
export * from './WriteCheckpointAPI.js';
|
|
21
10
|
//# sourceMappingURL=storage-index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"storage-index.js","sourceRoot":"","sources":["../../src/storage/storage-index.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAC;AACnC,cAAc,
|
|
1
|
+
{"version":3,"file":"storage-index.js","sourceRoot":"","sources":["../../src/storage/storage-index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAC;AAC1B,cAAc,oBAAoB,CAAC;AACnC,cAAc,oBAAoB,CAAC;AACnC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,mBAAmB,CAAC;AAClC,cAAc,kBAAkB,CAAC;AACjC,cAAc,oBAAoB,CAAC;AACnC,cAAc,sBAAsB,CAAC;AACrC,cAAc,yBAAyB,CAAC"}
|
package/dist/sync/sync.js
CHANGED
|
@@ -237,7 +237,9 @@ async function* bucketDataBatch(request) {
|
|
|
237
237
|
send_data = { data: r };
|
|
238
238
|
}
|
|
239
239
|
else if (raw_data) {
|
|
240
|
-
|
|
240
|
+
/**
|
|
241
|
+
* Data is a raw string - we can use the more efficient JSON.stringify.
|
|
242
|
+
*/
|
|
241
243
|
const response = {
|
|
242
244
|
data: r
|
|
243
245
|
};
|
package/dist/sync/sync.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sync.js","sourceRoot":"","sources":["../../src/sync/sync.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"sync.js","sourceRoot":"","sources":["../../src/sync/sync.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { LifeCycledSystem, ServiceIdentifier } from '@powersync/lib-services-framework';
|
|
2
2
|
import * as metrics from '../metrics/Metrics.js';
|
|
3
|
+
import { PowerSyncMigrationManager } from '../migrations/PowerSyncMigrationManager.js';
|
|
3
4
|
import * as replication from '../replication/replication-index.js';
|
|
4
5
|
import * as routes from '../routes/routes-index.js';
|
|
5
6
|
import * as storage from '../storage/storage-index.js';
|
|
@@ -11,6 +12,7 @@ export interface ServiceContext {
|
|
|
11
12
|
replicationEngine: replication.ReplicationEngine | null;
|
|
12
13
|
routerEngine: routes.RouterEngine | null;
|
|
13
14
|
storageEngine: storage.StorageEngine;
|
|
15
|
+
migrations: PowerSyncMigrationManager;
|
|
14
16
|
}
|
|
15
17
|
/**
|
|
16
18
|
* Context which allows for registering and getting implementations
|
|
@@ -25,6 +27,7 @@ export declare class ServiceContextContainer implements ServiceContext {
|
|
|
25
27
|
get replicationEngine(): replication.ReplicationEngine | null;
|
|
26
28
|
get routerEngine(): routes.RouterEngine | null;
|
|
27
29
|
get metrics(): metrics.Metrics | null;
|
|
30
|
+
get migrations(): PowerSyncMigrationManager;
|
|
28
31
|
/**
|
|
29
32
|
* Allows for registering core and generic implementations of services/helpers.
|
|
30
33
|
* This uses the framework container under the hood.
|