@rocicorp/zero 0.10.2025011100 → 0.11.2025011401

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 (191) hide show
  1. package/out/advanced.js +1 -1
  2. package/out/{chunk-Y6OVFUGE.js → chunk-I5GSZARI.js} +1 -7
  3. package/out/{chunk-Y6OVFUGE.js.map → chunk-I5GSZARI.js.map} +1 -1
  4. package/out/{chunk-FEVIDCUL.js → chunk-JWWOECJ3.js} +575 -691
  5. package/out/chunk-JWWOECJ3.js.map +7 -0
  6. package/out/replicache/src/btree/node.d.ts +5 -3
  7. package/out/replicache/src/btree/node.d.ts.map +1 -1
  8. package/out/replicache/src/btree/read.d.ts +4 -1
  9. package/out/replicache/src/btree/read.d.ts.map +1 -1
  10. package/out/replicache/src/btree/write.d.ts +4 -1
  11. package/out/replicache/src/btree/write.d.ts.map +1 -1
  12. package/out/replicache/src/dag/key-type-enum.d.ts +0 -1
  13. package/out/replicache/src/dag/key-type-enum.d.ts.map +1 -1
  14. package/out/replicache/src/db/index-operation-enum.d.ts +0 -1
  15. package/out/replicache/src/db/index-operation-enum.d.ts.map +1 -1
  16. package/out/replicache/src/db/index.d.ts +4 -1
  17. package/out/replicache/src/db/index.d.ts.map +1 -1
  18. package/out/replicache/src/db/meta-type-enum.d.ts +0 -1
  19. package/out/replicache/src/db/meta-type-enum.d.ts.map +1 -1
  20. package/out/replicache/src/db/read.d.ts +4 -1
  21. package/out/replicache/src/db/read.d.ts.map +1 -1
  22. package/out/replicache/src/db/rebase.d.ts +5 -2
  23. package/out/replicache/src/db/rebase.d.ts.map +1 -1
  24. package/out/replicache/src/db/write.d.ts +8 -5
  25. package/out/replicache/src/db/write.d.ts.map +1 -1
  26. package/out/replicache/src/format-version-enum.d.ts +0 -2
  27. package/out/replicache/src/format-version-enum.d.ts.map +1 -1
  28. package/out/replicache/src/format-version.d.ts +4 -1
  29. package/out/replicache/src/format-version.d.ts.map +1 -1
  30. package/out/replicache/src/invoke-kind-enum.d.ts +0 -1
  31. package/out/replicache/src/invoke-kind-enum.d.ts.map +1 -1
  32. package/out/replicache/src/mutation-recovery.d.ts.map +1 -1
  33. package/out/replicache/src/persist/clients.d.ts +3 -1
  34. package/out/replicache/src/persist/clients.d.ts.map +1 -1
  35. package/out/replicache/src/persist/persist.d.ts +4 -1
  36. package/out/replicache/src/persist/persist.d.ts.map +1 -1
  37. package/out/replicache/src/persist/refresh.d.ts +4 -1
  38. package/out/replicache/src/persist/refresh.d.ts.map +1 -1
  39. package/out/replicache/src/replicache-impl.d.ts +1 -1
  40. package/out/replicache/src/replicache-impl.d.ts.map +1 -1
  41. package/out/replicache/src/subscriptions.d.ts +5 -3
  42. package/out/replicache/src/subscriptions.d.ts.map +1 -1
  43. package/out/replicache/src/sync/diff.d.ts +4 -1
  44. package/out/replicache/src/sync/diff.d.ts.map +1 -1
  45. package/out/replicache/src/sync/handle-pull-response-result-type-enum.d.ts +0 -1
  46. package/out/replicache/src/sync/handle-pull-response-result-type-enum.d.ts.map +1 -1
  47. package/out/replicache/src/sync/pull.d.ts +4 -3
  48. package/out/replicache/src/sync/pull.d.ts.map +1 -1
  49. package/out/shared/src/enum.d.ts +37 -0
  50. package/out/shared/src/enum.d.ts.map +1 -0
  51. package/out/shared/src/enum.js +2 -0
  52. package/out/shared/src/enum.js.map +1 -0
  53. package/out/solid.js +2 -3
  54. package/out/solid.js.map +1 -1
  55. package/out/zero-cache/src/db/mode-enum.d.ts +5 -0
  56. package/out/zero-cache/src/db/mode-enum.d.ts.map +1 -0
  57. package/out/zero-cache/src/db/mode-enum.js +3 -0
  58. package/out/zero-cache/src/db/mode-enum.js.map +1 -0
  59. package/out/zero-cache/src/db/pg-to-lite.d.ts.map +1 -1
  60. package/out/zero-cache/src/db/pg-to-lite.js +2 -1
  61. package/out/zero-cache/src/db/pg-to-lite.js.map +1 -1
  62. package/out/zero-cache/src/db/postgres-type-class-enum.d.ts +15 -0
  63. package/out/zero-cache/src/db/postgres-type-class-enum.d.ts.map +1 -0
  64. package/out/zero-cache/src/db/postgres-type-class-enum.js +10 -0
  65. package/out/zero-cache/src/db/postgres-type-class-enum.js.map +1 -0
  66. package/out/zero-cache/src/db/specs.d.ts +6 -15
  67. package/out/zero-cache/src/db/specs.d.ts.map +1 -1
  68. package/out/zero-cache/src/db/specs.js +1 -11
  69. package/out/zero-cache/src/db/specs.js.map +1 -1
  70. package/out/zero-cache/src/db/transaction-pool.d.ts +3 -4
  71. package/out/zero-cache/src/db/transaction-pool.d.ts.map +1 -1
  72. package/out/zero-cache/src/db/transaction-pool.js +1 -5
  73. package/out/zero-cache/src/db/transaction-pool.js.map +1 -1
  74. package/out/zero-cache/src/server/main.d.ts.map +1 -1
  75. package/out/zero-cache/src/server/main.js +13 -14
  76. package/out/zero-cache/src/server/main.js.map +1 -1
  77. package/out/zero-cache/src/services/change-source/pg/change-source.d.ts.map +1 -1
  78. package/out/zero-cache/src/services/change-source/pg/change-source.js +17 -48
  79. package/out/zero-cache/src/services/change-source/pg/change-source.js.map +1 -1
  80. package/out/zero-cache/src/services/change-source/pg/initial-sync.d.ts.map +1 -1
  81. package/out/zero-cache/src/services/change-source/pg/initial-sync.js +13 -9
  82. package/out/zero-cache/src/services/change-source/pg/initial-sync.js.map +1 -1
  83. package/out/zero-cache/src/services/change-source/pg/schema/ddl.d.ts +10 -10
  84. package/out/zero-cache/src/services/change-source/pg/schema/published.d.ts +4 -4
  85. package/out/zero-cache/src/services/change-source/pg/schema/shard.d.ts +1 -1
  86. package/out/zero-cache/src/services/change-source/pg/sync-schema.d.ts.map +1 -1
  87. package/out/zero-cache/src/services/change-source/pg/sync-schema.js +7 -6
  88. package/out/zero-cache/src/services/change-source/pg/sync-schema.js.map +1 -1
  89. package/out/zero-cache/src/services/change-source/protocol/current/control.d.ts +0 -19
  90. package/out/zero-cache/src/services/change-source/protocol/current/control.d.ts.map +1 -1
  91. package/out/zero-cache/src/services/change-source/protocol/current/control.js +0 -19
  92. package/out/zero-cache/src/services/change-source/protocol/current/control.js.map +1 -1
  93. package/out/zero-cache/src/services/change-source/protocol/current/data.d.ts +8 -8
  94. package/out/zero-cache/src/services/change-source/protocol/current/downstream.d.ts +18 -12
  95. package/out/zero-cache/src/services/change-source/protocol/current/downstream.d.ts.map +1 -1
  96. package/out/zero-cache/src/services/change-source/protocol/current/downstream.js +5 -1
  97. package/out/zero-cache/src/services/change-source/protocol/current/downstream.js.map +1 -1
  98. package/out/zero-cache/src/services/change-streamer/change-streamer-service.d.ts +0 -2
  99. package/out/zero-cache/src/services/change-streamer/change-streamer-service.d.ts.map +1 -1
  100. package/out/zero-cache/src/services/change-streamer/change-streamer-service.js +20 -10
  101. package/out/zero-cache/src/services/change-streamer/change-streamer-service.js.map +1 -1
  102. package/out/zero-cache/src/services/change-streamer/change-streamer.d.ts +6 -10
  103. package/out/zero-cache/src/services/change-streamer/change-streamer.d.ts.map +1 -1
  104. package/out/zero-cache/src/services/change-streamer/change-streamer.js +0 -7
  105. package/out/zero-cache/src/services/change-streamer/change-streamer.js.map +1 -1
  106. package/out/zero-cache/src/services/change-streamer/error-type-enum.d.ts +9 -0
  107. package/out/zero-cache/src/services/change-streamer/error-type-enum.d.ts.map +1 -0
  108. package/out/zero-cache/src/services/change-streamer/error-type-enum.js +6 -0
  109. package/out/zero-cache/src/services/change-streamer/error-type-enum.js.map +1 -0
  110. package/out/zero-cache/src/services/change-streamer/storer.d.ts.map +1 -1
  111. package/out/zero-cache/src/services/change-streamer/storer.js +6 -25
  112. package/out/zero-cache/src/services/change-streamer/storer.js.map +1 -1
  113. package/out/zero-cache/src/services/change-streamer/subscriber.d.ts +5 -1
  114. package/out/zero-cache/src/services/change-streamer/subscriber.d.ts.map +1 -1
  115. package/out/zero-cache/src/services/change-streamer/subscriber.js +2 -1
  116. package/out/zero-cache/src/services/change-streamer/subscriber.js.map +1 -1
  117. package/out/zero-cache/src/services/mutagen/mutagen.d.ts +1 -1
  118. package/out/zero-cache/src/services/mutagen/mutagen.d.ts.map +1 -1
  119. package/out/zero-cache/src/services/mutagen/mutagen.js +4 -3
  120. package/out/zero-cache/src/services/mutagen/mutagen.js.map +1 -1
  121. package/out/zero-cache/src/services/replicator/incremental-sync.d.ts.map +1 -1
  122. package/out/zero-cache/src/services/replicator/incremental-sync.js +17 -49
  123. package/out/zero-cache/src/services/replicator/incremental-sync.js.map +1 -1
  124. package/out/zero-cache/src/services/replicator/schema/replication-state.d.ts +3 -4
  125. package/out/zero-cache/src/services/replicator/schema/replication-state.d.ts.map +1 -1
  126. package/out/zero-cache/src/services/replicator/schema/replication-state.js +15 -20
  127. package/out/zero-cache/src/services/replicator/schema/replication-state.js.map +1 -1
  128. package/out/zero-cache/src/services/running-state.d.ts +7 -0
  129. package/out/zero-cache/src/services/running-state.d.ts.map +1 -1
  130. package/out/zero-cache/src/services/running-state.js +8 -1
  131. package/out/zero-cache/src/services/running-state.js.map +1 -1
  132. package/out/zero-cache/src/services/view-syncer/cvr-store.d.ts.map +1 -1
  133. package/out/zero-cache/src/services/view-syncer/cvr-store.js +3 -2
  134. package/out/zero-cache/src/services/view-syncer/cvr-store.js.map +1 -1
  135. package/out/zero-cache/src/services/view-syncer/cvr.d.ts.map +1 -1
  136. package/out/zero-cache/src/services/view-syncer/cvr.js +3 -2
  137. package/out/zero-cache/src/services/view-syncer/cvr.js.map +1 -1
  138. package/out/zero-cache/src/services/view-syncer/pipeline-driver.d.ts.map +1 -1
  139. package/out/zero-cache/src/services/view-syncer/pipeline-driver.js +4 -2
  140. package/out/zero-cache/src/services/view-syncer/pipeline-driver.js.map +1 -1
  141. package/out/zero-cache/src/services/view-syncer/snapshotter.js +3 -3
  142. package/out/zero-cache/src/services/view-syncer/snapshotter.js.map +1 -1
  143. package/out/zero-cache/src/services/view-syncer/view-syncer.d.ts.map +1 -1
  144. package/out/zero-cache/src/services/view-syncer/view-syncer.js +6 -5
  145. package/out/zero-cache/src/services/view-syncer/view-syncer.js.map +1 -1
  146. package/out/zero-cache/src/types/error-for-client.d.ts +2 -2
  147. package/out/zero-cache/src/types/pg.js +2 -2
  148. package/out/zero-cache/src/types/pg.js.map +1 -1
  149. package/out/zero-cache/src/types/schema-versions.js +1 -1
  150. package/out/zero-cache/src/types/schema-versions.js.map +1 -1
  151. package/out/zero-cache/src/workers/connection.d.ts.map +1 -1
  152. package/out/zero-cache/src/workers/connection.js +2 -1
  153. package/out/zero-cache/src/workers/connection.js.map +1 -1
  154. package/out/zero-cache/src/workers/syncer.js +1 -1
  155. package/out/zero-cache/src/workers/syncer.js.map +1 -1
  156. package/out/zero-client/src/client/connection-state-enum.d.ts +7 -0
  157. package/out/zero-client/src/client/connection-state-enum.d.ts.map +1 -0
  158. package/out/zero-client/src/client/metric-name-enum.d.ts +13 -0
  159. package/out/zero-client/src/client/metric-name-enum.d.ts.map +1 -0
  160. package/out/zero-client/src/client/metrics.d.ts +2 -9
  161. package/out/zero-client/src/client/metrics.d.ts.map +1 -1
  162. package/out/zero-client/src/client/ping-result-enum.d.ts +5 -0
  163. package/out/zero-client/src/client/ping-result-enum.d.ts.map +1 -0
  164. package/out/zero-client/src/client/server-error.d.ts +4 -1
  165. package/out/zero-client/src/client/server-error.d.ts.map +1 -1
  166. package/out/zero-client/src/client/zero.d.ts +4 -5
  167. package/out/zero-client/src/client/zero.d.ts.map +1 -1
  168. package/out/zero-protocol/src/error-kind-enum.d.ts +31 -0
  169. package/out/zero-protocol/src/error-kind-enum.d.ts.map +1 -0
  170. package/out/zero-protocol/src/error-kind-enum.js +20 -0
  171. package/out/zero-protocol/src/error-kind-enum.js.map +1 -0
  172. package/out/zero-protocol/src/error.d.ts +4 -21
  173. package/out/zero-protocol/src/error.d.ts.map +1 -1
  174. package/out/zero-protocol/src/error.js +1 -21
  175. package/out/zero-protocol/src/error.js.map +1 -1
  176. package/out/zero-protocol/src/mutation-type-enum.d.ts +5 -0
  177. package/out/zero-protocol/src/mutation-type-enum.d.ts.map +1 -0
  178. package/out/zero-protocol/src/mutation-type-enum.js +4 -0
  179. package/out/zero-protocol/src/mutation-type-enum.js.map +1 -0
  180. package/out/zero-protocol/src/push.d.ts +8 -12
  181. package/out/zero-protocol/src/push.d.ts.map +1 -1
  182. package/out/zero-protocol/src/push.js +1 -5
  183. package/out/zero-protocol/src/push.js.map +1 -1
  184. package/out/zero-protocol/src/up.d.ts +2 -2
  185. package/out/zero.js +2 -3
  186. package/package.json +2 -2
  187. package/out/change-protocol.js +0 -257
  188. package/out/change-protocol.js.map +0 -7
  189. package/out/chunk-FEVIDCUL.js.map +0 -7
  190. package/out/chunk-ZRR54VX5.js +0 -224
  191. package/out/chunk-ZRR54VX5.js.map +0 -7
@@ -78,7 +78,7 @@ export declare const createTableSchema: v.ObjectType<{
78
78
  spec: v.ObjectType<Omit<{
79
79
  name: v.Type<string>;
80
80
  columns: v.Type<Record<string, {
81
- pgTypeClass?: import("../../../../db/specs.js").PostgresTypeClass | undefined;
81
+ pgTypeClass?: "e" | "b" | "c" | "d" | "p" | "r" | "m" | undefined;
82
82
  characterMaximumLength?: number | null | undefined;
83
83
  notNull?: boolean | null | undefined;
84
84
  dflt?: string | null | undefined;
@@ -112,7 +112,7 @@ export declare const addColumnSchema: v.ObjectType<{
112
112
  spec: v.ObjectType<{
113
113
  pos: v.Type<number>;
114
114
  dataType: v.Type<string>;
115
- pgTypeClass: v.Optional<import("../../../../db/specs.js").PostgresTypeClass>;
115
+ pgTypeClass: v.Optional<"e" | "b" | "c" | "d" | "p" | "r" | "m">;
116
116
  characterMaximumLength: v.Optional<number | null>;
117
117
  notNull: v.Optional<boolean | null>;
118
118
  dflt: v.Optional<string | null>;
@@ -130,7 +130,7 @@ export declare const updateColumnSchema: v.ObjectType<{
130
130
  spec: v.ObjectType<{
131
131
  pos: v.Type<number>;
132
132
  dataType: v.Type<string>;
133
- pgTypeClass: v.Optional<import("../../../../db/specs.js").PostgresTypeClass>;
133
+ pgTypeClass: v.Optional<"e" | "b" | "c" | "d" | "p" | "r" | "m">;
134
134
  characterMaximumLength: v.Optional<number | null>;
135
135
  notNull: v.Optional<boolean | null>;
136
136
  dflt: v.Optional<string | null>;
@@ -141,7 +141,7 @@ export declare const updateColumnSchema: v.ObjectType<{
141
141
  spec: v.ObjectType<{
142
142
  pos: v.Type<number>;
143
143
  dataType: v.Type<string>;
144
- pgTypeClass: v.Optional<import("../../../../db/specs.js").PostgresTypeClass>;
144
+ pgTypeClass: v.Optional<"e" | "b" | "c" | "d" | "p" | "r" | "m">;
145
145
  characterMaximumLength: v.Optional<number | null>;
146
146
  notNull: v.Optional<boolean | null>;
147
147
  dflt: v.Optional<string | null>;
@@ -243,7 +243,7 @@ export declare const dataChangeSchema: v.UnionType<[v.ObjectType<{
243
243
  spec: v.ObjectType<Omit<{
244
244
  name: v.Type<string>;
245
245
  columns: v.Type<Record<string, {
246
- pgTypeClass?: import("../../../../db/specs.js").PostgresTypeClass | undefined;
246
+ pgTypeClass?: "e" | "b" | "c" | "d" | "p" | "r" | "m" | undefined;
247
247
  characterMaximumLength?: number | null | undefined;
248
248
  notNull?: boolean | null | undefined;
249
249
  dflt?: string | null | undefined;
@@ -275,7 +275,7 @@ export declare const dataChangeSchema: v.UnionType<[v.ObjectType<{
275
275
  spec: v.ObjectType<{
276
276
  pos: v.Type<number>;
277
277
  dataType: v.Type<string>;
278
- pgTypeClass: v.Optional<import("../../../../db/specs.js").PostgresTypeClass>;
278
+ pgTypeClass: v.Optional<"e" | "b" | "c" | "d" | "p" | "r" | "m">;
279
279
  characterMaximumLength: v.Optional<number | null>;
280
280
  notNull: v.Optional<boolean | null>;
281
281
  dflt: v.Optional<string | null>;
@@ -292,7 +292,7 @@ export declare const dataChangeSchema: v.UnionType<[v.ObjectType<{
292
292
  spec: v.ObjectType<{
293
293
  pos: v.Type<number>;
294
294
  dataType: v.Type<string>;
295
- pgTypeClass: v.Optional<import("../../../../db/specs.js").PostgresTypeClass>;
295
+ pgTypeClass: v.Optional<"e" | "b" | "c" | "d" | "p" | "r" | "m">;
296
296
  characterMaximumLength: v.Optional<number | null>;
297
297
  notNull: v.Optional<boolean | null>;
298
298
  dflt: v.Optional<string | null>;
@@ -303,7 +303,7 @@ export declare const dataChangeSchema: v.UnionType<[v.ObjectType<{
303
303
  spec: v.ObjectType<{
304
304
  pos: v.Type<number>;
305
305
  dataType: v.Type<string>;
306
- pgTypeClass: v.Optional<import("../../../../db/specs.js").PostgresTypeClass>;
306
+ pgTypeClass: v.Optional<"e" | "b" | "c" | "d" | "p" | "r" | "m">;
307
307
  characterMaximumLength: v.Optional<number | null>;
308
308
  notNull: v.Optional<boolean | null>;
309
309
  dflt: v.Optional<string | null>;
@@ -1,6 +1,8 @@
1
1
  import * as v from '../../../../../../shared/src/valita.js';
2
2
  declare const begin: v.TupleType<[v.Type<"begin">, v.ObjectType<{
3
3
  tag: v.Type<"begin">;
4
+ }, undefined>, v.ObjectType<{
5
+ commitWatermark: v.Type<string>;
4
6
  }, undefined>]>;
5
7
  declare const data: v.TupleType<[v.Type<"data">, v.UnionType<[v.ObjectType<{
6
8
  tag: v.Type<"insert">;
@@ -48,7 +50,7 @@ declare const data: v.TupleType<[v.Type<"data">, v.UnionType<[v.ObjectType<{
48
50
  spec: v.ObjectType<Omit<{
49
51
  name: v.Type<string>;
50
52
  columns: v.Type<Record<string, {
51
- pgTypeClass?: import("../../../../db/specs.js").PostgresTypeClass | undefined;
53
+ pgTypeClass?: "e" | "b" | "c" | "d" | "p" | "r" | "m" | undefined;
52
54
  characterMaximumLength?: number | null | undefined;
53
55
  notNull?: boolean | null | undefined;
54
56
  dflt?: string | null | undefined;
@@ -80,7 +82,7 @@ declare const data: v.TupleType<[v.Type<"data">, v.UnionType<[v.ObjectType<{
80
82
  spec: v.ObjectType<{
81
83
  pos: v.Type<number>;
82
84
  dataType: v.Type<string>;
83
- pgTypeClass: v.Optional<import("../../../../db/specs.js").PostgresTypeClass>;
85
+ pgTypeClass: v.Optional<"e" | "b" | "c" | "d" | "p" | "r" | "m">;
84
86
  characterMaximumLength: v.Optional<number | null>;
85
87
  notNull: v.Optional<boolean | null>;
86
88
  dflt: v.Optional<string | null>;
@@ -97,7 +99,7 @@ declare const data: v.TupleType<[v.Type<"data">, v.UnionType<[v.ObjectType<{
97
99
  spec: v.ObjectType<{
98
100
  pos: v.Type<number>;
99
101
  dataType: v.Type<string>;
100
- pgTypeClass: v.Optional<import("../../../../db/specs.js").PostgresTypeClass>;
102
+ pgTypeClass: v.Optional<"e" | "b" | "c" | "d" | "p" | "r" | "m">;
101
103
  characterMaximumLength: v.Optional<number | null>;
102
104
  notNull: v.Optional<boolean | null>;
103
105
  dflt: v.Optional<string | null>;
@@ -108,7 +110,7 @@ declare const data: v.TupleType<[v.Type<"data">, v.UnionType<[v.ObjectType<{
108
110
  spec: v.ObjectType<{
109
111
  pos: v.Type<number>;
110
112
  dataType: v.Type<string>;
111
- pgTypeClass: v.Optional<import("../../../../db/specs.js").PostgresTypeClass>;
113
+ pgTypeClass: v.Optional<"e" | "b" | "c" | "d" | "p" | "r" | "m">;
112
114
  characterMaximumLength: v.Optional<number | null>;
113
115
  notNull: v.Optional<boolean | null>;
114
116
  dflt: v.Optional<string | null>;
@@ -158,6 +160,8 @@ export type Commit = v.Infer<typeof commit>;
158
160
  export type Rollback = v.Infer<typeof rollback>;
159
161
  export declare const changeStreamDataSchema: v.UnionType<[v.TupleType<[v.Type<"begin">, v.ObjectType<{
160
162
  tag: v.Type<"begin">;
163
+ }, undefined>, v.ObjectType<{
164
+ commitWatermark: v.Type<string>;
161
165
  }, undefined>]>, v.TupleType<[v.Type<"data">, v.UnionType<[v.ObjectType<{
162
166
  tag: v.Type<"insert">;
163
167
  relation: v.ObjectType<{
@@ -204,7 +208,7 @@ export declare const changeStreamDataSchema: v.UnionType<[v.TupleType<[v.Type<"b
204
208
  spec: v.ObjectType<Omit<{
205
209
  name: v.Type<string>;
206
210
  columns: v.Type<Record<string, {
207
- pgTypeClass?: import("../../../../db/specs.js").PostgresTypeClass | undefined;
211
+ pgTypeClass?: "e" | "b" | "c" | "d" | "p" | "r" | "m" | undefined;
208
212
  characterMaximumLength?: number | null | undefined;
209
213
  notNull?: boolean | null | undefined;
210
214
  dflt?: string | null | undefined;
@@ -236,7 +240,7 @@ export declare const changeStreamDataSchema: v.UnionType<[v.TupleType<[v.Type<"b
236
240
  spec: v.ObjectType<{
237
241
  pos: v.Type<number>;
238
242
  dataType: v.Type<string>;
239
- pgTypeClass: v.Optional<import("../../../../db/specs.js").PostgresTypeClass>;
243
+ pgTypeClass: v.Optional<"e" | "b" | "c" | "d" | "p" | "r" | "m">;
240
244
  characterMaximumLength: v.Optional<number | null>;
241
245
  notNull: v.Optional<boolean | null>;
242
246
  dflt: v.Optional<string | null>;
@@ -253,7 +257,7 @@ export declare const changeStreamDataSchema: v.UnionType<[v.TupleType<[v.Type<"b
253
257
  spec: v.ObjectType<{
254
258
  pos: v.Type<number>;
255
259
  dataType: v.Type<string>;
256
- pgTypeClass: v.Optional<import("../../../../db/specs.js").PostgresTypeClass>;
260
+ pgTypeClass: v.Optional<"e" | "b" | "c" | "d" | "p" | "r" | "m">;
257
261
  characterMaximumLength: v.Optional<number | null>;
258
262
  notNull: v.Optional<boolean | null>;
259
263
  dflt: v.Optional<string | null>;
@@ -264,7 +268,7 @@ export declare const changeStreamDataSchema: v.UnionType<[v.TupleType<[v.Type<"b
264
268
  spec: v.ObjectType<{
265
269
  pos: v.Type<number>;
266
270
  dataType: v.Type<string>;
267
- pgTypeClass: v.Optional<import("../../../../db/specs.js").PostgresTypeClass>;
271
+ pgTypeClass: v.Optional<"e" | "b" | "c" | "d" | "p" | "r" | "m">;
268
272
  characterMaximumLength: v.Optional<number | null>;
269
273
  notNull: v.Optional<boolean | null>;
270
274
  dflt: v.Optional<string | null>;
@@ -314,6 +318,8 @@ export type ChangeStreamControl = v.Infer<typeof changeStreamControlSchema>;
314
318
  /** Downstream messages consist of data plane and control plane messages. */
315
319
  export declare const changeStreamMessageSchema: v.UnionType<[v.UnionType<[v.TupleType<[v.Type<"begin">, v.ObjectType<{
316
320
  tag: v.Type<"begin">;
321
+ }, undefined>, v.ObjectType<{
322
+ commitWatermark: v.Type<string>;
317
323
  }, undefined>]>, v.TupleType<[v.Type<"data">, v.UnionType<[v.ObjectType<{
318
324
  tag: v.Type<"insert">;
319
325
  relation: v.ObjectType<{
@@ -360,7 +366,7 @@ export declare const changeStreamMessageSchema: v.UnionType<[v.UnionType<[v.Tupl
360
366
  spec: v.ObjectType<Omit<{
361
367
  name: v.Type<string>;
362
368
  columns: v.Type<Record<string, {
363
- pgTypeClass?: import("../../../../db/specs.js").PostgresTypeClass | undefined;
369
+ pgTypeClass?: "e" | "b" | "c" | "d" | "p" | "r" | "m" | undefined;
364
370
  characterMaximumLength?: number | null | undefined;
365
371
  notNull?: boolean | null | undefined;
366
372
  dflt?: string | null | undefined;
@@ -392,7 +398,7 @@ export declare const changeStreamMessageSchema: v.UnionType<[v.UnionType<[v.Tupl
392
398
  spec: v.ObjectType<{
393
399
  pos: v.Type<number>;
394
400
  dataType: v.Type<string>;
395
- pgTypeClass: v.Optional<import("../../../../db/specs.js").PostgresTypeClass>;
401
+ pgTypeClass: v.Optional<"e" | "b" | "c" | "d" | "p" | "r" | "m">;
396
402
  characterMaximumLength: v.Optional<number | null>;
397
403
  notNull: v.Optional<boolean | null>;
398
404
  dflt: v.Optional<string | null>;
@@ -409,7 +415,7 @@ export declare const changeStreamMessageSchema: v.UnionType<[v.UnionType<[v.Tupl
409
415
  spec: v.ObjectType<{
410
416
  pos: v.Type<number>;
411
417
  dataType: v.Type<string>;
412
- pgTypeClass: v.Optional<import("../../../../db/specs.js").PostgresTypeClass>;
418
+ pgTypeClass: v.Optional<"e" | "b" | "c" | "d" | "p" | "r" | "m">;
413
419
  characterMaximumLength: v.Optional<number | null>;
414
420
  notNull: v.Optional<boolean | null>;
415
421
  dflt: v.Optional<string | null>;
@@ -420,7 +426,7 @@ export declare const changeStreamMessageSchema: v.UnionType<[v.UnionType<[v.Tupl
420
426
  spec: v.ObjectType<{
421
427
  pos: v.Type<number>;
422
428
  dataType: v.Type<string>;
423
- pgTypeClass: v.Optional<import("../../../../db/specs.js").PostgresTypeClass>;
429
+ pgTypeClass: v.Optional<"e" | "b" | "c" | "d" | "p" | "r" | "m">;
424
430
  characterMaximumLength: v.Optional<number | null>;
425
431
  notNull: v.Optional<boolean | null>;
426
432
  dflt: v.Optional<string | null>;
@@ -1 +1 @@
1
- {"version":3,"file":"downstream.d.ts","sourceRoot":"","sources":["../../../../../../../../zero-cache/src/services/change-source/protocol/current/downstream.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,wCAAwC,CAAC;AAS5D,QAAA,MAAM,KAAK;;eAA6C,CAAC;AACzD,QAAA,MAAM,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAAiD,CAAC;AAC5D,QAAA,MAAM,MAAM;;;;eAIV,CAAC;AACH,QAAA,MAAM,QAAQ;;eAAmD,CAAC;AAElE,MAAM,MAAM,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,KAAK,CAAC,CAAC;AAC1C,MAAM,MAAM,IAAI,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,IAAI,CAAC,CAAC;AACxC,MAAM,MAAM,MAAM,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,MAAM,CAAC,CAAC;AAC5C,MAAM,MAAM,QAAQ,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,QAAQ,CAAC,CAAC;AAEhD,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAAyC,CAAC;AAC7E,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC;AAEtE,eAAO,MAAM,yBAAyB;;eAGpC,CAAC;AACH,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAAC;AAE5E,4EAA4E;AAC5E,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAGrC,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAAC"}
1
+ {"version":3,"file":"downstream.d.ts","sourceRoot":"","sources":["../../../../../../../../zero-cache/src/services/change-source/protocol/current/downstream.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,wCAAwC,CAAC;AAS5D,QAAA,MAAM,KAAK;;;;eAIT,CAAC;AACH,QAAA,MAAM,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAAiD,CAAC;AAC5D,QAAA,MAAM,MAAM;;;;eAIV,CAAC;AACH,QAAA,MAAM,QAAQ;;eAAmD,CAAC;AAElE,MAAM,MAAM,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,KAAK,CAAC,CAAC;AAC1C,MAAM,MAAM,IAAI,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,IAAI,CAAC,CAAC;AACxC,MAAM,MAAM,MAAM,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,MAAM,CAAC,CAAC;AAC5C,MAAM,MAAM,QAAQ,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,QAAQ,CAAC,CAAC;AAEhD,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAAyC,CAAC;AAC7E,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC;AAEtE,eAAO,MAAM,yBAAyB;;eAGpC,CAAC;AACH,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAAC;AAE5E,4EAA4E;AAC5E,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAGrC,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAAC"}
@@ -1,7 +1,11 @@
1
1
  import * as v from '../../../../../../shared/src/valita.js';
2
2
  import { resetRequiredSchema } from './control.js';
3
3
  import { beginSchema, commitSchema, dataChangeSchema, rollbackSchema, } from './data.js';
4
- const begin = v.tuple([v.literal('begin'), beginSchema]);
4
+ const begin = v.tuple([
5
+ v.literal('begin'),
6
+ beginSchema,
7
+ v.object({ commitWatermark: v.string() }),
8
+ ]);
5
9
  const data = v.tuple([v.literal('data'), dataChangeSchema]);
6
10
  const commit = v.tuple([
7
11
  v.literal('commit'),
@@ -1 +1 @@
1
- {"version":3,"file":"downstream.js","sourceRoot":"","sources":["../../../../../../../../zero-cache/src/services/change-source/protocol/current/downstream.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,wCAAwC,CAAC;AAC5D,OAAO,EAAC,mBAAmB,EAAC,MAAM,cAAc,CAAC;AACjD,OAAO,EACL,WAAW,EACX,YAAY,EACZ,gBAAgB,EAChB,cAAc,GACf,MAAM,WAAW,CAAC;AAEnB,MAAM,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,WAAW,CAAC,CAAC,CAAC;AACzD,MAAM,IAAI,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,gBAAgB,CAAC,CAAC,CAAC;AAC5D,MAAM,MAAM,GAAG,CAAC,CAAC,KAAK,CAAC;IACrB,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC;IACnB,YAAY;IACZ,CAAC,CAAC,MAAM,CAAC,EAAC,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,EAAC,CAAC;CAClC,CAAC,CAAC;AACH,MAAM,QAAQ,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,cAAc,CAAC,CAAC,CAAC;AAOlE,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,CAAC,KAAK,CAAC,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC;AAG7E,MAAM,CAAC,MAAM,yBAAyB,GAAG,CAAC,CAAC,KAAK,CAAC;IAC/C,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC;IACpB,mBAAmB,EAAE,kCAAkC;CACxD,CAAC,CAAC;AAGH,4EAA4E;AAC5E,MAAM,CAAC,MAAM,yBAAyB,GAAG,CAAC,CAAC,KAAK,CAC9C,sBAAsB,EACtB,yBAAyB,CAC1B,CAAC"}
1
+ {"version":3,"file":"downstream.js","sourceRoot":"","sources":["../../../../../../../../zero-cache/src/services/change-source/protocol/current/downstream.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,wCAAwC,CAAC;AAC5D,OAAO,EAAC,mBAAmB,EAAC,MAAM,cAAc,CAAC;AACjD,OAAO,EACL,WAAW,EACX,YAAY,EACZ,gBAAgB,EAChB,cAAc,GACf,MAAM,WAAW,CAAC;AAEnB,MAAM,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC;IACpB,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC;IAClB,WAAW;IACX,CAAC,CAAC,MAAM,CAAC,EAAC,eAAe,EAAE,CAAC,CAAC,MAAM,EAAE,EAAC,CAAC;CACxC,CAAC,CAAC;AACH,MAAM,IAAI,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,gBAAgB,CAAC,CAAC,CAAC;AAC5D,MAAM,MAAM,GAAG,CAAC,CAAC,KAAK,CAAC;IACrB,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC;IACnB,YAAY;IACZ,CAAC,CAAC,MAAM,CAAC,EAAC,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,EAAC,CAAC;CAClC,CAAC,CAAC;AACH,MAAM,QAAQ,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,cAAc,CAAC,CAAC,CAAC;AAOlE,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,CAAC,KAAK,CAAC,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC;AAG7E,MAAM,CAAC,MAAM,yBAAyB,GAAG,CAAC,CAAC,KAAK,CAAC;IAC/C,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC;IACpB,mBAAmB,EAAE,kCAAkC;CACxD,CAAC,CAAC;AAGH,4EAA4E;AAC5E,MAAM,CAAC,MAAM,yBAAyB,GAAG,CAAC,CAAC,KAAK,CAC9C,sBAAsB,EACtB,yBAAyB,CAC1B,CAAC"}
@@ -20,8 +20,6 @@ export declare function initializeStreamer(lc: LogContext, changeDB: PostgresDB,
20
20
  */
21
21
  export type WatermarkedChange = [watermark: string, ChangeStreamData];
22
22
  export type ChangeStream = {
23
- /** The watermark at which the ChangeStream begins (i.e. inclusive). */
24
- initialWatermark: string;
25
23
  changes: Source<ChangeStreamMessage>;
26
24
  /**
27
25
  * A Sink to push the {@link Commit} messages that have been successfully
@@ -1 +1 @@
1
- {"version":3,"file":"change-streamer-service.d.ts","sourceRoot":"","sources":["../../../../../../zero-cache/src/services/change-streamer/change-streamer-service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,UAAU,EAAC,MAAM,kBAAkB,CAAC;AAS5C,OAAO,KAAK,EAAC,UAAU,EAAC,MAAM,mBAAmB,CAAC;AAClD,OAAO,KAAK,EAAC,IAAI,EAAE,MAAM,EAAC,MAAM,wBAAwB,CAAC;AAGzD,OAAO,EAEL,KAAK,gBAAgB,EACrB,KAAK,mBAAmB,EACxB,KAAK,MAAM,EACZ,MAAM,iDAAiD,CAAC;AAEzD,OAAO,EAEL,KAAK,qBAAqB,EAG3B,MAAM,sBAAsB,CAAC;AAG9B,OAAO,EAIL,KAAK,iBAAiB,EACvB,MAAM,oBAAoB,CAAC;AAI5B;;GAEG;AACH,wBAAsB,kBAAkB,CACtC,EAAE,EAAE,UAAU,EACd,QAAQ,EAAE,UAAU,EACpB,YAAY,EAAE,YAAY,EAC1B,iBAAiB,EAAE,iBAAiB,EACpC,SAAS,EAAE,OAAO,EAClB,YAAY,oBAAa,GACxB,OAAO,CAAC,qBAAqB,CAAC,CAchC;AAED;;;;;;;;;GASG;AACH,MAAM,MAAM,iBAAiB,GAAG,CAAC,SAAS,EAAE,MAAM,EAAE,gBAAgB,CAAC,CAAC;AAEtE,MAAM,MAAM,YAAY,GAAG;IACzB,uEAAuE;IACvE,gBAAgB,EAAE,MAAM,CAAC;IAEzB,OAAO,EAAE,MAAM,CAAC,mBAAmB,CAAC,CAAC;IAErC;;;OAGG;IACH,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;CACpB,CAAC;AAEF,+EAA+E;AAC/E,MAAM,WAAW,YAAY;IAC3B;;;OAGG;IACH,WAAW,CAAC,cAAc,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC;CAC5D"}
1
+ {"version":3,"file":"change-streamer-service.d.ts","sourceRoot":"","sources":["../../../../../../zero-cache/src/services/change-streamer/change-streamer-service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,UAAU,EAAC,MAAM,kBAAkB,CAAC;AAQ5C,OAAO,KAAK,EAAC,UAAU,EAAC,MAAM,mBAAmB,CAAC;AAClD,OAAO,KAAK,EAAC,IAAI,EAAE,MAAM,EAAC,MAAM,wBAAwB,CAAC;AAGzD,OAAO,EAEL,KAAK,gBAAgB,EACrB,KAAK,mBAAmB,EACxB,KAAK,MAAM,EACZ,MAAM,iDAAiD,CAAC;AAMzD,OAAO,EACL,KAAK,qBAAqB,EAG3B,MAAM,sBAAsB,CAAC;AAI9B,OAAO,EAIL,KAAK,iBAAiB,EACvB,MAAM,oBAAoB,CAAC;AAI5B;;GAEG;AACH,wBAAsB,kBAAkB,CACtC,EAAE,EAAE,UAAU,EACd,QAAQ,EAAE,UAAU,EACpB,YAAY,EAAE,YAAY,EAC1B,iBAAiB,EAAE,iBAAiB,EACpC,SAAS,EAAE,OAAO,EAClB,YAAY,oBAAa,GACxB,OAAO,CAAC,qBAAqB,CAAC,CAchC;AAED;;;;;;;;;GASG;AACH,MAAM,MAAM,iBAAiB,GAAG,CAAC,SAAS,EAAE,MAAM,EAAE,gBAAgB,CAAC,CAAC;AAEtE,MAAM,MAAM,YAAY,GAAG;IACzB,OAAO,EAAE,MAAM,CAAC,mBAAmB,CAAC,CAAC;IAErC;;;OAGG;IACH,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;CACpB,CAAC;AAEF,+EAA+E;AAC/E,MAAM,WAAW,YAAY;IAC3B;;;OAGG;IACH,WAAW,CAAC,cAAc,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC;CAC5D"}
@@ -1,12 +1,13 @@
1
1
  import { LogContext } from '@rocicorp/logger';
2
2
  import { resolver } from '@rocicorp/resolver';
3
3
  import { unreachable } from '../../../../shared/src/asserts.js';
4
- import { min, oneAfter, } from '../../types/lexi-version.js';
4
+ import { min, } from '../../types/lexi-version.js';
5
5
  import { Subscription } from '../../types/subscription.js';
6
6
  import { orTimeout } from '../../types/timeout.js';
7
7
  import {} from '../change-source/protocol/current/downstream.js';
8
- import { DEFAULT_MAX_RETRY_DELAY_MS, RunningState } from '../running-state.js';
9
- import { ErrorType, } from './change-streamer.js';
8
+ import { DEFAULT_MAX_RETRY_DELAY_MS, RunningState, UnrecoverableError, } from '../running-state.js';
9
+ import {} from './change-streamer.js';
10
+ import * as ErrorType from './error-type-enum.js';
10
11
  import { Forwarder } from './forwarder.js';
11
12
  import { initChangeStreamerSchema } from './schema/init.js';
12
13
  import { AutoResetSignal, ensureReplicationConfig, markResetRequired, } from './schema/tables.js';
@@ -212,7 +213,7 @@ class ChangeStreamerImpl {
212
213
  const stream = await this.#source.startStream(startAfter ?? this.#replicaVersion);
213
214
  this.#stream = stream;
214
215
  this.#state.resetBackoff();
215
- let preCommitWatermark = stream.initialWatermark;
216
+ let watermark = null;
216
217
  // Once this change-streamer "owns" the replication stream,
217
218
  // it is safe to start the storer, given the guarantee that this
218
219
  // process is the single writer to the change DB.
@@ -221,21 +222,30 @@ class ChangeStreamerImpl {
221
222
  storerRunning = true;
222
223
  }
223
224
  for await (const change of stream.changes) {
224
- let watermark;
225
- switch (change[0]) {
225
+ const [type, msg] = change;
226
+ switch (type) {
226
227
  case 'control':
227
- await this.#handleControlMessage(change[1]);
228
+ await this.#handleControlMessage(msg);
228
229
  continue; // control messages are not stored/forwarded
230
+ case 'begin':
231
+ watermark = change[2].commitWatermark;
232
+ break;
229
233
  case 'commit':
230
- watermark = change[2].watermark;
231
- preCommitWatermark = oneAfter(watermark); // For the next transaction.
234
+ if (watermark !== change[2].watermark) {
235
+ throw new UnrecoverableError(`commit watermark ${change[2].watermark} does not match 'begin' watermark ${watermark}`);
236
+ }
232
237
  break;
233
238
  default:
234
- watermark = preCommitWatermark;
239
+ if (watermark === null) {
240
+ throw new UnrecoverableError(`${type} change (${msg.tag}) received before 'begin' message`);
241
+ }
235
242
  break;
236
243
  }
237
244
  this.#storer.store([watermark, change]);
238
245
  this.#forwarder.forward([watermark, change]);
246
+ if (type === 'commit') {
247
+ watermark = null;
248
+ }
239
249
  }
240
250
  }
241
251
  catch (e) {
@@ -1 +1 @@
1
- {"version":3,"file":"change-streamer-service.js","sourceRoot":"","sources":["../../../../../../zero-cache/src/services/change-streamer/change-streamer-service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"change-streamer-service.js","sourceRoot":"","sources":["../../../../../../zero-cache/src/services/change-streamer/change-streamer-service.ts"],"names":[],"mappings":"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"}
@@ -84,12 +84,6 @@ export type ChangeEntry = {
84
84
  */
85
85
  watermark: string;
86
86
  };
87
- export declare const enum ErrorType {
88
- Unknown = 0,
89
- WrongReplicaVersion = 1,
90
- WatermarkTooOld = 2,
91
- WatermarkNotFound = 3
92
- }
93
87
  declare const subscriptionErrorSchema: v.ObjectType<{
94
88
  type: v.Type<number>;
95
89
  message: v.Optional<string>;
@@ -101,6 +95,8 @@ declare const error: v.TupleType<[v.Type<"error">, v.ObjectType<{
101
95
  }, undefined>]>;
102
96
  export declare const downstreamSchema: v.UnionType<[v.UnionType<[v.TupleType<[v.Type<"begin">, v.ObjectType<{
103
97
  tag: v.Type<"begin">;
98
+ }, undefined>, v.ObjectType<{
99
+ commitWatermark: v.Type<string>;
104
100
  }, undefined>]>, v.TupleType<[v.Type<"data">, v.UnionType<[v.ObjectType<{
105
101
  tag: v.Type<"insert">;
106
102
  relation: v.ObjectType<{
@@ -147,7 +143,7 @@ export declare const downstreamSchema: v.UnionType<[v.UnionType<[v.TupleType<[v.
147
143
  spec: v.ObjectType<Omit<{
148
144
  name: v.Type<string>;
149
145
  columns: v.Type<Record<string, {
150
- pgTypeClass?: import("../../db/specs.js").PostgresTypeClass | undefined;
146
+ pgTypeClass?: "e" | "b" | "c" | "d" | "p" | "r" | "m" | undefined;
151
147
  characterMaximumLength?: number | null | undefined;
152
148
  notNull?: boolean | null | undefined;
153
149
  dflt?: string | null | undefined;
@@ -179,7 +175,7 @@ export declare const downstreamSchema: v.UnionType<[v.UnionType<[v.TupleType<[v.
179
175
  spec: v.ObjectType<{
180
176
  pos: v.Type<number>;
181
177
  dataType: v.Type<string>;
182
- pgTypeClass: v.Optional<import("../../db/specs.js").PostgresTypeClass>;
178
+ pgTypeClass: v.Optional<"e" | "b" | "c" | "d" | "p" | "r" | "m">;
183
179
  characterMaximumLength: v.Optional<number | null>;
184
180
  notNull: v.Optional<boolean | null>;
185
181
  dflt: v.Optional<string | null>;
@@ -196,7 +192,7 @@ export declare const downstreamSchema: v.UnionType<[v.UnionType<[v.TupleType<[v.
196
192
  spec: v.ObjectType<{
197
193
  pos: v.Type<number>;
198
194
  dataType: v.Type<string>;
199
- pgTypeClass: v.Optional<import("../../db/specs.js").PostgresTypeClass>;
195
+ pgTypeClass: v.Optional<"e" | "b" | "c" | "d" | "p" | "r" | "m">;
200
196
  characterMaximumLength: v.Optional<number | null>;
201
197
  notNull: v.Optional<boolean | null>;
202
198
  dflt: v.Optional<string | null>;
@@ -207,7 +203,7 @@ export declare const downstreamSchema: v.UnionType<[v.UnionType<[v.TupleType<[v.
207
203
  spec: v.ObjectType<{
208
204
  pos: v.Type<number>;
209
205
  dataType: v.Type<string>;
210
- pgTypeClass: v.Optional<import("../../db/specs.js").PostgresTypeClass>;
206
+ pgTypeClass: v.Optional<"e" | "b" | "c" | "d" | "p" | "r" | "m">;
211
207
  characterMaximumLength: v.Optional<number | null>;
212
208
  notNull: v.Optional<boolean | null>;
213
209
  dflt: v.Optional<string | null>;
@@ -1 +1 @@
1
- {"version":3,"file":"change-streamer.d.ts","sourceRoot":"","sources":["../../../../../../zero-cache/src/services/change-streamer/change-streamer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,kCAAkC,CAAC;AACtD,OAAO,KAAK,EAAC,MAAM,EAAC,MAAM,wBAAwB,CAAC;AACnD,OAAO,EAAC,KAAK,MAAM,EAAC,MAAM,2CAA2C,CAAC;AAEtE,OAAO,KAAK,EAAC,cAAc,EAAC,MAAM,6BAA6B,CAAC;AAChE,OAAO,KAAK,EAAC,OAAO,EAAC,MAAM,eAAe,CAAC;AAE3C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;AACH,MAAM,WAAW,cAAc;IAC7B;;;;OAIG;IACH,SAAS,CAAC,GAAG,EAAE,iBAAiB,GAAG,OAAO,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC;CAChE;AAED,MAAM,MAAM,iBAAiB,GAAG;IAC9B;;OAEG;IACH,EAAE,EAAE,MAAM,CAAC;IAEX;;;;OAIG;IACH,IAAI,EAAE,cAAc,CAAC;IAErB;;;;OAIG;IACH,cAAc,EAAE,MAAM,CAAC;IAEvB;;;OAGG;IACH,SAAS,EAAE,MAAM,CAAC;IAElB;;;;;OAKG;IACH,OAAO,EAAE,OAAO,CAAC;CAClB,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG;IACxB,MAAM,EAAE,MAAM,CAAC;IAEf;;;;OAIG;IACH,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,0BAAkB,SAAS;IACzB,OAAO,IAAA;IACP,mBAAmB,IAAA;IACnB,eAAe,IAAA;IACf,iBAAiB,IAAA;CAClB;AAED,QAAA,MAAM,uBAAuB;;;aAG3B,CAAC;AAEH,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC;AAExE,QAAA,MAAM,KAAK;;;eAAyD,CAAC;AAErE,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAAyC,CAAC;AAEvE,MAAM,MAAM,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,KAAK,CAAC,CAAC;AAE1C;;;;;;;;;;GAUG;AACH,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAE1D,MAAM,WAAW,qBAAsB,SAAQ,cAAc,EAAE,OAAO;CAAG"}
1
+ {"version":3,"file":"change-streamer.d.ts","sourceRoot":"","sources":["../../../../../../zero-cache/src/services/change-streamer/change-streamer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,kCAAkC,CAAC;AACtD,OAAO,KAAK,EAAC,MAAM,EAAC,MAAM,wBAAwB,CAAC;AACnD,OAAO,EAAC,KAAK,MAAM,EAAC,MAAM,2CAA2C,CAAC;AAEtE,OAAO,KAAK,EAAC,cAAc,EAAC,MAAM,6BAA6B,CAAC;AAChE,OAAO,KAAK,EAAC,OAAO,EAAC,MAAM,eAAe,CAAC;AAE3C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;AACH,MAAM,WAAW,cAAc;IAC7B;;;;OAIG;IACH,SAAS,CAAC,GAAG,EAAE,iBAAiB,GAAG,OAAO,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC;CAChE;AAED,MAAM,MAAM,iBAAiB,GAAG;IAC9B;;OAEG;IACH,EAAE,EAAE,MAAM,CAAC;IAEX;;;;OAIG;IACH,IAAI,EAAE,cAAc,CAAC;IAErB;;;;OAIG;IACH,cAAc,EAAE,MAAM,CAAC;IAEvB;;;OAGG;IACH,SAAS,EAAE,MAAM,CAAC;IAElB;;;;;OAKG;IACH,OAAO,EAAE,OAAO,CAAC;CAClB,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG;IACxB,MAAM,EAAE,MAAM,CAAC;IAEf;;;;OAIG;IACH,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,QAAA,MAAM,uBAAuB;;;aAG3B,CAAC;AAEH,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC;AAExE,QAAA,MAAM,KAAK;;;eAAyD,CAAC;AAErE,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAAyC,CAAC;AAEvE,MAAM,MAAM,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,KAAK,CAAC,CAAC;AAE1C;;;;;;;;;;GAUG;AACH,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAE1D,MAAM,WAAW,qBAAsB,SAAQ,cAAc,EAAE,OAAO;CAAG"}
@@ -1,13 +1,6 @@
1
1
  import * as v from '../../../../shared/src/valita.js';
2
2
  import {} from '../change-source/protocol/current/data.js';
3
3
  import { changeStreamDataSchema } from '../change-source/protocol/current/downstream.js';
4
- export var ErrorType;
5
- (function (ErrorType) {
6
- ErrorType[ErrorType["Unknown"] = 0] = "Unknown";
7
- ErrorType[ErrorType["WrongReplicaVersion"] = 1] = "WrongReplicaVersion";
8
- ErrorType[ErrorType["WatermarkTooOld"] = 2] = "WatermarkTooOld";
9
- ErrorType[ErrorType["WatermarkNotFound"] = 3] = "WatermarkNotFound";
10
- })(ErrorType || (ErrorType = {}));
11
4
  const subscriptionErrorSchema = v.object({
12
5
  type: v.number(), // ErrorType
13
6
  message: v.string().optional(),
@@ -1 +1 @@
1
- {"version":3,"file":"change-streamer.js","sourceRoot":"","sources":["../../../../../../zero-cache/src/services/change-streamer/change-streamer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,kCAAkC,CAAC;AAEtD,OAAO,EAAa,MAAM,2CAA2C,CAAC;AACtE,OAAO,EAAC,sBAAsB,EAAC,MAAM,iDAAiD,CAAC;AA6FvF,MAAM,CAAN,IAAkB,SAKjB;AALD,WAAkB,SAAS;IACzB,+CAAO,CAAA;IACP,uEAAmB,CAAA;IACnB,+DAAe,CAAA;IACf,mEAAiB,CAAA;AACnB,CAAC,EALiB,SAAS,KAAT,SAAS,QAK1B;AAED,MAAM,uBAAuB,GAAG,CAAC,CAAC,MAAM,CAAC;IACvC,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,EAAE,YAAY;IAC9B,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CAC/B,CAAC,CAAC;AAIH,MAAM,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,uBAAuB,CAAC,CAAC,CAAC;AAErE,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,sBAAsB,EAAE,KAAK,CAAC,CAAC"}
1
+ {"version":3,"file":"change-streamer.js","sourceRoot":"","sources":["../../../../../../zero-cache/src/services/change-streamer/change-streamer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,kCAAkC,CAAC;AAEtD,OAAO,EAAa,MAAM,2CAA2C,CAAC;AACtE,OAAO,EAAC,sBAAsB,EAAC,MAAM,iDAAiD,CAAC;AA6FvF,MAAM,uBAAuB,GAAG,CAAC,CAAC,MAAM,CAAC;IACvC,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,EAAE,YAAY;IAC9B,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CAC/B,CAAC,CAAC;AAIH,MAAM,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,uBAAuB,CAAC,CAAC,CAAC;AAErE,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,sBAAsB,EAAE,KAAK,CAAC,CAAC"}
@@ -0,0 +1,9 @@
1
+ export declare const Unknown = 0;
2
+ export declare const WrongReplicaVersion = 1;
3
+ export declare const WatermarkTooOld = 2;
4
+ export declare const WatermarkNotFound = 3;
5
+ export type Unknown = typeof Unknown;
6
+ export type WrongReplicaVersion = typeof WrongReplicaVersion;
7
+ export type WatermarkTooOld = typeof WatermarkTooOld;
8
+ export type WatermarkNotFound = typeof WatermarkNotFound;
9
+ //# sourceMappingURL=error-type-enum.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"error-type-enum.d.ts","sourceRoot":"","sources":["../../../../../../zero-cache/src/services/change-streamer/error-type-enum.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,OAAO,IAAI,CAAC;AACzB,eAAO,MAAM,mBAAmB,IAAI,CAAC;AACrC,eAAO,MAAM,eAAe,IAAI,CAAC;AACjC,eAAO,MAAM,iBAAiB,IAAI,CAAC;AAEnC,MAAM,MAAM,OAAO,GAAG,OAAO,OAAO,CAAC;AACrC,MAAM,MAAM,mBAAmB,GAAG,OAAO,mBAAmB,CAAC;AAC7D,MAAM,MAAM,eAAe,GAAG,OAAO,eAAe,CAAC;AACrD,MAAM,MAAM,iBAAiB,GAAG,OAAO,iBAAiB,CAAC"}
@@ -0,0 +1,6 @@
1
+ /* eslint-disable @typescript-eslint/naming-convention */
2
+ export const Unknown = 0;
3
+ export const WrongReplicaVersion = 1;
4
+ export const WatermarkTooOld = 2;
5
+ export const WatermarkNotFound = 3;
6
+ //# sourceMappingURL=error-type-enum.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"error-type-enum.js","sourceRoot":"","sources":["../../../../../../zero-cache/src/services/change-streamer/error-type-enum.ts"],"names":[],"mappings":"AAAA,yDAAyD;AAEzD,MAAM,CAAC,MAAM,OAAO,GAAG,CAAC,CAAC;AACzB,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,CAAC;AACrC,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,CAAC;AACjC,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"storer.d.ts","sourceRoot":"","sources":["../../../../../../zero-cache/src/services/change-streamer/storer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,UAAU,EAAC,MAAM,kBAAkB,CAAC;AAO5C,OAAO,KAAK,EAAC,UAAU,EAAC,MAAM,mBAAmB,CAAC;AAClD,OAAO,EAAC,KAAK,MAAM,EAAC,MAAM,iDAAiD,CAAC;AAC5E,OAAO,KAAK,EAAC,OAAO,EAAC,MAAM,eAAe,CAAC;AAC3C,OAAO,KAAK,EAAC,iBAAiB,EAAC,MAAM,8BAA8B,CAAC;AAEpE,OAAO,EAAC,UAAU,EAAC,MAAM,iBAAiB,CAAC;AAU3C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,qBAAa,MAAO,YAAW,OAAO;;IACpC,QAAQ,CAAC,EAAE,YAAY;IAMvB,QAAQ,CAAC,OAAO,wDAAqB;gBAGnC,EAAE,EAAE,UAAU,EACd,EAAE,EAAE,UAAU,EACd,cAAc,EAAE,MAAM,EACtB,QAAQ,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,IAAI;IAQzB,sBAAsB,IAAI,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAOhD,kBAAkB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IA0B5D,KAAK,CAAC,KAAK,EAAE,iBAAiB;IAI9B,OAAO,CAAC,GAAG,EAAE,UAAU;IAIjB,GAAG;IA+KT,IAAI;CAIL"}
1
+ {"version":3,"file":"storer.d.ts","sourceRoot":"","sources":["../../../../../../zero-cache/src/services/change-streamer/storer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,UAAU,EAAC,MAAM,kBAAkB,CAAC;AAQ5C,OAAO,KAAK,EAAC,UAAU,EAAC,MAAM,mBAAmB,CAAC;AAClD,OAAO,EAAC,KAAK,MAAM,EAAC,MAAM,iDAAiD,CAAC;AAC5E,OAAO,KAAK,EAAC,OAAO,EAAC,MAAM,eAAe,CAAC;AAC3C,OAAO,KAAK,EAAC,iBAAiB,EAAC,MAAM,8BAA8B,CAAC;AAGpE,OAAO,EAAC,UAAU,EAAC,MAAM,iBAAiB,CAAC;AAU3C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,qBAAa,MAAO,YAAW,OAAO;;IACpC,QAAQ,CAAC,EAAE,YAAY;IAMvB,QAAQ,CAAC,OAAO,wDAAqB;gBAGnC,EAAE,EAAE,UAAU,EACd,EAAE,EAAE,UAAU,EACd,cAAc,EAAE,MAAM,EACtB,QAAQ,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,IAAI;IAQzB,sBAAsB,IAAI,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAOhD,kBAAkB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IA0B5D,KAAK,CAAC,KAAK,EAAE,iBAAiB;IAI9B,OAAO,CAAC,GAAG,EAAE,UAAU;IAIjB,GAAG;IAuJT,IAAI;CAIL"}
@@ -3,9 +3,11 @@ import { resolver } from '@rocicorp/resolver';
3
3
  import { assert } from '../../../../shared/src/asserts.js';
4
4
  import { Queue } from '../../../../shared/src/queue.js';
5
5
  import { promiseVoid } from '../../../../shared/src/resolved-promises.js';
6
- import { Mode, TransactionPool } from '../../db/transaction-pool.js';
6
+ import * as Mode from '../../db/mode-enum.js';
7
+ import { TransactionPool } from '../../db/transaction-pool.js';
7
8
  import {} from '../change-source/protocol/current/downstream.js';
8
- import { ErrorType } from './change-streamer.js';
9
+ import {} from './change-streamer.js';
10
+ import * as ErrorType from './error-type-enum.js';
9
11
  import { Subscriber } from './subscriber.js';
10
12
  /**
11
13
  * Handles the storage of changes and the catchup of subscribers
@@ -120,29 +122,8 @@ export class Storer {
120
122
  pos: tx.pos,
121
123
  change: change,
122
124
  };
123
- tx.pool.process(tx => [
124
- // Ignore conflicts to take into account transaction replay when an
125
- // acknowledgement doesn't reach upstream.
126
- tx `INSERT INTO cdc."changeLog" ${tx(entry)} ON CONFLICT DO NOTHING`,
127
- ]);
125
+ tx.pool.process(tx => [tx `INSERT INTO cdc."changeLog" ${tx(entry)}`]);
128
126
  if (tag === 'commit') {
129
- // Sanity check that there are no records between the preCommitWatermark
130
- // and the commit watermark.
131
- const { count } = await tx.pool.processReadTask(async (db) => {
132
- assert(tx);
133
- const results = await db `
134
- SELECT COUNT(*) as count FROM cdc."changeLog"
135
- WHERE watermark > ${tx.preCommitWatermark} AND
136
- watermark < ${entry.watermark}
137
- `;
138
- return results[0];
139
- });
140
- if (count > 0) {
141
- const err = new Error(`Unexpected entries between precommit ${tx.preCommitWatermark} and commit ${watermark}`);
142
- tx.pool.fail(err);
143
- await tx.pool.done();
144
- throw err; // tx.pool.done() throws, but this makes it clearer.
145
- }
146
127
  tx.pool.setDone();
147
128
  await tx.pool.done();
148
129
  tx = null;
@@ -233,7 +214,7 @@ function toDownstream(entry) {
233
214
  const { watermark, change } = entry;
234
215
  switch (change.tag) {
235
216
  case 'begin':
236
- return [watermark, ['begin', change]];
217
+ return [watermark, ['begin', change, { commitWatermark: watermark }]];
237
218
  case 'commit':
238
219
  return [watermark, ['commit', change, { watermark }]];
239
220
  case 'rollback':
@@ -1 +1 @@
1
- {"version":3,"file":"storer.js","sourceRoot":"","sources":["../../../../../../zero-cache/src/services/change-streamer/storer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,UAAU,EAAC,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAAC,QAAQ,EAAC,MAAM,oBAAoB,CAAC;AAC5C,OAAO,EAAC,MAAM,EAAC,MAAM,mCAAmC,CAAC;AACzD,OAAO,EAAC,KAAK,EAAC,MAAM,iCAAiC,CAAC;AACtD,OAAO,EAAC,WAAW,EAAC,MAAM,6CAA6C,CAAC;AACxE,OAAO,EAAC,IAAI,EAAE,eAAe,EAAC,MAAM,8BAA8B,CAAC;AAGnE,OAAO,EAAa,MAAM,iDAAiD,CAAC;AAG5E,OAAO,EAAC,SAAS,EAAmB,MAAM,sBAAsB,CAAC;AACjE,OAAO,EAAC,UAAU,EAAC,MAAM,iBAAiB,CAAC;AAU3C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,MAAM,OAAO,MAAM;IACR,EAAE,GAAG,QAAQ,CAAC;IACd,GAAG,CAAa;IAChB,GAAG,CAAa;IAChB,eAAe,CAAS;IACxB,SAAS,CAAsB;IAC/B,MAAM,GAAG,IAAI,KAAK,EAAc,CAAC;IACjC,OAAO,GAAG,QAAQ,EAAS,CAAC;IAErC,YACE,EAAc,EACd,EAAc,EACd,cAAsB,EACtB,QAA6B;QAE7B,IAAI,CAAC,GAAG,GAAG,EAAE,CAAC;QACd,IAAI,CAAC,GAAG,GAAG,EAAE,CAAC;QACd,IAAI,CAAC,eAAe,GAAG,cAAc,CAAC;QACtC,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC;IAC5B,CAAC;IAED,KAAK,CAAC,sBAAsB;QAC1B,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,GAAG,CAE5B,mDAAmD,CAAC;QACrD,OAAO,MAAM,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;IACvB,CAAC;IAED,KAAK,CAAC,kBAAkB,CAAC,SAAiB;QACxC,uEAAuE;QACvE,+EAA+E;QAC/E,+DAA+D;QAC/D,uCAAuC;QACvC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,GAAG,CAAA;gEAC+B,SAAS,EAAE,CAAC;QACxE,6EAA6E;QAC7E,wEAAwE;QACxE,oEAAoE;QACpE,iBAAiB;QACjB,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,IAAI,SAAS,KAAK,IAAI,CAAC,eAAe,EAAE,CAAC;YAC9D,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,CACb,gDAAgD,SAAS,SAAS,MAAM,CAAC,MAAM,UAAU,CAC1F,CAAC;YACF,OAAO,CAAC,CAAC;QACX,CAAC;QACD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,GAAG,CAAqB;;wDAEE,SAAS;;gDAEjB,CAAC;QAE7C,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;IACnC,CAAC;IAED,KAAK,CAAC,KAAwB;QAC5B,KAAK,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC,CAAC;IAC9C,CAAC;IAED,OAAO,CAAC,GAAe;QACrB,KAAK,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,YAAY,EAAE,GAAG,CAAC,CAAC,CAAC;IAChD,CAAC;IAED,KAAK,CAAC,GAAG;QACP,IAAI,EAAE,GAA8B,IAAI,CAAC;QACzC,IAAI,IAAwB,CAAC;QAE7B,MAAM,YAAY,GAAiB,EAAE,CAAC;QACtC,OACE,CAAC,IAAI,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,EAC1E,CAAC;YACD,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,YAAY,EAAE,CAAC;gBAC7B,MAAM,UAAU,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;gBAC3B,IAAI,EAAE,EAAE,CAAC;oBACP,YAAY,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,uCAAuC;gBACxE,CAAC;qBAAM,CAAC;oBACN,MAAM,IAAI,CAAC,aAAa,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,wBAAwB;gBAClE,CAAC;gBACD,SAAS;YACX,CAAC;YACD,uBAAuB;YACvB,MAAM,CAAC,SAAS,EAAE,UAAU,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;YACxC,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,GAAG,UAAU,CAAC;YACjC,IAAI,GAAG,KAAK,OAAO,EAAE,CAAC;gBACpB,MAAM,CAAC,CAAC,EAAE,EAAE,+CAA+C,CAAC,CAAC;gBAC7D,EAAE,GAAG;oBACH,IAAI,EAAE,IAAI,eAAe,CACvB,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,WAAW,EAAE,SAAS,CAAC,EAC5C,IAAI,CAAC,YAAY,CAClB;oBACD,kBAAkB,EAAE,SAAS;oBAC7B,GAAG,EAAE,CAAC;iBACP,CAAC;gBACF,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACxB,CAAC;iBAAM,CAAC;gBACN,MAAM,CAAC,EAAE,EAAE,YAAY,GAAG,yBAAyB,CAAC,CAAC;gBACrD,EAAE,CAAC,GAAG,EAAE,CAAC;YACX,CAAC;YAED,MAAM,KAAK,GAAG;gBACZ,SAAS,EAAE,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,kBAAkB;gBAC/D,SAAS,EAAE,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,kBAAkB,CAAC,CAAC,CAAC,IAAI;gBAC1D,GAAG,EAAE,EAAE,CAAC,GAAG;gBACX,MAAM,EAAE,MAA8B;aACvC,CAAC;YAEF,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,CAAC;gBACpB,mEAAmE;gBACnE,0CAA0C;gBAC1C,EAAE,CAAA,+BAA+B,EAAE,CAAC,KAAK,CAAC,yBAAyB;aACpE,CAAC,CAAC;YAEH,IAAI,GAAG,KAAK,QAAQ,EAAE,CAAC;gBACrB,wEAAwE;gBACxE,4BAA4B;gBAC5B,MAAM,EAAC,KAAK,EAAC,GAAG,MAAM,EAAE,CAAC,IAAI,CAAC,eAAe,CAAC,KAAK,EAAC,EAAE,EAAC,EAAE;oBACvD,MAAM,CAAC,EAAE,CAAC,CAAC;oBACX,MAAM,OAAO,GAAG,MAAM,EAAE,CAAmB;;kCAEnB,EAAE,CAAC,kBAAkB;kCACrB,KAAK,CAAC,SAAS;WACtC,CAAC;oBACF,OAAO,OAAO,CAAC,CAAC,CAAC,CAAC;gBACpB,CAAC,CAAC,CAAC;gBACH,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;oBACd,MAAM,GAAG,GAAG,IAAI,KAAK,CACnB,wCAAwC,EAAE,CAAC,kBAAkB,eAAe,SAAS,EAAE,CACxF,CAAC;oBACF,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;oBAClB,MAAM,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;oBACrB,MAAM,GAAG,CAAC,CAAC,oDAAoD;gBACjE,CAAC;gBAED,EAAE,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;gBAClB,MAAM,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;gBACrB,EAAE,GAAG,IAAI,CAAC;gBAEV,wCAAwC;gBACxC,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;gBAE3B,qEAAqE;gBACrE,+CAA+C;gBAC/C,MAAM,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;YACnD,CAAC;iBAAM,IAAI,GAAG,KAAK,UAAU,EAAE,CAAC;gBAC9B,6EAA6E;gBAC7E,sEAAsE;gBACtE,EAAE,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;gBAChB,MAAM,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;gBACrB,EAAE,GAAG,IAAI,CAAC;gBAEV,MAAM,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;YACnD,CAAC;QACH,CAAC;QAED,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,gBAAgB,CAAC,CAAC;IACpC,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,IAAkB;QACpC,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACtB,OAAO;QACT,CAAC;QAED,MAAM,MAAM,GAAG,IAAI,eAAe,CAChC,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,MAAM,EAAE,SAAS,CAAC,EACvC,IAAI,CAAC,QAAQ,CACd,CAAC;QACF,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAErB,0EAA0E;QAC1E,wEAAwE;QACxE,sEAAsE;QACtE,oEAAoE;QACpE,MAAM,MAAM,CAAC,eAAe,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;QAEvC,0EAA0E;QAC1E,yDAAyD;QACzD,KAAK,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,CACzE,MAAM,CAAC,OAAO,EAAE,CACjB,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,QAAQ,CAAC,GAAe,EAAE,MAAuB;QACrD,IAAI,CAAC;YACH,MAAM,MAAM,CAAC,eAAe,CAAC,KAAK,EAAC,EAAE,EAAC,EAAE;gBACtC,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;gBAEzB,4EAA4E;gBAC5E,sEAAsE;gBACtE,IAAI,cAAc,GAAG,GAAG,CAAC,SAAS,KAAK,IAAI,CAAC,eAAe,CAAC;gBAC5D,IAAI,KAAK,GAAG,CAAC,CAAC;gBACd,IAAI,KAAK,EAAE,MAAM,OAAO,IAAI,EAAE,CAAe;;gCAErB,GAAG,CAAC,SAAS;mCACV,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;oBAC1C,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;wBAC5B,IAAI,KAAK,CAAC,SAAS,KAAK,GAAG,CAAC,SAAS,EAAE,CAAC;4BACtC,kCAAkC;4BAClC,6CAA6C;4BAC7C,cAAc,GAAG,IAAI,CAAC;wBACxB,CAAC;6BAAM,IAAI,cAAc,EAAE,CAAC;4BAC1B,GAAG,CAAC,OAAO,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC;4BACjC,KAAK,EAAE,CAAC;wBACV,CAAC;6BAAM,CAAC;4BACN,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,CACb,qCAAqC,GAAG,CAAC,SAAS,EAAE,CACrD,CAAC;4BACF,GAAG,CAAC,KAAK,CACP,SAAS,CAAC,eAAe,EACzB,mCAAmC,KAAK,CAAC,SAAS,eAAe,GAAG,CAAC,SAAS,GAAG,CAClF,CAAC;4BACF,OAAO;wBACT,CAAC;oBACH,CAAC;gBACH,CAAC;gBACD,IAAI,cAAc,EAAE,CAAC;oBACnB,8DAA8D;oBAC9D,sEAAsE;oBACtE,GAAG,CAAC,WAAW,EAAE,CAAC;oBAElB,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,CACb,aAAa,GAAG,CAAC,EAAE,SAAS,KAAK,aAC/B,IAAI,CAAC,GAAG,EAAE,GAAG,KACf,MAAM,CACP,CAAC;gBACJ,CAAC;qBAAM,CAAC;oBACN,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,qCAAqC,GAAG,CAAC,SAAS,EAAE,CAAC,CAAC;oBACtE,GAAG,CAAC,KAAK,CACP,SAAS,CAAC,iBAAiB,EAC3B,4CAA4C,GAAG,CAAC,SAAS,EAAE,CAC5D,CAAC;gBACJ,CAAC;YACH,CAAC,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACd,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,sCAAsC,GAAG,CAAC,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC;QACxE,CAAC;IACH,CAAC;IAED,IAAI;QACF,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QAC5B,OAAO,WAAW,CAAC;IACrB,CAAC;CACF;AAED,SAAS,YAAY,CAAC,KAAkB;IACtC,MAAM,EAAC,SAAS,EAAE,MAAM,EAAC,GAAG,KAAK,CAAC;IAClC,QAAQ,MAAM,CAAC,GAAG,EAAE,CAAC;QACnB,KAAK,OAAO;YACV,OAAO,CAAC,SAAS,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC;QACxC,KAAK,QAAQ;YACX,OAAO,CAAC,SAAS,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAC,SAAS,EAAC,CAAC,CAAC,CAAC;QACtD,KAAK,UAAU;YACb,OAAO,CAAC,SAAS,EAAE,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC,CAAC;QAC3C;YACE,OAAO,CAAC,SAAS,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IACzC,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"storer.js","sourceRoot":"","sources":["../../../../../../zero-cache/src/services/change-streamer/storer.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,9 @@
1
+ import type { Enum } from '../../../../shared/src/enum.js';
1
2
  import { Subscription } from '../../types/subscription.js';
2
3
  import type { WatermarkedChange } from './change-streamer-service.js';
3
- import { type Downstream, ErrorType } from './change-streamer.js';
4
+ import { type Downstream } from './change-streamer.js';
5
+ import * as ErrorType from './error-type-enum.js';
6
+ type ErrorType = Enum<typeof ErrorType>;
4
7
  /**
5
8
  * Encapsulates a subscriber to changes. All subscribers start in a
6
9
  * "catchup" phase in which changes are buffered in a backlog while the
@@ -25,4 +28,5 @@ export declare class Subscriber {
25
28
  fail(err?: unknown): void;
26
29
  close(error?: ErrorType, message?: string): void;
27
30
  }
31
+ export {};
28
32
  //# sourceMappingURL=subscriber.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"subscriber.d.ts","sourceRoot":"","sources":["../../../../../../zero-cache/src/services/change-streamer/subscriber.ts"],"names":[],"mappings":"AAEA,OAAO,EAAC,YAAY,EAAC,MAAM,6BAA6B,CAAC;AACzD,OAAO,KAAK,EAAC,iBAAiB,EAAC,MAAM,8BAA8B,CAAC;AACpE,OAAO,EAAC,KAAK,UAAU,EAAE,SAAS,EAAC,MAAM,sBAAsB,CAAC;AAEhE;;;;;;GAMG;AACH,qBAAa,UAAU;;IACrB,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;gBAOlB,EAAE,EAAE,MAAM,EACV,SAAS,EAAE,MAAM,EACjB,UAAU,EAAE,YAAY,CAAC,UAAU,CAAC;IAStC,IAAI,SAAS,WAEZ;IAED,IAAI,KAAK,WAER;IAED,IAAI,CAAC,MAAM,EAAE,iBAAiB;IAW9B,kEAAkE;IAClE,OAAO,CAAC,MAAM,EAAE,iBAAiB;IAIjC;;;OAGG;IACH,WAAW;IAuBX,IAAI,CAAC,GAAG,CAAC,EAAE,OAAO;IAIlB,KAAK,CAAC,KAAK,CAAC,EAAE,SAAS,EAAE,OAAO,CAAC,EAAE,MAAM;CAS1C"}
1
+ {"version":3,"file":"subscriber.d.ts","sourceRoot":"","sources":["../../../../../../zero-cache/src/services/change-streamer/subscriber.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAC,IAAI,EAAC,MAAM,gCAAgC,CAAC;AAEzD,OAAO,EAAC,YAAY,EAAC,MAAM,6BAA6B,CAAC;AACzD,OAAO,KAAK,EAAC,iBAAiB,EAAC,MAAM,8BAA8B,CAAC;AACpE,OAAO,EAAC,KAAK,UAAU,EAAC,MAAM,sBAAsB,CAAC;AACrD,OAAO,KAAK,SAAS,MAAM,sBAAsB,CAAC;AAElD,KAAK,SAAS,GAAG,IAAI,CAAC,OAAO,SAAS,CAAC,CAAC;AAExC;;;;;;GAMG;AACH,qBAAa,UAAU;;IACrB,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;gBAOlB,EAAE,EAAE,MAAM,EACV,SAAS,EAAE,MAAM,EACjB,UAAU,EAAE,YAAY,CAAC,UAAU,CAAC;IAStC,IAAI,SAAS,WAEZ;IAED,IAAI,KAAK,WAER;IAED,IAAI,CAAC,MAAM,EAAE,iBAAiB;IAW9B,kEAAkE;IAClE,OAAO,CAAC,MAAM,EAAE,iBAAiB;IAIjC;;;OAGG;IACH,WAAW;IAuBX,IAAI,CAAC,GAAG,CAAC,EAAE,OAAO;IAIlB,KAAK,CAAC,KAAK,CAAC,EAAE,SAAS,EAAE,OAAO,CAAC,EAAE,MAAM;CAS1C"}
@@ -1,7 +1,8 @@
1
1
  import { assert } from '../../../../shared/src/asserts.js';
2
2
  import { max } from '../../types/lexi-version.js';
3
3
  import { Subscription } from '../../types/subscription.js';
4
- import { ErrorType } from './change-streamer.js';
4
+ import {} from './change-streamer.js';
5
+ import * as ErrorType from './error-type-enum.js';
5
6
  /**
6
7
  * Encapsulates a subscriber to changes. All subscribers start in a
7
8
  * "catchup" phase in which changes are buffered in a backlog while the