@rocicorp/zero 0.17.2025022800 → 0.17.2025030600

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 (252) hide show
  1. package/out/{chunk-5BT5TJFM.js → chunk-XXZWDMNW.js} +4025 -531
  2. package/out/chunk-XXZWDMNW.js.map +7 -0
  3. package/out/react.js +19 -11
  4. package/out/react.js.map +2 -2
  5. package/out/shared/src/set-utils.d.ts +1 -1
  6. package/out/shared/src/set-utils.js +1 -1
  7. package/out/solid.js +9 -5
  8. package/out/solid.js.map +2 -2
  9. package/out/zero-cache/src/auth/read-authorizer.d.ts.map +1 -1
  10. package/out/zero-cache/src/auth/read-authorizer.js +0 -1
  11. package/out/zero-cache/src/auth/read-authorizer.js.map +1 -1
  12. package/out/zero-cache/src/config/zero-config.d.ts +46 -13
  13. package/out/zero-cache/src/config/zero-config.d.ts.map +1 -1
  14. package/out/zero-cache/src/config/zero-config.js +76 -32
  15. package/out/zero-cache/src/config/zero-config.js.map +1 -1
  16. package/out/zero-cache/src/db/migration-lite.d.ts.map +1 -1
  17. package/out/zero-cache/src/db/migration-lite.js +12 -6
  18. package/out/zero-cache/src/db/migration-lite.js.map +1 -1
  19. package/out/zero-cache/src/db/migration.d.ts +1 -1
  20. package/out/zero-cache/src/db/migration.d.ts.map +1 -1
  21. package/out/zero-cache/src/db/migration.js +16 -5
  22. package/out/zero-cache/src/db/migration.js.map +1 -1
  23. package/out/zero-cache/src/db/pg-to-lite.d.ts +4 -0
  24. package/out/zero-cache/src/db/pg-to-lite.d.ts.map +1 -1
  25. package/out/zero-cache/src/db/pg-to-lite.js +14 -4
  26. package/out/zero-cache/src/db/pg-to-lite.js.map +1 -1
  27. package/out/zero-cache/src/scripts/deploy-permissions.js +35 -20
  28. package/out/zero-cache/src/scripts/deploy-permissions.js.map +1 -1
  29. package/out/zero-cache/src/scripts/permissions.d.ts +17 -0
  30. package/out/zero-cache/src/scripts/permissions.d.ts.map +1 -1
  31. package/out/zero-cache/src/scripts/permissions.js +3 -1
  32. package/out/zero-cache/src/scripts/permissions.js.map +1 -1
  33. package/out/zero-cache/src/server/change-streamer.d.ts.map +1 -1
  34. package/out/zero-cache/src/server/change-streamer.js +11 -10
  35. package/out/zero-cache/src/server/change-streamer.js.map +1 -1
  36. package/out/zero-cache/src/server/main.d.ts.map +1 -1
  37. package/out/zero-cache/src/server/main.js +11 -4
  38. package/out/zero-cache/src/server/main.js.map +1 -1
  39. package/out/zero-cache/src/server/multi/config.d.ts +23 -9
  40. package/out/zero-cache/src/server/multi/config.d.ts.map +1 -1
  41. package/out/zero-cache/src/server/multi/config.js +2 -4
  42. package/out/zero-cache/src/server/multi/config.js.map +1 -1
  43. package/out/zero-cache/src/server/multi/run-worker.d.ts.map +1 -1
  44. package/out/zero-cache/src/server/multi/run-worker.js +1 -3
  45. package/out/zero-cache/src/server/multi/run-worker.js.map +1 -1
  46. package/out/zero-cache/src/server/replicator.js +1 -1
  47. package/out/zero-cache/src/server/replicator.js.map +1 -1
  48. package/out/zero-cache/src/server/syncer.d.ts.map +1 -1
  49. package/out/zero-cache/src/server/syncer.js +14 -12
  50. package/out/zero-cache/src/server/syncer.js.map +1 -1
  51. package/out/zero-cache/src/services/change-source/custom/change-source.d.ts +5 -5
  52. package/out/zero-cache/src/services/change-source/custom/change-source.d.ts.map +1 -1
  53. package/out/zero-cache/src/services/change-source/custom/change-source.js +21 -19
  54. package/out/zero-cache/src/services/change-source/custom/change-source.js.map +1 -1
  55. package/out/zero-cache/src/services/change-source/custom/sync-schema.d.ts +2 -2
  56. package/out/zero-cache/src/services/change-source/custom/sync-schema.d.ts.map +1 -1
  57. package/out/zero-cache/src/services/change-source/custom/sync-schema.js +2 -2
  58. package/out/zero-cache/src/services/change-source/custom/sync-schema.js.map +1 -1
  59. package/out/zero-cache/src/services/change-source/pg/change-source.d.ts +5 -5
  60. package/out/zero-cache/src/services/change-source/pg/change-source.d.ts.map +1 -1
  61. package/out/zero-cache/src/services/change-source/pg/change-source.js +41 -34
  62. package/out/zero-cache/src/services/change-source/pg/change-source.js.map +1 -1
  63. package/out/zero-cache/src/services/change-source/pg/decommission.d.ts +4 -0
  64. package/out/zero-cache/src/services/change-source/pg/decommission.d.ts.map +1 -0
  65. package/out/zero-cache/src/services/change-source/pg/decommission.js +21 -0
  66. package/out/zero-cache/src/services/change-source/pg/decommission.js.map +1 -0
  67. package/out/zero-cache/src/services/change-source/pg/initial-sync.d.ts +4 -3
  68. package/out/zero-cache/src/services/change-source/pg/initial-sync.d.ts.map +1 -1
  69. package/out/zero-cache/src/services/change-source/pg/initial-sync.js +45 -25
  70. package/out/zero-cache/src/services/change-source/pg/initial-sync.js.map +1 -1
  71. package/out/zero-cache/src/services/change-source/pg/schema/ddl.d.ts +3 -2
  72. package/out/zero-cache/src/services/change-source/pg/schema/ddl.d.ts.map +1 -1
  73. package/out/zero-cache/src/services/change-source/pg/schema/ddl.js +35 -16
  74. package/out/zero-cache/src/services/change-source/pg/schema/ddl.js.map +1 -1
  75. package/out/zero-cache/src/services/change-source/pg/schema/init.d.ts +4 -3
  76. package/out/zero-cache/src/services/change-source/pg/schema/init.d.ts.map +1 -1
  77. package/out/zero-cache/src/services/change-source/pg/schema/init.js +53 -13
  78. package/out/zero-cache/src/services/change-source/pg/schema/init.js.map +1 -1
  79. package/out/zero-cache/src/services/change-source/pg/schema/published.d.ts +2 -2
  80. package/out/zero-cache/src/services/change-source/pg/schema/published.d.ts.map +1 -1
  81. package/out/zero-cache/src/services/change-source/pg/schema/published.js.map +1 -1
  82. package/out/zero-cache/src/services/change-source/pg/schema/shard.d.ts +10 -12
  83. package/out/zero-cache/src/services/change-source/pg/schema/shard.d.ts.map +1 -1
  84. package/out/zero-cache/src/services/change-source/pg/schema/shard.js +52 -53
  85. package/out/zero-cache/src/services/change-source/pg/schema/shard.js.map +1 -1
  86. package/out/zero-cache/src/services/change-source/pg/sync-schema.d.ts +2 -2
  87. package/out/zero-cache/src/services/change-source/pg/sync-schema.d.ts.map +1 -1
  88. package/out/zero-cache/src/services/change-source/pg/sync-schema.js +11 -2
  89. package/out/zero-cache/src/services/change-source/pg/sync-schema.js.map +1 -1
  90. package/out/zero-cache/src/services/change-streamer/change-streamer-service.d.ts +3 -2
  91. package/out/zero-cache/src/services/change-streamer/change-streamer-service.d.ts.map +1 -1
  92. package/out/zero-cache/src/services/change-streamer/change-streamer-service.js +11 -11
  93. package/out/zero-cache/src/services/change-streamer/change-streamer-service.js.map +1 -1
  94. package/out/zero-cache/src/services/change-streamer/schema/init.d.ts +3 -2
  95. package/out/zero-cache/src/services/change-streamer/schema/init.d.ts.map +1 -1
  96. package/out/zero-cache/src/services/change-streamer/schema/init.js +25 -14
  97. package/out/zero-cache/src/services/change-streamer/schema/init.js.map +1 -1
  98. package/out/zero-cache/src/services/change-streamer/schema/tables.d.ts +6 -5
  99. package/out/zero-cache/src/services/change-streamer/schema/tables.d.ts.map +1 -1
  100. package/out/zero-cache/src/services/change-streamer/schema/tables.js +28 -26
  101. package/out/zero-cache/src/services/change-streamer/schema/tables.js.map +1 -1
  102. package/out/zero-cache/src/services/change-streamer/storer.d.ts +4 -2
  103. package/out/zero-cache/src/services/change-streamer/storer.d.ts.map +1 -1
  104. package/out/zero-cache/src/services/change-streamer/storer.js +19 -9
  105. package/out/zero-cache/src/services/change-streamer/storer.js.map +1 -1
  106. package/out/zero-cache/src/services/litestream/commands.d.ts +1 -1
  107. package/out/zero-cache/src/services/litestream/commands.d.ts.map +1 -1
  108. package/out/zero-cache/src/services/litestream/commands.js +3 -3
  109. package/out/zero-cache/src/services/litestream/commands.js.map +1 -1
  110. package/out/zero-cache/src/services/mutagen/mutagen.d.ts +3 -2
  111. package/out/zero-cache/src/services/mutagen/mutagen.d.ts.map +1 -1
  112. package/out/zero-cache/src/services/mutagen/mutagen.js +14 -16
  113. package/out/zero-cache/src/services/mutagen/mutagen.js.map +1 -1
  114. package/out/zero-cache/src/services/replicator/schema/replication-state.d.ts +14 -5
  115. package/out/zero-cache/src/services/replicator/schema/replication-state.d.ts.map +1 -1
  116. package/out/zero-cache/src/services/replicator/schema/replication-state.js +29 -1
  117. package/out/zero-cache/src/services/replicator/schema/replication-state.js.map +1 -1
  118. package/out/zero-cache/src/services/view-syncer/client-handler.d.ts +3 -2
  119. package/out/zero-cache/src/services/view-syncer/client-handler.d.ts.map +1 -1
  120. package/out/zero-cache/src/services/view-syncer/client-handler.js +5 -3
  121. package/out/zero-cache/src/services/view-syncer/client-handler.js.map +1 -1
  122. package/out/zero-cache/src/services/view-syncer/cvr-store.d.ts +3 -1
  123. package/out/zero-cache/src/services/view-syncer/cvr-store.d.ts.map +1 -1
  124. package/out/zero-cache/src/services/view-syncer/cvr-store.js +21 -11
  125. package/out/zero-cache/src/services/view-syncer/cvr-store.js.map +1 -1
  126. package/out/zero-cache/src/services/view-syncer/cvr.d.ts +5 -3
  127. package/out/zero-cache/src/services/view-syncer/cvr.d.ts.map +1 -1
  128. package/out/zero-cache/src/services/view-syncer/cvr.js +100 -66
  129. package/out/zero-cache/src/services/view-syncer/cvr.js.map +1 -1
  130. package/out/zero-cache/src/services/view-syncer/database-storage.d.ts +2 -0
  131. package/out/zero-cache/src/services/view-syncer/database-storage.d.ts.map +1 -1
  132. package/out/zero-cache/src/services/view-syncer/database-storage.js +8 -3
  133. package/out/zero-cache/src/services/view-syncer/database-storage.js.map +1 -1
  134. package/out/zero-cache/src/services/view-syncer/pipeline-driver.d.ts +2 -1
  135. package/out/zero-cache/src/services/view-syncer/pipeline-driver.d.ts.map +1 -1
  136. package/out/zero-cache/src/services/view-syncer/pipeline-driver.js +1 -1
  137. package/out/zero-cache/src/services/view-syncer/pipeline-driver.js.map +1 -1
  138. package/out/zero-cache/src/services/view-syncer/row-record-cache.d.ts +3 -2
  139. package/out/zero-cache/src/services/view-syncer/row-record-cache.d.ts.map +1 -1
  140. package/out/zero-cache/src/services/view-syncer/row-record-cache.js +5 -3
  141. package/out/zero-cache/src/services/view-syncer/row-record-cache.js.map +1 -1
  142. package/out/zero-cache/src/services/view-syncer/schema/cvr.d.ts +3 -5
  143. package/out/zero-cache/src/services/view-syncer/schema/cvr.d.ts.map +1 -1
  144. package/out/zero-cache/src/services/view-syncer/schema/cvr.js +38 -40
  145. package/out/zero-cache/src/services/view-syncer/schema/cvr.js.map +1 -1
  146. package/out/zero-cache/src/services/view-syncer/schema/init.d.ts +2 -1
  147. package/out/zero-cache/src/services/view-syncer/schema/init.d.ts.map +1 -1
  148. package/out/zero-cache/src/services/view-syncer/schema/init.js +7 -6
  149. package/out/zero-cache/src/services/view-syncer/schema/init.js.map +1 -1
  150. package/out/zero-cache/src/services/view-syncer/schema/types.d.ts +26 -18
  151. package/out/zero-cache/src/services/view-syncer/schema/types.d.ts.map +1 -1
  152. package/out/zero-cache/src/services/view-syncer/schema/types.js +12 -9
  153. package/out/zero-cache/src/services/view-syncer/schema/types.js.map +1 -1
  154. package/out/zero-cache/src/services/view-syncer/snapshotter.d.ts +2 -1
  155. package/out/zero-cache/src/services/view-syncer/snapshotter.d.ts.map +1 -1
  156. package/out/zero-cache/src/services/view-syncer/snapshotter.js +1 -1
  157. package/out/zero-cache/src/services/view-syncer/snapshotter.js.map +1 -1
  158. package/out/zero-cache/src/services/view-syncer/view-syncer.d.ts +18 -1
  159. package/out/zero-cache/src/services/view-syncer/view-syncer.d.ts.map +1 -1
  160. package/out/zero-cache/src/services/view-syncer/view-syncer.js +194 -43
  161. package/out/zero-cache/src/services/view-syncer/view-syncer.js.map +1 -1
  162. package/out/zero-cache/src/types/lite.d.ts +2 -2
  163. package/out/zero-cache/src/types/lite.d.ts.map +1 -1
  164. package/out/zero-cache/src/types/lite.js +9 -4
  165. package/out/zero-cache/src/types/lite.js.map +1 -1
  166. package/out/zero-cache/src/types/pg.d.ts +7 -3
  167. package/out/zero-cache/src/types/pg.d.ts.map +1 -1
  168. package/out/zero-cache/src/types/pg.js +11 -5
  169. package/out/zero-cache/src/types/pg.js.map +1 -1
  170. package/out/zero-cache/src/types/shards.d.ts +33 -0
  171. package/out/zero-cache/src/types/shards.d.ts.map +1 -0
  172. package/out/zero-cache/src/types/shards.js +44 -0
  173. package/out/zero-cache/src/types/shards.js.map +1 -0
  174. package/out/zero-cache/src/workers/connection.d.ts.map +1 -1
  175. package/out/zero-cache/src/workers/connection.js +39 -20
  176. package/out/zero-cache/src/workers/connection.js.map +1 -1
  177. package/out/zero-cache/src/workers/replicator.d.ts +2 -1
  178. package/out/zero-cache/src/workers/replicator.d.ts.map +1 -1
  179. package/out/zero-cache/src/workers/replicator.js +42 -17
  180. package/out/zero-cache/src/workers/replicator.js.map +1 -1
  181. package/out/zero-cache/src/workers/syncer-ws-message-handler.d.ts +4 -4
  182. package/out/zero-cache/src/workers/syncer-ws-message-handler.d.ts.map +1 -1
  183. package/out/zero-cache/src/workers/syncer-ws-message-handler.js +5 -2
  184. package/out/zero-cache/src/workers/syncer-ws-message-handler.js.map +1 -1
  185. package/out/zero-client/src/client/custom.d.ts +2 -11
  186. package/out/zero-client/src/client/custom.d.ts.map +1 -1
  187. package/out/zero-client/src/client/zero.d.ts.map +1 -1
  188. package/out/zero-client/src/mod.d.ts +1 -0
  189. package/out/zero-client/src/mod.d.ts.map +1 -1
  190. package/out/zero-pg/src/custom.d.ts +1 -2
  191. package/out/zero-pg/src/custom.d.ts.map +1 -1
  192. package/out/zero-pg/src/custom.js.map +1 -1
  193. package/out/zero-pg/src/mod.d.ts +2 -2
  194. package/out/zero-pg/src/mod.d.ts.map +1 -1
  195. package/out/zero-pg/src/query.d.ts +3 -4
  196. package/out/zero-pg/src/query.d.ts.map +1 -1
  197. package/out/zero-pg/src/query.js +5 -7
  198. package/out/zero-pg/src/query.js.map +1 -1
  199. package/out/zero-pg/src/web.d.ts +1 -1
  200. package/out/zero-pg/src/web.d.ts.map +1 -1
  201. package/out/zero-pg/src/web.js.map +1 -1
  202. package/out/zero-protocol/src/close-connection.d.ts +16 -0
  203. package/out/zero-protocol/src/close-connection.d.ts.map +1 -0
  204. package/out/zero-protocol/src/close-connection.js +17 -0
  205. package/out/zero-protocol/src/close-connection.js.map +1 -0
  206. package/out/zero-protocol/src/up.d.ts +1 -1
  207. package/out/zero-protocol/src/up.d.ts.map +1 -1
  208. package/out/zero-protocol/src/up.js +2 -1
  209. package/out/zero-protocol/src/up.js.map +1 -1
  210. package/out/zero-react/src/use-query.d.ts +11 -2
  211. package/out/zero-react/src/use-query.d.ts.map +1 -1
  212. package/out/zero-solid/src/use-query.d.ts +4 -1
  213. package/out/zero-solid/src/use-query.d.ts.map +1 -1
  214. package/out/zero.js +1 -2
  215. package/out/zql/src/ivm/exists.d.ts.map +1 -1
  216. package/out/zql/src/ivm/exists.js +134 -138
  217. package/out/zql/src/ivm/exists.js.map +1 -1
  218. package/out/zql/src/mutate/custom.d.ts +36 -1
  219. package/out/zql/src/mutate/custom.d.ts.map +1 -1
  220. package/out/zql/src/mutate/custom.js.map +1 -1
  221. package/out/zql/src/query/query-impl.d.ts +8 -8
  222. package/out/zql/src/query/query-impl.d.ts.map +1 -1
  223. package/out/zql/src/query/query-impl.js +29 -25
  224. package/out/zql/src/query/query-impl.js.map +1 -1
  225. package/out/zql/src/query/query-internal.d.ts +2 -2
  226. package/out/zql/src/query/query-internal.d.ts.map +1 -1
  227. package/out/zql/src/query/query.d.ts +10 -2
  228. package/out/zql/src/query/query.d.ts.map +1 -1
  229. package/out/zql/src/query/query.js +1 -1
  230. package/out/zql/src/query/query.js.map +1 -1
  231. package/out/zql/src/query/static-query.d.ts +1 -1
  232. package/out/zql/src/query/static-query.d.ts.map +1 -1
  233. package/out/zql/src/query/static-query.js +2 -2
  234. package/out/zql/src/query/static-query.js.map +1 -1
  235. package/out/zqlite/src/db.d.ts +3 -1
  236. package/out/zqlite/src/db.d.ts.map +1 -1
  237. package/out/zqlite/src/db.js +47 -0
  238. package/out/zqlite/src/db.js.map +1 -1
  239. package/package.json +3 -3
  240. package/out/chunk-5BT5TJFM.js.map +0 -7
  241. package/out/chunk-P3NUVEQJ.js +0 -3578
  242. package/out/chunk-P3NUVEQJ.js.map +0 -7
  243. package/out/pg.js +0 -593
  244. package/out/pg.js.map +0 -7
  245. package/out/zero-cache/src/services/change-source/pg/shard-config.d.ts +0 -19
  246. package/out/zero-cache/src/services/change-source/pg/shard-config.d.ts.map +0 -1
  247. package/out/zero-cache/src/services/change-source/pg/shard-config.js +0 -2
  248. package/out/zero-cache/src/services/change-source/pg/shard-config.js.map +0 -1
  249. package/out/zero-pg/src/db.d.ts +0 -27
  250. package/out/zero-pg/src/db.d.ts.map +0 -1
  251. package/out/zero-pg/src/db.js +0 -2
  252. package/out/zero-pg/src/db.js.map +0 -1
@@ -8,10 +8,11 @@ import { Queue } from "../../../../shared/src/queue.js";
8
8
  import { promiseVoid } from "../../../../shared/src/resolved-promises.js";
9
9
  import * as Mode from "../../db/mode-enum.js";
10
10
  import { TransactionPool } from "../../db/transaction-pool.js";
11
+ import { cdcSchema } from "../../types/shards.js";
11
12
  import {} from "../change-source/protocol/current/downstream.js";
12
13
  import {} from "./change-streamer.js";
13
14
  import * as ErrorType from "./error-type-enum.js";
14
- import { cdcSchema } from "./schema/tables.js";
15
+ import { AutoResetSignal, markResetRequired, } from "./schema/tables.js";
15
16
  import { Subscriber } from "./subscriber.js";
16
17
  /**
17
18
  * Handles the storage of changes and the catchup of subscribers
@@ -46,23 +47,25 @@ import { Subscriber } from "./subscriber.js";
46
47
  export class Storer {
47
48
  id = 'storer';
48
49
  #lc;
49
- #shardID;
50
+ #shard;
50
51
  #taskID;
51
52
  #db;
52
53
  #replicaVersion;
53
54
  #onConsumed;
55
+ #onFatal;
54
56
  #queue = new Queue();
55
- constructor(lc, shardID, taskID, db, replicaVersion, onConsumed) {
57
+ constructor(lc, shard, taskID, db, replicaVersion, onConsumed, onFatal) {
56
58
  this.#lc = lc;
57
- this.#shardID = shardID;
59
+ this.#shard = shard;
58
60
  this.#taskID = taskID;
59
61
  this.#db = db;
60
62
  this.#replicaVersion = replicaVersion;
61
63
  this.#onConsumed = onConsumed;
64
+ this.#onFatal = onFatal;
62
65
  }
63
66
  // For readability in SQL statements.
64
67
  #cdc(table) {
65
- return this.#db(`${cdcSchema(this.#shardID)}.${table}`);
68
+ return this.#db(`${cdcSchema(this.#shard)}.${table}`);
66
69
  }
67
70
  async assumeOwnership() {
68
71
  const db = this.#db;
@@ -88,8 +91,8 @@ export class Storer {
88
91
  status(s) {
89
92
  this.#queue.enqueue(s);
90
93
  }
91
- catchup(sub) {
92
- this.#queue.enqueue(['subscriber', sub]);
94
+ catchup(subscriber, mode) {
95
+ this.#queue.enqueue(['subscriber', { subscriber, mode }]);
93
96
  }
94
97
  async run() {
95
98
  let tx = null;
@@ -205,7 +208,7 @@ export class Storer {
205
208
  // #catchup() by disconnecting the associated subscriber.
206
209
  void Promise.all(subs.map(sub => this.#catchup(sub, reader))).finally(() => reader.setDone());
207
210
  }
208
- async #catchup(sub, reader) {
211
+ async #catchup({ subscriber: sub, mode }, reader) {
209
212
  try {
210
213
  await reader.processReadTask(async (tx) => {
211
214
  const start = Date.now();
@@ -227,6 +230,9 @@ export class Storer {
227
230
  sub.catchup(toDownstream(entry));
228
231
  count++;
229
232
  }
233
+ else if (mode === 'backup') {
234
+ throw new AutoResetSignal(`backup replica at watermark ${sub.watermark} is behind change db: ${entry.watermark})`);
235
+ }
230
236
  else {
231
237
  this.#lc.warn?.(`rejecting subscriber at watermark ${sub.watermark} (earliest watermark: ${entry.watermark})`);
232
238
  sub.close(ErrorType.WatermarkTooOld, `earliest supported watermark is ${entry.watermark} (requested ${sub.watermark})`);
@@ -246,8 +252,12 @@ export class Storer {
246
252
  });
247
253
  }
248
254
  catch (err) {
249
- sub.fail(err);
250
255
  this.#lc.error?.(`error while catching up subscriber ${sub.id}`, err);
256
+ if (err instanceof AutoResetSignal) {
257
+ await markResetRequired(this.#db, this.#shard);
258
+ this.#onFatal(err);
259
+ }
260
+ sub.fail(err);
251
261
  }
252
262
  }
253
263
  stop() {
@@ -1 +1 @@
1
- {"version":3,"file":"storer.js","sourceRoot":"","sources":["../../../../../../zero-cache/src/services/change-streamer/storer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"storer.js","sourceRoot":"","sources":["../../../../../../zero-cache/src/services/change-streamer/storer.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  import type { LogContext } from '@rocicorp/logger';
2
2
  import { ChildProcess } from 'node:child_process';
3
3
  import type { ZeroConfig } from '../../config/zero-config.ts';
4
- type ZeroLitestreamConfig = Pick<ZeroConfig, 'log' | 'replicaFile' | 'litestream'>;
4
+ type ZeroLitestreamConfig = Pick<ZeroConfig, 'log' | 'replica' | 'litestream'>;
5
5
  export declare function restoreReplica(lc: LogContext, config: ZeroLitestreamConfig, maxRetries: number, retryIntervalMs?: number): Promise<void>;
6
6
  export declare function startReplicaBackupProcess(config: ZeroLitestreamConfig): ChildProcess;
7
7
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"commands.d.ts","sourceRoot":"","sources":["../../../../../../zero-cache/src/services/litestream/commands.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,UAAU,EAAW,MAAM,kBAAkB,CAAC;AAE3D,OAAO,EAAC,YAAY,EAAQ,MAAM,oBAAoB,CAAC;AAIvD,OAAO,KAAK,EAAC,UAAU,EAAC,MAAM,6BAA6B,CAAC;AAE5D,KAAK,oBAAoB,GAAG,IAAI,CAC9B,UAAU,EACV,KAAK,GAAG,aAAa,GAAG,YAAY,CACrC,CAAC;AAEF,wBAAsB,cAAc,CAClC,EAAE,EAAE,UAAU,EACd,MAAM,EAAE,oBAAoB,EAC5B,UAAU,EAAE,MAAM,EAClB,eAAe,SAAO,iBAmBvB;AAiFD,wBAAgB,yBAAyB,CACvC,MAAM,EAAE,oBAAoB,GAC3B,YAAY,CAOd"}
1
+ {"version":3,"file":"commands.d.ts","sourceRoot":"","sources":["../../../../../../zero-cache/src/services/litestream/commands.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,UAAU,EAAW,MAAM,kBAAkB,CAAC;AAE3D,OAAO,EAAC,YAAY,EAAQ,MAAM,oBAAoB,CAAC;AAIvD,OAAO,KAAK,EAAC,UAAU,EAAC,MAAM,6BAA6B,CAAC;AAE5D,KAAK,oBAAoB,GAAG,IAAI,CAAC,UAAU,EAAE,KAAK,GAAG,SAAS,GAAG,YAAY,CAAC,CAAC;AAE/E,wBAAsB,cAAc,CAClC,EAAE,EAAE,UAAU,EACd,MAAM,EAAE,oBAAoB,EAC5B,UAAU,EAAE,MAAM,EAClB,eAAe,SAAO,iBAmBvB;AAiFD,wBAAgB,yBAAyB,CACvC,MAAM,EAAE,oBAAoB,GAC3B,YAAY,CAOd"}
@@ -31,7 +31,7 @@ function getLitestream(config, logLevelOverride) {
31
31
  litestream: must(executable, `Missing --litestream-executable`),
32
32
  env: {
33
33
  ...process.env,
34
- ['ZERO_REPLICA_FILE']: config.replicaFile,
34
+ ['ZERO_REPLICA_FILE']: config.replica.file,
35
35
  ['ZERO_LITESTREAM_BACKUP_URL']: must(backupURL),
36
36
  ['ZERO_LITESTREAM_MIN_CHECKPOINT_PAGE_COUNT']: String(minCheckpointPageCount),
37
37
  ['ZERO_LITESTREAM_MAX_CHECKPOINT_PAGE_COUNT']: String(maxCheckpointPageCount),
@@ -53,7 +53,7 @@ async function tryRestore(config) {
53
53
  '-if-replica-exists',
54
54
  '-parallelism',
55
55
  String(parallelism),
56
- config.replicaFile,
56
+ config.replica.file,
57
57
  ], { env, stdio: 'inherit', windowsHide: true });
58
58
  const { promise, resolve, reject } = resolver();
59
59
  proc.on('error', reject);
@@ -69,7 +69,7 @@ async function tryRestore(config) {
69
69
  }
70
70
  });
71
71
  await promise;
72
- return existsSync(config.replicaFile);
72
+ return existsSync(config.replica.file);
73
73
  }
74
74
  export function startReplicaBackupProcess(config) {
75
75
  const { litestream, env } = getLitestream(config);
@@ -1 +1 @@
1
- {"version":3,"file":"commands.js","sourceRoot":"","sources":["../../../../../../zero-cache/src/services/litestream/commands.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"commands.js","sourceRoot":"","sources":["../../../../../../zero-cache/src/services/litestream/commands.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,QAAQ,EAAC,MAAM,oBAAoB,CAAC;AAC5C,OAAO,EAAC,YAAY,EAAE,KAAK,EAAC,MAAM,oBAAoB,CAAC;AACvD,OAAO,EAAC,UAAU,EAAC,MAAM,SAAS,CAAC;AACnC,OAAO,EAAC,IAAI,EAAC,MAAM,gCAAgC,CAAC;AACpD,OAAO,EAAC,KAAK,EAAC,MAAM,iCAAiC,CAAC;AAKtD,MAAM,CAAC,KAAK,UAAU,cAAc,CAClC,EAAc,EACd,MAA4B,EAC5B,UAAkB,EAClB,eAAe,GAAG,IAAI;IAEtB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,UAAU,EAAE,CAAC,EAAE,EAAE,CAAC;QACpC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;YACV,EAAE,CAAC,IAAI,EAAE,CACP,kCAAkC,eAAe,GAAG,IAAI,UAAU,CACnE,CAAC;YACF,MAAM,KAAK,CAAC,eAAe,CAAC,CAAC;QAC/B,CAAC;QACD,MAAM,QAAQ,GAAG,MAAM,UAAU,CAAC,MAAM,CAAC,CAAC;QAC1C,IAAI,QAAQ,EAAE,CAAC;YACb,OAAO;QACT,CAAC;QACD,IAAI,UAAU,KAAK,CAAC,EAAE,CAAC;YACrB,EAAE,CAAC,IAAI,EAAE,CAAC,4BAA4B,CAAC,CAAC;YACxC,OAAO;QACT,CAAC;IACH,CAAC;IACD,MAAM,IAAI,KAAK,CAAC,yCAAyC,CAAC,CAAC;AAC7D,CAAC;AAED,SAAS,aAAa,CACpB,MAA4B,EAC5B,gBAA2B;IAK3B,MAAM,EACJ,UAAU,EACV,SAAS,EACT,QAAQ,EACR,UAAU,EACV,qBAAqB,EACrB,gCAAgC,EAChC,2BAA2B,GAC5B,GAAG,MAAM,CAAC,UAAU,CAAC;IAEtB,sEAAsE;IACtE,qEAAqE;IACrE,MAAM,6BAA6B,GAAG,2BAA2B,GAAG,EAAE,GAAG,CAAC,CAAC;IAC3E,MAAM,sBAAsB,GAAG,qBAAqB,GAAG,GAAG,CAAC,CAAC,yBAAyB;IACrF,MAAM,sBAAsB,GAAG,sBAAsB,GAAG,EAAE,CAAC;IAE3D,OAAO;QACL,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE,iCAAiC,CAAC;QAC/D,GAAG,EAAE;YACH,GAAG,OAAO,CAAC,GAAG;YACd,CAAC,mBAAmB,CAAC,EAAE,MAAM,CAAC,OAAO,CAAC,IAAI;YAC1C,CAAC,4BAA4B,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC;YAC/C,CAAC,2CAA2C,CAAC,EAAE,MAAM,CACnD,sBAAsB,CACvB;YACD,CAAC,2CAA2C,CAAC,EAAE,MAAM,CACnD,sBAAsB,CACvB;YACD,CAAC,qDAAqD,CAAC,EAAE,MAAM,CAC7D,gCAAgC,CACjC;YACD,CAAC,2BAA2B,CAAC,EAAE,gBAAgB,IAAI,QAAQ;YAC3D,CAAC,kDAAkD,CAAC,EAAE,MAAM,CAC1D,6BAA6B,CAC9B;YACD,CAAC,iBAAiB,CAAC,EAAE,MAAM,CAAC,GAAG,CAAC,MAAM;YACtC,CAAC,mBAAmB,CAAC,EAAE,UAAU;SAClC;KACF,CAAC;AACJ,CAAC;AAED,KAAK,UAAU,UAAU,CAAC,MAA4B;IACpD,oEAAoE;IACpE,MAAM,EAAC,UAAU,EAAE,GAAG,EAAC,GAAG,aAAa,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACzD,MAAM,EAAC,kBAAkB,EAAE,WAAW,EAAC,GAAG,MAAM,CAAC,UAAU,CAAC;IAC5D,MAAM,IAAI,GAAG,KAAK,CAChB,UAAU,EACV;QACE,SAAS;QACT,mBAAmB;QACnB,oBAAoB;QACpB,cAAc;QACd,MAAM,CAAC,WAAW,CAAC;QACnB,MAAM,CAAC,OAAO,CAAC,IAAI;KACpB,EACD,EAAC,GAAG,EAAE,KAAK,EAAE,SAAS,EAAE,WAAW,EAAE,IAAI,EAAC,CAC3C,CAAC;IACF,MAAM,EAAC,OAAO,EAAE,OAAO,EAAE,MAAM,EAAC,GAAG,QAAQ,EAAE,CAAC;IAC9C,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IACzB,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE;QAChC,IAAI,MAAM,EAAE,CAAC;YACX,MAAM,CAAC,0BAA0B,MAAM,EAAE,CAAC,CAAC;QAC7C,CAAC;aAAM,IAAI,IAAI,KAAK,CAAC,EAAE,CAAC;YACtB,MAAM,CAAC,+BAA+B,IAAI,EAAE,CAAC,CAAC;QAChD,CAAC;aAAM,CAAC;YACN,OAAO,EAAE,CAAC;QACZ,CAAC;IACH,CAAC,CAAC,CAAC;IACH,MAAM,OAAO,CAAC;IACd,OAAO,UAAU,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;AACzC,CAAC;AAED,MAAM,UAAU,yBAAyB,CACvC,MAA4B;IAE5B,MAAM,EAAC,UAAU,EAAE,GAAG,EAAC,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC;IAChD,OAAO,KAAK,CAAC,UAAU,EAAE,CAAC,WAAW,CAAC,EAAE;QACtC,GAAG;QACH,KAAK,EAAE,SAAS;QAChB,WAAW,EAAE,IAAI;KAClB,CAAC,CAAC;AACL,CAAC"}
@@ -6,6 +6,7 @@ import { type InsertOp, type Mutation, type UpsertOp } from '../../../../zero-pr
6
6
  import { type WriteAuthorizer } from '../../auth/write-authorizer.ts';
7
7
  import { type ZeroConfig } from '../../config/zero-config.ts';
8
8
  import type { PostgresDB } from '../../types/pg.ts';
9
+ import { type ShardID } from '../../types/shards.ts';
9
10
  import type { Service } from '../service.ts';
10
11
  export type MutationError = [
11
12
  kind: ErrorKind.MutationFailed | ErrorKind.MutationRateLimited,
@@ -17,12 +18,12 @@ export interface Mutagen {
17
18
  export declare class MutagenService implements Mutagen, Service {
18
19
  #private;
19
20
  readonly id: string;
20
- constructor(lc: LogContext, appID: string, shardID: string, clientGroupID: string, upstream: PostgresDB, config: ZeroConfig);
21
+ constructor(lc: LogContext, shard: ShardID, clientGroupID: string, upstream: PostgresDB, config: ZeroConfig);
21
22
  processMutation(mutation: Mutation, authData: JWTPayload | undefined, schemaVersion: number): Promise<MutationError | undefined>;
22
23
  run(): Promise<void>;
23
24
  stop(): Promise<void>;
24
25
  }
25
- export declare function processMutation(lc: LogContext, authData: JWTPayload | undefined, db: PostgresDB, appID: string, shardID: string, clientGroupID: string, mutation: Mutation, writeAuthorizer: WriteAuthorizer, schemaVersion: number, onTxStart?: () => void | Promise<void>): Promise<MutationError | undefined>;
26
+ export declare function processMutation(lc: LogContext, authData: JWTPayload | undefined, db: PostgresDB, shard: ShardID, clientGroupID: string, mutation: Mutation, writeAuthorizer: WriteAuthorizer, schemaVersion: number, onTxStart?: () => void | Promise<void>): Promise<MutationError | undefined>;
26
27
  export declare function getInsertSQL(tx: postgres.TransactionSql, create: InsertOp): postgres.PendingQuery<postgres.Row[]>;
27
28
  export declare function getUpsertSQL(tx: postgres.TransactionSql, set: UpsertOp): postgres.PendingQuery<postgres.Row[]>;
28
29
  //# sourceMappingURL=mutagen.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"mutagen.d.ts","sourceRoot":"","sources":["../../../../../../zero-cache/src/services/mutagen/mutagen.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAC,UAAU,EAAC,MAAM,kBAAkB,CAAC;AAEjD,OAAO,KAAK,EAAC,UAAU,EAAC,MAAM,MAAM,CAAC;AACrC,OAAO,QAAQ,MAAM,UAAU,CAAC;AAGhC,OAAO,KAAK,SAAS,MAAM,kDAAkD,CAAC;AAM9E,OAAO,EAGL,KAAK,QAAQ,EACb,KAAK,QAAQ,EAEb,KAAK,QAAQ,EACd,MAAM,uCAAuC,CAAC;AAE/C,OAAO,EAEL,KAAK,eAAe,EACrB,MAAM,gCAAgC,CAAC;AACxC,OAAO,EAAC,KAAK,UAAU,EAAC,MAAM,6BAA6B,CAAC;AAG5D,OAAO,KAAK,EAAC,UAAU,EAAsB,MAAM,mBAAmB,CAAC;AAIvE,OAAO,KAAK,EAAC,OAAO,EAAC,MAAM,eAAe,CAAC;AAI3C,MAAM,MAAM,aAAa,GAAG;IAC1B,IAAI,EAAE,SAAS,CAAC,cAAc,GAAG,SAAS,CAAC,mBAAmB;IAC9D,IAAI,EAAE,MAAM;CACb,CAAC;AAEF,MAAM,WAAW,OAAO;IACtB,eAAe,CACb,QAAQ,EAAE,QAAQ,EAClB,QAAQ,EAAE,UAAU,GAAG,SAAS,EAChC,aAAa,EAAE,MAAM,GACpB,OAAO,CAAC,aAAa,GAAG,SAAS,CAAC,CAAC;CACvC;AAED,qBAAa,cAAe,YAAW,OAAO,EAAE,OAAO;;IACrD,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;gBAWlB,EAAE,EAAE,UAAU,EACd,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,MAAM,EACf,aAAa,EAAE,MAAM,EACrB,QAAQ,EAAE,UAAU,EACpB,MAAM,EAAE,UAAU;IA0BpB,eAAe,CACb,QAAQ,EAAE,QAAQ,EAClB,QAAQ,EAAE,UAAU,GAAG,SAAS,EAChC,aAAa,EAAE,MAAM,GACpB,OAAO,CAAC,aAAa,GAAG,SAAS,CAAC;IAoBrC,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC;IAIpB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;CAItB;AAID,wBAAsB,eAAe,CACnC,EAAE,EAAE,UAAU,EACd,QAAQ,EAAE,UAAU,GAAG,SAAS,EAChC,EAAE,EAAE,UAAU,EACd,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,MAAM,EACf,aAAa,EAAE,MAAM,EACrB,QAAQ,EAAE,QAAQ,EAClB,eAAe,EAAE,eAAe,EAChC,aAAa,EAAE,MAAM,EACrB,SAAS,CAAC,EAAE,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,GACrC,OAAO,CAAC,aAAa,GAAG,SAAS,CAAC,CA4GpC;AAyED,wBAAgB,YAAY,CAC1B,EAAE,EAAE,QAAQ,CAAC,cAAc,EAC3B,MAAM,EAAE,QAAQ,GACf,QAAQ,CAAC,YAAY,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC,CAEvC;AAED,wBAAgB,YAAY,CAC1B,EAAE,EAAE,QAAQ,CAAC,cAAc,EAC3B,GAAG,EAAE,QAAQ,GACZ,QAAQ,CAAC,YAAY,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC,CAOvC"}
1
+ {"version":3,"file":"mutagen.d.ts","sourceRoot":"","sources":["../../../../../../zero-cache/src/services/mutagen/mutagen.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAC,UAAU,EAAC,MAAM,kBAAkB,CAAC;AAEjD,OAAO,KAAK,EAAC,UAAU,EAAC,MAAM,MAAM,CAAC;AACrC,OAAO,QAAQ,MAAM,UAAU,CAAC;AAGhC,OAAO,KAAK,SAAS,MAAM,kDAAkD,CAAC;AAM9E,OAAO,EAGL,KAAK,QAAQ,EACb,KAAK,QAAQ,EAEb,KAAK,QAAQ,EACd,MAAM,uCAAuC,CAAC;AAE/C,OAAO,EAEL,KAAK,eAAe,EACrB,MAAM,gCAAgC,CAAC;AACxC,OAAO,EAAC,KAAK,UAAU,EAAC,MAAM,6BAA6B,CAAC;AAG5D,OAAO,KAAK,EAAC,UAAU,EAAsB,MAAM,mBAAmB,CAAC;AAEvE,OAAO,EAA4B,KAAK,OAAO,EAAC,MAAM,uBAAuB,CAAC;AAE9E,OAAO,KAAK,EAAC,OAAO,EAAC,MAAM,eAAe,CAAC;AAI3C,MAAM,MAAM,aAAa,GAAG;IAC1B,IAAI,EAAE,SAAS,CAAC,cAAc,GAAG,SAAS,CAAC,mBAAmB;IAC9D,IAAI,EAAE,MAAM;CACb,CAAC;AAEF,MAAM,WAAW,OAAO;IACtB,eAAe,CACb,QAAQ,EAAE,QAAQ,EAClB,QAAQ,EAAE,UAAU,GAAG,SAAS,EAChC,aAAa,EAAE,MAAM,GACpB,OAAO,CAAC,aAAa,GAAG,SAAS,CAAC,CAAC;CACvC;AAED,qBAAa,cAAe,YAAW,OAAO,EAAE,OAAO;;IACrD,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;gBAUlB,EAAE,EAAE,UAAU,EACd,KAAK,EAAE,OAAO,EACd,aAAa,EAAE,MAAM,EACrB,QAAQ,EAAE,UAAU,EACpB,MAAM,EAAE,UAAU;IAyBpB,eAAe,CACb,QAAQ,EAAE,QAAQ,EAClB,QAAQ,EAAE,UAAU,GAAG,SAAS,EAChC,aAAa,EAAE,MAAM,GACpB,OAAO,CAAC,aAAa,GAAG,SAAS,CAAC;IAmBrC,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC;IAIpB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;CAItB;AAID,wBAAsB,eAAe,CACnC,EAAE,EAAE,UAAU,EACd,QAAQ,EAAE,UAAU,GAAG,SAAS,EAChC,EAAE,EAAE,UAAU,EACd,KAAK,EAAE,OAAO,EACd,aAAa,EAAE,MAAM,EACrB,QAAQ,EAAE,QAAQ,EAClB,eAAe,EAAE,eAAe,EAChC,aAAa,EAAE,MAAM,EACrB,SAAS,CAAC,EAAE,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,GACrC,OAAO,CAAC,aAAa,GAAG,SAAS,CAAC,CA2GpC;AAuED,wBAAgB,YAAY,CAC1B,EAAE,EAAE,QAAQ,CAAC,cAAc,EAC3B,MAAM,EAAE,QAAQ,GACf,QAAQ,CAAC,YAAY,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC,CAEvC;AAED,wBAAgB,YAAY,CAC1B,EAAE,EAAE,QAAQ,CAAC,cAAc,EAC3B,GAAG,EAAE,QAAQ,GACZ,QAAQ,CAAC,YAAY,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC,CAOvC"}
@@ -13,28 +13,26 @@ import {} from "../../config/zero-config.js";
13
13
  import * as Mode from "../../db/mode-enum.js";
14
14
  import { ErrorForClient } from "../../types/error-for-client.js";
15
15
  import { throwErrorForClientIfSchemaVersionNotSupported } from "../../types/schema-versions.js";
16
- import { unescapedSchema as schema } from "../change-source/pg/schema/shard.js";
16
+ import { appSchema, upstreamSchema } from "../../types/shards.js";
17
17
  import { SlidingWindowLimiter } from "../limiter/sliding-window-limiter.js";
18
18
  export class MutagenService {
19
19
  id;
20
20
  #lc;
21
21
  #upstream;
22
- #appID;
23
- #shardID;
22
+ #shard;
24
23
  #stopped = resolver();
25
24
  #replica;
26
25
  #writeAuthorizer;
27
26
  #limiter;
28
- constructor(lc, appID, shardID, clientGroupID, upstream, config) {
27
+ constructor(lc, shard, clientGroupID, upstream, config) {
29
28
  this.id = clientGroupID;
30
29
  this.#lc = lc;
31
30
  this.#upstream = upstream;
32
- this.#appID = appID;
33
- this.#shardID = shardID;
34
- this.#replica = new Database(this.#lc, config.replicaFile, {
31
+ this.#shard = shard;
32
+ this.#replica = new Database(this.#lc, config.replica.file, {
35
33
  fileMustExist: true,
36
34
  });
37
- this.#writeAuthorizer = new WriteAuthorizerImpl(this.#lc, config, this.#replica, appID, clientGroupID);
35
+ this.#writeAuthorizer = new WriteAuthorizerImpl(this.#lc, config, this.#replica, shard.appID, clientGroupID);
38
36
  if (config.perUserMutationLimit.max !== undefined) {
39
37
  this.#limiter = new SlidingWindowLimiter(config.perUserMutationLimit.windowMs, config.perUserMutationLimit.max);
40
38
  }
@@ -46,7 +44,7 @@ export class MutagenService {
46
44
  'Rate limit exceeded',
47
45
  ]);
48
46
  }
49
- return processMutation(this.#lc, authData, this.#upstream, this.#appID, this.#shardID, this.id, mutation, this.#writeAuthorizer, schemaVersion);
47
+ return processMutation(this.#lc, authData, this.#upstream, this.#shard, this.id, mutation, this.#writeAuthorizer, schemaVersion);
50
48
  }
51
49
  run() {
52
50
  return this.#stopped.promise;
@@ -57,7 +55,7 @@ export class MutagenService {
57
55
  }
58
56
  }
59
57
  const MAX_SERIALIZATION_ATTEMPTS = 10;
60
- export async function processMutation(lc, authData, db, appID, shardID, clientGroupID, mutation, writeAuthorizer, schemaVersion, onTxStart) {
58
+ export async function processMutation(lc, authData, db, shard, clientGroupID, mutation, writeAuthorizer, schemaVersion, onTxStart) {
61
59
  assert(mutation.type === MutationType.CRUD, 'Only CRUD mutations are supported');
62
60
  lc = lc.withContext('mutationID', mutation.id);
63
61
  lc = lc.withContext('processMutation');
@@ -110,7 +108,7 @@ export async function processMutation(lc, authData, db, appID, shardID, clientGr
110
108
  // Simulates a concurrent request for testing. In production this is a noop.
111
109
  const done = onTxStart?.();
112
110
  try {
113
- return await processMutationWithTx(lc, tx, authData, appID, shardID, clientGroupID, schemaVersion, mutation, errorMode, writeAuthorizer);
111
+ return await processMutationWithTx(lc, tx, authData, shard, clientGroupID, schemaVersion, mutation, errorMode, writeAuthorizer);
114
112
  }
115
113
  finally {
116
114
  await done;
@@ -151,7 +149,7 @@ export async function processMutation(lc, authData, db, appID, shardID, clientGr
151
149
  }
152
150
  return result;
153
151
  }
154
- async function processMutationWithTx(lc, tx, authData, appID, shardID, clientGroupID, schemaVersion, mutation, errorMode, authorizer) {
152
+ async function processMutationWithTx(lc, tx, authData, shard, clientGroupID, schemaVersion, mutation, errorMode, authorizer) {
155
153
  const tasks = [];
156
154
  async function execute(stmt) {
157
155
  try {
@@ -190,7 +188,7 @@ async function processMutationWithTx(lc, tx, authData, appID, shardID, clientGro
190
188
  }
191
189
  // Confirm the mutation even though it may have been blocked by the authorizer.
192
190
  // Authorizer blocking a mutation is not an error but the correct result of the mutation.
193
- tasks.unshift(() => checkSchemaVersionAndIncrementLastMutationID(tx, appID, shardID, clientGroupID, schemaVersion, mutation.clientID, mutation.id));
191
+ tasks.unshift(() => checkSchemaVersionAndIncrementLastMutationID(tx, shard, clientGroupID, schemaVersion, mutation.clientID, mutation.id));
194
192
  // Note: An error thrown from any Promise aborts the entire transaction.
195
193
  await Promise.all(tasks.map(task => task()));
196
194
  }
@@ -225,10 +223,10 @@ function getDeleteSQL(tx, deleteOp) {
225
223
  }
226
224
  return tx `DELETE FROM ${tx(tableName)} WHERE ${conditions}`;
227
225
  }
228
- async function checkSchemaVersionAndIncrementLastMutationID(tx, appID, shardID, clientGroupID, schemaVersion, clientID, receivedMutationID) {
226
+ async function checkSchemaVersionAndIncrementLastMutationID(tx, shard, clientGroupID, schemaVersion, clientID, receivedMutationID) {
229
227
  const [[{ lastMutationID }], supportedVersionRange] = await Promise.all([
230
228
  tx `
231
- INSERT INTO ${tx(schema(appID, shardID))}.clients
229
+ INSERT INTO ${tx(upstreamSchema(shard))}.clients
232
230
  as current ("clientGroupID", "clientID", "lastMutationID")
233
231
  VALUES (${clientGroupID}, ${clientID}, ${1})
234
232
  ON CONFLICT ("clientGroupID", "clientID")
@@ -236,7 +234,7 @@ async function checkSchemaVersionAndIncrementLastMutationID(tx, appID, shardID,
236
234
  RETURNING "lastMutationID"
237
235
  `,
238
236
  tx `SELECT "minSupportedVersion", "maxSupportedVersion"
239
- FROM ${tx(appID)}."schemaVersions"`,
237
+ FROM ${tx(appSchema(shard))}."schemaVersions"`,
240
238
  ]);
241
239
  // ABORT if the resulting lastMutationID is not equal to the receivedMutationID.
242
240
  if (receivedMutationID < lastMutationID) {
@@ -1 +1 @@
1
- {"version":3,"file":"mutagen.js","sourceRoot":"","sources":["../../../../../../zero-cache/src/services/mutagen/mutagen.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mutagen.js","sourceRoot":"","sources":["../../../../../../zero-cache/src/services/mutagen/mutagen.ts"],"names":[],"mappings":"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"}
@@ -8,16 +8,25 @@ import * as v from '../../../../../shared/src/valita.ts';
8
8
  import { Database } from '../../../../../zqlite/src/db.ts';
9
9
  import { StatementRunner } from '../../../db/statements.ts';
10
10
  export declare const ZERO_VERSION_COLUMN_NAME = "_0_version";
11
+ export type RuntimeEvent = 'sync' | 'upgrade' | 'vacuum';
12
+ export declare const CREATE_RUNTIME_EVENTS_TABLE = "\n CREATE TABLE \"_zero.runtimeEvents\" (\n event TEXT PRIMARY KEY ON CONFLICT REPLACE,\n timestamp TEXT NOT NULL DEFAULT (current_timestamp)\n );\n";
13
+ declare const subscriptionStateSchema: v.Type<{
14
+ publications: string[];
15
+ replicaVersion: string;
16
+ watermark: string;
17
+ }>;
18
+ export type SubscriptionState = v.Infer<typeof subscriptionStateSchema>;
11
19
  declare const replicationStateSchema: v.ObjectType<{
12
20
  stateVersion: v.Type<string>;
13
21
  }, undefined>;
14
22
  export type ReplicationState = v.Infer<typeof replicationStateSchema>;
15
23
  export declare function initReplicationState(db: Database, publications: string[], watermark: string): void;
16
- export declare function getSubscriptionState(db: StatementRunner): {
17
- publications: string[];
18
- replicaVersion: string;
19
- watermark: string;
20
- };
24
+ export declare function recordEvent(db: Database, event: RuntimeEvent): void;
25
+ export declare function getAscendingEvents(db: Database): {
26
+ event: string;
27
+ timestamp: Date;
28
+ }[];
29
+ export declare function getSubscriptionState(db: StatementRunner): SubscriptionState;
21
30
  export declare function updateReplicationWatermark(db: StatementRunner, watermark: string): void;
22
31
  export declare function getReplicationState(db: StatementRunner): ReplicationState;
23
32
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"replication-state.d.ts","sourceRoot":"","sources":["../../../../../../../zero-cache/src/services/replicator/schema/replication-state.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,CAAC,MAAM,qCAAqC,CAAC;AACzD,OAAO,EAAC,QAAQ,EAAC,MAAM,iCAAiC,CAAC;AACzD,OAAO,EAAC,eAAe,EAAC,MAAM,2BAA2B,CAAC;AAE1D,eAAO,MAAM,wBAAwB,eAAe,CAAC;AAyCrD,QAAA,MAAM,sBAAsB;;aAE1B,CAAC;AAEH,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC;AAEtE,wBAAgB,oBAAoB,CAClC,EAAE,EAAE,QAAQ,EACZ,YAAY,EAAE,MAAM,EAAE,EACtB,SAAS,EAAE,MAAM,QAclB;AAED,wBAAgB,oBAAoB,CAAC,EAAE,EAAE,eAAe;;;;EAUvD;AAED,wBAAgB,0BAA0B,CACxC,EAAE,EAAE,eAAe,EACnB,SAAS,EAAE,MAAM,QAGlB;AAED,wBAAgB,mBAAmB,CAAC,EAAE,EAAE,eAAe,GAAG,gBAAgB,CAGzE"}
1
+ {"version":3,"file":"replication-state.d.ts","sourceRoot":"","sources":["../../../../../../../zero-cache/src/services/replicator/schema/replication-state.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,CAAC,MAAM,qCAAqC,CAAC;AACzD,OAAO,EAAC,QAAQ,EAAC,MAAM,iCAAiC,CAAC;AACzD,OAAO,EAAC,eAAe,EAAC,MAAM,2BAA2B,CAAC;AAE1D,eAAO,MAAM,wBAAwB,eAAe,CAAC;AAErD,MAAM,MAAM,YAAY,GAAG,MAAM,GAAG,SAAS,GAAG,QAAQ,CAAC;AAMzD,eAAO,MAAM,2BAA2B,iKAKvC,CAAC;AA+BF,QAAA,MAAM,uBAAuB;;;;EASxB,CAAC;AAEN,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC;AAExE,QAAA,MAAM,sBAAsB;;aAE1B,CAAC;AAEH,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC;AAEtE,wBAAgB,oBAAoB,CAClC,EAAE,EAAE,QAAQ,EACZ,YAAY,EAAE,MAAM,EAAE,EACtB,SAAS,EAAE,MAAM,QAelB;AAED,wBAAgB,WAAW,CAAC,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,YAAY,QAM5D;AAED,wBAAgB,kBAAkB,CAAC,EAAE,EAAE,QAAQ;;;IAY9C;AAED,wBAAgB,oBAAoB,CAAC,EAAE,EAAE,eAAe,GAAG,iBAAiB,CAU3E;AAED,wBAAgB,0BAA0B,CACxC,EAAE,EAAE,eAAe,EACnB,SAAS,EAAE,MAAM,QAGlB;AAED,wBAAgB,mBAAmB,CAAC,EAAE,EAAE,eAAe,GAAG,gBAAgB,CAGzE"}
@@ -8,6 +8,16 @@ import * as v from "../../../../../shared/src/valita.js";
8
8
  import { Database } from "../../../../../zqlite/src/db.js";
9
9
  import { StatementRunner } from "../../../db/statements.js";
10
10
  export const ZERO_VERSION_COLUMN_NAME = '_0_version';
11
+ // event : The RuntimeEvent. Only one row per event is tracked.
12
+ // Inserting an event will REPLACE any row for the same event.
13
+ // timestamp : SQLite timestamp string, e.g. "2024-04-12 11:37:46".
14
+ // Append a `Z` when parsing with `new Date(...)`;
15
+ export const CREATE_RUNTIME_EVENTS_TABLE = `
16
+ CREATE TABLE "_zero.runtimeEvents" (
17
+ event TEXT PRIMARY KEY ON CONFLICT REPLACE,
18
+ timestamp TEXT NOT NULL DEFAULT (current_timestamp)
19
+ );
20
+ `;
11
21
  const CREATE_REPLICATION_STATE_SCHEMA =
12
22
  // replicaVersion : A value identifying the version at which the initial sync happened, i.e.
13
23
  // the version at which all rows were copied, and to `_0_version` was set.
@@ -32,7 +42,8 @@ const CREATE_REPLICATION_STATE_SCHEMA =
32
42
  stateVersion TEXT NOT NULL,
33
43
  lock INTEGER PRIMARY KEY DEFAULT 1 CHECK (lock=1)
34
44
  );
35
- `;
45
+ ` +
46
+ CREATE_RUNTIME_EVENTS_TABLE;
36
47
  const stringArray = v.array(v.string());
37
48
  const subscriptionStateSchema = v
38
49
  .object({
@@ -56,6 +67,23 @@ export function initReplicationState(db, publications, watermark) {
56
67
  db.prepare(`
57
68
  INSERT INTO "_zero.replicationState" (stateVersion) VALUES (?)
58
69
  `).run(watermark);
70
+ recordEvent(db, 'sync');
71
+ }
72
+ export function recordEvent(db, event) {
73
+ db.prepare(`
74
+ INSERT INTO "_zero.runtimeEvents" (event) VALUES (?)
75
+ `).run(event);
76
+ }
77
+ export function getAscendingEvents(db) {
78
+ const result = db
79
+ .prepare(`SELECT event, timestamp FROM "_zero.runtimeEvents"
80
+ ORDER BY timestamp ASC
81
+ `)
82
+ .all();
83
+ return result.map(({ event, timestamp }) => ({
84
+ event,
85
+ timestamp: new Date(timestamp + 'Z'),
86
+ }));
59
87
  }
60
88
  export function getSubscriptionState(db) {
61
89
  const result = db.get(`
@@ -1 +1 @@
1
- {"version":3,"file":"replication-state.js","sourceRoot":"","sources":["../../../../../../../zero-cache/src/services/replicator/schema/replication-state.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,CAAC,MAAM,qCAAqC,CAAC;AACzD,OAAO,EAAC,QAAQ,EAAC,MAAM,iCAAiC,CAAC;AACzD,OAAO,EAAC,eAAe,EAAC,MAAM,2BAA2B,CAAC;AAE1D,MAAM,CAAC,MAAM,wBAAwB,GAAG,YAAY,CAAC;AAErD,MAAM,+BAA+B;AACnC,8FAA8F;AAC9F,6FAA6F;AAC7F,2FAA2F;AAC3F,+EAA+E;AAC/E,iEAAiE;AACjE,2EAA2E;AAC3E;;;;;;GAMC;IACD,4FAA4F;IAC5F,6FAA6F;IAC7F,yFAAyF;IACzF,gFAAgF;IAChF,EAAE;IACF;;;;;GAKC,CAAC;AAEJ,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC;AAExC,MAAM,uBAAuB,GAAG,CAAC;KAC9B,MAAM,CAAC;IACN,cAAc,EAAE,CAAC,CAAC,MAAM,EAAE;IAC1B,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE;IACxB,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;CACtB,CAAC;KACD,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IACT,GAAG,CAAC;IACJ,YAAY,EAAE,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,YAAY,CAAC,EAAE,WAAW,CAAC;CAC/D,CAAC,CAAC,CAAC;AAEN,MAAM,sBAAsB,GAAG,CAAC,CAAC,MAAM,CAAC;IACtC,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE;CACzB,CAAC,CAAC;AAIH,MAAM,UAAU,oBAAoB,CAClC,EAAY,EACZ,YAAsB,EACtB,SAAiB;IAEjB,EAAE,CAAC,IAAI,CAAC,+BAA+B,CAAC,CAAC;IACzC,EAAE,CAAC,OAAO,CACR;;;KAGC,CACF,CAAC,GAAG,CAAC,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;IACtD,EAAE,CAAC,OAAO,CACR;;KAEC,CACF,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;AACnB,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,EAAmB;IACtD,MAAM,MAAM,GAAG,EAAE,CAAC,GAAG,CACnB;;;;;KAKC,CACF,CAAC;IACF,OAAO,CAAC,CAAC,KAAK,CAAC,MAAM,EAAE,uBAAuB,CAAC,CAAC;AAClD,CAAC;AAED,MAAM,UAAU,0BAA0B,CACxC,EAAmB,EACnB,SAAiB;IAEjB,EAAE,CAAC,GAAG,CAAC,oDAAoD,EAAE,SAAS,CAAC,CAAC;AAC1E,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,EAAmB;IACrD,MAAM,MAAM,GAAG,EAAE,CAAC,GAAG,CAAC,mDAAmD,CAAC,CAAC;IAC3E,OAAO,CAAC,CAAC,KAAK,CAAC,MAAM,EAAE,sBAAsB,CAAC,CAAC;AACjD,CAAC"}
1
+ {"version":3,"file":"replication-state.js","sourceRoot":"","sources":["../../../../../../../zero-cache/src/services/replicator/schema/replication-state.ts"],"names":[],"mappings":"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"}
@@ -4,6 +4,7 @@ import type { AST } from '../../../../zero-protocol/src/ast.ts';
4
4
  import type { Downstream } from '../../../../zero-protocol/src/down.ts';
5
5
  import type { JSONObject } from '../../types/bigint-json.ts';
6
6
  import { type SchemaVersions } from '../../types/schema-versions.ts';
7
+ import { type ShardID } from '../../types/shards.ts';
7
8
  import type { Subscription } from '../../types/subscription.ts';
8
9
  import { type CVRVersion, type DelQueryPatch, type NullableCVRVersion, type PutQueryPatch, type RowID } from './schema/types.ts';
9
10
  export type PutRowPatch = {
@@ -38,13 +39,13 @@ export declare class ClientHandler {
38
39
  #private;
39
40
  readonly clientID: string;
40
41
  readonly wsID: string;
41
- constructor(lc: LogContext, clientGroupID: string, clientID: string, wsID: string, appID: string, shardID: string, baseCookie: string | null, protocolVersion: number, schemaVersion: number, downstream: Subscription<Downstream>);
42
+ constructor(lc: LogContext, clientGroupID: string, clientID: string, wsID: string, shard: ShardID, baseCookie: string | null, protocolVersion: number, schemaVersion: number, downstream: Subscription<Downstream>);
42
43
  version(): NullableCVRVersion;
43
44
  supportsRevisedCookieProtocol(): boolean;
44
45
  fail(e: unknown): void;
45
46
  close(reason: string): void;
46
47
  startPoke(tentativeVersion: CVRVersion, schemaVersions?: SchemaVersions): PokeHandler;
47
- sendDeleteClients(deletedClientIDs: string[], deletedClientGroupIDs: string[]): void;
48
+ sendDeleteClients(lc: LogContext, deletedClientIDs: string[], deletedClientGroupIDs: string[]): void;
48
49
  }
49
50
  /**
50
51
  * Column values of type INT8 are returned as the `bigint` from the
@@ -1 +1 @@
1
- {"version":3,"file":"client-handler.d.ts","sourceRoot":"","sources":["../../../../../../zero-cache/src/services/view-syncer/client-handler.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,UAAU,EAAC,MAAM,kBAAkB,CAAC;AAEjD,OAAO,EAEL,KAAK,UAAU,IAAI,cAAc,EAClC,MAAM,gCAAgC,CAAC;AAGxC,OAAO,KAAK,EAAC,GAAG,EAAC,MAAM,sCAAsC,CAAC;AAG9D,OAAO,KAAK,EAAC,UAAU,EAAC,MAAM,uCAAuC,CAAC;AAQtE,OAAO,KAAK,EAAC,UAAU,EAAC,MAAM,4BAA4B,CAAC;AAE3D,OAAO,EAEL,KAAK,cAAc,EACpB,MAAM,gCAAgC,CAAC;AACxC,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,6BAA6B,CAAC;AAC9D,OAAO,EAGL,KAAK,UAAU,EACf,KAAK,aAAa,EAClB,KAAK,kBAAkB,EACvB,KAAK,aAAa,EAClB,KAAK,KAAK,EAGX,MAAM,mBAAmB,CAAC;AAE3B,MAAM,MAAM,WAAW,GAAG;IACxB,IAAI,EAAE,KAAK,CAAC;IACZ,EAAE,EAAE,KAAK,CAAC;IACV,EAAE,EAAE,KAAK,CAAC;IACV,QAAQ,EAAE,UAAU,CAAC;CACtB,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG;IAC3B,IAAI,EAAE,KAAK,CAAC;IACZ,EAAE,EAAE,KAAK,CAAC;IACV,EAAE,EAAE,KAAK,CAAC;CACX,CAAC;AAEF,MAAM,MAAM,QAAQ,GAAG,WAAW,GAAG,cAAc,CAAC;AACpD,MAAM,MAAM,WAAW,GAAG,aAAa,GAAG,CAAC,aAAa,GAAG;IAAC,GAAG,EAAE,GAAG,CAAA;CAAC,CAAC,CAAC;AAEvE,MAAM,MAAM,KAAK,GAAG,WAAW,GAAG,QAAQ,CAAC;AAE3C,MAAM,MAAM,cAAc,GAAG;IAC3B,KAAK,EAAE,KAAK,CAAC;IACb,SAAS,EAAE,UAAU,CAAC;CACvB,CAAC;AAEF,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,KAAK,EAAE,cAAc,GAAG,IAAI,CAAC;IACtC,MAAM,IAAI,IAAI,CAAC;IACf,GAAG,CAAC,YAAY,EAAE,UAAU,GAAG,IAAI,CAAC;CACrC;AAYD;;GAEG;AACH,qBAAa,aAAa;;IAExB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;gBASpB,EAAE,EAAE,UAAU,EACd,aAAa,EAAE,MAAM,EACrB,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,MAAM,EACf,UAAU,EAAE,MAAM,GAAG,IAAI,EACzB,eAAe,EAAE,MAAM,EACvB,aAAa,EAAE,MAAM,EACrB,UAAU,EAAE,YAAY,CAAC,UAAU,CAAC;IAatC,OAAO,IAAI,kBAAkB;IAI7B,6BAA6B;IAK7B,IAAI,CAAC,CAAC,EAAE,OAAO;IAQf,KAAK,CAAC,MAAM,EAAE,MAAM;IAKpB,SAAS,CACP,gBAAgB,EAAE,UAAU,EAC5B,cAAc,CAAC,EAAE,cAAc,GAC9B,WAAW;IAkId,iBAAiB,CACf,gBAAgB,EAAE,MAAM,EAAE,EAC1B,qBAAqB,EAAE,MAAM,EAAE,GAC9B,IAAI;CAgCR;AAmCD;;;;;;GAMG;AACH,wBAAgB,cAAc,CAAC,GAAG,EAAE,UAAU,GAAG,cAAc,CAgB9D;AAED,wBAAgB,mCAAmC,CAAC,OAAO,EAAE,aAAa,EAAE,WAO3E"}
1
+ {"version":3,"file":"client-handler.d.ts","sourceRoot":"","sources":["../../../../../../zero-cache/src/services/view-syncer/client-handler.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,UAAU,EAAC,MAAM,kBAAkB,CAAC;AAEjD,OAAO,EAEL,KAAK,UAAU,IAAI,cAAc,EAClC,MAAM,gCAAgC,CAAC;AAGxC,OAAO,KAAK,EAAC,GAAG,EAAC,MAAM,sCAAsC,CAAC;AAG9D,OAAO,KAAK,EAAC,UAAU,EAAC,MAAM,uCAAuC,CAAC;AAQtE,OAAO,KAAK,EAAC,UAAU,EAAC,MAAM,4BAA4B,CAAC;AAE3D,OAAO,EAEL,KAAK,cAAc,EACpB,MAAM,gCAAgC,CAAC;AACxC,OAAO,EAAiB,KAAK,OAAO,EAAC,MAAM,uBAAuB,CAAC;AACnE,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,6BAA6B,CAAC;AAC9D,OAAO,EAKL,KAAK,UAAU,EACf,KAAK,aAAa,EAClB,KAAK,kBAAkB,EACvB,KAAK,aAAa,EAClB,KAAK,KAAK,EACX,MAAM,mBAAmB,CAAC;AAE3B,MAAM,MAAM,WAAW,GAAG;IACxB,IAAI,EAAE,KAAK,CAAC;IACZ,EAAE,EAAE,KAAK,CAAC;IACV,EAAE,EAAE,KAAK,CAAC;IACV,QAAQ,EAAE,UAAU,CAAC;CACtB,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG;IAC3B,IAAI,EAAE,KAAK,CAAC;IACZ,EAAE,EAAE,KAAK,CAAC;IACV,EAAE,EAAE,KAAK,CAAC;CACX,CAAC;AAEF,MAAM,MAAM,QAAQ,GAAG,WAAW,GAAG,cAAc,CAAC;AACpD,MAAM,MAAM,WAAW,GAAG,aAAa,GAAG,CAAC,aAAa,GAAG;IAAC,GAAG,EAAE,GAAG,CAAA;CAAC,CAAC,CAAC;AAEvE,MAAM,MAAM,KAAK,GAAG,WAAW,GAAG,QAAQ,CAAC;AAE3C,MAAM,MAAM,cAAc,GAAG;IAC3B,KAAK,EAAE,KAAK,CAAC;IACb,SAAS,EAAE,UAAU,CAAC;CACvB,CAAC;AAEF,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,KAAK,EAAE,cAAc,GAAG,IAAI,CAAC;IACtC,MAAM,IAAI,IAAI,CAAC;IACf,GAAG,CAAC,YAAY,EAAE,UAAU,GAAG,IAAI,CAAC;CACrC;AAYD;;GAEG;AACH,qBAAa,aAAa;;IAExB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;gBASpB,EAAE,EAAE,UAAU,EACd,aAAa,EAAE,MAAM,EACrB,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,OAAO,EACd,UAAU,EAAE,MAAM,GAAG,IAAI,EACzB,eAAe,EAAE,MAAM,EACvB,aAAa,EAAE,MAAM,EACrB,UAAU,EAAE,YAAY,CAAC,UAAU,CAAC;IAatC,OAAO,IAAI,kBAAkB;IAI7B,6BAA6B;IAK7B,IAAI,CAAC,CAAC,EAAE,OAAO;IAQf,KAAK,CAAC,MAAM,EAAE,MAAM;IAKpB,SAAS,CACP,gBAAgB,EAAE,UAAU,EAC5B,cAAc,CAAC,EAAE,cAAc,GAC9B,WAAW;IAkId,iBAAiB,CACf,EAAE,EAAE,UAAU,EACd,gBAAgB,EAAE,MAAM,EAAE,EAC1B,qBAAqB,EAAE,MAAM,EAAE,GAC9B,IAAI;CAiCR;AAmCD;;;;;;GAMG;AACH,wBAAgB,cAAc,CAAC,GAAG,EAAE,UAAU,GAAG,cAAc,CAgB9D;AAED,wBAAgB,mCAAmC,CAAC,OAAO,EAAE,aAAa,EAAE,WAO3E"}
@@ -5,6 +5,7 @@ import { rowSchema } from "../../../../zero-protocol/src/data.js";
5
5
  import { primaryKeyValueRecordSchema } from "../../../../zero-protocol/src/primary-key.js";
6
6
  import { getLogLevel } from "../../types/error-for-client.js";
7
7
  import { getErrorForClientIfSchemaVersionNotSupported, } from "../../types/schema-versions.js";
8
+ import { upstreamSchema } from "../../types/shards.js";
8
9
  import { cmpVersions, cookieToVersion, versionToCookie, versionToNullableCookie, } from "./schema/types.js";
9
10
  const NOOP = {
10
11
  addPatch: () => { },
@@ -27,11 +28,11 @@ export class ClientHandler {
27
28
  #baseVersion;
28
29
  #protocolVersion;
29
30
  #schemaVersion;
30
- constructor(lc, clientGroupID, clientID, wsID, appID, shardID, baseCookie, protocolVersion, schemaVersion, downstream) {
31
+ constructor(lc, clientGroupID, clientID, wsID, shard, baseCookie, protocolVersion, schemaVersion, downstream) {
31
32
  this.#clientGroupID = clientGroupID;
32
33
  this.clientID = clientID;
33
34
  this.wsID = wsID;
34
- this.#zeroClientsTable = `${appID}_${shardID}.clients`;
35
+ this.#zeroClientsTable = `${upstreamSchema(shard)}.clients`;
35
36
  this.#lc = lc;
36
37
  this.#downstream = downstream;
37
38
  this.#baseVersion = cookieToVersion(baseCookie);
@@ -169,7 +170,7 @@ export class ClientHandler {
169
170
  },
170
171
  };
171
172
  }
172
- sendDeleteClients(deletedClientIDs, deletedClientGroupIDs) {
173
+ sendDeleteClients(lc, deletedClientIDs, deletedClientGroupIDs) {
173
174
  const deleteClientsBody = {};
174
175
  if (deletedClientIDs.length > 0) {
175
176
  deleteClientsBody.clientIDs = deletedClientIDs;
@@ -177,6 +178,7 @@ export class ClientHandler {
177
178
  if (deletedClientGroupIDs.length > 0) {
178
179
  deleteClientsBody.clientGroupIDs = deletedClientGroupIDs;
179
180
  }
181
+ lc.debug?.('sending deleteClients', deleteClientsBody);
180
182
  this.#downstream.push(['deleteClients', deleteClientsBody]);
181
183
  }
182
184
  #updateLMIDs(lmids, patch) {
@@ -1 +1 @@
1
- {"version":3,"file":"client-handler.js","sourceRoot":"","sources":["../../../../../../zero-cache/src/services/view-syncer/client-handler.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"client-handler.js","sourceRoot":"","sources":["../../../../../../zero-cache/src/services/view-syncer/client-handler.ts"],"names":[],"mappings":"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"}