@powersync/service-module-postgres-storage 0.8.4 → 0.10.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.
@@ -1 +1 @@
1
- {"version":3,"file":"PostgresBucketBatch.js","sourceRoot":"","sources":["../../../src/storage/batch/PostgresBucketBatch.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"PostgresBucketBatch.js","sourceRoot":"","sources":["../../../src/storage/batch/PostgresBucketBatch.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -2,8 +2,9 @@
2
2
  "name": "@powersync/service-module-postgres-storage",
3
3
  "repository": "https://github.com/powersync-ja/powersync-service",
4
4
  "types": "dist/@types/index.d.ts",
5
- "version": "0.8.4",
5
+ "version": "0.10.0",
6
6
  "main": "dist/index.js",
7
+ "license": "FSL-1.1-ALv2",
7
8
  "type": "module",
8
9
  "publishConfig": {
9
10
  "access": "public"
@@ -23,22 +24,22 @@
23
24
  }
24
25
  },
25
26
  "dependencies": {
26
- "@powersync/service-jsonbig": "^0.17.10",
27
27
  "ix": "^5.0.0",
28
28
  "lru-cache": "^10.2.2",
29
29
  "p-defer": "^4.0.1",
30
30
  "ts-codec": "^1.3.0",
31
31
  "uuid": "^11.1.0",
32
- "@powersync/lib-service-postgres": "0.4.5",
33
- "@powersync/lib-services-framework": "0.7.1",
34
- "@powersync/service-core": "1.13.4",
35
- "@powersync/service-core-tests": "0.10.4",
36
- "@powersync/service-jpgwire": "0.20.0",
37
- "@powersync/service-sync-rules": "0.27.0",
38
- "@powersync/service-types": "0.12.1"
32
+ "@powersync/lib-service-postgres": "0.4.7",
33
+ "@powersync/lib-services-framework": "0.7.3",
34
+ "@powersync/service-core": "1.15.0",
35
+ "@powersync/service-jpgwire": "0.20.2",
36
+ "@powersync/service-jsonbig": "0.17.11",
37
+ "@powersync/service-sync-rules": "0.29.0",
38
+ "@powersync/service-types": "0.13.0"
39
39
  },
40
40
  "devDependencies": {
41
- "typescript": "^5.7.3"
41
+ "typescript": "^5.7.3",
42
+ "@powersync/service-core-tests": "0.12.0"
42
43
  },
43
44
  "scripts": {
44
45
  "build": "tsc -b",
@@ -1,12 +1,17 @@
1
1
  import * as lib_postgres from '@powersync/lib-service-postgres';
2
2
  import {
3
3
  BroadcastIterable,
4
+ BucketChecksum,
4
5
  CHECKPOINT_INVALIDATE_ALL,
5
6
  CheckpointChanges,
7
+ CompactOptions,
6
8
  GetCheckpointChangesOptions,
7
9
  InternalOpId,
8
10
  internalToExternalOpId,
9
11
  LastValueSink,
12
+ maxLsn,
13
+ PartialChecksum,
14
+ ReplicationCheckpoint,
10
15
  storage,
11
16
  utils,
12
17
  WatchWriteCheckpointOptions
@@ -107,6 +112,10 @@ export class PostgresSyncRulesStorage
107
112
  return new PostgresCompactor(this.db, this.group_id, options).compact();
108
113
  }
109
114
 
115
+ async populatePersistentChecksumCache(options: Pick<CompactOptions, 'signal' | 'maxOpId'>): Promise<void> {
116
+ // no-op - checksum cache is not implemented for Postgres yet
117
+ }
118
+
110
119
  lastWriteCheckpoint(filters: storage.SyncStorageLastWriteCheckpointFilters): Promise<bigint | null> {
111
120
  return this.writeCheckpointAPI.lastWriteCheckpoint({
112
121
  ...filters,
@@ -135,18 +144,19 @@ export class PostgresSyncRulesStorage
135
144
  .decoded(pick(models.SyncRules, ['last_checkpoint', 'last_checkpoint_lsn']))
136
145
  .first();
137
146
 
138
- return {
139
- checkpoint: checkpointRow?.last_checkpoint ?? 0n,
140
- lsn: checkpointRow?.last_checkpoint_lsn ?? null
141
- };
147
+ return new PostgresReplicationCheckpoint(
148
+ this,
149
+ checkpointRow?.last_checkpoint ?? 0n,
150
+ checkpointRow?.last_checkpoint_lsn ?? null
151
+ );
142
152
  }
143
153
 
144
154
  async resolveTable(options: storage.ResolveTableOptions): Promise<storage.ResolveTableResult> {
145
155
  const { group_id, connection_id, connection_tag, entity_descriptor } = options;
146
156
 
147
- const { schema, name: table, objectId, replicationColumns } = entity_descriptor;
157
+ const { schema, name: table, objectId, replicaIdColumns } = entity_descriptor;
148
158
 
149
- const columns = replicationColumns.map((column) => ({
159
+ const normalizedReplicaIdColumns = replicaIdColumns.map((column) => ({
150
160
  name: column.name,
151
161
  type: column.type,
152
162
  // The PGWire returns this as a BigInt. We want to store this as JSONB
@@ -166,7 +176,7 @@ export class PostgresSyncRulesStorage
166
176
  AND relation_id = ${{ type: 'jsonb', value: { object_id: objectId } satisfies StoredRelationId }}
167
177
  AND schema_name = ${{ type: 'varchar', value: schema }}
168
178
  AND table_name = ${{ type: 'varchar', value: table }}
169
- AND replica_id_columns = ${{ type: 'jsonb', value: columns }}
179
+ AND replica_id_columns = ${{ type: 'jsonb', value: normalizedReplicaIdColumns }}
170
180
  `
171
181
  .decoded(models.SourceTable)
172
182
  .first();
@@ -181,7 +191,7 @@ export class PostgresSyncRulesStorage
181
191
  AND connection_id = ${{ type: 'int4', value: connection_id }}
182
192
  AND schema_name = ${{ type: 'varchar', value: schema }}
183
193
  AND table_name = ${{ type: 'varchar', value: table }}
184
- AND replica_id_columns = ${{ type: 'jsonb', value: columns }}
194
+ AND replica_id_columns = ${{ type: 'jsonb', value: normalizedReplicaIdColumns }}
185
195
  `
186
196
  .decoded(models.SourceTable)
187
197
  .first();
@@ -208,7 +218,7 @@ export class PostgresSyncRulesStorage
208
218
  ${{ type: 'jsonb', value: { object_id: objectId } satisfies StoredRelationId }},
209
219
  ${{ type: 'varchar', value: schema }},
210
220
  ${{ type: 'varchar', value: table }},
211
- ${{ type: 'jsonb', value: columns }}
221
+ ${{ type: 'jsonb', value: normalizedReplicaIdColumns }}
212
222
  )
213
223
  RETURNING
214
224
  *
@@ -218,15 +228,15 @@ export class PostgresSyncRulesStorage
218
228
  sourceTableRow = row;
219
229
  }
220
230
 
221
- const sourceTable = new storage.SourceTable(
222
- sourceTableRow!.id,
223
- connection_tag,
224
- objectId,
225
- schema,
226
- table,
227
- replicationColumns,
228
- sourceTableRow!.snapshot_done ?? true
229
- );
231
+ const sourceTable = new storage.SourceTable({
232
+ id: sourceTableRow!.id,
233
+ connectionTag: connection_tag,
234
+ objectId: objectId,
235
+ schema: schema,
236
+ name: table,
237
+ replicaIdColumns: replicaIdColumns,
238
+ snapshotComplete: sourceTableRow!.snapshot_done ?? true
239
+ });
230
240
  if (!sourceTable.snapshotComplete) {
231
241
  sourceTable.snapshotStatus = {
232
242
  totalEstimatedCount: Number(sourceTableRow!.snapshot_total_estimated_count ?? -1n),
@@ -284,19 +294,20 @@ export class PostgresSyncRulesStorage
284
294
  table: sourceTable,
285
295
  dropTables: truncatedTables.map(
286
296
  (doc) =>
287
- new storage.SourceTable(
288
- doc.id,
289
- connection_tag,
290
- doc.relation_id?.object_id ?? 0,
291
- doc.schema_name,
292
- doc.table_name,
293
- doc.replica_id_columns?.map((c) => ({
294
- name: c.name,
295
- typeOid: c.typeId,
296
- type: c.type
297
- })) ?? [],
298
- doc.snapshot_done ?? true
299
- )
297
+ new storage.SourceTable({
298
+ id: doc.id,
299
+ connectionTag: connection_tag,
300
+ objectId: doc.relation_id?.object_id ?? 0,
301
+ schema: doc.schema_name,
302
+ name: doc.table_name,
303
+ replicaIdColumns:
304
+ doc.replica_id_columns?.map((c) => ({
305
+ name: c.name,
306
+ typeOid: c.typeId,
307
+ type: c.type
308
+ })) ?? [],
309
+ snapshotComplete: doc.snapshot_done ?? true
310
+ })
300
311
  )
301
312
  };
302
313
  });
@@ -310,13 +321,14 @@ export class PostgresSyncRulesStorage
310
321
  SELECT
311
322
  last_checkpoint_lsn,
312
323
  no_checkpoint_before,
313
- keepalive_op
324
+ keepalive_op,
325
+ snapshot_lsn
314
326
  FROM
315
327
  sync_rules
316
328
  WHERE
317
329
  id = ${{ type: 'int4', value: this.group_id }}
318
330
  `
319
- .decoded(pick(models.SyncRules, ['last_checkpoint_lsn', 'no_checkpoint_before', 'keepalive_op']))
331
+ .decoded(pick(models.SyncRules, ['last_checkpoint_lsn', 'no_checkpoint_before', 'keepalive_op', 'snapshot_lsn']))
320
332
  .first();
321
333
 
322
334
  const checkpoint_lsn = syncRules?.last_checkpoint_lsn ?? null;
@@ -330,6 +342,7 @@ export class PostgresSyncRulesStorage
330
342
  last_checkpoint_lsn: checkpoint_lsn,
331
343
  keep_alive_op: syncRules?.keepalive_op,
332
344
  no_checkpoint_before_lsn: syncRules?.no_checkpoint_before ?? options.zeroLSN,
345
+ resumeFromLsn: maxLsn(syncRules?.snapshot_lsn, checkpoint_lsn),
333
346
  store_current_data: options.storeCurrentData,
334
347
  skip_existing_rows: options.skipExistingRows ?? false,
335
348
  batch_limits: this.options.batchLimits,
@@ -347,7 +360,7 @@ export class PostgresSyncRulesStorage
347
360
  }
348
361
 
349
362
  async getParameterSets(
350
- checkpoint: utils.InternalOpId,
363
+ checkpoint: ReplicationCheckpoint,
351
364
  lookups: sync_rules.ParameterLookup[]
352
365
  ): Promise<sync_rules.SqliteJsonRow[]> {
353
366
  const rows = await this.db.sql`
@@ -370,7 +383,7 @@ export class PostgresSyncRulesStorage
370
383
  value: lookups.map((l) => storage.serializeLookupBuffer(l).toString('hex'))
371
384
  }}) AS FILTER
372
385
  )
373
- AND id <= ${{ type: 'int8', value: checkpoint }}
386
+ AND id <= ${{ type: 'int8', value: checkpoint.checkpoint }}
374
387
  ORDER BY
375
388
  lookup,
376
389
  source_table,
@@ -565,6 +578,10 @@ export class PostgresSyncRulesStorage
565
578
  return this.checksumCache.getChecksumMap(checkpoint, buckets);
566
579
  }
567
580
 
581
+ clearChecksumCache() {
582
+ this.checksumCache.clear();
583
+ }
584
+
568
585
  async terminate(options?: storage.TerminateOptions) {
569
586
  if (!options || options?.clearStorage) {
570
587
  await this.clear(options);
@@ -644,43 +661,6 @@ export class PostgresSyncRulesStorage
644
661
  `.execute();
645
662
  }
646
663
 
647
- async autoActivate(): Promise<void> {
648
- await this.db.transaction(async (db) => {
649
- const syncRulesRow = await db.sql`
650
- SELECT
651
- state
652
- FROM
653
- sync_rules
654
- WHERE
655
- id = ${{ type: 'int4', value: this.group_id }}
656
- `
657
- .decoded(pick(models.SyncRules, ['state']))
658
- .first();
659
-
660
- if (syncRulesRow && syncRulesRow.state == storage.SyncRuleState.PROCESSING) {
661
- await db.sql`
662
- UPDATE sync_rules
663
- SET
664
- state = ${{ type: 'varchar', value: storage.SyncRuleState.ACTIVE }}
665
- WHERE
666
- id = ${{ type: 'int4', value: this.group_id }}
667
- `.execute();
668
- }
669
-
670
- await db.sql`
671
- UPDATE sync_rules
672
- SET
673
- state = ${{ type: 'varchar', value: storage.SyncRuleState.STOP }}
674
- WHERE
675
- (
676
- state = ${{ value: storage.SyncRuleState.ACTIVE, type: 'varchar' }}
677
- OR state = ${{ value: storage.SyncRuleState.ERRORED, type: 'varchar' }}
678
- )
679
- AND id != ${{ type: 'int4', value: this.group_id }}
680
- `.execute();
681
- });
682
- }
683
-
684
664
  private async getChecksumsInternal(batch: storage.FetchPartialBucketChecksum[]): Promise<storage.PartialChecksumMap> {
685
665
  if (batch.length == 0) {
686
666
  return new Map();
@@ -723,16 +703,24 @@ export class PostgresSyncRulesStorage
723
703
  b.bucket_name;
724
704
  `.rows<{ bucket: string; checksum_total: bigint; total: bigint; has_clear_op: number }>();
725
705
 
726
- return new Map<string, storage.PartialChecksum>(
706
+ return new Map<string, storage.PartialOrFullChecksum>(
727
707
  results.map((doc) => {
708
+ const checksum = Number(BigInt(doc.checksum_total) & 0xffffffffn) & 0xffffffff;
709
+
728
710
  return [
729
711
  doc.bucket,
730
- {
731
- bucket: doc.bucket,
732
- partialCount: Number(doc.total),
733
- partialChecksum: Number(BigInt(doc.checksum_total) & 0xffffffffn) & 0xffffffff,
734
- isFullChecksum: doc.has_clear_op == 1
735
- } satisfies storage.PartialChecksum
712
+ doc.has_clear_op == 1
713
+ ? ({
714
+ // full checksum
715
+ bucket: doc.bucket,
716
+ count: Number(doc.total),
717
+ checksum
718
+ } satisfies BucketChecksum)
719
+ : ({
720
+ bucket: doc.bucket,
721
+ partialCount: Number(doc.total),
722
+ partialChecksum: checksum
723
+ } satisfies PartialChecksum)
736
724
  ];
737
725
  })
738
726
  );
@@ -867,9 +855,18 @@ export class PostgresSyncRulesStorage
867
855
  }
868
856
 
869
857
  private makeActiveCheckpoint(row: models.ActiveCheckpointDecoded | null) {
870
- return {
871
- checkpoint: row?.last_checkpoint ?? 0n,
872
- lsn: row?.last_checkpoint_lsn ?? null
873
- } satisfies storage.ReplicationCheckpoint;
858
+ return new PostgresReplicationCheckpoint(this, row?.last_checkpoint ?? 0n, row?.last_checkpoint_lsn ?? null);
859
+ }
860
+ }
861
+
862
+ class PostgresReplicationCheckpoint implements storage.ReplicationCheckpoint {
863
+ constructor(
864
+ private storage: PostgresSyncRulesStorage,
865
+ public readonly checkpoint: utils.InternalOpId,
866
+ public readonly lsn: string | null
867
+ ) {}
868
+
869
+ getParameterSets(lookups: sync_rules.ParameterLookup[]): Promise<sync_rules.SqliteJsonRow[]> {
870
+ return this.storage.getParameterSets(this, lookups);
874
871
  }
875
872
  }
@@ -31,6 +31,7 @@ export interface PostgresBucketBatchOptions {
31
31
  no_checkpoint_before_lsn: string;
32
32
  store_current_data: boolean;
33
33
  keep_alive_op?: InternalOpId | null;
34
+ resumeFromLsn: string | null;
34
35
  /**
35
36
  * Set to true for initial replication.
36
37
  */
@@ -61,6 +62,8 @@ export class PostgresBucketBatch
61
62
 
62
63
  public last_flushed_op: InternalOpId | null = null;
63
64
 
65
+ public resumeFromLsn: string | null;
66
+
64
67
  protected db: lib_postgres.DatabaseClient;
65
68
  protected group_id: number;
66
69
  protected last_checkpoint_lsn: string | null;
@@ -73,6 +76,7 @@ export class PostgresBucketBatch
73
76
  protected batch: OperationBatch | null;
74
77
  private lastWaitingLogThrottled = 0;
75
78
  private markRecordUnavailable: BucketStorageMarkRecordUnavailable | undefined;
79
+ private needsActivation = true;
76
80
 
77
81
  constructor(protected options: PostgresBucketBatchOptions) {
78
82
  super();
@@ -81,6 +85,7 @@ export class PostgresBucketBatch
81
85
  this.group_id = options.group_id;
82
86
  this.last_checkpoint_lsn = options.last_checkpoint_lsn;
83
87
  this.no_checkpoint_before_lsn = options.no_checkpoint_before_lsn;
88
+ this.resumeFromLsn = options.resumeFromLsn;
84
89
  this.write_checkpoint_batch = [];
85
90
  this.sync_rules = options.sync_rules;
86
91
  this.markRecordUnavailable = options.markRecordUnavailable;
@@ -321,6 +326,7 @@ export class PostgresBucketBatch
321
326
  // Don't create a checkpoint if there were no changes
322
327
  if (!createEmptyCheckpoints && this.persisted_op == null) {
323
328
  // Nothing to commit - return true
329
+ await this.autoActivate(lsn);
324
330
  return true;
325
331
  }
326
332
 
@@ -363,6 +369,7 @@ export class PostgresBucketBatch
363
369
  .decoded(StatefulCheckpoint)
364
370
  .first();
365
371
 
372
+ await this.autoActivate(lsn);
366
373
  await notifySyncRulesUpdate(this.db, doc!);
367
374
 
368
375
  this.persisted_op = null;
@@ -371,7 +378,7 @@ export class PostgresBucketBatch
371
378
  }
372
379
 
373
380
  async keepalive(lsn: string): Promise<boolean> {
374
- if (this.last_checkpoint_lsn != null && lsn <= this.last_checkpoint_lsn) {
381
+ if (this.last_checkpoint_lsn != null && lsn < this.last_checkpoint_lsn) {
375
382
  // No-op
376
383
  return false;
377
384
  }
@@ -406,13 +413,14 @@ export class PostgresBucketBatch
406
413
  .decoded(StatefulCheckpoint)
407
414
  .first();
408
415
 
416
+ await this.autoActivate(lsn);
409
417
  await notifySyncRulesUpdate(this.db, updated!);
410
418
 
411
419
  this.last_checkpoint_lsn = lsn;
412
420
  return true;
413
421
  }
414
422
 
415
- async setSnapshotLsn(lsn: string): Promise<void> {
423
+ async setResumeLsn(lsn: string): Promise<void> {
416
424
  await this.db.sql`
417
425
  UPDATE sync_rules
418
426
  SET
@@ -459,15 +467,15 @@ export class PostgresBucketBatch
459
467
  }
460
468
  });
461
469
  return tables.map((table) => {
462
- const copy = new storage.SourceTable(
463
- table.id,
464
- table.connectionTag,
465
- table.objectId,
466
- table.schema,
467
- table.table,
468
- table.replicaIdColumns,
469
- table.snapshotComplete
470
- );
470
+ const copy = new storage.SourceTable({
471
+ id: table.id,
472
+ connectionTag: table.connectionTag,
473
+ objectId: table.objectId,
474
+ schema: table.schema,
475
+ name: table.name,
476
+ replicaIdColumns: table.replicaIdColumns,
477
+ snapshotComplete: table.snapshotComplete
478
+ });
471
479
  copy.syncData = table.syncData;
472
480
  copy.syncParameters = table.syncParameters;
473
481
  return copy;
@@ -679,7 +687,8 @@ export class PostgresBucketBatch
679
687
  // We store bytea colums for source keys
680
688
  const beforeId = operation.beforeId;
681
689
  const afterId = operation.afterId;
682
- let after = record.after;
690
+ let sourceAfter = record.after;
691
+ let after = sourceAfter && this.sync_rules.applyRowContext(sourceAfter);
683
692
  const sourceTable = record.sourceTable;
684
693
 
685
694
  let existingBuckets: CurrentBucket[] = [];
@@ -817,7 +826,8 @@ export class PostgresBucketBatch
817
826
  if (sourceTable.syncData) {
818
827
  const { results: evaluated, errors: syncErrors } = this.sync_rules.evaluateRowWithErrors({
819
828
  record: after,
820
- sourceTable
829
+ sourceTable,
830
+ bucketIdTransformer: sync_rules.SqlSyncRules.versionedBucketIdTransformer(`${this.group_id}`)
821
831
  });
822
832
 
823
833
  for (const error of syncErrors) {
@@ -916,6 +926,59 @@ export class PostgresBucketBatch
916
926
  return result;
917
927
  }
918
928
 
929
+ /**
930
+ * Switch from processing -> active if relevant.
931
+ *
932
+ * Called on new commits.
933
+ */
934
+ private async autoActivate(lsn: string): Promise<void> {
935
+ if (!this.needsActivation) {
936
+ // Already activated
937
+ return;
938
+ }
939
+
940
+ let didActivate = false;
941
+ await this.db.transaction(async (db) => {
942
+ const syncRulesRow = await db.sql`
943
+ SELECT
944
+ state
945
+ FROM
946
+ sync_rules
947
+ WHERE
948
+ id = ${{ type: 'int4', value: this.group_id }}
949
+ `
950
+ .decoded(pick(models.SyncRules, ['state']))
951
+ .first();
952
+
953
+ if (syncRulesRow && syncRulesRow.state == storage.SyncRuleState.PROCESSING) {
954
+ await db.sql`
955
+ UPDATE sync_rules
956
+ SET
957
+ state = ${{ type: 'varchar', value: storage.SyncRuleState.ACTIVE }}
958
+ WHERE
959
+ id = ${{ type: 'int4', value: this.group_id }}
960
+ `.execute();
961
+ didActivate = true;
962
+ }
963
+
964
+ await db.sql`
965
+ UPDATE sync_rules
966
+ SET
967
+ state = ${{ type: 'varchar', value: storage.SyncRuleState.STOP }}
968
+ WHERE
969
+ (
970
+ state = ${{ value: storage.SyncRuleState.ACTIVE, type: 'varchar' }}
971
+ OR state = ${{ value: storage.SyncRuleState.ERRORED, type: 'varchar' }}
972
+ )
973
+ AND id != ${{ type: 'int4', value: this.group_id }}
974
+ `.execute();
975
+ });
976
+ if (didActivate) {
977
+ this.logger.info(`Activated new sync rules at ${lsn}`);
978
+ }
979
+ this.needsActivation = false;
980
+ }
981
+
919
982
  /**
920
983
  * Gets relevant {@link SqlEventDescriptor}s for the given {@link SourceTable}
921
984
  * TODO maybe share this with an abstract class