@syncular/server-dialect-postgres 0.0.1-60 → 0.0.1

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/dist/index.d.ts CHANGED
@@ -21,33 +21,24 @@ export declare class PostgresServerSyncDialect implements ServerSyncDialect {
21
21
  ensureSyncSchema<DB extends SyncCoreDb>(db: Kysely<DB>): Promise<void>;
22
22
  executeInTransaction<DB extends SyncCoreDb, T>(db: Kysely<DB>, fn: (executor: DbExecutor<DB>) => Promise<T>): Promise<T>;
23
23
  setRepeatableRead<DB extends SyncCoreDb>(trx: DbExecutor<DB>): Promise<void>;
24
- readMaxCommitSeq<DB extends SyncCoreDb>(db: Kysely<DB> | Transaction<DB>, options?: {
25
- partitionId?: string;
26
- }): Promise<number>;
27
- readMinCommitSeq<DB extends SyncCoreDb>(db: Kysely<DB> | Transaction<DB>, options?: {
28
- partitionId?: string;
29
- }): Promise<number>;
24
+ readMaxCommitSeq<DB extends SyncCoreDb>(db: Kysely<DB> | Transaction<DB>): Promise<number>;
25
+ readMinCommitSeq<DB extends SyncCoreDb>(db: Kysely<DB> | Transaction<DB>): Promise<number>;
30
26
  readCommitSeqsForPull<DB extends SyncCoreDb>(db: Kysely<DB> | Transaction<DB>, args: {
31
27
  cursor: number;
32
28
  limitCommits: number;
33
29
  tables: string[];
34
- partitionId?: string;
35
30
  }): Promise<number[]>;
36
- readCommits<DB extends SyncCoreDb>(db: Kysely<DB> | Transaction<DB>, commitSeqs: number[], options?: {
37
- partitionId?: string;
38
- }): Promise<SyncCommitRow[]>;
31
+ readCommits<DB extends SyncCoreDb>(db: Kysely<DB> | Transaction<DB>, commitSeqs: number[]): Promise<SyncCommitRow[]>;
39
32
  readChangesForCommits<DB extends SyncCoreDb>(db: Kysely<DB> | Transaction<DB>, args: {
40
33
  commitSeqs: number[];
41
34
  table: string;
42
35
  scopes: ScopeValues;
43
- partitionId?: string;
44
36
  }): Promise<SyncChangeRow[]>;
45
37
  readIncrementalPullRows<DB extends SyncCoreDb>(db: Kysely<DB> | Transaction<DB>, args: {
46
38
  table: string;
47
39
  scopes: ScopeValues;
48
40
  cursor: number;
49
41
  limitCommits: number;
50
- partitionId?: string;
51
42
  }): Promise<Array<{
52
43
  commit_seq: number;
53
44
  actor_id: string;
@@ -66,7 +57,6 @@ export declare class PostgresServerSyncDialect implements ServerSyncDialect {
66
57
  cursor: number;
67
58
  limitCommits: number;
68
59
  batchSize?: number;
69
- partitionId?: string;
70
60
  }): AsyncGenerator<{
71
61
  commit_seq: number;
72
62
  actor_id: string;
@@ -83,7 +73,6 @@ export declare class PostgresServerSyncDialect implements ServerSyncDialect {
83
73
  fullHistoryHours: number;
84
74
  }): Promise<number>;
85
75
  recordClientCursor<DB extends SyncCoreDb>(db: Kysely<DB> | Transaction<DB>, args: {
86
- partitionId?: string;
87
76
  clientId: string;
88
77
  actorId: string;
89
78
  cursor: number;
@@ -93,9 +82,7 @@ export declare class PostgresServerSyncDialect implements ServerSyncDialect {
93
82
  dbToScopes(value: unknown): StoredScopes;
94
83
  dbToArray(value: unknown): string[];
95
84
  arrayToDb(values: string[]): string[];
96
- readAffectedTablesFromChanges<DB extends SyncCoreDb>(db: Kysely<DB> | Transaction<DB>, commitSeq: number, options?: {
97
- partitionId?: string;
98
- }): Promise<string[]>;
85
+ readAffectedTablesFromChanges<DB extends SyncCoreDb>(db: Kysely<DB> | Transaction<DB>, commitSeq: number): Promise<string[]>;
99
86
  ensureConsoleSchema<DB extends SyncCoreDb>(db: Kysely<DB>): Promise<void>;
100
87
  private ensureIndex;
101
88
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AACxE,OAAO,KAAK,EAAE,UAAU,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AACtE,OAAO,KAAK,EACV,aAAa,EACb,aAAa,EACb,UAAU,EACX,MAAM,yBAAyB,CAAC;AACjC,OAAO,KAAK,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAC;AAmClD,qBAAa,yBAA0B,YAAW,iBAAiB;IACjE,QAAQ,CAAC,IAAI,aAAuB;IACpC,QAAQ,CAAC,iBAAiB,QAAQ;IAClC,QAAQ,CAAC,kBAAkB,QAAQ;IAM7B,gBAAgB,CAAC,EAAE,SAAS,UAAU,EAAE,EAAE,EAAE,MAAM,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CA4M3E;IAMK,oBAAoB,CAAC,EAAE,SAAS,UAAU,EAAE,CAAC,EACjD,EAAE,EAAE,MAAM,CAAC,EAAE,CAAC,EACd,EAAE,EAAE,CAAC,QAAQ,EAAE,UAAU,CAAC,EAAE,CAAC,KAAK,OAAO,CAAC,CAAC,CAAC,GAC3C,OAAO,CAAC,CAAC,CAAC,CAEZ;IAEK,iBAAiB,CAAC,EAAE,SAAS,UAAU,EAC3C,GAAG,EAAE,UAAU,CAAC,EAAE,CAAC,GAClB,OAAO,CAAC,IAAI,CAAC,CAEf;IAMK,gBAAgB,CAAC,EAAE,SAAS,UAAU,EAC1C,EAAE,EAAE,MAAM,CAAC,EAAE,CAAC,GAAG,WAAW,CAAC,EAAE,CAAC,EAChC,OAAO,CAAC,EAAE;QAAE,WAAW,CAAC,EAAE,MAAM,CAAA;KAAE,GACjC,OAAO,CAAC,MAAM,CAAC,CASjB;IAEK,gBAAgB,CAAC,EAAE,SAAS,UAAU,EAC1C,EAAE,EAAE,MAAM,CAAC,EAAE,CAAC,GAAG,WAAW,CAAC,EAAE,CAAC,EAChC,OAAO,CAAC,EAAE;QAAE,WAAW,CAAC,EAAE,MAAM,CAAA;KAAE,GACjC,OAAO,CAAC,MAAM,CAAC,CASjB;IAEK,qBAAqB,CAAC,EAAE,SAAS,UAAU,EAC/C,EAAE,EAAE,MAAM,CAAC,EAAE,CAAC,GAAG,WAAW,CAAC,EAAE,CAAC,EAChC,IAAI,EAAE;QACJ,MAAM,EAAE,MAAM,CAAC;QACf,YAAY,EAAE,MAAM,CAAC;QACrB,MAAM,EAAE,MAAM,EAAE,CAAC;QACjB,WAAW,CAAC,EAAE,MAAM,CAAC;KACtB,GACA,OAAO,CAAC,MAAM,EAAE,CAAC,CAuCnB;IAEK,WAAW,CAAC,EAAE,SAAS,UAAU,EACrC,EAAE,EAAE,MAAM,CAAC,EAAE,CAAC,GAAG,WAAW,CAAC,EAAE,CAAC,EAChC,UAAU,EAAE,MAAM,EAAE,EACpB,OAAO,CAAC,EAAE;QAAE,WAAW,CAAC,EAAE,MAAM,CAAA;KAAE,GACjC,OAAO,CAAC,aAAa,EAAE,CAAC,CAuB1B;IAEK,qBAAqB,CAAC,EAAE,SAAS,UAAU,EAC/C,EAAE,EAAE,MAAM,CAAC,EAAE,CAAC,GAAG,WAAW,CAAC,EAAE,CAAC,EAChC,IAAI,EAAE;QACJ,UAAU,EAAE,MAAM,EAAE,CAAC;QACrB,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,EAAE,WAAW,CAAC;QACpB,WAAW,CAAC,EAAE,MAAM,CAAC;KACtB,GACA,OAAO,CAAC,aAAa,EAAE,CAAC,CAgE1B;IAEK,uBAAuB,CAAC,EAAE,SAAS,UAAU,EACjD,EAAE,EAAE,MAAM,CAAC,EAAE,CAAC,GAAG,WAAW,CAAC,EAAE,CAAC,EAChC,IAAI,EAAE;QACJ,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,EAAE,WAAW,CAAC;QACpB,MAAM,EAAE,MAAM,CAAC;QACf,YAAY,EAAE,MAAM,CAAC;QACrB,WAAW,CAAC,EAAE,MAAM,CAAC;KACtB,GACA,OAAO,CACR,KAAK,CAAC;QACJ,UAAU,EAAE,MAAM,CAAC;QACnB,QAAQ,EAAE,MAAM,CAAC;QACjB,UAAU,EAAE,MAAM,CAAC;QACnB,SAAS,EAAE,MAAM,CAAC;QAClB,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,EAAE,MAAM,CAAC;QACf,EAAE,EAAE,MAAM,CAAC;QACX,QAAQ,EAAE,OAAO,GAAG,IAAI,CAAC;QACzB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;QAC3B,MAAM,EAAE,YAAY,CAAC;KACtB,CAAC,CACH,CAmFA;IAEM,yBAAyB,CAAC,EAAE,SAAS,UAAU,EACpD,EAAE,EAAE,MAAM,CAAC,EAAE,CAAC,GAAG,WAAW,CAAC,EAAE,CAAC,EAChC,IAAI,EAAE;QACJ,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,EAAE,WAAW,CAAC;QACpB,MAAM,EAAE,MAAM,CAAC;QACf,YAAY,EAAE,MAAM,CAAC;QACrB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,WAAW,CAAC,EAAE,MAAM,CAAC;KACtB,GACA,cAAc,CAAC;QAChB,UAAU,EAAE,MAAM,CAAC;QACnB,QAAQ,EAAE,MAAM,CAAC;QACjB,UAAU,EAAE,MAAM,CAAC;QACnB,SAAS,EAAE,MAAM,CAAC;QAClB,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,EAAE,MAAM,CAAC;QACf,EAAE,EAAE,MAAM,CAAC;QACX,QAAQ,EAAE,OAAO,GAAG,IAAI,CAAC;QACzB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;QAC3B,MAAM,EAAE,YAAY,CAAC;KACtB,CAAC,CAqBD;IAEK,cAAc,CAAC,EAAE,SAAS,UAAU,EACxC,EAAE,EAAE,MAAM,CAAC,EAAE,CAAC,GAAG,WAAW,CAAC,EAAE,CAAC,EAChC,IAAI,EAAE;QAAE,gBAAgB,EAAE,MAAM,CAAA;KAAE,GACjC,OAAO,CAAC,MAAM,CAAC,CAwCjB;IAMK,kBAAkB,CAAC,EAAE,SAAS,UAAU,EAC5C,EAAE,EAAE,MAAM,CAAC,EAAE,CAAC,GAAG,WAAW,CAAC,EAAE,CAAC,EAChC,IAAI,EAAE;QACJ,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,QAAQ,EAAE,MAAM,CAAC;QACjB,OAAO,EAAE,MAAM,CAAC;QAChB,MAAM,EAAE,MAAM,CAAC;QACf,eAAe,EAAE,WAAW,CAAC;KAC9B,GACA,OAAO,CAAC,IAAI,CAAC,CAcf;IAMD,UAAU,CAAC,MAAM,EAAE,YAAY,GAAG,YAAY,CAE7C;IAED,UAAU,CAAC,KAAK,EAAE,OAAO,GAAG,YAAY,CAEvC;IAED,SAAS,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,EAAE,CAKlC;IAED,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,EAAE,CAEpC;IAEK,6BAA6B,CAAC,EAAE,SAAS,UAAU,EACvD,EAAE,EAAE,MAAM,CAAC,EAAE,CAAC,GAAG,WAAW,CAAC,EAAE,CAAC,EAChC,SAAS,EAAE,MAAM,EACjB,OAAO,CAAC,EAAE;QAAE,WAAW,CAAC,EAAE,MAAM,CAAA;KAAE,GACjC,OAAO,CAAC,MAAM,EAAE,CAAC,CAYnB;IAMK,mBAAmB,CAAC,EAAE,SAAS,UAAU,EAC7C,EAAE,EAAE,MAAM,CAAC,EAAE,CAAC,GACb,OAAO,CAAC,IAAI,CAAC,CAmEf;YAMa,WAAW;CAgB1B;AAED,wBAAgB,2BAA2B,IAAI,yBAAyB,CAEvE"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -57,7 +57,6 @@ export class PostgresServerSyncDialect {
57
57
  .createTable('sync_commits')
58
58
  .ifNotExists()
59
59
  .addColumn('commit_seq', 'bigserial', (col) => col.primaryKey())
60
- .addColumn('partition_id', 'text', (col) => col.notNull().defaultTo('default'))
61
60
  .addColumn('actor_id', 'text', (col) => col.notNull())
62
61
  .addColumn('client_id', 'text', (col) => col.notNull())
63
62
  .addColumn('client_commit_id', 'text', (col) => col.notNull())
@@ -72,43 +71,32 @@ export class PostgresServerSyncDialect {
72
71
  ADD COLUMN IF NOT EXISTS change_count integer NOT NULL DEFAULT 0`.execute(db);
73
72
  await sql `ALTER TABLE sync_commits
74
73
  ADD COLUMN IF NOT EXISTS affected_tables text[] NOT NULL DEFAULT ARRAY[]::text[]`.execute(db);
75
- await sql `ALTER TABLE sync_commits
76
- ADD COLUMN IF NOT EXISTS partition_id text NOT NULL DEFAULT 'default'`.execute(db);
77
- await sql `DROP INDEX IF EXISTS idx_sync_commits_client_commit`.execute(db);
78
74
  await db.schema
79
75
  .createIndex('idx_sync_commits_client_commit')
80
76
  .ifNotExists()
81
77
  .on('sync_commits')
82
- .columns(['partition_id', 'client_id', 'client_commit_id'])
78
+ .columns(['client_id', 'client_commit_id'])
83
79
  .unique()
84
80
  .execute();
85
81
  // Table-based commit routing index
86
82
  await db.schema
87
83
  .createTable('sync_table_commits')
88
84
  .ifNotExists()
89
- .addColumn('partition_id', 'text', (col) => col.notNull().defaultTo('default'))
90
85
  .addColumn('table', 'text', (col) => col.notNull())
91
86
  .addColumn('commit_seq', 'bigint', (col) => col.notNull().references('sync_commits.commit_seq').onDelete('cascade'))
92
- .addPrimaryKeyConstraint('sync_table_commits_pk', [
93
- 'partition_id',
94
- 'table',
95
- 'commit_seq',
96
- ])
87
+ .addPrimaryKeyConstraint('sync_table_commits_pk', ['table', 'commit_seq'])
97
88
  .execute();
98
- await sql `ALTER TABLE sync_table_commits
99
- ADD COLUMN IF NOT EXISTS partition_id text NOT NULL DEFAULT 'default'`.execute(db);
100
89
  await db.schema
101
90
  .createIndex('idx_sync_table_commits_commit_seq')
102
91
  .ifNotExists()
103
92
  .on('sync_table_commits')
104
- .columns(['partition_id', 'commit_seq'])
93
+ .columns(['commit_seq'])
105
94
  .execute();
106
95
  // Changes table with JSONB scopes
107
96
  await db.schema
108
97
  .createTable('sync_changes')
109
98
  .ifNotExists()
110
99
  .addColumn('change_id', 'bigserial', (col) => col.primaryKey())
111
- .addColumn('partition_id', 'text', (col) => col.notNull().defaultTo('default'))
112
100
  .addColumn('commit_seq', 'bigint', (col) => col.notNull().references('sync_commits.commit_seq').onDelete('cascade'))
113
101
  .addColumn('table', 'text', (col) => col.notNull())
114
102
  .addColumn('row_id', 'text', (col) => col.notNull())
@@ -117,37 +105,28 @@ export class PostgresServerSyncDialect {
117
105
  .addColumn('row_version', 'bigint')
118
106
  .addColumn('scopes', 'jsonb', (col) => col.notNull())
119
107
  .execute();
120
- await sql `ALTER TABLE sync_changes
121
- ADD COLUMN IF NOT EXISTS partition_id text NOT NULL DEFAULT 'default'`.execute(db);
122
108
  await db.schema
123
109
  .createIndex('idx_sync_changes_commit_seq')
124
110
  .ifNotExists()
125
111
  .on('sync_changes')
126
- .columns(['partition_id', 'commit_seq'])
112
+ .columns(['commit_seq'])
127
113
  .execute();
128
114
  await db.schema
129
115
  .createIndex('idx_sync_changes_table')
130
116
  .ifNotExists()
131
117
  .on('sync_changes')
132
- .columns(['partition_id', 'table'])
118
+ .columns(['table'])
133
119
  .execute();
134
120
  await this.ensureIndex(db, 'idx_sync_changes_scopes', 'CREATE INDEX idx_sync_changes_scopes ON sync_changes USING GIN (scopes)');
135
121
  await db.schema
136
122
  .createTable('sync_client_cursors')
137
123
  .ifNotExists()
138
- .addColumn('partition_id', 'text', (col) => col.notNull().defaultTo('default'))
139
- .addColumn('client_id', 'text', (col) => col.notNull())
124
+ .addColumn('client_id', 'text', (col) => col.primaryKey())
140
125
  .addColumn('actor_id', 'text', (col) => col.notNull())
141
126
  .addColumn('cursor', 'bigint', (col) => col.notNull().defaultTo(0))
142
127
  .addColumn('effective_scopes', 'jsonb', (col) => col.notNull().defaultTo(sql `'{}'::jsonb`))
143
128
  .addColumn('updated_at', 'timestamptz', (col) => col.notNull().defaultTo(sql `now()`))
144
- .addPrimaryKeyConstraint('sync_client_cursors_pk', [
145
- 'partition_id',
146
- 'client_id',
147
- ])
148
129
  .execute();
149
- await sql `ALTER TABLE sync_client_cursors
150
- ADD COLUMN IF NOT EXISTS partition_id text NOT NULL DEFAULT 'default'`.execute(db);
151
130
  await db.schema
152
131
  .createIndex('idx_sync_client_cursors_updated_at')
153
132
  .ifNotExists()
@@ -158,7 +137,6 @@ export class PostgresServerSyncDialect {
158
137
  .createTable('sync_snapshot_chunks')
159
138
  .ifNotExists()
160
139
  .addColumn('chunk_id', 'text', (col) => col.primaryKey())
161
- .addColumn('partition_id', 'text', (col) => col.notNull().defaultTo('default'))
162
140
  .addColumn('scope_key', 'text', (col) => col.notNull())
163
141
  .addColumn('scope', 'text', (col) => col.notNull())
164
142
  .addColumn('as_of_commit_seq', 'bigint', (col) => col.notNull())
@@ -173,8 +151,6 @@ export class PostgresServerSyncDialect {
173
151
  .addColumn('created_at', 'timestamptz', (col) => col.notNull().defaultTo(sql `now()`))
174
152
  .addColumn('expires_at', 'timestamptz', (col) => col.notNull())
175
153
  .execute();
176
- await sql `ALTER TABLE sync_snapshot_chunks
177
- ADD COLUMN IF NOT EXISTS partition_id text NOT NULL DEFAULT 'default'`.execute(db);
178
154
  await db.schema
179
155
  .createIndex('idx_sync_snapshot_chunks_expires_at')
180
156
  .ifNotExists()
@@ -186,7 +162,6 @@ export class PostgresServerSyncDialect {
186
162
  .ifNotExists()
187
163
  .on('sync_snapshot_chunks')
188
164
  .columns([
189
- 'partition_id',
190
165
  'scope_key',
191
166
  'scope',
192
167
  'as_of_commit_seq',
@@ -210,34 +185,28 @@ export class PostgresServerSyncDialect {
210
185
  // ===========================================================================
211
186
  // Commit/Change Log Queries
212
187
  // ===========================================================================
213
- async readMaxCommitSeq(db, options) {
214
- const partitionId = options?.partitionId ?? 'default';
188
+ async readMaxCommitSeq(db) {
215
189
  const res = await sql `
216
190
  SELECT max(commit_seq) as max_seq
217
191
  FROM sync_commits
218
- WHERE partition_id = ${partitionId}
219
192
  `.execute(db);
220
193
  return coerceNumber(res.rows[0]?.max_seq) ?? 0;
221
194
  }
222
- async readMinCommitSeq(db, options) {
223
- const partitionId = options?.partitionId ?? 'default';
195
+ async readMinCommitSeq(db) {
224
196
  const res = await sql `
225
197
  SELECT min(commit_seq) as min_seq
226
198
  FROM sync_commits
227
- WHERE partition_id = ${partitionId}
228
199
  `.execute(db);
229
200
  return coerceNumber(res.rows[0]?.min_seq) ?? 0;
230
201
  }
231
202
  async readCommitSeqsForPull(db, args) {
232
- const partitionId = args.partitionId ?? 'default';
233
203
  if (args.tables.length === 0)
234
204
  return [];
235
205
  if (args.tables.length === 1) {
236
206
  const res = await sql `
237
207
  SELECT commit_seq
238
208
  FROM sync_table_commits
239
- WHERE partition_id = ${partitionId}
240
- AND "table" = ${args.tables[0]}
209
+ WHERE "table" = ${args.tables[0]}
241
210
  AND commit_seq > ${args.cursor}
242
211
  ORDER BY commit_seq ASC
243
212
  LIMIT ${args.limitCommits}
@@ -249,8 +218,7 @@ export class PostgresServerSyncDialect {
249
218
  const res = await sql `
250
219
  SELECT DISTINCT commit_seq
251
220
  FROM sync_table_commits
252
- WHERE partition_id = ${partitionId}
253
- AND "table" = ANY(${args.tables}::text[])
221
+ WHERE "table" = ANY(${args.tables}::text[])
254
222
  AND commit_seq > ${args.cursor}
255
223
  ORDER BY commit_seq ASC
256
224
  LIMIT ${args.limitCommits}
@@ -259,15 +227,13 @@ export class PostgresServerSyncDialect {
259
227
  .map((r) => coerceNumber(r.commit_seq))
260
228
  .filter((n) => typeof n === 'number' && Number.isFinite(n) && n > args.cursor);
261
229
  }
262
- async readCommits(db, commitSeqs, options) {
263
- const partitionId = options?.partitionId ?? 'default';
230
+ async readCommits(db, commitSeqs) {
264
231
  if (commitSeqs.length === 0)
265
232
  return [];
266
233
  const res = await sql `
267
234
  SELECT commit_seq, actor_id, created_at, result_json
268
235
  FROM sync_commits
269
236
  WHERE commit_seq = ANY(${commitSeqs}::bigint[])
270
- AND partition_id = ${partitionId}
271
237
  ORDER BY commit_seq ASC
272
238
  `.execute(db);
273
239
  return res.rows.map((row) => ({
@@ -278,7 +244,6 @@ export class PostgresServerSyncDialect {
278
244
  }));
279
245
  }
280
246
  async readChangesForCommits(db, args) {
281
- const partitionId = args.partitionId ?? 'default';
282
247
  if (args.commitSeqs.length === 0)
283
248
  return [];
284
249
  // Build JSONB containment conditions for scope filtering
@@ -297,7 +262,6 @@ export class PostgresServerSyncDialect {
297
262
  SELECT commit_seq, "table", row_id, op, row_json, row_version, scopes
298
263
  FROM sync_changes
299
264
  WHERE commit_seq = ANY(${args.commitSeqs}::bigint[])
300
- AND partition_id = ${partitionId}
301
265
  AND "table" = ${args.table}
302
266
  `;
303
267
  if (scopeConditions.length > 0) {
@@ -306,7 +270,6 @@ export class PostgresServerSyncDialect {
306
270
  SELECT commit_seq, "table", row_id, op, row_json, row_version, scopes
307
271
  FROM sync_changes
308
272
  WHERE commit_seq = ANY(${args.commitSeqs}::bigint[])
309
- AND partition_id = ${partitionId}
310
273
  AND "table" = ${args.table}
311
274
  AND (${scopeFilter})
312
275
  ORDER BY commit_seq ASC, change_id ASC
@@ -324,7 +287,6 @@ export class PostgresServerSyncDialect {
324
287
  }));
325
288
  }
326
289
  async readIncrementalPullRows(db, args) {
327
- const partitionId = args.partitionId ?? 'default';
328
290
  const limitCommits = Math.max(1, Math.min(500, args.limitCommits));
329
291
  // Build scope filter conditions
330
292
  const scopeConditions = [];
@@ -344,15 +306,12 @@ export class PostgresServerSyncDialect {
344
306
  SELECT DISTINCT tc.commit_seq
345
307
  FROM sync_table_commits tc
346
308
  JOIN sync_commits cm ON cm.commit_seq = tc.commit_seq
347
- WHERE tc.partition_id = ${partitionId}
348
- AND tc."table" = ${args.table}
349
- AND cm.partition_id = ${partitionId}
309
+ WHERE tc."table" = ${args.table}
350
310
  AND tc.commit_seq > ${args.cursor}
351
311
  AND EXISTS (
352
312
  SELECT 1
353
313
  FROM sync_changes c
354
314
  WHERE c.commit_seq = tc.commit_seq
355
- AND c.partition_id = ${partitionId}
356
315
  AND c."table" = ${args.table}
357
316
  AND (${scopeFilter})
358
317
  )
@@ -373,9 +332,7 @@ export class PostgresServerSyncDialect {
373
332
  FROM commit_seqs cs
374
333
  JOIN sync_commits cm ON cm.commit_seq = cs.commit_seq
375
334
  JOIN sync_changes c ON c.commit_seq = cs.commit_seq
376
- WHERE cm.partition_id = ${partitionId}
377
- AND c.partition_id = ${partitionId}
378
- AND c."table" = ${args.table}
335
+ WHERE c."table" = ${args.table}
379
336
  AND (${scopeFilter})
380
337
  ORDER BY cm.commit_seq ASC, c.change_id ASC
381
338
  `.execute(db);
@@ -419,7 +376,7 @@ export class PostgresServerSyncDialect {
419
376
  SELECT
420
377
  c.change_id,
421
378
  row_number() OVER (
422
- PARTITION BY c.partition_id, c."table", c.row_id, c.scopes
379
+ PARTITION BY c."table", c.row_id, c.scopes
423
380
  ORDER BY c.commit_seq DESC, c.change_id DESC
424
381
  ) AS rn
425
382
  FROM sync_changes c
@@ -434,14 +391,12 @@ export class PostgresServerSyncDialect {
434
391
  await sql `
435
392
  DELETE FROM sync_table_commits tc
436
393
  USING sync_commits cm
437
- WHERE cm.commit_seq = tc.commit_seq
438
- AND cm.partition_id = tc.partition_id
439
- AND cm.created_at < ${cutoffIso}
394
+ WHERE cm.commit_seq = tc.commit_seq
395
+ AND cm.created_at < ${cutoffIso}
440
396
  AND NOT EXISTS (
441
397
  SELECT 1
442
398
  FROM sync_changes c
443
399
  WHERE c.commit_seq = tc.commit_seq
444
- AND c.partition_id = tc.partition_id
445
400
  AND c."table" = tc."table"
446
401
  )
447
402
  `.execute(db);
@@ -451,13 +406,12 @@ export class PostgresServerSyncDialect {
451
406
  // Client Cursor Recording
452
407
  // ===========================================================================
453
408
  async recordClientCursor(db, args) {
454
- const partitionId = args.partitionId ?? 'default';
455
409
  const now = new Date().toISOString();
456
410
  const scopesJson = JSON.stringify(args.effectiveScopes);
457
411
  await sql `
458
- INSERT INTO sync_client_cursors (partition_id, client_id, actor_id, cursor, effective_scopes, updated_at)
459
- VALUES (${partitionId}, ${args.clientId}, ${args.actorId}, ${args.cursor}, ${scopesJson}::jsonb, ${now})
460
- ON CONFLICT(partition_id, client_id) DO UPDATE SET
412
+ INSERT INTO sync_client_cursors (client_id, actor_id, cursor, effective_scopes, updated_at)
413
+ VALUES (${args.clientId}, ${args.actorId}, ${args.cursor}, ${scopesJson}::jsonb, ${now})
414
+ ON CONFLICT(client_id) DO UPDATE SET
461
415
  actor_id = ${args.actorId},
462
416
  cursor = ${args.cursor},
463
417
  effective_scopes = ${scopesJson}::jsonb,
@@ -482,13 +436,11 @@ export class PostgresServerSyncDialect {
482
436
  arrayToDb(values) {
483
437
  return values.filter((v) => v.length > 0);
484
438
  }
485
- async readAffectedTablesFromChanges(db, commitSeq, options) {
486
- const partitionId = options?.partitionId ?? 'default';
439
+ async readAffectedTablesFromChanges(db, commitSeq) {
487
440
  const res = await sql `
488
441
  SELECT DISTINCT "table"
489
442
  FROM sync_changes
490
443
  WHERE commit_seq = ${commitSeq}
491
- AND partition_id = ${partitionId}
492
444
  `.execute(db);
493
445
  return res.rows
494
446
  .map((r) => r.table)
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAUH,OAAO,EAAE,GAAG,EAAE,MAAM,QAAQ,CAAC;AAE7B,SAAS,YAAY,CAAC,KAAc,EAAiB;IACnD,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO,IAAI,CAAC;IACvD,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC;IAC5E,IAAI,OAAO,KAAK,KAAK,QAAQ;QAC3B,OAAO,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAC/D,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC9B,MAAM,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;QACxB,OAAO,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IACvC,CAAC;IACD,OAAO,IAAI,CAAC;AAAA,CACb;AAED,SAAS,eAAe,CAAC,KAAc,EAAU;IAC/C,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IAC5C,IAAI,KAAK,YAAY,IAAI;QAAE,OAAO,KAAK,CAAC,WAAW,EAAE,CAAC;IACtD,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC;AAAA,CACtB;AAED,SAAS,WAAW,CAAC,KAAc,EAAgB;IACjD,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO,EAAE,CAAC;IACrD,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACvD,MAAM,MAAM,GAAiB,EAAE,CAAC;QAChC,KAAK,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAgC,CAAC,EAAE,CAAC;YACtE,IAAI,OAAO,CAAC,KAAK,QAAQ,EAAE,CAAC;gBAC1B,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;YAChB,CAAC;QACH,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IACD,OAAO,EAAE,CAAC;AAAA,CACX;AAED,MAAM,OAAO,yBAAyB;IAC3B,IAAI,GAAG,UAAmB,CAAC;IAC3B,iBAAiB,GAAG,IAAI,CAAC;IACzB,kBAAkB,GAAG,IAAI,CAAC;IAEnC,8EAA8E;IAC9E,eAAe;IACf,8EAA8E;IAE9E,KAAK,CAAC,gBAAgB,CAAwB,EAAc,EAAiB;QAC3E,MAAM,EAAE,CAAC,MAAM;aACZ,WAAW,CAAC,cAAc,CAAC;aAC3B,WAAW,EAAE;aACb,SAAS,CAAC,YAAY,EAAE,WAAW,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC;aAC/D,SAAS,CAAC,cAAc,EAAE,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,CACzC,GAAG,CAAC,OAAO,EAAE,CAAC,SAAS,CAAC,SAAS,CAAC,CACnC;aACA,SAAS,CAAC,UAAU,EAAE,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;aACrD,SAAS,CAAC,WAAW,EAAE,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;aACtD,SAAS,CAAC,kBAAkB,EAAE,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;aAC7D,SAAS,CAAC,YAAY,EAAE,aAAa,EAAE,CAAC,GAAG,EAAE,EAAE,CAC9C,GAAG,CAAC,OAAO,EAAE,CAAC,SAAS,CAAC,GAAG,CAAA,OAAO,CAAC,CACpC;aACA,SAAS,CAAC,MAAM,EAAE,OAAO,CAAC;aAC1B,SAAS,CAAC,aAAa,EAAE,OAAO,CAAC;aACjC,SAAS,CAAC,cAAc,EAAE,SAAS,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;aACzE,SAAS,CAAC,iBAAiB,EAAE,GAAG,CAAA,QAAQ,EAAE,CAAC,GAAG,EAAE,EAAE,CACjD,GAAG,CAAC,OAAO,EAAE,CAAC,SAAS,CAAC,GAAG,CAAA,iBAAiB,CAAC,CAC9C;aACA,OAAO,EAAE,CAAC;QAEb,gFAAgF;QAChF,MAAM,GAAG,CAAA;uEAC0D,CAAC,OAAO,CACzE,EAAE,CACH,CAAC;QACF,MAAM,GAAG,CAAA;uFAC0E,CAAC,OAAO,CACzF,EAAE,CACH,CAAC;QACF,MAAM,GAAG,CAAA;4EAC+D,CAAC,OAAO,CAC9E,EAAE,CACH,CAAC;QAEF,MAAM,GAAG,CAAA,qDAAqD,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QAC3E,MAAM,EAAE,CAAC,MAAM;aACZ,WAAW,CAAC,gCAAgC,CAAC;aAC7C,WAAW,EAAE;aACb,EAAE,CAAC,cAAc,CAAC;aAClB,OAAO,CAAC,CAAC,cAAc,EAAE,WAAW,EAAE,kBAAkB,CAAC,CAAC;aAC1D,MAAM,EAAE;aACR,OAAO,EAAE,CAAC;QAEb,mCAAmC;QACnC,MAAM,EAAE,CAAC,MAAM;aACZ,WAAW,CAAC,oBAAoB,CAAC;aACjC,WAAW,EAAE;aACb,SAAS,CAAC,cAAc,EAAE,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,CACzC,GAAG,CAAC,OAAO,EAAE,CAAC,SAAS,CAAC,SAAS,CAAC,CACnC;aACA,SAAS,CAAC,OAAO,EAAE,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;aAClD,SAAS,CAAC,YAAY,EAAE,QAAQ,EAAE,CAAC,GAAG,EAAE,EAAE,CACzC,GAAG,CAAC,OAAO,EAAE,CAAC,UAAU,CAAC,yBAAyB,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC,CACxE;aACA,uBAAuB,CAAC,uBAAuB,EAAE;YAChD,cAAc;YACd,OAAO;YACP,YAAY;SACb,CAAC;aACD,OAAO,EAAE,CAAC;QAEb,MAAM,GAAG,CAAA;4EAC+D,CAAC,OAAO,CAC9E,EAAE,CACH,CAAC;QAEF,MAAM,EAAE,CAAC,MAAM;aACZ,WAAW,CAAC,mCAAmC,CAAC;aAChD,WAAW,EAAE;aACb,EAAE,CAAC,oBAAoB,CAAC;aACxB,OAAO,CAAC,CAAC,cAAc,EAAE,YAAY,CAAC,CAAC;aACvC,OAAO,EAAE,CAAC;QAEb,kCAAkC;QAClC,MAAM,EAAE,CAAC,MAAM;aACZ,WAAW,CAAC,cAAc,CAAC;aAC3B,WAAW,EAAE;aACb,SAAS,CAAC,WAAW,EAAE,WAAW,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC;aAC9D,SAAS,CAAC,cAAc,EAAE,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,CACzC,GAAG,CAAC,OAAO,EAAE,CAAC,SAAS,CAAC,SAAS,CAAC,CACnC;aACA,SAAS,CAAC,YAAY,EAAE,QAAQ,EAAE,CAAC,GAAG,EAAE,EAAE,CACzC,GAAG,CAAC,OAAO,EAAE,CAAC,UAAU,CAAC,yBAAyB,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC,CACxE;aACA,SAAS,CAAC,OAAO,EAAE,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;aAClD,SAAS,CAAC,QAAQ,EAAE,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;aACnD,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;aAC/C,SAAS,CAAC,UAAU,EAAE,OAAO,CAAC;aAC9B,SAAS,CAAC,aAAa,EAAE,QAAQ,CAAC;aAClC,SAAS,CAAC,QAAQ,EAAE,OAAO,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;aACpD,OAAO,EAAE,CAAC;QAEb,MAAM,GAAG,CAAA;4EAC+D,CAAC,OAAO,CAC9E,EAAE,CACH,CAAC;QAEF,MAAM,EAAE,CAAC,MAAM;aACZ,WAAW,CAAC,6BAA6B,CAAC;aAC1C,WAAW,EAAE;aACb,EAAE,CAAC,cAAc,CAAC;aAClB,OAAO,CAAC,CAAC,cAAc,EAAE,YAAY,CAAC,CAAC;aACvC,OAAO,EAAE,CAAC;QAEb,MAAM,EAAE,CAAC,MAAM;aACZ,WAAW,CAAC,wBAAwB,CAAC;aACrC,WAAW,EAAE;aACb,EAAE,CAAC,cAAc,CAAC;aAClB,OAAO,CAAC,CAAC,cAAc,EAAE,OAAO,CAAC,CAAC;aAClC,OAAO,EAAE,CAAC;QAEb,MAAM,IAAI,CAAC,WAAW,CACpB,EAAE,EACF,yBAAyB,EACzB,yEAAyE,CAC1E,CAAC;QAEF,MAAM,EAAE,CAAC,MAAM;aACZ,WAAW,CAAC,qBAAqB,CAAC;aAClC,WAAW,EAAE;aACb,SAAS,CAAC,cAAc,EAAE,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,CACzC,GAAG,CAAC,OAAO,EAAE,CAAC,SAAS,CAAC,SAAS,CAAC,CACnC;aACA,SAAS,CAAC,WAAW,EAAE,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;aACtD,SAAS,CAAC,UAAU,EAAE,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;aACrD,SAAS,CAAC,QAAQ,EAAE,QAAQ,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;aAClE,SAAS,CAAC,kBAAkB,EAAE,OAAO,EAAE,CAAC,GAAG,EAAE,EAAE,CAC9C,GAAG,CAAC,OAAO,EAAE,CAAC,SAAS,CAAC,GAAG,CAAA,aAAa,CAAC,CAC1C;aACA,SAAS,CAAC,YAAY,EAAE,aAAa,EAAE,CAAC,GAAG,EAAE,EAAE,CAC9C,GAAG,CAAC,OAAO,EAAE,CAAC,SAAS,CAAC,GAAG,CAAA,OAAO,CAAC,CACpC;aACA,uBAAuB,CAAC,wBAAwB,EAAE;YACjD,cAAc;YACd,WAAW;SACZ,CAAC;aACD,OAAO,EAAE,CAAC;QAEb,MAAM,GAAG,CAAA;4EAC+D,CAAC,OAAO,CAC9E,EAAE,CACH,CAAC;QAEF,MAAM,EAAE,CAAC,MAAM;aACZ,WAAW,CAAC,oCAAoC,CAAC;aACjD,WAAW,EAAE;aACb,EAAE,CAAC,qBAAqB,CAAC;aACzB,OAAO,CAAC,CAAC,YAAY,CAAC,CAAC;aACvB,OAAO,EAAE,CAAC;QAEb,MAAM,EAAE,CAAC,MAAM;aACZ,WAAW,CAAC,sBAAsB,CAAC;aACnC,WAAW,EAAE;aACb,SAAS,CAAC,UAAU,EAAE,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC;aACxD,SAAS,CAAC,cAAc,EAAE,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,CACzC,GAAG,CAAC,OAAO,EAAE,CAAC,SAAS,CAAC,SAAS,CAAC,CACnC;aACA,SAAS,CAAC,WAAW,EAAE,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;aACtD,SAAS,CAAC,OAAO,EAAE,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;aAClD,SAAS,CAAC,kBAAkB,EAAE,QAAQ,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;aAC/D,SAAS,CAAC,YAAY,EAAE,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;aACrE,SAAS,CAAC,WAAW,EAAE,SAAS,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;aACzD,SAAS,CAAC,UAAU,EAAE,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;aACrD,SAAS,CAAC,aAAa,EAAE,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;aACxD,SAAS,CAAC,QAAQ,EAAE,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;aACnD,SAAS,CAAC,aAAa,EAAE,SAAS,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;aAC3D,SAAS,CAAC,WAAW,EAAE,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;aACpE,SAAS,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,+BAA+B;aAC1D,SAAS,CAAC,YAAY,EAAE,aAAa,EAAE,CAAC,GAAG,EAAE,EAAE,CAC9C,GAAG,CAAC,OAAO,EAAE,CAAC,SAAS,CAAC,GAAG,CAAA,OAAO,CAAC,CACpC;aACA,SAAS,CAAC,YAAY,EAAE,aAAa,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;aAC9D,OAAO,EAAE,CAAC;QAEb,MAAM,GAAG,CAAA;4EAC+D,CAAC,OAAO,CAC9E,EAAE,CACH,CAAC;QAEF,MAAM,EAAE,CAAC,MAAM;aACZ,WAAW,CAAC,qCAAqC,CAAC;aAClD,WAAW,EAAE;aACb,EAAE,CAAC,sBAAsB,CAAC;aAC1B,OAAO,CAAC,CAAC,YAAY,CAAC,CAAC;aACvB,OAAO,EAAE,CAAC;QAEb,MAAM,EAAE,CAAC,MAAM;aACZ,WAAW,CAAC,mCAAmC,CAAC;aAChD,WAAW,EAAE;aACb,EAAE,CAAC,sBAAsB,CAAC;aAC1B,OAAO,CAAC;YACP,cAAc;YACd,WAAW;YACX,OAAO;YACP,kBAAkB;YAClB,YAAY;YACZ,WAAW;YACX,UAAU;YACV,aAAa;SACd,CAAC;aACD,MAAM,EAAE;aACR,OAAO,EAAE,CAAC;IAAA,CACd;IAED,8EAA8E;IAC9E,sBAAsB;IACtB,8EAA8E;IAE9E,KAAK,CAAC,oBAAoB,CACxB,EAAc,EACd,EAA4C,EAChC;QACZ,OAAO,EAAE,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IAAA,CACrC;IAED,KAAK,CAAC,iBAAiB,CACrB,GAAmB,EACJ;QACf,MAAM,GAAG,CAAA,iDAAiD,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IAAA,CACzE;IAED,8EAA8E;IAC9E,4BAA4B;IAC5B,8EAA8E;IAE9E,KAAK,CAAC,gBAAgB,CACpB,EAAgC,EAChC,OAAkC,EACjB;QACjB,MAAM,WAAW,GAAG,OAAO,EAAE,WAAW,IAAI,SAAS,CAAC;QACtD,MAAM,GAAG,GAAG,MAAM,GAAG,CAAsB;;;6BAGlB,WAAW;KACnC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QAEd,OAAO,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;IAAA,CAChD;IAED,KAAK,CAAC,gBAAgB,CACpB,EAAgC,EAChC,OAAkC,EACjB;QACjB,MAAM,WAAW,GAAG,OAAO,EAAE,WAAW,IAAI,SAAS,CAAC;QACtD,MAAM,GAAG,GAAG,MAAM,GAAG,CAAsB;;;6BAGlB,WAAW;KACnC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QAEd,OAAO,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;IAAA,CAChD;IAED,KAAK,CAAC,qBAAqB,CACzB,EAAgC,EAChC,IAKC,EACkB;QACnB,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,IAAI,SAAS,CAAC;QAClD,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,EAAE,CAAC;QAExC,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC7B,MAAM,GAAG,GAAG,MAAM,GAAG,CAAyB;;;+BAGrB,WAAW;0BAChB,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;6BACX,IAAI,CAAC,MAAM;;gBAExB,IAAI,CAAC,YAAY;OAC1B,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;YAEd,OAAO,GAAG,CAAC,IAAI;iBACZ,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;iBACtC,MAAM,CACL,CAAC,CAAC,EAAe,EAAE,CACjB,OAAO,CAAC,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,MAAM,CACjE,CAAC;QACN,CAAC;QAED,MAAM,GAAG,GAAG,MAAM,GAAG,CAAyB;;;6BAGrB,WAAW;4BACZ,IAAI,CAAC,MAAM;2BACZ,IAAI,CAAC,MAAM;;cAExB,IAAI,CAAC,YAAY;KAC1B,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QAEd,OAAO,GAAG,CAAC,IAAI;aACZ,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;aACtC,MAAM,CACL,CAAC,CAAC,EAAe,EAAE,CACjB,OAAO,CAAC,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,MAAM,CACjE,CAAC;IAAA,CACL;IAED,KAAK,CAAC,WAAW,CACf,EAAgC,EAChC,UAAoB,EACpB,OAAkC,EACR;QAC1B,MAAM,WAAW,GAAG,OAAO,EAAE,WAAW,IAAI,SAAS,CAAC;QACtD,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,EAAE,CAAC;QAEvC,MAAM,GAAG,GAAG,MAAM,GAAG,CAKnB;;;+BAGyB,UAAU;6BACZ,WAAW;;KAEnC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QAEd,OAAO,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;YAC5B,UAAU,EAAE,YAAY,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC;YAC7C,QAAQ,EAAE,GAAG,CAAC,QAAQ;YACtB,UAAU,EAAE,eAAe,CAAC,GAAG,CAAC,UAAU,CAAC;YAC3C,WAAW,EAAE,GAAG,CAAC,WAAW,IAAI,IAAI;SACrC,CAAC,CAAC,CAAC;IAAA,CACL;IAED,KAAK,CAAC,qBAAqB,CACzB,EAAgC,EAChC,IAKC,EACyB;QAC1B,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,IAAI,SAAS,CAAC;QAClD,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,EAAE,CAAC;QAE5C,yDAAyD;QACzD,4FAA4F;QAC5F,MAAM,eAAe,GAA6B,EAAE,CAAC;QACrD,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;YACvD,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;gBACzB,gCAAgC;gBAChC,eAAe,CAAC,IAAI,CAAC,GAAG,CAAA,YAAY,GAAG,UAAU,KAAK,WAAW,CAAC,CAAC;YACrE,CAAC;iBAAM,CAAC;gBACN,eAAe,CAAC,IAAI,CAAC,GAAG,CAAA,YAAY,GAAG,MAAM,KAAK,EAAE,CAAC,CAAC;YACxD,CAAC;QACH,CAAC;QAED,IAAI,KAAK,GAAG,GAAG,CAQb;;;+BAGyB,IAAI,CAAC,UAAU;6BACjB,WAAW;wBAChB,IAAI,CAAC,KAAK;KAC7B,CAAC;QAEF,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC/B,MAAM,WAAW,GAAG,GAAG,CAAC,IAAI,CAAC,eAAe,EAAE,GAAG,CAAA,OAAO,CAAC,CAAC;YAC1D,KAAK,GAAG,GAAG,CAQT;;;iCAGyB,IAAI,CAAC,UAAU;+BACjB,WAAW;0BAChB,IAAI,CAAC,KAAK;iBACnB,WAAW;;OAErB,CAAC;QACJ,CAAC;QAED,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QAEpC,OAAO,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;YAC5B,UAAU,EAAE,YAAY,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC;YAC7C,KAAK,EAAE,GAAG,CAAC,KAAK;YAChB,MAAM,EAAE,GAAG,CAAC,MAAM;YAClB,EAAE,EAAE,GAAG,CAAC,EAAY;YACpB,QAAQ,EAAE,GAAG,CAAC,QAAQ,IAAI,IAAI;YAC9B,WAAW,EAAE,YAAY,CAAC,GAAG,CAAC,WAAW,CAAC;YAC1C,MAAM,EAAE,WAAW,CAAC,GAAG,CAAC,MAAM,CAAC;SAChC,CAAC,CAAC,CAAC;IAAA,CACL;IAED,KAAK,CAAC,uBAAuB,CAC3B,EAAgC,EAChC,IAMC,EAcD;QACA,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,IAAI,SAAS,CAAC;QAClD,MAAM,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC;QAEnE,gCAAgC;QAChC,MAAM,eAAe,GAA6B,EAAE,CAAC;QACrD,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;YACvD,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;gBACzB,eAAe,CAAC,IAAI,CAAC,GAAG,CAAA,cAAc,GAAG,UAAU,KAAK,WAAW,CAAC,CAAC;YACvE,CAAC;iBAAM,CAAC;gBACN,eAAe,CAAC,IAAI,CAAC,GAAG,CAAA,cAAc,GAAG,MAAM,KAAK,EAAE,CAAC,CAAC;YAC1D,CAAC;QACH,CAAC;QAED,MAAM,WAAW,GACf,eAAe,CAAC,MAAM,GAAG,CAAC;YACxB,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,eAAe,EAAE,GAAG,CAAA,OAAO,CAAC;YACvC,CAAC,CAAC,GAAG,CAAA,MAAM,CAAC;QAEhB,MAAM,GAAG,GAAG,MAAM,GAAG,CAWnB;;;;;kCAK4B,WAAW;6BAChB,IAAI,CAAC,KAAK;kCACL,WAAW;gCACb,IAAI,CAAC,MAAM;;;;;qCAKN,WAAW;gCAChB,IAAI,CAAC,KAAK;qBACrB,WAAW;;;gBAGhB,YAAY;;;;;;;;;;;;;;;;gCAgBI,WAAW;+BACZ,WAAW;0BAChB,IAAI,CAAC,KAAK;eACrB,WAAW;;KAErB,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QAEd,OAAO,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;YAC5B,UAAU,EAAE,YAAY,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC;YAC7C,QAAQ,EAAE,GAAG,CAAC,QAAQ;YACtB,UAAU,EAAE,eAAe,CAAC,GAAG,CAAC,UAAU,CAAC;YAC3C,SAAS,EAAE,YAAY,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,CAAC;YAC3C,KAAK,EAAE,GAAG,CAAC,KAAK;YAChB,MAAM,EAAE,GAAG,CAAC,MAAM;YAClB,EAAE,EAAE,GAAG,CAAC,EAAY;YACpB,QAAQ,EAAE,GAAG,CAAC,QAAQ,IAAI,IAAI;YAC9B,WAAW,EAAE,YAAY,CAAC,GAAG,CAAC,WAAW,CAAC;YAC1C,MAAM,EAAE,WAAW,CAAC,GAAG,CAAC,MAAM,CAAC;SAChC,CAAC,CAAC,CAAC;IAAA,CACL;IAED,KAAK,CAAC,CAAC,yBAAyB,CAC9B,EAAgC,EAChC,IAOC,EAYA;QACD,mFAAmF;QACnF,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,SAAS,IAAI,GAAG,CAAC,CAAC;QACvD,IAAI,SAAS,GAAG,CAAC,CAAC;QAElB,OAAO,SAAS,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;YACrC,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,uBAAuB,CAAC,EAAE,EAAE;gBACnD,GAAG,IAAI;gBACP,YAAY,EAAE,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,IAAI,CAAC,YAAY,GAAG,SAAS,CAAC;gBAChE,MAAM,EAAE,IAAI,CAAC,MAAM,GAAG,SAAS;aAChC,CAAC,CAAC;YAEH,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;gBAAE,MAAM;YAE9B,KAAK,MAAM,GAAG,IAAI,KAAK,EAAE,CAAC;gBACxB,MAAM,GAAG,CAAC;YACZ,CAAC;YAED,SAAS,IAAI,KAAK,CAAC,MAAM,CAAC;YAC1B,IAAI,KAAK,CAAC,MAAM,GAAG,SAAS;gBAAE,MAAM;QACtC,CAAC;IAAA,CACF;IAED,KAAK,CAAC,cAAc,CAClB,EAAgC,EAChC,IAAkC,EACjB;QACjB,MAAM,SAAS,GAAG,IAAI,IAAI,CACxB,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,gBAAgB,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CACpD,CAAC,WAAW,EAAE,CAAC;QAEhB,MAAM,GAAG,GAAG,MAAM,GAAG,CAAA;;;;;;;;;;gCAUO,SAAS;;;;KAIpC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QAEd,MAAM,cAAc,GAAG,MAAM,CAAC,GAAG,CAAC,eAAe,IAAI,CAAC,CAAC,CAAC;QAExD,yEAAyE;QACzE,MAAM,GAAG,CAAA;;;;;gCAKmB,SAAS;;;;;;;;KAQpC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QAEd,OAAO,cAAc,CAAC;IAAA,CACvB;IAED,8EAA8E;IAC9E,0BAA0B;IAC1B,8EAA8E;IAE9E,KAAK,CAAC,kBAAkB,CACtB,EAAgC,EAChC,IAMC,EACc;QACf,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,IAAI,SAAS,CAAC;QAClD,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;QACrC,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;QAExD,MAAM,GAAG,CAAA;;gBAEG,WAAW,KAAK,IAAI,CAAC,QAAQ,KAAK,IAAI,CAAC,OAAO,KAAK,IAAI,CAAC,MAAM,KAAK,UAAU,YAAY,GAAG;;qBAEvF,IAAI,CAAC,OAAO;mBACd,IAAI,CAAC,MAAM;6BACD,UAAU;uBAChB,GAAG;KACrB,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IAAA,CACf;IAED,8EAA8E;IAC9E,2BAA2B;IAC3B,8EAA8E;IAE9E,UAAU,CAAC,MAAoB,EAAgB;QAC7C,OAAO,MAAM,CAAC;IAAA,CACf;IAED,UAAU,CAAC,KAAc,EAAgB;QACvC,OAAO,WAAW,CAAC,KAAK,CAAC,CAAC;IAAA,CAC3B;IAED,SAAS,CAAC,KAAc,EAAY;QAClC,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;YACzB,OAAO,KAAK,CAAC,MAAM,CAAC,CAAC,CAAU,EAAe,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC;QAC1E,CAAC;QACD,OAAO,EAAE,CAAC;IAAA,CACX;IAED,SAAS,CAAC,MAAgB,EAAY;QACpC,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IAAA,CAC3C;IAED,KAAK,CAAC,6BAA6B,CACjC,EAAgC,EAChC,SAAiB,EACjB,OAAkC,EACf;QACnB,MAAM,WAAW,GAAG,OAAO,EAAE,WAAW,IAAI,SAAS,CAAC;QACtD,MAAM,GAAG,GAAG,MAAM,GAAG,CAAmB;;;2BAGjB,SAAS;6BACP,WAAW;KACnC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QAEd,OAAO,GAAG,CAAC,IAAI;aACZ,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC;aACnB,MAAM,CAAC,CAAC,CAAC,EAAe,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IAAA,CACtE;IAED,8EAA8E;IAC9E,kCAAkC;IAClC,8EAA8E;IAE9E,KAAK,CAAC,mBAAmB,CACvB,EAAc,EACC;QACf,MAAM,GAAG,CAAA;;;;;;;;;;;;;;;;;KAiBR,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QACd,MAAM,GAAG,CAAA;;;KAGR,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QAEd,MAAM,IAAI,CAAC,WAAW,CACpB,EAAE,EACF,oCAAoC,EACpC,yFAAyF,CAC1F,CAAC;QACF,MAAM,IAAI,CAAC,WAAW,CACpB,EAAE,EACF,oCAAoC,EACpC,oFAAoF,CACrF,CAAC;QACF,MAAM,IAAI,CAAC,WAAW,CACpB,EAAE,EACF,mCAAmC,EACnC,kFAAkF,CACnF,CAAC;QAEF,iBAAiB;QACjB,MAAM,GAAG,CAAA;;;;;;;;;;;;;;KAcR,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QAEd,MAAM,IAAI,CAAC,WAAW,CACpB,EAAE,EACF,4BAA4B,EAC5B,oEAAoE,CACrE,CAAC;QACF,MAAM,IAAI,CAAC,WAAW,CACpB,EAAE,EACF,4BAA4B,EAC5B,oEAAoE,CACrE,CAAC;IAAA,CACH;IAED,8EAA8E;IAC9E,kBAAkB;IAClB,8EAA8E;IAEtE,KAAK,CAAC,WAAW,CACvB,EAAc,EACd,SAAiB,EACjB,SAAiB,EACF;QACf,MAAM,MAAM,GAAG,MAAM,GAAG,CAAW;;;;0BAIb,SAAS;;KAE9B,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QAEd,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC;YAAE,OAAO;QACnC,MAAM,GAAG,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IAAA,CACtC;CACF;AAED,MAAM,UAAU,2BAA2B,GAA8B;IACvE,OAAO,IAAI,yBAAyB,EAAE,CAAC;AAAA,CACxC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,25 +1,6 @@
1
1
  {
2
2
  "name": "@syncular/server-dialect-postgres",
3
- "version": "0.0.1-60",
4
- "description": "PostgreSQL dialect for the Syncular server",
5
- "license": "MIT",
6
- "author": "Benjamin Kniffler",
7
- "homepage": "https://syncular.dev",
8
- "repository": {
9
- "type": "git",
10
- "url": "https://github.com/syncular/syncular.git",
11
- "directory": "packages/server-dialect-postgres"
12
- },
13
- "bugs": {
14
- "url": "https://github.com/syncular/syncular/issues"
15
- },
16
- "keywords": [
17
- "sync",
18
- "offline-first",
19
- "realtime",
20
- "database",
21
- "typescript"
22
- ],
3
+ "version": "0.0.1",
23
4
  "private": false,
24
5
  "publishConfig": {
25
6
  "access": "public"
@@ -36,18 +17,17 @@
36
17
  },
37
18
  "scripts": {
38
19
  "tsgo": "tsgo --noEmit",
39
- "build": "rm -rf dist && tsgo",
40
- "release": "bun pm pack --destination . && npm publish ./*.tgz --tag latest && rm -f ./*.tgz"
20
+ "build": "rm -rf dist && tsgo"
41
21
  },
42
22
  "dependencies": {
43
- "@syncular/core": "0.0.1",
44
- "@syncular/server": "0.0.1"
23
+ "@syncular/core": "workspace:*",
24
+ "@syncular/server": "workspace:*"
45
25
  },
46
26
  "peerDependencies": {
47
27
  "kysely": "^0.28.0"
48
28
  },
49
29
  "devDependencies": {
50
- "@syncular/config": "0.0.0",
30
+ "@syncular/config": "workspace:*",
51
31
  "kysely": "*"
52
32
  },
53
33
  "files": [
package/src/index.ts CHANGED
@@ -67,9 +67,6 @@ export class PostgresServerSyncDialect implements ServerSyncDialect {
67
67
  .createTable('sync_commits')
68
68
  .ifNotExists()
69
69
  .addColumn('commit_seq', 'bigserial', (col) => col.primaryKey())
70
- .addColumn('partition_id', 'text', (col) =>
71
- col.notNull().defaultTo('default')
72
- )
73
70
  .addColumn('actor_id', 'text', (col) => col.notNull())
74
71
  .addColumn('client_id', 'text', (col) => col.notNull())
75
72
  .addColumn('client_commit_id', 'text', (col) => col.notNull())
@@ -93,17 +90,12 @@ export class PostgresServerSyncDialect implements ServerSyncDialect {
93
90
  ADD COLUMN IF NOT EXISTS affected_tables text[] NOT NULL DEFAULT ARRAY[]::text[]`.execute(
94
91
  db
95
92
  );
96
- await sql`ALTER TABLE sync_commits
97
- ADD COLUMN IF NOT EXISTS partition_id text NOT NULL DEFAULT 'default'`.execute(
98
- db
99
- );
100
93
 
101
- await sql`DROP INDEX IF EXISTS idx_sync_commits_client_commit`.execute(db);
102
94
  await db.schema
103
95
  .createIndex('idx_sync_commits_client_commit')
104
96
  .ifNotExists()
105
97
  .on('sync_commits')
106
- .columns(['partition_id', 'client_id', 'client_commit_id'])
98
+ .columns(['client_id', 'client_commit_id'])
107
99
  .unique()
108
100
  .execute();
109
101
 
@@ -111,30 +103,18 @@ export class PostgresServerSyncDialect implements ServerSyncDialect {
111
103
  await db.schema
112
104
  .createTable('sync_table_commits')
113
105
  .ifNotExists()
114
- .addColumn('partition_id', 'text', (col) =>
115
- col.notNull().defaultTo('default')
116
- )
117
106
  .addColumn('table', 'text', (col) => col.notNull())
118
107
  .addColumn('commit_seq', 'bigint', (col) =>
119
108
  col.notNull().references('sync_commits.commit_seq').onDelete('cascade')
120
109
  )
121
- .addPrimaryKeyConstraint('sync_table_commits_pk', [
122
- 'partition_id',
123
- 'table',
124
- 'commit_seq',
125
- ])
110
+ .addPrimaryKeyConstraint('sync_table_commits_pk', ['table', 'commit_seq'])
126
111
  .execute();
127
112
 
128
- await sql`ALTER TABLE sync_table_commits
129
- ADD COLUMN IF NOT EXISTS partition_id text NOT NULL DEFAULT 'default'`.execute(
130
- db
131
- );
132
-
133
113
  await db.schema
134
114
  .createIndex('idx_sync_table_commits_commit_seq')
135
115
  .ifNotExists()
136
116
  .on('sync_table_commits')
137
- .columns(['partition_id', 'commit_seq'])
117
+ .columns(['commit_seq'])
138
118
  .execute();
139
119
 
140
120
  // Changes table with JSONB scopes
@@ -142,9 +122,6 @@ export class PostgresServerSyncDialect implements ServerSyncDialect {
142
122
  .createTable('sync_changes')
143
123
  .ifNotExists()
144
124
  .addColumn('change_id', 'bigserial', (col) => col.primaryKey())
145
- .addColumn('partition_id', 'text', (col) =>
146
- col.notNull().defaultTo('default')
147
- )
148
125
  .addColumn('commit_seq', 'bigint', (col) =>
149
126
  col.notNull().references('sync_commits.commit_seq').onDelete('cascade')
150
127
  )
@@ -156,23 +133,18 @@ export class PostgresServerSyncDialect implements ServerSyncDialect {
156
133
  .addColumn('scopes', 'jsonb', (col) => col.notNull())
157
134
  .execute();
158
135
 
159
- await sql`ALTER TABLE sync_changes
160
- ADD COLUMN IF NOT EXISTS partition_id text NOT NULL DEFAULT 'default'`.execute(
161
- db
162
- );
163
-
164
136
  await db.schema
165
137
  .createIndex('idx_sync_changes_commit_seq')
166
138
  .ifNotExists()
167
139
  .on('sync_changes')
168
- .columns(['partition_id', 'commit_seq'])
140
+ .columns(['commit_seq'])
169
141
  .execute();
170
142
 
171
143
  await db.schema
172
144
  .createIndex('idx_sync_changes_table')
173
145
  .ifNotExists()
174
146
  .on('sync_changes')
175
- .columns(['partition_id', 'table'])
147
+ .columns(['table'])
176
148
  .execute();
177
149
 
178
150
  await this.ensureIndex(
@@ -184,10 +156,7 @@ export class PostgresServerSyncDialect implements ServerSyncDialect {
184
156
  await db.schema
185
157
  .createTable('sync_client_cursors')
186
158
  .ifNotExists()
187
- .addColumn('partition_id', 'text', (col) =>
188
- col.notNull().defaultTo('default')
189
- )
190
- .addColumn('client_id', 'text', (col) => col.notNull())
159
+ .addColumn('client_id', 'text', (col) => col.primaryKey())
191
160
  .addColumn('actor_id', 'text', (col) => col.notNull())
192
161
  .addColumn('cursor', 'bigint', (col) => col.notNull().defaultTo(0))
193
162
  .addColumn('effective_scopes', 'jsonb', (col) =>
@@ -196,17 +165,8 @@ export class PostgresServerSyncDialect implements ServerSyncDialect {
196
165
  .addColumn('updated_at', 'timestamptz', (col) =>
197
166
  col.notNull().defaultTo(sql`now()`)
198
167
  )
199
- .addPrimaryKeyConstraint('sync_client_cursors_pk', [
200
- 'partition_id',
201
- 'client_id',
202
- ])
203
168
  .execute();
204
169
 
205
- await sql`ALTER TABLE sync_client_cursors
206
- ADD COLUMN IF NOT EXISTS partition_id text NOT NULL DEFAULT 'default'`.execute(
207
- db
208
- );
209
-
210
170
  await db.schema
211
171
  .createIndex('idx_sync_client_cursors_updated_at')
212
172
  .ifNotExists()
@@ -218,9 +178,6 @@ export class PostgresServerSyncDialect implements ServerSyncDialect {
218
178
  .createTable('sync_snapshot_chunks')
219
179
  .ifNotExists()
220
180
  .addColumn('chunk_id', 'text', (col) => col.primaryKey())
221
- .addColumn('partition_id', 'text', (col) =>
222
- col.notNull().defaultTo('default')
223
- )
224
181
  .addColumn('scope_key', 'text', (col) => col.notNull())
225
182
  .addColumn('scope', 'text', (col) => col.notNull())
226
183
  .addColumn('as_of_commit_seq', 'bigint', (col) => col.notNull())
@@ -238,11 +195,6 @@ export class PostgresServerSyncDialect implements ServerSyncDialect {
238
195
  .addColumn('expires_at', 'timestamptz', (col) => col.notNull())
239
196
  .execute();
240
197
 
241
- await sql`ALTER TABLE sync_snapshot_chunks
242
- ADD COLUMN IF NOT EXISTS partition_id text NOT NULL DEFAULT 'default'`.execute(
243
- db
244
- );
245
-
246
198
  await db.schema
247
199
  .createIndex('idx_sync_snapshot_chunks_expires_at')
248
200
  .ifNotExists()
@@ -255,7 +207,6 @@ export class PostgresServerSyncDialect implements ServerSyncDialect {
255
207
  .ifNotExists()
256
208
  .on('sync_snapshot_chunks')
257
209
  .columns([
258
- 'partition_id',
259
210
  'scope_key',
260
211
  'scope',
261
212
  'as_of_commit_seq',
@@ -290,28 +241,22 @@ export class PostgresServerSyncDialect implements ServerSyncDialect {
290
241
  // ===========================================================================
291
242
 
292
243
  async readMaxCommitSeq<DB extends SyncCoreDb>(
293
- db: Kysely<DB> | Transaction<DB>,
294
- options?: { partitionId?: string }
244
+ db: Kysely<DB> | Transaction<DB>
295
245
  ): Promise<number> {
296
- const partitionId = options?.partitionId ?? 'default';
297
246
  const res = await sql<{ max_seq: unknown }>`
298
247
  SELECT max(commit_seq) as max_seq
299
248
  FROM sync_commits
300
- WHERE partition_id = ${partitionId}
301
249
  `.execute(db);
302
250
 
303
251
  return coerceNumber(res.rows[0]?.max_seq) ?? 0;
304
252
  }
305
253
 
306
254
  async readMinCommitSeq<DB extends SyncCoreDb>(
307
- db: Kysely<DB> | Transaction<DB>,
308
- options?: { partitionId?: string }
255
+ db: Kysely<DB> | Transaction<DB>
309
256
  ): Promise<number> {
310
- const partitionId = options?.partitionId ?? 'default';
311
257
  const res = await sql<{ min_seq: unknown }>`
312
258
  SELECT min(commit_seq) as min_seq
313
259
  FROM sync_commits
314
- WHERE partition_id = ${partitionId}
315
260
  `.execute(db);
316
261
 
317
262
  return coerceNumber(res.rows[0]?.min_seq) ?? 0;
@@ -319,22 +264,15 @@ export class PostgresServerSyncDialect implements ServerSyncDialect {
319
264
 
320
265
  async readCommitSeqsForPull<DB extends SyncCoreDb>(
321
266
  db: Kysely<DB> | Transaction<DB>,
322
- args: {
323
- cursor: number;
324
- limitCommits: number;
325
- tables: string[];
326
- partitionId?: string;
327
- }
267
+ args: { cursor: number; limitCommits: number; tables: string[] }
328
268
  ): Promise<number[]> {
329
- const partitionId = args.partitionId ?? 'default';
330
269
  if (args.tables.length === 0) return [];
331
270
 
332
271
  if (args.tables.length === 1) {
333
272
  const res = await sql<{ commit_seq: unknown }>`
334
273
  SELECT commit_seq
335
274
  FROM sync_table_commits
336
- WHERE partition_id = ${partitionId}
337
- AND "table" = ${args.tables[0]}
275
+ WHERE "table" = ${args.tables[0]}
338
276
  AND commit_seq > ${args.cursor}
339
277
  ORDER BY commit_seq ASC
340
278
  LIMIT ${args.limitCommits}
@@ -351,8 +289,7 @@ export class PostgresServerSyncDialect implements ServerSyncDialect {
351
289
  const res = await sql<{ commit_seq: unknown }>`
352
290
  SELECT DISTINCT commit_seq
353
291
  FROM sync_table_commits
354
- WHERE partition_id = ${partitionId}
355
- AND "table" = ANY(${args.tables}::text[])
292
+ WHERE "table" = ANY(${args.tables}::text[])
356
293
  AND commit_seq > ${args.cursor}
357
294
  ORDER BY commit_seq ASC
358
295
  LIMIT ${args.limitCommits}
@@ -368,10 +305,8 @@ export class PostgresServerSyncDialect implements ServerSyncDialect {
368
305
 
369
306
  async readCommits<DB extends SyncCoreDb>(
370
307
  db: Kysely<DB> | Transaction<DB>,
371
- commitSeqs: number[],
372
- options?: { partitionId?: string }
308
+ commitSeqs: number[]
373
309
  ): Promise<SyncCommitRow[]> {
374
- const partitionId = options?.partitionId ?? 'default';
375
310
  if (commitSeqs.length === 0) return [];
376
311
 
377
312
  const res = await sql<{
@@ -383,7 +318,6 @@ export class PostgresServerSyncDialect implements ServerSyncDialect {
383
318
  SELECT commit_seq, actor_id, created_at, result_json
384
319
  FROM sync_commits
385
320
  WHERE commit_seq = ANY(${commitSeqs}::bigint[])
386
- AND partition_id = ${partitionId}
387
321
  ORDER BY commit_seq ASC
388
322
  `.execute(db);
389
323
 
@@ -397,14 +331,8 @@ export class PostgresServerSyncDialect implements ServerSyncDialect {
397
331
 
398
332
  async readChangesForCommits<DB extends SyncCoreDb>(
399
333
  db: Kysely<DB> | Transaction<DB>,
400
- args: {
401
- commitSeqs: number[];
402
- table: string;
403
- scopes: ScopeValues;
404
- partitionId?: string;
405
- }
334
+ args: { commitSeqs: number[]; table: string; scopes: ScopeValues }
406
335
  ): Promise<SyncChangeRow[]> {
407
- const partitionId = args.partitionId ?? 'default';
408
336
  if (args.commitSeqs.length === 0) return [];
409
337
 
410
338
  // Build JSONB containment conditions for scope filtering
@@ -431,7 +359,6 @@ export class PostgresServerSyncDialect implements ServerSyncDialect {
431
359
  SELECT commit_seq, "table", row_id, op, row_json, row_version, scopes
432
360
  FROM sync_changes
433
361
  WHERE commit_seq = ANY(${args.commitSeqs}::bigint[])
434
- AND partition_id = ${partitionId}
435
362
  AND "table" = ${args.table}
436
363
  `;
437
364
 
@@ -449,7 +376,6 @@ export class PostgresServerSyncDialect implements ServerSyncDialect {
449
376
  SELECT commit_seq, "table", row_id, op, row_json, row_version, scopes
450
377
  FROM sync_changes
451
378
  WHERE commit_seq = ANY(${args.commitSeqs}::bigint[])
452
- AND partition_id = ${partitionId}
453
379
  AND "table" = ${args.table}
454
380
  AND (${scopeFilter})
455
381
  ORDER BY commit_seq ASC, change_id ASC
@@ -476,7 +402,6 @@ export class PostgresServerSyncDialect implements ServerSyncDialect {
476
402
  scopes: ScopeValues;
477
403
  cursor: number;
478
404
  limitCommits: number;
479
- partitionId?: string;
480
405
  }
481
406
  ): Promise<
482
407
  Array<{
@@ -492,7 +417,6 @@ export class PostgresServerSyncDialect implements ServerSyncDialect {
492
417
  scopes: StoredScopes;
493
418
  }>
494
419
  > {
495
- const partitionId = args.partitionId ?? 'default';
496
420
  const limitCommits = Math.max(1, Math.min(500, args.limitCommits));
497
421
 
498
422
  // Build scope filter conditions
@@ -526,15 +450,12 @@ export class PostgresServerSyncDialect implements ServerSyncDialect {
526
450
  SELECT DISTINCT tc.commit_seq
527
451
  FROM sync_table_commits tc
528
452
  JOIN sync_commits cm ON cm.commit_seq = tc.commit_seq
529
- WHERE tc.partition_id = ${partitionId}
530
- AND tc."table" = ${args.table}
531
- AND cm.partition_id = ${partitionId}
453
+ WHERE tc."table" = ${args.table}
532
454
  AND tc.commit_seq > ${args.cursor}
533
455
  AND EXISTS (
534
456
  SELECT 1
535
457
  FROM sync_changes c
536
458
  WHERE c.commit_seq = tc.commit_seq
537
- AND c.partition_id = ${partitionId}
538
459
  AND c."table" = ${args.table}
539
460
  AND (${scopeFilter})
540
461
  )
@@ -555,9 +476,7 @@ export class PostgresServerSyncDialect implements ServerSyncDialect {
555
476
  FROM commit_seqs cs
556
477
  JOIN sync_commits cm ON cm.commit_seq = cs.commit_seq
557
478
  JOIN sync_changes c ON c.commit_seq = cs.commit_seq
558
- WHERE cm.partition_id = ${partitionId}
559
- AND c.partition_id = ${partitionId}
560
- AND c."table" = ${args.table}
479
+ WHERE c."table" = ${args.table}
561
480
  AND (${scopeFilter})
562
481
  ORDER BY cm.commit_seq ASC, c.change_id ASC
563
482
  `.execute(db);
@@ -584,7 +503,6 @@ export class PostgresServerSyncDialect implements ServerSyncDialect {
584
503
  cursor: number;
585
504
  limitCommits: number;
586
505
  batchSize?: number;
587
- partitionId?: string;
588
506
  }
589
507
  ): AsyncGenerator<{
590
508
  commit_seq: number;
@@ -633,7 +551,7 @@ export class PostgresServerSyncDialect implements ServerSyncDialect {
633
551
  SELECT
634
552
  c.change_id,
635
553
  row_number() OVER (
636
- PARTITION BY c.partition_id, c."table", c.row_id, c.scopes
554
+ PARTITION BY c."table", c.row_id, c.scopes
637
555
  ORDER BY c.commit_seq DESC, c.change_id DESC
638
556
  ) AS rn
639
557
  FROM sync_changes c
@@ -650,14 +568,12 @@ export class PostgresServerSyncDialect implements ServerSyncDialect {
650
568
  await sql`
651
569
  DELETE FROM sync_table_commits tc
652
570
  USING sync_commits cm
653
- WHERE cm.commit_seq = tc.commit_seq
654
- AND cm.partition_id = tc.partition_id
655
- AND cm.created_at < ${cutoffIso}
571
+ WHERE cm.commit_seq = tc.commit_seq
572
+ AND cm.created_at < ${cutoffIso}
656
573
  AND NOT EXISTS (
657
574
  SELECT 1
658
575
  FROM sync_changes c
659
576
  WHERE c.commit_seq = tc.commit_seq
660
- AND c.partition_id = tc.partition_id
661
577
  AND c."table" = tc."table"
662
578
  )
663
579
  `.execute(db);
@@ -672,21 +588,19 @@ export class PostgresServerSyncDialect implements ServerSyncDialect {
672
588
  async recordClientCursor<DB extends SyncCoreDb>(
673
589
  db: Kysely<DB> | Transaction<DB>,
674
590
  args: {
675
- partitionId?: string;
676
591
  clientId: string;
677
592
  actorId: string;
678
593
  cursor: number;
679
594
  effectiveScopes: ScopeValues;
680
595
  }
681
596
  ): Promise<void> {
682
- const partitionId = args.partitionId ?? 'default';
683
597
  const now = new Date().toISOString();
684
598
  const scopesJson = JSON.stringify(args.effectiveScopes);
685
599
 
686
600
  await sql`
687
- INSERT INTO sync_client_cursors (partition_id, client_id, actor_id, cursor, effective_scopes, updated_at)
688
- VALUES (${partitionId}, ${args.clientId}, ${args.actorId}, ${args.cursor}, ${scopesJson}::jsonb, ${now})
689
- ON CONFLICT(partition_id, client_id) DO UPDATE SET
601
+ INSERT INTO sync_client_cursors (client_id, actor_id, cursor, effective_scopes, updated_at)
602
+ VALUES (${args.clientId}, ${args.actorId}, ${args.cursor}, ${scopesJson}::jsonb, ${now})
603
+ ON CONFLICT(client_id) DO UPDATE SET
690
604
  actor_id = ${args.actorId},
691
605
  cursor = ${args.cursor},
692
606
  effective_scopes = ${scopesJson}::jsonb,
@@ -719,15 +633,12 @@ export class PostgresServerSyncDialect implements ServerSyncDialect {
719
633
 
720
634
  async readAffectedTablesFromChanges<DB extends SyncCoreDb>(
721
635
  db: Kysely<DB> | Transaction<DB>,
722
- commitSeq: number,
723
- options?: { partitionId?: string }
636
+ commitSeq: number
724
637
  ): Promise<string[]> {
725
- const partitionId = options?.partitionId ?? 'default';
726
638
  const res = await sql<{ table: string }>`
727
639
  SELECT DISTINCT "table"
728
640
  FROM sync_changes
729
641
  WHERE commit_seq = ${commitSeq}
730
- AND partition_id = ${partitionId}
731
642
  `.execute(db);
732
643
 
733
644
  return res.rows