@powersync/service-sync-rules 0.35.0 → 0.36.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.
Files changed (70) hide show
  1. package/README.md +3 -3
  2. package/dist/BucketDescription.d.ts +1 -1
  3. package/dist/BucketParameterQuerier.d.ts +23 -1
  4. package/dist/BucketParameterQuerier.js +24 -0
  5. package/dist/BucketParameterQuerier.js.map +1 -1
  6. package/dist/BucketSource.d.ts +1 -1
  7. package/dist/HydratedSyncRules.d.ts +1 -1
  8. package/dist/HydratedSyncRules.js +1 -1
  9. package/dist/HydrationState.d.ts +9 -5
  10. package/dist/HydrationState.js +3 -3
  11. package/dist/HydrationState.js.map +1 -1
  12. package/dist/SqlParameterQuery.js +3 -1
  13. package/dist/SqlParameterQuery.js.map +1 -1
  14. package/dist/SqlSyncRules.d.ts +1 -1
  15. package/dist/StorageVersion.d.ts +27 -0
  16. package/dist/StorageVersion.js +17 -0
  17. package/dist/StorageVersion.js.map +1 -0
  18. package/dist/SyncConfig.d.ts +9 -3
  19. package/dist/SyncConfig.js +9 -3
  20. package/dist/SyncConfig.js.map +1 -1
  21. package/dist/TableValuedFunctions.js +1 -0
  22. package/dist/TableValuedFunctions.js.map +1 -1
  23. package/dist/compiler/compiler.d.ts +2 -2
  24. package/dist/compiler/equality.d.ts +2 -0
  25. package/dist/compiler/equality.js +35 -0
  26. package/dist/compiler/equality.js.map +1 -1
  27. package/dist/compiler/parser.d.ts +1 -1
  28. package/dist/compiler/parser.js +7 -5
  29. package/dist/compiler/parser.js.map +1 -1
  30. package/dist/compiler/querier_graph.js +13 -2
  31. package/dist/compiler/querier_graph.js.map +1 -1
  32. package/dist/compiler/scope.d.ts +2 -2
  33. package/dist/compiler/scope.js +2 -1
  34. package/dist/compiler/scope.js.map +1 -1
  35. package/dist/compiler/sqlite.d.ts +4 -0
  36. package/dist/compiler/sqlite.js.map +1 -1
  37. package/dist/compiler/table.d.ts +26 -0
  38. package/dist/compiler/table.js +76 -0
  39. package/dist/compiler/table.js.map +1 -1
  40. package/dist/events/SqlEventDescriptor.d.ts +1 -1
  41. package/dist/events/SqlEventDescriptor.js +1 -1
  42. package/dist/from_yaml.js +74 -17
  43. package/dist/from_yaml.js.map +1 -1
  44. package/dist/index.d.ts +1 -0
  45. package/dist/index.js +1 -0
  46. package/dist/index.js.map +1 -1
  47. package/dist/json_schema.js +7 -0
  48. package/dist/json_schema.js.map +1 -1
  49. package/dist/streams/variant.js +2 -2
  50. package/dist/streams/variant.js.map +1 -1
  51. package/dist/sync_plan/evaluator/bucket_source.js +1 -1
  52. package/dist/sync_plan/evaluator/bucket_source.js.map +1 -1
  53. package/dist/sync_plan/evaluator/parameter_evaluator.d.ts +50 -3
  54. package/dist/sync_plan/evaluator/parameter_evaluator.js +235 -23
  55. package/dist/sync_plan/evaluator/parameter_evaluator.js.map +1 -1
  56. package/dist/sync_plan/evaluator/parameter_index_lookup_creator.d.ts +1 -2
  57. package/dist/sync_plan/evaluator/parameter_index_lookup_creator.js +31 -4
  58. package/dist/sync_plan/evaluator/parameter_index_lookup_creator.js.map +1 -1
  59. package/dist/sync_plan/expression_visitor.d.ts +4 -1
  60. package/dist/sync_plan/expression_visitor.js +21 -12
  61. package/dist/sync_plan/expression_visitor.js.map +1 -1
  62. package/dist/sync_plan/plan.d.ts +1 -1
  63. package/dist/types/custom_sqlite_value.d.ts +1 -1
  64. package/dist/types/custom_sqlite_value.js +1 -1
  65. package/dist/types.d.ts +1 -1
  66. package/dist/types.js +1 -1
  67. package/dist/utils.d.ts +1 -1
  68. package/dist/utils.js +1 -1
  69. package/package.json +6 -6
  70. package/schema/sync_rules.json +9 -0
package/README.md CHANGED
@@ -1,17 +1,17 @@
1
1
  # powersync-sync-rules
2
2
 
3
- A library containing logic for PowerSync sync rules.
3
+ A library containing logic for PowerSync sync config.
4
4
 
5
5
  This is not intended to be used directly by users of PowerSync. If you are interested in the internals, read on.
6
6
 
7
7
  # Overview
8
8
 
9
- A core design constraint is that sync rules define two operations:
9
+ A core design constraint is that the sync config defines two operations:
10
10
 
11
11
  1. Given a data row, compute a list of buckets that it belongs to.
12
12
  2. Given an authenticated user, return a list of buckets for the user.
13
13
 
14
- This implementation of sync rules use SQL queries to declaratively define those operations using familiar SQL operations.
14
+ This implementation of sync config uses SQL queries to declaratively define those operations using familiar SQL operations.
15
15
 
16
16
  We define (1) using data queries, and (2) using parameter queries.
17
17
 
@@ -35,7 +35,7 @@ export type NonEnumerableBucketDataSource = NonEnumerableSourceClass;
35
35
  export interface BucketDescription extends NonEnumerableBucketDataSource {
36
36
  /**
37
37
  * The id of the bucket, which is derived from the name of the bucket's definition
38
- * in the sync rules as well as the values returned by the parameter queries.
38
+ * in the sync config as well as the values returned by the parameter queries.
39
39
  */
40
40
  bucket: string;
41
41
  /**
@@ -68,7 +68,17 @@ export interface PendingQueriers {
68
68
  errors: QuerierError[];
69
69
  }
70
70
  export interface ParameterLookupSource {
71
- getParameterSets: (lookups: ScopedParameterLookup[]) => Promise<SqliteJsonRow[]>;
71
+ getParameterSets: (lookups: ScopedParameterLookup[], debugDefinition: string) => Promise<ParameterLookupRows[]>;
72
+ }
73
+ export interface ParameterLookupRows {
74
+ /**
75
+ * A lookup passed to {@link ParameterLookupSource.getParameterSets}.
76
+ */
77
+ lookup: ScopedParameterLookup;
78
+ /**
79
+ * Rows returned from the {@link lookup}.
80
+ */
81
+ rows: SqliteJsonRow[];
72
82
  }
73
83
  export interface QueryBucketDescriptorOptions extends ParameterLookupSource {
74
84
  parameters: RequestParameters;
@@ -88,6 +98,18 @@ export declare class ScopedParameterLookup {
88
98
  * The result of this getter is cached to avoid re-computing the JSON value for lookups that get reused.
89
99
  */
90
100
  get serializedRepresentation(): string;
101
+ /**
102
+ * Index id.
103
+ *
104
+ * This depends on the lookup being constructed with lookupName = indexId, and queryId = ''.
105
+ */
106
+ get indexId(): string;
107
+ /**
108
+ * Returns the "key" portion of the lookup values.
109
+ *
110
+ * This is this.values, excluding the first "lookupName" and "queryId".
111
+ */
112
+ get indexKey(): SqliteJsonValue[];
91
113
  static normalized(scope: ParameterLookupScope, lookup: UnscopedParameterLookup): ScopedParameterLookup;
92
114
  /**
93
115
  * Primarily for test fixtures.
@@ -33,6 +33,30 @@ export class ScopedParameterLookup {
33
33
  get serializedRepresentation() {
34
34
  return (this.#cachedSerializedForm ??= JSONBig.stringify(this.values));
35
35
  }
36
+ /**
37
+ * Index id.
38
+ *
39
+ * This depends on the lookup being constructed with lookupName = indexId, and queryId = ''.
40
+ */
41
+ get indexId() {
42
+ const indexId = this.values[0];
43
+ // TODO: Consider restructuring so that these values aren't present at all
44
+ if (this.values[1] != '') {
45
+ throw new Error('Unexpected queryId');
46
+ }
47
+ else if (typeof indexId != 'string') {
48
+ throw new Error('Unexpected indexId');
49
+ }
50
+ return indexId;
51
+ }
52
+ /**
53
+ * Returns the "key" portion of the lookup values.
54
+ *
55
+ * This is this.values, excluding the first "lookupName" and "queryId".
56
+ */
57
+ get indexKey() {
58
+ return this.values.slice(2);
59
+ }
36
60
  static normalized(scope, lookup) {
37
61
  return new ScopedParameterLookup(scope.source, [scope.lookupName, scope.queryId, ...lookup.lookupValues]);
38
62
  }
@@ -1 +1 @@
1
- {"version":3,"file":"BucketParameterQuerier.js","sourceRoot":"","sources":["../src/BucketParameterQuerier.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAC;AAMrD,OAAO,EAAE,uBAAuB,EAAE,MAAM,YAAY,CAAC;AA+ErD,MAAM,UAAU,4BAA4B,CAAC,QAAkC;IAC7E,OAAO;QACL,aAAa,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC;QACvD,iBAAiB,EAAE,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC;QACvE,KAAK,CAAC,8BAA8B,CAAC,MAA6B;YAChE,IAAI,OAAO,GAAqB,EAAE,CAAC;YACnC,KAAK,IAAI,CAAC,IAAI,QAAQ,EAAE,CAAC;gBACvB,IAAI,CAAC,CAAC,iBAAiB,EAAE,CAAC;oBACxB,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,8BAA8B,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;gBACpE,CAAC;YACH,CAAC;YACD,OAAO,OAAO,CAAC;QACjB,CAAC;KACF,CAAC;AACJ,CAAC;AAED;;;;GAIG;AACH,MAAM,OAAO,qBAAqB;IAChC,kEAAkE;IACzD,MAAM,CAA6B;IACnC,OAAO,CAA8B;IAE9C,qBAAqB,CAAU;IAE/B;;;;OAIG;IACH,IAAI,wBAAwB;QAC1B,OAAO,CAAC,IAAI,CAAC,qBAAqB,KAAK,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;IACzE,CAAC;IAED,MAAM,CAAC,UAAU,CAAC,KAA2B,EAAE,MAA+B;QAC5E,OAAO,IAAI,qBAAqB,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,UAAU,EAAE,KAAK,CAAC,OAAO,EAAE,GAAG,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC;IAC5G,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,MAAM,CAAC,KAA2B,EAAE,MAAyB;QAClE,OAAO,IAAI,qBAAqB,CAAC,KAAK,CAAC,MAAM,EAAE;YAC7C,KAAK,CAAC,UAAU;YAChB,KAAK,CAAC,OAAO;YACb,GAAG,MAAM,CAAC,GAAG,CAAC,uBAAuB,CAAC;SACvC,CAAC,CAAC;IACL,CAAC;IAED;;;OAGG;IACH,YAAoB,MAAmC,EAAE,MAAyB;QAChF,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QACpC,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;IACxB,CAAC;IAED;;OAEG;IACH,IAAI,MAAM;QACR,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;CACF;AAED,MAAM,OAAO,uBAAuB;IACzB,YAAY,CAAoB;IAEzC,MAAM,CAAC,UAAU,CAAC,MAAyB;QACzC,OAAO,IAAI,uBAAuB,CAAC,MAAM,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAC,CAAC;IAC1E,CAAC;IAED,YAAY,YAA+B;QACzC,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;IACnC,CAAC;CACF"}
1
+ {"version":3,"file":"BucketParameterQuerier.js","sourceRoot":"","sources":["../src/BucketParameterQuerier.ts"],"names":[],"mappings":"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"}
@@ -63,7 +63,7 @@ export type ScopedEvaluateParameterRow = (sourceTable: SourceTableInterface, row
63
63
  */
64
64
  export interface BucketDataSource {
65
65
  /**
66
- * Unique name of the data source within a sync rules version.
66
+ * Unique name of the data source within a replication stream.
67
67
  *
68
68
  * This may be used as the basis for bucketPrefix (or it could be ignored).
69
69
  */
@@ -3,7 +3,7 @@ import { CompatibilityContext, EvaluatedParameters, EvaluatedRow, EvaluationErro
3
3
  import { SourceTableInterface } from './SourceTableInterface.js';
4
4
  import { EvaluateRowOptions, SqliteRow } from './types.js';
5
5
  /**
6
- * Hydrated sync rules is sync rule definitions along with persisted state. Currently, the persisted state
6
+ * Hydrated sync config is sync config definitions along with persisted state. Currently, the persisted state
7
7
  * specifically affects bucket names.
8
8
  */
9
9
  export declare class HydratedSyncRules {
@@ -1,6 +1,6 @@
1
1
  import { CompatibilityContext, isEvaluatedParameters, isEvaluatedRow, isEvaluationError, mergeBucketParameterQueriers, mergeDataSources, mergeParameterIndexLookupCreators } from './index.js';
2
2
  /**
3
- * Hydrated sync rules is sync rule definitions along with persisted state. Currently, the persisted state
3
+ * Hydrated sync config is sync config definitions along with persisted state. Currently, the persisted state
4
4
  * specifically affects bucket names.
5
5
  */
6
6
  export class HydratedSyncRules {
@@ -6,7 +6,11 @@ export interface BucketDataScope {
6
6
  source: BucketDataSource;
7
7
  }
8
8
  export interface ParameterLookupScope {
9
- /** The lookup name + queryid is used to reference the parameter lookup record. */
9
+ /**
10
+ * The lookup name + queryid is used to reference the parameter lookup record.
11
+ *
12
+ * In newer storage versions, lookupName = indexId, and queryId = ''.
13
+ */
10
14
  lookupName: string;
11
15
  queryId: string;
12
16
  /** Source used to generate parameter lookups. */
@@ -16,7 +20,7 @@ export interface ParameterLookupScope {
16
20
  * Hydration state information for a source.
17
21
  *
18
22
  * This is what keeps track of bucket name and parameter lookup mappings for hydration. This can be used
19
- * both to re-use mappings across hydrations of different sync rule versions, or to generate new mappings.
23
+ * both to re-use mappings across hydrations of different sync config versions, or to generate new mappings.
20
24
  */
21
25
  export interface HydrationState {
22
26
  /**
@@ -37,13 +41,13 @@ export declare const DEFAULT_HYDRATION_STATE: HydrationState;
37
41
  /**
38
42
  * Transforms bucket ids generated when evaluating the row by e.g. encoding version information.
39
43
  *
40
- * Because buckets are recreated on a sync rule redeploy, it makes sense to use different bucket ids (otherwise, clients
44
+ * Because buckets are recreated on a sync config redeploy, it makes sense to use different bucket ids (otherwise, clients
41
45
  * may run into checksum errors causing a sync to take longer than necessary or breaking progress).
42
46
  *
43
- * So, this transformer receives the original bucket id as generated by defined sync rules, and can prepend a version
47
+ * So, this transformer receives the original bucket id as generated by defined sync config, and can prepend a version
44
48
  * identifier.
45
49
  *
46
50
  * Note that this transformation has not been present in older versions of the sync service. To preserve backwards
47
- * compatibility, sync rules will not use this without an opt-in.
51
+ * compatibility, sync config will not use this without an opt-in.
48
52
  */
49
53
  export declare function versionedHydrationState(version: number): HydrationState;
@@ -17,14 +17,14 @@ export const DEFAULT_HYDRATION_STATE = {
17
17
  /**
18
18
  * Transforms bucket ids generated when evaluating the row by e.g. encoding version information.
19
19
  *
20
- * Because buckets are recreated on a sync rule redeploy, it makes sense to use different bucket ids (otherwise, clients
20
+ * Because buckets are recreated on a sync config redeploy, it makes sense to use different bucket ids (otherwise, clients
21
21
  * may run into checksum errors causing a sync to take longer than necessary or breaking progress).
22
22
  *
23
- * So, this transformer receives the original bucket id as generated by defined sync rules, and can prepend a version
23
+ * So, this transformer receives the original bucket id as generated by defined sync config, and can prepend a version
24
24
  * identifier.
25
25
  *
26
26
  * Note that this transformation has not been present in older versions of the sync service. To preserve backwards
27
- * compatibility, sync rules will not use this without an opt-in.
27
+ * compatibility, sync config will not use this without an opt-in.
28
28
  */
29
29
  export function versionedHydrationState(version) {
30
30
  return {
@@ -1 +1 @@
1
- {"version":3,"file":"HydrationState.js","sourceRoot":"","sources":["../src/HydrationState.ts"],"names":[],"mappings":"AAmCA;;;;GAIG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAmB;IACrD,oBAAoB,CAAC,MAAwB;QAC3C,OAAO;YACL,YAAY,EAAE,MAAM,CAAC,UAAU;YAC/B,MAAM;SACP,CAAC;IACJ,CAAC;IACD,4BAA4B,CAAC,MAAM;QACjC,OAAO,MAAM,CAAC,kBAAkB,CAAC;IACnC,CAAC;CACF,CAAC;AAEF;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,uBAAuB,CAAC,OAAe;IACrD,OAAO;QACL,oBAAoB,CAAC,MAAwB;YAC3C,OAAO;gBACL,YAAY,EAAE,GAAG,OAAO,IAAI,MAAM,CAAC,UAAU,EAAE;gBAC/C,MAAM;aACP,CAAC;QACJ,CAAC;QAED,4BAA4B,CAAC,MAAmC;YAC9D,kCAAkC;YAClC,OAAO,MAAM,CAAC,kBAAkB,CAAC;QACnC,CAAC;KACF,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"HydrationState.js","sourceRoot":"","sources":["../src/HydrationState.ts"],"names":[],"mappings":"AAuCA;;;;GAIG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAmB;IACrD,oBAAoB,CAAC,MAAwB;QAC3C,OAAO;YACL,YAAY,EAAE,MAAM,CAAC,UAAU;YAC/B,MAAM;SACP,CAAC;IACJ,CAAC;IACD,4BAA4B,CAAC,MAAM;QACjC,OAAO,MAAM,CAAC,kBAAkB,CAAC;IACnC,CAAC;CACF,CAAC;AAEF;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,uBAAuB,CAAC,OAAe;IACrD,OAAO;QACL,oBAAoB,CAAC,MAAwB;YAC3C,OAAO;gBACL,YAAY,EAAE,GAAG,OAAO,IAAI,MAAM,CAAC,UAAU,EAAE;gBAC/C,MAAM;aACP,CAAC;QACJ,CAAC;QAED,4BAA4B,CAAC,MAAmC;YAC9D,kCAAkC;YAClC,OAAO,MAAM,CAAC,kBAAkB,CAAC;QACnC,CAAC;KACF,CAAC;AACJ,CAAC"}
@@ -406,11 +406,13 @@ export class SqlParameterQuery {
406
406
  queryDynamicBucketDescriptions: async () => []
407
407
  };
408
408
  }
409
+ const debugName = `Legacy Bucket Definition ${bucketDataScope.source.uniqueName}`;
409
410
  return {
410
411
  staticBuckets: [],
411
412
  hasDynamicBuckets: true,
412
413
  queryDynamicBucketDescriptions: async (source) => {
413
- const bucketParameters = await source.getParameterSets(lookups);
414
+ const lookupResults = await source.getParameterSets(lookups, debugName);
415
+ const bucketParameters = lookupResults.flatMap(({ rows }) => rows);
414
416
  return this.resolveBucketDescriptions(bucketParameters, requestParameters, bucketDataScope).map((bucket) => {
415
417
  return resolvedBucket(bucket, { definition: this.descriptorName, inclusion_reasons: reasons });
416
418
  });
@@ -1 +1 @@
1
- {"version":3,"file":"SqlParameterQuery.js","sourceRoot":"","sources":["../src/SqlParameterQuery.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SqlParameterQuery.js","sourceRoot":"","sources":["../src/SqlParameterQuery.ts"],"names":[],"mappings":"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"}
@@ -44,7 +44,7 @@ export interface GetQuerierOptions {
44
44
  *
45
45
  * For streams, this is invoked to check whether the client has opened the relevant stream.
46
46
  *
47
- * @param name The name of the stream as it appears in the sync rule definitions.
47
+ * @param name The name of the stream as it appears in the sync config definitions.
48
48
  * @returns If the strema has been opened by the client, the stream parameters for that particular stream. Otherwise
49
49
  * null.
50
50
  */
@@ -0,0 +1,27 @@
1
+ /**
2
+ * This is only for the purpose of validating the version in the sync config, for reporting configurable versions
3
+ * upfront.
4
+ *
5
+ * The service itself may:
6
+ * 1. Support additional storage versions, such as legacy storage versions.
7
+ * 2. Attach specific behavior to storage versions.
8
+ *
9
+ * See: service-core/src/storage/StorageVersionConfig.js
10
+ */
11
+ export interface ValidatedStorageVersion {
12
+ version: number;
13
+ /**
14
+ * If false, this version may be dropped or fundamentally changed in any future service version.
15
+ */
16
+ stable: boolean;
17
+ }
18
+ export declare const STORAGE_VERSIONS: Map<number, ValidatedStorageVersion>;
19
+ export declare const DEFAULT_STORAGE_VERSION: ValidatedStorageVersion;
20
+ /**
21
+ * Parse a storage version.
22
+ *
23
+ * If the version number is unknown or not supported, returns undefined.
24
+ *
25
+ * Generally, even storage versions are stable, and odd storage versions unstable.
26
+ */
27
+ export declare function validateStorageVersion(version: number): ValidatedStorageVersion | undefined;
@@ -0,0 +1,17 @@
1
+ export const STORAGE_VERSIONS = new Map([
2
+ // version 1 is supported by the storage modules, but cannot be used in sync config
3
+ [2, { version: 2, stable: true }],
4
+ [3, { version: 3, stable: false }]
5
+ ]);
6
+ export const DEFAULT_STORAGE_VERSION = STORAGE_VERSIONS.get(2);
7
+ /**
8
+ * Parse a storage version.
9
+ *
10
+ * If the version number is unknown or not supported, returns undefined.
11
+ *
12
+ * Generally, even storage versions are stable, and odd storage versions unstable.
13
+ */
14
+ export function validateStorageVersion(version) {
15
+ return STORAGE_VERSIONS.get(version);
16
+ }
17
+ //# sourceMappingURL=StorageVersion.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"StorageVersion.js","sourceRoot":"","sources":["../src/StorageVersion.ts"],"names":[],"mappings":"AAmBA,MAAM,CAAC,MAAM,gBAAgB,GAAG,IAAI,GAAG,CAAkC;IACvE,mFAAmF;IACnF,CAAC,CAAC,EAAE,EAAE,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;IACjC,CAAC,CAAC,EAAE,EAAE,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC;CACnC,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,uBAAuB,GAAG,gBAAgB,CAAC,GAAG,CAAC,CAAC,CAAE,CAAC;AAEhE;;;;;;GAMG;AACH,MAAM,UAAU,sBAAsB,CAAC,OAAe;IACpD,OAAO,gBAAgB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;AACvC,CAAC"}
@@ -15,17 +15,23 @@ export declare abstract class SyncConfig {
15
15
  bucketParameterLookupSources: ParameterIndexLookupCreator[];
16
16
  bucketSources: BucketSource[];
17
17
  compatibility: CompatibilityContext;
18
+ /**
19
+ * If not defined, the storage module picks the latest stable version.
20
+ *
21
+ * Only supported storage versions can be set here when parsing from yaml.
22
+ */
23
+ storageVersion: number | undefined;
18
24
  eventDescriptors: SqlEventDescriptor[];
19
25
  /**
20
- * The (YAML-based) source contents from which these sync rules have been derived.
26
+ * The (YAML-based) source contents from which this sync config has been derived.
21
27
  */
22
28
  content: string;
23
29
  constructor(content: string);
24
30
  /**
25
- * Hydrate the sync rule definitions with persisted state into runnable sync rules.
31
+ * Hydrate these sync config definitions with persisted state into runnable sync config.
26
32
  *
27
33
  * Note: versionedBucketIds is not checked here: It is set at a higher level based
28
- * on the storage version of the persisted sync rules, and used in hydrationState.
34
+ * on the storage version of the replication stream, and used in hydrationState.
29
35
  *
30
36
  * @param params.hydrationState Transforms bucket ids based on persisted state.
31
37
  */
@@ -10,19 +10,25 @@ export class SyncConfig {
10
10
  bucketParameterLookupSources = [];
11
11
  bucketSources = [];
12
12
  compatibility = CompatibilityContext.FULL_BACKWARDS_COMPATIBILITY;
13
+ /**
14
+ * If not defined, the storage module picks the latest stable version.
15
+ *
16
+ * Only supported storage versions can be set here when parsing from yaml.
17
+ */
18
+ storageVersion;
13
19
  eventDescriptors = [];
14
20
  /**
15
- * The (YAML-based) source contents from which these sync rules have been derived.
21
+ * The (YAML-based) source contents from which this sync config has been derived.
16
22
  */
17
23
  content;
18
24
  constructor(content) {
19
25
  this.content = content;
20
26
  }
21
27
  /**
22
- * Hydrate the sync rule definitions with persisted state into runnable sync rules.
28
+ * Hydrate these sync config definitions with persisted state into runnable sync config.
23
29
  *
24
30
  * Note: versionedBucketIds is not checked here: It is set at a higher level based
25
- * on the storage version of the persisted sync rules, and used in hydrationState.
31
+ * on the storage version of the replication stream, and used in hydrationState.
26
32
  *
27
33
  * @param params.hydrationState Transforms bucket ids based on persisted state.
28
34
  */
@@ -1 +1 @@
1
- {"version":3,"file":"SyncConfig.js","sourceRoot":"","sources":["../src/SyncConfig.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SyncConfig.js","sourceRoot":"","sources":["../src/SyncConfig.ts"],"names":[],"mappings":"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"}
@@ -16,6 +16,7 @@ function jsonEachImplementation(fixedJsonBehavior) {
16
16
  }
17
17
  let values = [];
18
18
  try {
19
+ // FIXME: This should use JsonBig to parse integers as bigints.
19
20
  values = JSON.parse(valueString);
20
21
  }
21
22
  catch (e) {
@@ -1 +1 @@
1
- {"version":3,"file":"TableValuedFunctions.js","sourceRoot":"","sources":["../src/TableValuedFunctions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAwB,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAE/E,OAAO,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAS/C,SAAS,sBAAsB,CAAC,iBAA0B;IACxD,OAAO;QACL,IAAI,EAAE,WAAW;QACjB,IAAI,CAAC,IAAmB;YACtB,IAAI,IAAI,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC;gBACrB,MAAM,IAAI,KAAK,CAAC,qCAAqC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;YACtE,CAAC;YACD,MAAM,WAAW,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;YAC5B,IAAI,WAAW,KAAK,IAAI,EAAE,CAAC;gBACzB,OAAO,EAAE,CAAC;YACZ,CAAC;iBAAM,IAAI,OAAO,WAAW,KAAK,QAAQ,EAAE,CAAC;gBAC3C,MAAM,IAAI,KAAK,CAAC,sDAAsD,WAAW,EAAE,CAAC,CAAC;YACvF,CAAC;YACD,IAAI,MAAM,GAAsB,EAAE,CAAC;YACnC,IAAI,CAAC;gBACH,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;YACnC,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACX,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC;YAC1C,CAAC;YACD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;gBAC3B,MAAM,IAAI,KAAK,CAAC,0BAA0B,WAAW,EAAE,CAAC,CAAC;YAC3D,CAAC;YAED,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;gBACtB,OAAO;oBACL,KAAK,EAAE,iBAAiB,CAAC,iBAAiB,EAAE,CAAC,CAAC;iBAC/C,CAAC;YACJ,CAAC,CAAC,CAAC;QACL,CAAC;QACD,MAAM,EAAE,8BAA8B;QACtC,aAAa,EAAE,yDAAyD;KACzE,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,4BAA4B,CAAC,aAAmC;IAC9E,OAAO,EAAE,SAAS,EAAE,sBAAsB,CAAC,aAAa,CAAC,SAAS,CAAC,mBAAmB,CAAC,gBAAgB,CAAC,CAAC,EAAE,CAAC;AAC9G,CAAC"}
1
+ {"version":3,"file":"TableValuedFunctions.js","sourceRoot":"","sources":["../src/TableValuedFunctions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAwB,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAE/E,OAAO,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAS/C,SAAS,sBAAsB,CAAC,iBAA0B;IACxD,OAAO;QACL,IAAI,EAAE,WAAW;QACjB,IAAI,CAAC,IAAmB;YACtB,IAAI,IAAI,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC;gBACrB,MAAM,IAAI,KAAK,CAAC,qCAAqC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;YACtE,CAAC;YACD,MAAM,WAAW,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;YAC5B,IAAI,WAAW,KAAK,IAAI,EAAE,CAAC;gBACzB,OAAO,EAAE,CAAC;YACZ,CAAC;iBAAM,IAAI,OAAO,WAAW,KAAK,QAAQ,EAAE,CAAC;gBAC3C,MAAM,IAAI,KAAK,CAAC,sDAAsD,WAAW,EAAE,CAAC,CAAC;YACvF,CAAC;YACD,IAAI,MAAM,GAAsB,EAAE,CAAC;YACnC,IAAI,CAAC;gBACH,+DAA+D;gBAC/D,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;YACnC,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACX,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC;YAC1C,CAAC;YACD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;gBAC3B,MAAM,IAAI,KAAK,CAAC,0BAA0B,WAAW,EAAE,CAAC,CAAC;YAC3D,CAAC;YAED,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;gBACtB,OAAO;oBACL,KAAK,EAAE,iBAAiB,CAAC,iBAAiB,EAAE,CAAC,CAAC;iBAC/C,CAAC;YACJ,CAAC,CAAC,CAAC;QACL,CAAC;QACD,MAAM,EAAE,8BAA8B;QACtC,aAAa,EAAE,yDAAyD;KACzE,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,4BAA4B,CAAC,aAAmC;IAC9E,OAAO,EAAE,SAAS,EAAE,sBAAsB,CAAC,aAAa,CAAC,SAAS,CAAC,mBAAmB,CAAC,gBAAgB,CAAC,CAAC,EAAE,CAAC;AAC9G,CAAC"}
@@ -3,7 +3,7 @@ import { StreamOptions, SyncPlan } from '../sync_plan/plan.js';
3
3
  import { SourceSchema } from '../types.js';
4
4
  import { StreamResolver } from './bucket_resolver.js';
5
5
  import { PointLookup, RowEvaluator } from './rows.js';
6
- import { PreparedSubquery } from './sqlite.js';
6
+ import { CommonTableExpression, PreparedSubquery } from './sqlite.js';
7
7
  export interface SyncStreamsCompilerOptions {
8
8
  /**
9
9
  * Used exclusively for linting against the given {@link schema}.
@@ -67,7 +67,7 @@ export interface IndividualSyncStreamCompiler {
67
67
  * Makes a common table expression prepared through {@link SyncStreamsCompiler.commonTableExpression} available when
68
68
  * parsing queries for this stream.
69
69
  */
70
- registerCommonTableExpression(name: string, cte: PreparedSubquery): void;
70
+ registerCommonTableExpression(name: string, cte: CommonTableExpression): void;
71
71
  /**
72
72
  * Validates and adds a parameter query to this stream.
73
73
  *
@@ -1,3 +1,4 @@
1
+ import { SqliteParameterValue } from '../types.js';
1
2
  /**
2
3
  * Stable value-based hashcodes for JavaScript. The sync streams compiler uses hashmaps derived from this to efficiently
3
4
  * de-duplicate equivalent expressions and lookups.
@@ -26,6 +27,7 @@ export declare class StableHasher {
26
27
  */
27
28
  static readonly defaultEquality: Equality<Equatable>;
28
29
  static readonly defaultListEquality: Equality<Iterable<Equatable>>;
30
+ static readonly parameterValueEquality: Equality<SqliteParameterValue>;
29
31
  }
30
32
  /**
31
33
  * A generic equality relation on objects.
@@ -60,6 +60,41 @@ export class StableHasher {
60
60
  }
61
61
  };
62
62
  static defaultListEquality = listEquality(this.defaultEquality);
63
+ static parameterValueEquality = (() => {
64
+ const buf = new DataView(new ArrayBuffer(8));
65
+ return {
66
+ equals: function (a, b) {
67
+ // Allowed values are numbers, string, and bigint. All of them compare correctly with ===
68
+ return a === b;
69
+ },
70
+ hash: function (hasher, value) {
71
+ switch (typeof value) {
72
+ case 'string':
73
+ hasher.addString(value);
74
+ break;
75
+ case 'number':
76
+ const normalized = value || 0; // Ensure 0 and -0 have the same hash code.
77
+ buf.setFloat64(0, value, true);
78
+ hasher.addHash(buf.getUint32(0, true));
79
+ hasher.addHash(buf.getUint32(4, true));
80
+ break;
81
+ case 'bigint':
82
+ // Most bigints we're dealing with fit in 64 bits. Truncating is fine, we're building hashes anyway.
83
+ buf.setBigInt64(0, value, true);
84
+ hasher.addHash(buf.getUint32(0, true));
85
+ hasher.addHash(buf.getUint32(4, true));
86
+ case 'boolean':
87
+ hasher.addHash(value ? 0 : 1);
88
+ break;
89
+ case 'symbol':
90
+ case 'undefined':
91
+ case 'object':
92
+ case 'function':
93
+ throw new Error(`Not a parameter value: ${value}`);
94
+ }
95
+ }
96
+ };
97
+ })();
63
98
  }
64
99
  /**
65
100
  * Creates an equality operator matching iterables with elements compared by an inner equality.
@@ -1 +1 @@
1
- {"version":3,"file":"equality.js","sourceRoot":"","sources":["../../src/compiler/equality.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"equality.js","sourceRoot":"","sources":["../../src/compiler/equality.ts"],"names":[],"mappings":"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"}
@@ -87,7 +87,7 @@ export declare class StreamQueryParser {
87
87
  private processResultColumns;
88
88
  private parseExpression;
89
89
  private resolveTableName;
90
- private resolveSoure;
90
+ private resolveSource;
91
91
  private warnUnsupported;
92
92
  private compileFilterClause;
93
93
  private mapBaseExpression;
@@ -7,7 +7,7 @@ import { composeExpressionNodes, FilterConditionSimplifier } from './filter_simp
7
7
  import { ExpressionColumnSource, StarColumnSource } from './rows.js';
8
8
  import { SqlScope } from './scope.js';
9
9
  import { PostgresToSqlite } from './sqlite.js';
10
- import { BaseSourceResultSet, PhysicalSourceResultSet, SyntacticResultSetSource, TableValuedResultSet } from './table.js';
10
+ import { BaseSourceResultSet, CloneTableReferences, PhysicalSourceResultSet, SyntacticResultSetSource, TableValuedResultSet } from './table.js';
11
11
  export class StreamQueryParser {
12
12
  errors;
13
13
  compiler;
@@ -184,7 +184,9 @@ export class StreamQueryParser {
184
184
  // If this references a CTE in scope, use that instead of names.
185
185
  const cte = from.name.schema == null ? scope.resolveCommonTableExpression(from.name.name) : null;
186
186
  if (cte) {
187
- this.addSubquery(source, cte);
187
+ // Inline the CTE here by cloning it for this specific reference, see the comment on CloneTableReferences for
188
+ // why this is necessary.
189
+ this.addSubquery(source, CloneTableReferences.clonePreparedSubquery(cte, this.nodeLocations));
188
190
  }
189
191
  else {
190
192
  // Not a CTE, so treat it as a source database table.
@@ -357,7 +359,7 @@ export class StreamQueryParser {
357
359
  // references.
358
360
  const defaultResultSet = this.statementScope.defaultResultSet;
359
361
  if (defaultResultSet) {
360
- return this.resolveSoure(defaultResultSet);
362
+ return this.resolveSource(defaultResultSet);
361
363
  }
362
364
  else {
363
365
  this.errors.report('Invalid unqualified reference since multiple tables are in scope', node);
@@ -370,10 +372,10 @@ export class StreamQueryParser {
370
372
  this.errors.report(`Table '${name}' has not been added in a FROM clause here.`, node);
371
373
  return null;
372
374
  }
373
- return this.resolveSoure(result);
375
+ return this.resolveSource(result);
374
376
  }
375
377
  }
376
- resolveSoure(source) {
378
+ resolveSource(source) {
377
379
  if (this.resultSets.has(source)) {
378
380
  return this.resultSets.get(source);
379
381
  }