@antelopejs/postgres 0.2.1 → 0.2.3

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 (284) hide show
  1. package/README.md +6 -5
  2. package/dist/config.d.ts +1 -0
  3. package/dist/config.js +7 -3
  4. package/dist/config.js.map +1 -1
  5. package/dist/connect-failure.d.ts +1 -0
  6. package/dist/connect-failure.js +39 -0
  7. package/dist/connect-failure.js.map +1 -0
  8. package/dist/connection.d.ts +2 -1
  9. package/dist/connection.js +19 -2
  10. package/dist/connection.js.map +1 -1
  11. package/dist/implementations/catalog/index.js +3 -6
  12. package/dist/implementations/catalog/index.js.map +1 -1
  13. package/dist/implementations/database/coerce.js +20 -20
  14. package/dist/implementations/database/coerce.js.map +1 -1
  15. package/dist/implementations/database/context.d.ts +1 -0
  16. package/dist/implementations/database/context.js +4 -0
  17. package/dist/implementations/database/context.js.map +1 -1
  18. package/dist/implementations/database/convergence.d.ts +22 -0
  19. package/dist/implementations/database/convergence.js +183 -0
  20. package/dist/implementations/database/convergence.js.map +1 -0
  21. package/dist/implementations/database/cursors.js +3 -0
  22. package/dist/implementations/database/cursors.js.map +1 -1
  23. package/dist/implementations/database/ddl.d.ts +6 -26
  24. package/dist/implementations/database/ddl.js +28 -195
  25. package/dist/implementations/database/ddl.js.map +1 -1
  26. package/dist/implementations/database/duplicate-key.d.ts +2 -0
  27. package/dist/implementations/database/duplicate-key.js +49 -0
  28. package/dist/implementations/database/duplicate-key.js.map +1 -0
  29. package/dist/implementations/database/external-column-profile.js +6 -1
  30. package/dist/implementations/database/external-column-profile.js.map +1 -1
  31. package/dist/implementations/database/external-discovery.js +5 -5
  32. package/dist/implementations/database/external-discovery.js.map +1 -1
  33. package/dist/implementations/database/external-measures.js.map +1 -1
  34. package/dist/implementations/database/external-payload.d.ts +2 -2
  35. package/dist/implementations/database/external-payload.js +23 -13
  36. package/dist/implementations/database/external-payload.js.map +1 -1
  37. package/dist/implementations/database/external-schema.d.ts +2 -2
  38. package/dist/implementations/database/external-schema.js +3 -3
  39. package/dist/implementations/database/external-schema.js.map +1 -1
  40. package/dist/implementations/database/external-types.js +23 -16
  41. package/dist/implementations/database/external-types.js.map +1 -1
  42. package/dist/implementations/database/external-writes.d.ts +7 -1
  43. package/dist/implementations/database/external-writes.js +22 -21
  44. package/dist/implementations/database/external-writes.js.map +1 -1
  45. package/dist/implementations/database/feed-pipeline.js +3 -2
  46. package/dist/implementations/database/feed-pipeline.js.map +1 -1
  47. package/dist/implementations/database/feeds.d.ts +1 -1
  48. package/dist/implementations/database/feeds.js +36 -45
  49. package/dist/implementations/database/feeds.js.map +1 -1
  50. package/dist/implementations/database/fields.d.ts +9 -13
  51. package/dist/implementations/database/fields.js +25 -21
  52. package/dist/implementations/database/fields.js.map +1 -1
  53. package/dist/implementations/database/guards.d.ts +5 -0
  54. package/dist/implementations/database/guards.js +23 -0
  55. package/dist/implementations/database/guards.js.map +1 -0
  56. package/dist/implementations/database/introspect.d.ts +1 -1
  57. package/dist/implementations/database/listener.js +9 -3
  58. package/dist/implementations/database/listener.js.map +1 -1
  59. package/dist/implementations/database/migrate.d.ts +2 -2
  60. package/dist/implementations/database/migrate.js +10 -10
  61. package/dist/implementations/database/migrate.js.map +1 -1
  62. package/dist/implementations/database/payload.d.ts +3 -3
  63. package/dist/implementations/database/payload.js +4 -4
  64. package/dist/implementations/database/pipeline.d.ts +6 -2
  65. package/dist/implementations/database/pipeline.js +4 -1
  66. package/dist/implementations/database/pipeline.js.map +1 -1
  67. package/dist/implementations/database/query.js +27 -12
  68. package/dist/implementations/database/query.js.map +1 -1
  69. package/dist/implementations/database/reaper.js +6 -4
  70. package/dist/implementations/database/reaper.js.map +1 -1
  71. package/dist/implementations/database/relation.d.ts +2 -12
  72. package/dist/implementations/database/relation.js +5 -141
  73. package/dist/implementations/database/relation.js.map +1 -1
  74. package/dist/implementations/database/render.d.ts +11 -0
  75. package/dist/implementations/database/render.js +147 -0
  76. package/dist/implementations/database/render.js.map +1 -0
  77. package/dist/implementations/database/result.d.ts +2 -2
  78. package/dist/implementations/database/result.js +18 -19
  79. package/dist/implementations/database/result.js.map +1 -1
  80. package/dist/implementations/database/row-source.d.ts +10 -10
  81. package/dist/implementations/database/row-source.js +22 -19
  82. package/dist/implementations/database/row-source.js.map +1 -1
  83. package/dist/implementations/database/schema.d.ts +3 -2
  84. package/dist/implementations/database/schema.js +35 -19
  85. package/dist/implementations/database/schema.js.map +1 -1
  86. package/dist/implementations/database/selection.js +13 -7
  87. package/dist/implementations/database/selection.js.map +1 -1
  88. package/dist/implementations/database/sql.d.ts +7 -3
  89. package/dist/implementations/database/sql.js.map +1 -1
  90. package/dist/implementations/database/stage.js +3 -2
  91. package/dist/implementations/database/stage.js.map +1 -1
  92. package/dist/implementations/database/stages-aggregate.js +7 -5
  93. package/dist/implementations/database/stages-aggregate.js.map +1 -1
  94. package/dist/implementations/database/stages-array.js.map +1 -1
  95. package/dist/implementations/database/stages-core.js +2 -1
  96. package/dist/implementations/database/stages-core.js.map +1 -1
  97. package/dist/implementations/database/stages-date.js +2 -1
  98. package/dist/implementations/database/stages-date.js.map +1 -1
  99. package/dist/implementations/database/stages-group.js +11 -6
  100. package/dist/implementations/database/stages-group.js.map +1 -1
  101. package/dist/implementations/database/stages-join.js +13 -11
  102. package/dist/implementations/database/stages-join.js.map +1 -1
  103. package/dist/implementations/database/stages-numeric.js.map +1 -1
  104. package/dist/implementations/database/stages-object.js +1 -1
  105. package/dist/implementations/database/stages-object.js.map +1 -1
  106. package/dist/implementations/database/stages-projection.js +9 -8
  107. package/dist/implementations/database/stages-projection.js.map +1 -1
  108. package/dist/implementations/database/stages-rows.js +10 -8
  109. package/dist/implementations/database/stages-rows.js.map +1 -1
  110. package/dist/implementations/database/stages-selection.js +6 -4
  111. package/dist/implementations/database/stages-selection.js.map +1 -1
  112. package/dist/implementations/database/stages-string.js +7 -6
  113. package/dist/implementations/database/stages-string.js.map +1 -1
  114. package/dist/implementations/database/subquery.d.ts +1 -1
  115. package/dist/implementations/database/subquery.js +7 -5
  116. package/dist/implementations/database/subquery.js.map +1 -1
  117. package/dist/implementations/database/types.d.ts +5 -5
  118. package/dist/implementations/database/types.js +11 -11
  119. package/dist/implementations/database/types.js.map +1 -1
  120. package/dist/implementations/database/utils.js +2 -1
  121. package/dist/implementations/database/utils.js.map +1 -1
  122. package/dist/implementations/database/value.d.ts +1 -1
  123. package/dist/implementations/database/value.js +34 -33
  124. package/dist/implementations/database/value.js.map +1 -1
  125. package/dist/implementations/database/writes-atomic.js +6 -5
  126. package/dist/implementations/database/writes-atomic.js.map +1 -1
  127. package/dist/implementations/database/writes-identity.js +18 -19
  128. package/dist/implementations/database/writes-identity.js.map +1 -1
  129. package/dist/implementations/database/writes-insert.js +16 -22
  130. package/dist/implementations/database/writes-insert.js.map +1 -1
  131. package/dist/implementations/database/writes-shared.d.ts +1 -1
  132. package/dist/implementations/database/writes-shared.js +11 -7
  133. package/dist/implementations/database/writes-shared.js.map +1 -1
  134. package/dist/implementations/database/writes.d.ts +22 -1
  135. package/dist/implementations/database/writes.js +6 -3
  136. package/dist/implementations/database/writes.js.map +1 -1
  137. package/dist/test/catalog-owned.test.js +2 -0
  138. package/dist/test/catalog-owned.test.js.map +1 -1
  139. package/dist/test/contention.test.js.map +1 -1
  140. package/dist/test/duplicate-key.test.d.ts +1 -0
  141. package/dist/test/duplicate-key.test.js +103 -0
  142. package/dist/test/duplicate-key.test.js.map +1 -0
  143. package/dist/test/indexes.test.js +7 -7
  144. package/dist/test/indexes.test.js.map +1 -1
  145. package/dist/test/unit/coerce.spec.js +7 -7
  146. package/dist/test/unit/coerce.spec.js.map +1 -1
  147. package/dist/test/unit/config.spec.js +3 -1
  148. package/dist/test/unit/config.spec.js.map +1 -1
  149. package/dist/test/unit/connect-failure.spec.d.ts +1 -0
  150. package/dist/test/unit/connect-failure.spec.js +50 -0
  151. package/dist/test/unit/connect-failure.spec.js.map +1 -0
  152. package/dist/test/unit/connection.spec.js +16 -18
  153. package/dist/test/unit/connection.spec.js.map +1 -1
  154. package/dist/test/unit/convergence.spec.d.ts +1 -0
  155. package/dist/test/unit/convergence.spec.js +347 -0
  156. package/dist/test/unit/convergence.spec.js.map +1 -0
  157. package/dist/test/unit/cursors-fixture.d.ts +79 -0
  158. package/dist/test/unit/cursors-fixture.js +245 -0
  159. package/dist/test/unit/cursors-fixture.js.map +1 -0
  160. package/dist/test/unit/cursors.spec.js +138 -718
  161. package/dist/test/unit/cursors.spec.js.map +1 -1
  162. package/dist/test/unit/cursors.teardown.spec.d.ts +1 -0
  163. package/dist/test/unit/cursors.teardown.spec.js +322 -0
  164. package/dist/test/unit/cursors.teardown.spec.js.map +1 -0
  165. package/dist/test/unit/cursors.window.spec.d.ts +1 -0
  166. package/dist/test/unit/cursors.window.spec.js +78 -0
  167. package/dist/test/unit/cursors.window.spec.js.map +1 -0
  168. package/dist/test/unit/ddl-fixture.d.ts +5 -0
  169. package/dist/test/unit/ddl-fixture.js +19 -0
  170. package/dist/test/unit/ddl-fixture.js.map +1 -0
  171. package/dist/test/unit/ddl.spec.js +64 -366
  172. package/dist/test/unit/ddl.spec.js.map +1 -1
  173. package/dist/test/unit/expression-array-fixture.d.ts +17 -0
  174. package/dist/test/unit/expression-array-fixture.js +63 -0
  175. package/dist/test/unit/expression-array-fixture.js.map +1 -0
  176. package/dist/test/unit/expression-array-walk.spec.d.ts +1 -0
  177. package/dist/test/unit/expression-array-walk.spec.js +235 -0
  178. package/dist/test/unit/expression-array-walk.spec.js.map +1 -0
  179. package/dist/test/unit/expression-array.spec.js +48 -322
  180. package/dist/test/unit/expression-array.spec.js.map +1 -1
  181. package/dist/test/unit/expression-date.spec.js +4 -3
  182. package/dist/test/unit/expression-date.spec.js.map +1 -1
  183. package/dist/test/unit/expression-fixture.d.ts +15 -0
  184. package/dist/test/unit/expression-fixture.js +40 -0
  185. package/dist/test/unit/expression-fixture.js.map +1 -0
  186. package/dist/test/unit/expression-numeric.spec.js +10 -8
  187. package/dist/test/unit/expression-numeric.spec.js.map +1 -1
  188. package/dist/test/unit/expression-object.spec.js +3 -4
  189. package/dist/test/unit/expression-object.spec.js.map +1 -1
  190. package/dist/test/unit/expression-predicate.spec.d.ts +1 -0
  191. package/dist/test/unit/expression-predicate.spec.js +231 -0
  192. package/dist/test/unit/expression-predicate.spec.js.map +1 -0
  193. package/dist/test/unit/expression-stages.spec.js +0 -5
  194. package/dist/test/unit/expression-stages.spec.js.map +1 -1
  195. package/dist/test/unit/expression-string.spec.js +2 -5
  196. package/dist/test/unit/expression-string.spec.js.map +1 -1
  197. package/dist/test/unit/expression.spec.js +44 -292
  198. package/dist/test/unit/expression.spec.js.map +1 -1
  199. package/dist/test/unit/external-comparisons.spec.js +5 -5
  200. package/dist/test/unit/external-comparisons.spec.js.map +1 -1
  201. package/dist/test/unit/external-types.spec.js +2 -3
  202. package/dist/test/unit/external-types.spec.js.map +1 -1
  203. package/dist/test/unit/feeds.spec.js +40 -23
  204. package/dist/test/unit/feeds.spec.js.map +1 -1
  205. package/dist/test/unit/fields.spec.js +15 -9
  206. package/dist/test/unit/fields.spec.js.map +1 -1
  207. package/dist/test/unit/invalid-fixture.d.ts +3 -0
  208. package/dist/test/unit/invalid-fixture.js +11 -0
  209. package/dist/test/unit/invalid-fixture.js.map +1 -0
  210. package/dist/test/unit/payload.spec.js.map +1 -1
  211. package/dist/test/unit/pipeline-aggregate.spec.js +14 -14
  212. package/dist/test/unit/pipeline-aggregate.spec.js.map +1 -1
  213. package/dist/test/unit/pipeline-fixture.d.ts +25 -6
  214. package/dist/test/unit/pipeline-fixture.js +21 -11
  215. package/dist/test/unit/pipeline-fixture.js.map +1 -1
  216. package/dist/test/unit/pipeline-group-fixture.d.ts +2 -0
  217. package/dist/test/unit/pipeline-group-fixture.js +6 -0
  218. package/dist/test/unit/pipeline-group-fixture.js.map +1 -0
  219. package/dist/test/unit/pipeline-group.spec.js +15 -248
  220. package/dist/test/unit/pipeline-group.spec.js.map +1 -1
  221. package/dist/test/unit/pipeline-lookup.spec.js +13 -10
  222. package/dist/test/unit/pipeline-lookup.spec.js.map +1 -1
  223. package/dist/test/unit/pipeline-projection.spec.js +12 -13
  224. package/dist/test/unit/pipeline-projection.spec.js.map +1 -1
  225. package/dist/test/unit/pipeline-rows.spec.js +21 -18
  226. package/dist/test/unit/pipeline-rows.spec.js.map +1 -1
  227. package/dist/test/unit/pipeline-selection.spec.js +6 -4
  228. package/dist/test/unit/pipeline-selection.spec.js.map +1 -1
  229. package/dist/test/unit/pipeline-stages.spec.js +23 -35
  230. package/dist/test/unit/pipeline-stages.spec.js.map +1 -1
  231. package/dist/test/unit/pipeline-substream.spec.d.ts +1 -0
  232. package/dist/test/unit/pipeline-substream.spec.js +246 -0
  233. package/dist/test/unit/pipeline-substream.spec.js.map +1 -0
  234. package/dist/test/unit/pipeline.spec.js +1 -1
  235. package/dist/test/unit/query.spec.js +6 -2
  236. package/dist/test/unit/query.spec.js.map +1 -1
  237. package/dist/test/unit/reaper.spec.js +4 -3
  238. package/dist/test/unit/reaper.spec.js.map +1 -1
  239. package/dist/test/unit/relation.spec.js +37 -36
  240. package/dist/test/unit/relation.spec.js.map +1 -1
  241. package/dist/test/unit/result.spec.js +13 -11
  242. package/dist/test/unit/result.spec.js.map +1 -1
  243. package/dist/test/unit/row-source.spec.js +1 -1
  244. package/dist/test/unit/row-source.spec.js.map +1 -1
  245. package/dist/test/unit/schema.spec.js +5 -2
  246. package/dist/test/unit/schema.spec.js.map +1 -1
  247. package/dist/test/unit/selection.spec.js +7 -3
  248. package/dist/test/unit/selection.spec.js.map +1 -1
  249. package/dist/test/unit/types.spec.js +6 -6
  250. package/dist/test/unit/types.spec.js.map +1 -1
  251. package/dist/test/unit/writes-atomic.spec.js +2 -2
  252. package/dist/test/unit/writes-atomic.spec.js.map +1 -1
  253. package/dist/test/unit/writes-insert.spec.js +5 -4
  254. package/dist/test/unit/writes-insert.spec.js.map +1 -1
  255. package/dist/test/unit/writes-replace.spec.js +6 -6
  256. package/dist/test/unit/writes-replace.spec.js.map +1 -1
  257. package/dist/test/unit/writes-target.spec.js +3 -3
  258. package/dist/test/unit/writes-target.spec.js.map +1 -1
  259. package/dist/test/unit/writes-update-fixture.d.ts +9 -0
  260. package/dist/test/unit/writes-update-fixture.js +20 -0
  261. package/dist/test/unit/writes-update-fixture.js.map +1 -0
  262. package/dist/test/unit/writes-update-mapper.spec.d.ts +1 -0
  263. package/dist/test/unit/writes-update-mapper.spec.js +123 -0
  264. package/dist/test/unit/writes-update-mapper.spec.js.map +1 -0
  265. package/dist/test/unit/writes-update.spec.js +42 -171
  266. package/dist/test/unit/writes-update.spec.js.map +1 -1
  267. package/dist/test-external/catalog.test.js +11 -1
  268. package/dist/test-external/catalog.test.js.map +1 -1
  269. package/dist/test-external/native.test.js +8 -6
  270. package/dist/test-external/native.test.js.map +1 -1
  271. package/dist/test-external/reads.test.js +20 -22
  272. package/dist/test-external/reads.test.js.map +1 -1
  273. package/dist/test-external/refusals.test.js +45 -24
  274. package/dist/test-external/refusals.test.js.map +1 -1
  275. package/dist/test-external/registration.test.js +4 -2
  276. package/dist/test-external/registration.test.js.map +1 -1
  277. package/dist/test-external/sales.d.ts +9 -2
  278. package/dist/test-external/sales.js.map +1 -1
  279. package/dist/test-external/unreachable.test.d.ts +1 -0
  280. package/dist/test-external/unreachable.test.js +83 -0
  281. package/dist/test-external/unreachable.test.js.map +1 -0
  282. package/dist/test-external/writes.test.js +71 -37
  283. package/dist/test-external/writes.test.js.map +1 -1
  284. package/package.json +19 -6
@@ -0,0 +1 @@
1
+ {"version":3,"file":"convergence.js","sourceRoot":"","sources":["../../../src/implementations/database/convergence.ts"],"names":[],"mappings":"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"}
@@ -80,6 +80,9 @@ function Forget(reqId) {
80
80
  retired.push(reqId);
81
81
  while (retired.length > REMEMBERED_ENDINGS) {
82
82
  const dropped = retired.shift();
83
+ if (dropped === undefined) {
84
+ break;
85
+ }
83
86
  cursors.delete(dropped);
84
87
  Evicted(dropped);
85
88
  }
@@ -1 +1 @@
1
- {"version":3,"file":"cursors.js","sourceRoot":"","sources":["../../../src/implementations/database/cursors.ts"],"names":[],"mappings":";;AAgbA,sCASC;AAoBD,wCAKC;AAoBD,0CAWC;AASD,4CAEC;AA1fD,+BAAwC;AAExC,yCAAgE;AAChE,iDAA2E;AAE3E,MAAM,WAAW,GAAG,IAAA,qBAAe,EAAC,mBAAmB,CAAC,CAAC;AACzD,MAAM,KAAK,GAAG,OAAO,CAAC;AACtB,MAAM,QAAQ,GAAG,UAAU,CAAC;AAC5B,MAAM,KAAK,GAAG,SAAS,WAAW,EAAE,CAAC;AAGrC,MAAM,KAAK,GAAG,CAAC,CAAC;AAGhB,MAAM,OAAO,GAAG,CAAC,CAAC;AAMlB,MAAM,kBAAkB,GAAG,IAAI,CAAC;AAiDhC,MAAM,SAAS,GAAc,WAAW,CAAC;AACzC,MAAM,MAAM,GAAc,QAAQ,CAAC;AACnC,MAAM,MAAM,GAAc,QAAQ,CAAC;AACnC,MAAM,MAAM,GAAc,QAAQ,CAAC;AACnC,MAAM,SAAS,GAAc,WAAW,CAAC;AAgCzC,MAAM,OAAO,GAAG,IAAI,GAAG,EAAuB,CAAC;AAC/C,MAAM,OAAO,GAAa,EAAE,CAAC;AAE7B,IAAI,SAAqC,CAAC;AAC1C,IAAI,UAAU,GAAG,KAAK,CAAC;AAEvB,SAAS,MAAM,KAAI,CAAC;AAGpB,SAAS,OAAO,CAAC,IAAmB;IAClC,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AAC3D,CAAC;AAED,SAAS,IAAI;IACX,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC;AAC1C,CAAC;AAED,SAAS,gBAAgB,CAAC,KAAa,EAAE,aAAqB;IAC5D,OAAO,UAAU,KAAK,wBAAwB,aAAa,wEAAwE,CAAC;AACtI,CAAC;AAED,SAAS,SAAS,CAAC,KAAa,EAAE,KAAkB;IAClD,MAAM,IAAI,KAAK,CAAC,gBAAgB,CAAC,KAAK,EAAE,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC;AAChE,CAAC;AAED,SAAS,gBAAgB,CAAC,KAAa;IACrC,OAAO,UAAU,KAAK,0EAA0E,kBAAkB,+CAA+C,CAAC;AACpK,CAAC;AAED,SAAS,SAAS,CAAC,KAAa;IAC9B,MAAM,IAAI,KAAK,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC,CAAC;AAC3C,CAAC;AAED,MAAM,aAAa,GAAmC;IACpD,CAAC,SAAS,CAAC,EAAE,IAAI;IACjB,CAAC,MAAM,CAAC,EAAE,IAAI;IACd,CAAC,MAAM,CAAC,EAAE,IAAI;IACd,CAAC,MAAM,CAAC,EAAE,SAAS;IACnB,CAAC,SAAS,CAAC,EAAE,SAAS;CACvB,CAAC;AAEF,SAAS,MAAM,CAAC,KAAkB;IAChC,OAAO,KAAK,CAAC,MAAM,KAAK,SAAS,CAAC;AACpC,CAAC;AAGD,SAAS,WAAW,CAAC,KAAkB;IACrC,OAAO,KAAK,CAAC,SAAS,IAAI,KAAK,CAAC,MAAM,KAAK,SAAS,CAAC;AACvD,CAAC;AAGD,SAAS,SAAS,CAAC,KAAkB;IACnC,OAAO,MAAM,CAAC,KAAK,CAAC,IAAI,WAAW,CAAC,KAAK,CAAC,CAAC;AAC7C,CAAC;AAED,SAAS,aAAa;IACpB,OAAO,CAAC,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;SAC1B,MAAM,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;SACvC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC;AAC7B,CAAC;AAGD,SAAS,OAAO,CAAC,KAAa;IAC5B,SAAS,GAAG,SAAS;QACnB,CAAC,CAAC;YACE,MAAM,EAAE,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,MAAM,EAAE,KAAK,CAAC;YACzC,OAAO,EAAE,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,OAAO,EAAE,KAAK,CAAC;SAC5C;QACH,CAAC,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;AACxC,CAAC;AAGD,SAAS,YAAY,CAAC,KAAa;IACjC,OAAO,CACL,SAAS,KAAK,SAAS;QACvB,KAAK,IAAI,SAAS,CAAC,MAAM;QACzB,KAAK,IAAI,SAAS,CAAC,OAAO,CAC3B,CAAC;AACJ,CAAC;AAGD,SAAS,MAAM,CAAC,KAAa;IAC3B,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACpB,OAAO,OAAO,CAAC,MAAM,GAAG,kBAAkB,EAAE,CAAC;QAC3C,MAAM,OAAO,GAAG,OAAO,CAAC,KAAK,EAAY,CAAC;QAC1C,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QACxB,OAAO,CAAC,OAAO,CAAC,CAAC;IACnB,CAAC;AACH,CAAC;AAMD,SAAS,MAAM,CAAC,KAAa,EAAE,KAAkB,EAAE,MAAiB;IAClE,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;QACnB,OAAO,KAAK,CAAC;IACf,CAAC;IACD,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC;IACtB,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,EAAE,CAAC;QACxB,MAAM,CAAC,KAAK,CAAC,CAAC;IAChB,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAGD,SAAS,UAAU,CAAC,KAAa;IAC/B,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IACjC,IAAI,KAAK,EAAE,CAAC;QACV,OAAO,KAAK,CAAC;IACf,CAAC;IACD,MAAM,KAAK,GAAgB;QACzB,KAAK,EAAE,OAAO,CAAC,OAAO,EAAE;QACxB,SAAS,EAAE,KAAK;QAChB,aAAa,EAAE,OAAO;KACvB,CAAC;IACF,OAAO,CAAC,GAAG,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;IAC1B,IAAI,YAAY,CAAC,KAAK,CAAC,EAAE,CAAC;QACxB,MAAM,CAAC,KAAK,EAAE,KAAK,EAAE,SAAS,CAAC,CAAC;IAClC,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,gBAAgB,CAAC,GAAW;IACnC,OAAO,WAAW,WAAW,yBAAyB,GAAG,EAAE,CAAC;AAC9D,CAAC;AAED,SAAS,cAAc,CAAC,SAAiB;IACvC,OAAO,iBAAiB,SAAS,SAAS,WAAW,EAAE,CAAC;AAC1D,CAAC;AAGD,KAAK,UAAU,OAAO,CAAC,MAAkB;IACvC,MAAM,OAAO,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;IAC5C,MAAM,OAAO,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC;AACxC,CAAC;AAGD,KAAK,UAAU,OAAO,CAAC,OAAsB;IAC3C,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,IAAI,0BAAa,CAAC;IACjD,MAAM,MAAM,GAAG,MAAM,OAAO,EAAE,CAAC;IAC/B,IAAI,CAAC;QACH,MAAM,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IAC5B,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,OAAO,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC;QACtC,MAAM,GAAG,CAAC;IACZ,CAAC;IACD,IAAI,CAAC;QACH,MAAM,MAAM,CAAC,KAAK,CAAC,gBAAgB,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,OAAO,CAAC,MAAe,CAAC,CAAC;IAC7E,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,OAAO,CAAC,MAAM,CAAC,CAAC;QACtB,MAAM,GAAG,CAAC;IACZ,CAAC;IACD,OAAO;QACL,MAAM;QACN,MAAM,EAAE,OAAO,CAAC,MAAM;QACtB,MAAM,EAAE,EAAE;QACV,SAAS,EAAE,KAAK;KACjB,CAAC;AACJ,CAAC;AAED,SAAS,WAAW,CAAC,MAAkB;IACrC,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;QACjB,YAAY,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAC3B,MAAM,CAAC,KAAK,GAAG,SAAS,CAAC;IAC3B,CAAC;AACH,CAAC;AAGD,KAAK,UAAU,QAAQ,CACrB,KAAa,EACb,KAAkB,EAClB,MAAiB;IAEjB,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC;IAC5B,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;QAC7C,OAAO;IACT,CAAC;IACD,WAAW,CAAC,MAAM,CAAC,CAAC;IACpB,MAAM,OAAO,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC;IAChD,MAAM,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAC7B,KAAK,CAAC,MAAM,GAAG,SAAS,CAAC;IACzB,MAAM,CAAC,KAAK,CAAC,CAAC;AAChB,CAAC;AAGD,KAAK,UAAU,MAAM,CACnB,KAAa,EACb,KAAkB,EAClB,KAAqB;IAErB,IAAI,KAAK,CAAC,MAAM,EAAE,KAAK,KAAK,KAAK,EAAE,CAAC;QAClC,OAAO;IACT,CAAC;IACD,MAAM,QAAQ,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;AACvC,CAAC;AAGD,SAAS,IAAI,CAAC,KAAa,EAAE,KAAkB,EAAE,KAAqB;IACpE,KAAK,CAAC,KAAK,GAAG,KAAK,CAAC,KAAK;SACtB,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;SACvC,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AAC1B,CAAC;AAGD,SAAS,SAAS,CAChB,KAAa,EACb,KAAkB,EAClB,MAAkB,EAClB,aAAqB;IAErB,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,EAAE,aAAa,CAAC,CAAC;IACzE,KAAK,CAAC,KAAK,EAAE,CAAC;IACd,MAAM,CAAC,KAAK,GAAG,KAAK,CAAC;IACrB,KAAK,CAAC,aAAa,GAAG,aAAa,CAAC;AACtC,CAAC;AAGD,KAAK,UAAU,UAAU,CACvB,MAAkB,EAClB,SAAiB;IAEjB,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,MAAM,CAAC,KAAK,CACvC,cAAc,CAAC,SAAS,CAAC,CAC1B,CAAC;IACF,MAAM,CAAC,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,MAAM,GAAG,SAAS,CAAC;IACnD,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;QAChD,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC5B,CAAC;AACH,CAAC;AAED,KAAK,UAAU,MAAM,CACnB,KAAa,EACb,KAAkB,EAClB,MAAkB,EAClB,SAAiB;IAEjB,IAAI,CAAC;QACH,MAAM,UAAU,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;IACtC,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,QAAQ,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;QACrC,MAAM,GAAG,CAAC;IACZ,CAAC;AACH,CAAC;AAGD,KAAK,UAAU,MAAM,CACnB,KAAkB,EAClB,IAAkB;IAElB,KAAK,CAAC,SAAS,GAAG,IAAI,CAAC;IACvB,IAAI,CAAC;QACH,OAAO,MAAM,OAAO,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC;IACrC,CAAC;YAAS,CAAC;QACT,KAAK,CAAC,SAAS,GAAG,KAAK,CAAC;IAC1B,CAAC;AACH,CAAC;AAED,KAAK,UAAU,WAAW,CACxB,KAAa,EACb,KAAkB,EAClB,IAAkB;IAElB,IAAI,KAAK,CAAC,MAAM,EAAE,CAAC;QACjB,OAAO,KAAK,CAAC,MAAM,CAAC;IACtB,CAAC;IACD,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;QACzC,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC;QACtB,OAAO,MAAM,CAAC;IAChB,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;QAC7B,MAAM,GAAG,CAAC;IACZ,CAAC;AACH,CAAC;AAED,KAAK,UAAU,OAAO,CACpB,KAAa,EACb,KAAkB,EAClB,IAAkB,EAClB,OAAwB;IAExB,IAAI,UAAU,EAAE,CAAC;QACf,MAAM,QAAQ,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;IACvC,CAAC;IACD,IAAI,KAAK,CAAC,MAAM,EAAE,CAAC;QACjB,OAAO,aAAa,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;IACnD,CAAC;IACD,MAAM,MAAM,GAAG,MAAM,WAAW,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;IACrD,WAAW,CAAC,MAAM,CAAC,CAAC;IACpB,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,KAAK,KAAK,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC;QACxD,MAAM,MAAM,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,eAAe,CAAC,CAAC;IAC9D,CAAC;IACD,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,KAAK,KAAK,EAAE,CAAC;QACnC,MAAM,QAAQ,CAAC,KAAK,EAAE,KAAK,EAAE,SAAS,CAAC,CAAC;QACxC,OAAO,IAAI,EAAE,CAAC;IAChB,CAAC;IACD,SAAS,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,mBAAmB,CAAC,CAAC;IAC7D,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,EAAE,CAAC;AACvD,CAAC;AA0BD,SAAgB,aAAa,CAC3B,KAAa,EACb,IAAkB;IAElB,MAAM,OAAO,GAAG,IAAA,mBAAU,GAAE,CAAC;IAC7B,MAAM,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC;IAChC,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC;IAC1E,KAAK,CAAC,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACxC,OAAO,IAAI,CAAC;AACd,CAAC;AAoBD,SAAgB,cAAc,CAAC,KAAa;IAC1C,MAAM,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC;IAChC,MAAM,MAAM,GAAG,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC;IACtE,KAAK,CAAC,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC1C,OAAO,MAAM,CAAC;AAChB,CAAC;AAoBM,KAAK,UAAU,eAAe;IACnC,UAAU,GAAG,IAAI,CAAC;IAClB,IAAI,CAAC;QACH,IAAI,OAAO,GAAG,aAAa,EAAE,CAAC;QAC9B,OAAO,OAAO,CAAC,MAAM,GAAG,KAAK,EAAE,CAAC;YAC9B,MAAM,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YACjE,OAAO,GAAG,aAAa,EAAE,CAAC;QAC5B,CAAC;IACH,CAAC;YAAS,CAAC;QACT,UAAU,GAAG,KAAK,CAAC;IACrB,CAAC;AACH,CAAC;AASD,SAAgB,gBAAgB;IAC9B,OAAO,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,MAAM,CAAC;AAC1D,CAAC;AAED,IAAA,qCAAwB,EAAC,eAAe,CAAC,CAAC"}
1
+ {"version":3,"file":"cursors.js","sourceRoot":"","sources":["../../../src/implementations/database/cursors.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,8 @@
1
1
  import type { IndexDefinition, SchemaDefinition, TableDefinition } from "@antelopejs/interface-database/schema";
2
- import type { MigrationMode } from "../../config";
3
2
  import { type SqlType } from "./types";
4
- import { type SchemaShape, type TableShape } from "./fields";
3
+ import { type SchemaModel, type TableModel } from "./fields";
5
4
  type IndexMethod = "btree" | "gin";
6
- interface DeclaredField {
5
+ export interface DeclaredField {
7
6
  readonly field: string;
8
7
  readonly type: SqlType;
9
8
  }
@@ -19,6 +18,7 @@ export interface IndexPlan {
19
18
  readonly name: string;
20
19
  readonly method: IndexMethod;
21
20
  readonly keys: readonly string[];
21
+ readonly isUnique: boolean;
22
22
  readonly signature: string;
23
23
  }
24
24
  export interface TablePlan {
@@ -27,36 +27,16 @@ export interface TablePlan {
27
27
  readonly columns: readonly ColumnPlan[];
28
28
  readonly indexes: readonly IndexPlan[];
29
29
  }
30
- export interface ActualColumn {
31
- readonly name: string;
32
- readonly type: string;
33
- }
34
- export interface ActualIndex {
35
- readonly name: string;
36
- readonly signature?: string;
37
- readonly valid: boolean;
38
- }
39
- export interface ActualTable {
40
- readonly columns: readonly ActualColumn[];
41
- readonly indexes: readonly ActualIndex[];
42
- }
43
- export interface ConvergencePlan {
44
- statements: string[];
45
- indexStatements: string[];
46
- warnings: string[];
47
- }
48
30
  export declare const PRIMARY_KEY_COLUMNS: readonly string[];
49
31
  export declare const PRIMARY_KEY_LIST: string;
50
32
  export declare function ColumnDdl(column: ColumnPlan): string;
51
33
  export declare function IndexFields(indexId: string, index: IndexDefinition): string[];
52
- export declare function ServesCrossInstance(indexId: string, index: IndexDefinition, shape: TableShape): boolean;
53
- export declare function BuildTablePlan(tableId: string, definition: TableDefinition, shape: TableShape): TablePlan;
34
+ export declare function ServesCrossInstance(indexId: string, index: IndexDefinition, model: TableModel): boolean;
35
+ export declare function BuildTablePlan(tableId: string, definition: TableDefinition, model: TableModel): TablePlan;
54
36
  export declare function AssertDistinctNames(plans: readonly TablePlan[]): void;
55
- export declare function BuildSchemaPlan(schema: SchemaDefinition, shape: SchemaShape): TablePlan[];
37
+ export declare function BuildSchemaPlan(schema: SchemaDefinition, model: SchemaModel): TablePlan[];
56
38
  export declare function CreateSchemaSql(schemaName: string): string;
57
39
  export declare function CreateTableSql(schemaName: string, plan: TablePlan): string;
58
40
  export declare function CreateIndexSql(schemaName: string, plan: TablePlan, index: IndexPlan, name?: string): string[];
59
41
  export declare function IsAdapterIndex(signature?: string): boolean;
60
- export declare function PlanIndexStatements(schemaName: string, plan: TablePlan, actual: ActualTable): string[];
61
- export declare function PlanTable(schemaName: string, plan: TablePlan, actual: ActualTable, mode: MigrationMode): ConvergencePlan;
62
42
  export {};
@@ -11,9 +11,6 @@ exports.CreateSchemaSql = CreateSchemaSql;
11
11
  exports.CreateTableSql = CreateTableSql;
12
12
  exports.CreateIndexSql = CreateIndexSql;
13
13
  exports.IsAdapterIndex = IsAdapterIndex;
14
- exports.PlanIndexStatements = PlanIndexStatements;
15
- exports.PlanTable = PlanTable;
16
- const coerce_1 = require("./coerce");
17
14
  const sql_1 = require("./sql");
18
15
  const types_1 = require("./types");
19
16
  const utils_1 = require("./utils");
@@ -24,6 +21,7 @@ const GIN = "gin";
24
21
  const SIGNATURE_VENDOR = "antelopejs";
25
22
  const SIGNATURE_VERSION = "1";
26
23
  const SIGNATURE_PREFIX = `${SIGNATURE_VENDOR}:${SIGNATURE_VERSION}`;
24
+ const UNIQUE_SIGNATURE_MARKER = "unique:";
27
25
  exports.PRIMARY_KEY_COLUMNS = [
28
26
  utils_1.INSTANCE_COLUMN,
29
27
  utils_1.ID_COLUMN,
@@ -56,15 +54,14 @@ function ColumnDdl(column) {
56
54
  }
57
55
  return parts.join(" ");
58
56
  }
59
- const RESERVED_INDEX_KEYS = {
60
- [utils_1.ID_COLUMN]: (0, sql_1.QuoteIdentifier)(utils_1.ID_COLUMN),
61
- };
57
+ const RESERVED_INDEX_KEYS = new Map([[utils_1.ID_COLUMN, (0, sql_1.QuoteIdentifier)(utils_1.ID_COLUMN)]]);
62
58
  function IndexKey(indexId, field, spec) {
63
59
  if (spec) {
64
60
  return (0, sql_1.QuoteIdentifier)(spec.column);
65
61
  }
66
- if (Object.hasOwn(RESERVED_INDEX_KEYS, field)) {
67
- return RESERVED_INDEX_KEYS[field];
62
+ const reserved = RESERVED_INDEX_KEYS.get(field);
63
+ if (reserved !== undefined) {
64
+ return reserved;
68
65
  }
69
66
  if (utils_1.RESERVED_COLUMNS.includes(field)) {
70
67
  throw new Error(`Index '${indexId}' keys on '${field}', which is a reserved column the adapter owns; index a declared field instead`);
@@ -75,8 +72,8 @@ function IndexFields(indexId, index) {
75
72
  const declared = index.fields ?? [];
76
73
  return declared.length > 0 ? declared : [indexId];
77
74
  }
78
- function IndexSpecs(fields, shape) {
79
- return fields.map((field) => Object.hasOwn(shape.fields, field) ? shape.fields[field] : undefined);
75
+ function IndexSpecs(fields, model) {
76
+ return fields.map((field) => Object.hasOwn(model.fields, field) ? model.fields[field] : undefined);
80
77
  }
81
78
  function IsElementWise(index, specs) {
82
79
  const soleSpec = specs.length === 1 ? specs[0] : undefined;
@@ -84,39 +81,46 @@ function IsElementWise(index, specs) {
84
81
  soleSpec !== undefined &&
85
82
  (0, types_1.IsJsonBacked)(soleSpec.type));
86
83
  }
87
- function PhysicalIndex(id, name, method, keys) {
84
+ function PhysicalIndex(id, name, method, keys, isUnique = false) {
85
+ const marker = isUnique ? UNIQUE_SIGNATURE_MARKER : "";
88
86
  return {
89
87
  id,
90
88
  name,
91
89
  method,
92
90
  keys,
93
- signature: `${SIGNATURE_PREFIX}:${method}:${keys.join(",")}`,
91
+ isUnique,
92
+ signature: `${SIGNATURE_PREFIX}:${method}:${marker}${keys.join(",")}`,
94
93
  };
95
94
  }
96
- function BuildIndexPlans(tableId, indexId, index, shape) {
95
+ function BuildIndexPlans(tableId, indexId, index, model) {
97
96
  const fields = IndexFields(indexId, index);
98
- const specs = IndexSpecs(fields, shape);
97
+ const specs = IndexSpecs(fields, model);
99
98
  const keys = fields.map((field, position) => IndexKey(indexId, field, specs[position]));
100
99
  const name = (0, identifier_1.IndexName)(tableId, indexId);
100
+ const isUnique = index.unique === true;
101
101
  if (IsElementWise(index, specs)) {
102
+ if (isUnique) {
103
+ throw new Error(`Index '${indexId}' on table '${tableId}' is unique and multi over an array field, whose elements PostgreSQL cannot hold unique; drop one of the two flags`);
104
+ }
102
105
  return [PhysicalIndex(indexId, name, GIN, keys)];
103
106
  }
104
107
  const instanceKey = (0, sql_1.QuoteIdentifier)(utils_1.INSTANCE_COLUMN);
105
- const scoped = PhysicalIndex(indexId, name, BTREE, [instanceKey, ...keys]);
108
+ const scopedKeys = [instanceKey, ...keys];
109
+ const scoped = PhysicalIndex(indexId, name, BTREE, scopedKeys, isUnique);
106
110
  if (index.crossInstance !== true) {
107
111
  return [scoped];
108
112
  }
109
113
  const unscopedName = (0, identifier_1.CrossInstanceIndexName)(name);
110
114
  return [scoped, PhysicalIndex(indexId, unscopedName, BTREE, keys)];
111
115
  }
112
- function ServesCrossInstance(indexId, index, shape) {
116
+ function ServesCrossInstance(indexId, index, model) {
113
117
  if (index.crossInstance === true) {
114
118
  return true;
115
119
  }
116
- return IsElementWise(index, IndexSpecs(IndexFields(indexId, index), shape));
120
+ return IsElementWise(index, IndexSpecs(IndexFields(indexId, index), model));
117
121
  }
118
- function BuildTablePlan(tableId, definition, shape) {
119
- const declared = Object.entries(shape.fields).map(([field, spec]) => ({
122
+ function BuildTablePlan(tableId, definition, model) {
123
+ const declared = Object.entries(model.fields).map(([field, spec]) => ({
120
124
  name: spec.column,
121
125
  type: (0, types_1.PhysicalType)(spec.type),
122
126
  declared: { field, type: spec.type },
@@ -125,7 +129,7 @@ function BuildTablePlan(tableId, definition, shape) {
125
129
  id: tableId,
126
130
  table: (0, identifier_1.TableName)(tableId),
127
131
  columns: (0, fields_1.PhysicalOrder)(ID_PLAN, INSTANCE_PLAN, declared, EXTRA_PLAN),
128
- indexes: Object.entries(definition.indexes ?? {}).flatMap(([indexId, index]) => BuildIndexPlans(tableId, indexId, index, shape)),
132
+ indexes: Object.entries(definition.indexes ?? {}).flatMap(([indexId, index]) => BuildIndexPlans(tableId, indexId, index, model)),
129
133
  };
130
134
  }
131
135
  function GeneratedNames(plans) {
@@ -153,8 +157,8 @@ function AssertDistinctNames(plans) {
153
157
  owners.set(generated.name, generated.declaration);
154
158
  }
155
159
  }
156
- function BuildSchemaPlan(schema, shape) {
157
- const plans = Object.entries(schema).map(([tableId, definition]) => BuildTablePlan(tableId, definition, shape[tableId]));
160
+ function BuildSchemaPlan(schema, model) {
161
+ const plans = Object.entries(schema).map(([tableId, definition]) => BuildTablePlan(tableId, definition, model[tableId]));
158
162
  AssertDistinctNames(plans);
159
163
  return plans;
160
164
  }
@@ -172,184 +176,13 @@ function CreateTableSql(schemaName, plan) {
172
176
  function CreateIndexSql(schemaName, plan, index, name = index.name) {
173
177
  const target = (0, identifier_1.QualifiedName)(schemaName, plan.table);
174
178
  const reference = (0, identifier_1.QualifiedName)(schemaName, name);
179
+ const kind = index.isUnique ? "UNIQUE INDEX" : "INDEX";
175
180
  return [
176
- `CREATE INDEX CONCURRENTLY ${(0, sql_1.QuoteIdentifier)(name)} ON ${target} USING ${index.method} (${index.keys.join(", ")})`,
181
+ `CREATE ${kind} CONCURRENTLY ${(0, sql_1.QuoteIdentifier)(name)} ON ${target} USING ${index.method} (${index.keys.join(", ")})`,
177
182
  `COMMENT ON INDEX ${reference} IS ${(0, sql_1.QuoteLiteral)(index.signature)}`,
178
183
  ];
179
184
  }
180
185
  function IsAdapterIndex(signature) {
181
186
  return signature?.startsWith(`${SIGNATURE_VENDOR}:`) === true;
182
187
  }
183
- const DESTRUCTIVE = "destructive";
184
- const CAST_PIVOT_TYPE = (0, types_1.PhysicalType)(types_1.TEXT);
185
- const CANONICAL_TYPES = {
186
- text: "text",
187
- "double precision": "double precision",
188
- boolean: "boolean",
189
- timestamptz: "timestamp with time zone",
190
- jsonb: "jsonb",
191
- };
192
- function Canonical(type) {
193
- return Object.hasOwn(CANONICAL_TYPES, type) ? CANONICAL_TYPES[type] : type;
194
- }
195
- function AlterTable(target, action) {
196
- return `ALTER TABLE ${target} ${action}`;
197
- }
198
- function DropIndexSql(schemaName, name) {
199
- return `DROP INDEX IF EXISTS ${(0, identifier_1.QualifiedName)(schemaName, name)}`;
200
- }
201
- function DropIndexConcurrentlySql(schemaName, name) {
202
- return `DROP INDEX CONCURRENTLY IF EXISTS ${(0, identifier_1.QualifiedName)(schemaName, name)}`;
203
- }
204
- function RenameIndexSql(schemaName, from, to) {
205
- return `ALTER INDEX ${(0, identifier_1.QualifiedName)(schemaName, from)} RENAME TO ${(0, sql_1.QuoteIdentifier)(to)}`;
206
- }
207
- function IsRetyped(column, currentType) {
208
- return Canonical(currentType) !== Canonical(column.type);
209
- }
210
- function BackfillSql(target, column, declared) {
211
- const overflow = (0, sql_1.QuoteIdentifier)(utils_1.EXTRA_COLUMN);
212
- const key = (0, sql_1.QuoteLiteral)(declared.field);
213
- const stored = `NULLIF(${(0, sql_1.JsonKey)(overflow, declared.field)}, ${sql_1.JSON_NULL})`;
214
- const read = (0, coerce_1.Cast)({ sql: stored, type: types_1.OPAQUE }, declared.type).sql;
215
- const name = (0, sql_1.QuoteIdentifier)(column.name);
216
- return (`UPDATE ${target} SET ${name} = ${read}, ${overflow} = ${overflow} - ${key}` +
217
- ` WHERE ${name} IS NULL AND ${read} IS NOT NULL`);
218
- }
219
- function PlanAddedColumn(target, column, out) {
220
- if (column.notNull && column.defaultExpression === undefined) {
221
- throw new Error(`Table ${target} has no '${column.name}' column and one cannot be added without a default, so the table was not created by this adapter; rename it or drop it`);
222
- }
223
- out.statements.push(AlterTable(target, `ADD COLUMN IF NOT EXISTS ${ColumnDdl(column)}`));
224
- if (column.declared) {
225
- out.statements.push(BackfillSql(target, column, column.declared));
226
- }
227
- }
228
- function PlanAlteredColumn(target, column, current, mode, out) {
229
- if (!IsRetyped(column, current.type)) {
230
- return;
231
- }
232
- if (mode !== DESTRUCTIVE) {
233
- throw new Error(`Column '${column.name}' on ${target} is ${current.type} but the schema declares ${column.type}; set migrations: "destructive" to alter it`);
234
- }
235
- const name = (0, sql_1.QuoteIdentifier)(column.name);
236
- out.statements.push(AlterTable(target, `ALTER COLUMN ${name} TYPE ${column.type} USING (${name}::${CAST_PIVOT_TYPE}::${column.type})`));
237
- }
238
- function PlanRemovedColumns(target, plan, actual, mode, out) {
239
- const declared = new Set(plan.columns.map((column) => column.name));
240
- for (const column of actual.columns) {
241
- if (declared.has(column.name)) {
242
- continue;
243
- }
244
- if (mode === DESTRUCTIVE) {
245
- out.statements.push(AlterTable(target, `DROP COLUMN ${(0, sql_1.QuoteIdentifier)(column.name)}`));
246
- continue;
247
- }
248
- out.warnings.push(`Column '${column.name}' on ${target} is no longer declared and was left in place; set migrations: "destructive" to drop it`);
249
- }
250
- }
251
- function PlanColumns(target, plan, actual, mode, out) {
252
- const found = new Map(actual.columns.map((column) => [column.name, column]));
253
- for (const column of plan.columns) {
254
- const current = found.get(column.name);
255
- if (!current) {
256
- PlanAddedColumn(target, column, out);
257
- continue;
258
- }
259
- PlanAlteredColumn(target, column, current, mode, out);
260
- }
261
- PlanRemovedColumns(target, plan, actual, mode, out);
262
- }
263
- function RetypesAColumn(plan, actual) {
264
- const found = new Map(actual.columns.map((column) => [column.name, column]));
265
- return plan.columns.some((column) => {
266
- const current = found.get(column.name);
267
- return current !== undefined && IsRetyped(column, current.type);
268
- });
269
- }
270
- function IsObsolete(index, desired) {
271
- const wanted = desired.get(index.name);
272
- return wanted
273
- ? wanted.signature !== index.signature
274
- : IsAdapterIndex(index.signature);
275
- }
276
- function PlanRetypeDrops(schemaName, plan, actual, out) {
277
- if (!RetypesAColumn(plan, actual)) {
278
- return actual.indexes;
279
- }
280
- const desired = new Map(plan.indexes.map((index) => [index.name, index]));
281
- const obsolete = actual.indexes.filter((index) => IsObsolete(index, desired));
282
- for (const index of obsolete) {
283
- out.statements.push(DropIndexSql(schemaName, index.name));
284
- }
285
- return actual.indexes.filter((index) => !obsolete.includes(index));
286
- }
287
- function IsReady(index, found) {
288
- return found?.valid === true && found.signature === index.signature;
289
- }
290
- function ClearSql(schemaName, found) {
291
- return found ? [DropIndexConcurrentlySql(schemaName, found.name)] : [];
292
- }
293
- function ReplaceIndexSql(schemaName, plan, index) {
294
- const replacement = (0, identifier_1.ReplacementIndexName)(index.name);
295
- return [
296
- ...CreateIndexSql(schemaName, plan, index, replacement),
297
- DropIndexConcurrentlySql(schemaName, index.name),
298
- RenameIndexSql(schemaName, replacement, index.name),
299
- ];
300
- }
301
- function PlanIndexBuild(schemaName, plan, index, state) {
302
- const { current, replacement } = state;
303
- if (IsReady(index, current)) {
304
- return ClearSql(schemaName, replacement);
305
- }
306
- if (current === undefined && replacement && IsReady(index, replacement)) {
307
- return [RenameIndexSql(schemaName, replacement.name, index.name)];
308
- }
309
- const cleared = ClearSql(schemaName, replacement);
310
- if (current?.valid !== true) {
311
- const rebuilt = CreateIndexSql(schemaName, plan, index);
312
- return [...cleared, ...ClearSql(schemaName, current), ...rebuilt];
313
- }
314
- return [...cleared, ...ReplaceIndexSql(schemaName, plan, index)];
315
- }
316
- function PlanIndexes(schemaName, plan, actual) {
317
- const found = new Map(actual.map((index) => [index.name, index]));
318
- const managed = new Set();
319
- const statements = [];
320
- for (const index of plan.indexes) {
321
- const replacement = (0, identifier_1.ReplacementIndexName)(index.name);
322
- managed.add(index.name).add(replacement);
323
- const state = {
324
- current: found.get(index.name),
325
- replacement: found.get(replacement),
326
- };
327
- statements.push(...PlanIndexBuild(schemaName, plan, index, state));
328
- }
329
- for (const index of actual) {
330
- if (!managed.has(index.name) && IsAdapterIndex(index.signature)) {
331
- statements.push(DropIndexConcurrentlySql(schemaName, index.name));
332
- }
333
- }
334
- return statements;
335
- }
336
- function PlanIndexStatements(schemaName, plan, actual) {
337
- return PlanIndexes(schemaName, plan, actual.indexes);
338
- }
339
- function PlanTable(schemaName, plan, actual, mode) {
340
- const out = {
341
- statements: [],
342
- indexStatements: [],
343
- warnings: [],
344
- };
345
- if (actual.columns.length === 0) {
346
- out.statements.push(CreateTableSql(schemaName, plan));
347
- out.indexStatements.push(...PlanIndexes(schemaName, plan, []));
348
- return out;
349
- }
350
- const kept = PlanRetypeDrops(schemaName, plan, actual, out);
351
- PlanColumns((0, identifier_1.QualifiedName)(schemaName, plan.table), plan, actual, mode, out);
352
- out.indexStatements.push(...PlanIndexes(schemaName, plan, kept));
353
- return out;
354
- }
355
188
  //# sourceMappingURL=ddl.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ddl.js","sourceRoot":"","sources":["../../../src/implementations/database/ddl.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ddl.js","sourceRoot":"","sources":["../../../src/implementations/database/ddl.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ import type { TableOrigin } from "./relation";
2
+ export declare function DuplicateKeyFailure(err: unknown, origin: TableOrigin): Promise<unknown>;
@@ -0,0 +1,49 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.DuplicateKeyFailure = DuplicateKeyFailure;
4
+ const pg_1 = require("pg");
5
+ const interface_database_1 = require("@antelopejs/interface-database");
6
+ const connection_1 = require("../../connection");
7
+ const ddl_1 = require("./ddl");
8
+ const schema_1 = require("./schema");
9
+ const utils_1 = require("./utils");
10
+ const identifier_1 = require("./identifier");
11
+ const UNIQUE_VIOLATION = "23505";
12
+ const PRIMARY_KEY_FIELDS = [utils_1.ID_COLUMN];
13
+ const IS_PRIMARY_KEY_SQL = `
14
+ SELECT 1 FROM pg_index i
15
+ JOIN pg_class c ON c.oid = i.indexrelid
16
+ JOIN pg_namespace n ON n.oid = c.relnamespace
17
+ WHERE n.nspname = $1 AND c.relname = $2 AND i.indisprimary`;
18
+ function UniqueKeys(origin) {
19
+ const indexes = (0, schema_1.GetTable)(origin.schemaId, origin.tableId).indexes ?? {};
20
+ const keys = new Map();
21
+ for (const [indexId, index] of Object.entries(indexes)) {
22
+ if (index.unique !== true) {
23
+ continue;
24
+ }
25
+ const key = { index: indexId, fields: (0, ddl_1.IndexFields)(indexId, index) };
26
+ const name = (0, identifier_1.IndexName)(origin.tableId, indexId);
27
+ keys.set(name, key).set((0, identifier_1.ReplacementIndexName)(name), key);
28
+ }
29
+ return keys;
30
+ }
31
+ async function IsPrimaryKey(schemaName, constraint) {
32
+ const result = await (0, connection_1.Query)(IS_PRIMARY_KEY_SQL, [schemaName, constraint]);
33
+ return result.rows.length > 0;
34
+ }
35
+ async function DuplicateKeyFailure(err, origin) {
36
+ if (!(err instanceof pg_1.DatabaseError) || err.code !== UNIQUE_VIOLATION) {
37
+ return err;
38
+ }
39
+ const constraint = err.constraint ?? "";
40
+ const declared = UniqueKeys(origin).get(constraint);
41
+ if (declared) {
42
+ return new interface_database_1.DuplicateKeyError(declared.index, [...declared.fields]);
43
+ }
44
+ if (await IsPrimaryKey((0, identifier_1.SchemaName)(origin.schemaId), constraint)) {
45
+ return new interface_database_1.DuplicateKeyError(utils_1.ID_COLUMN, [...PRIMARY_KEY_FIELDS]);
46
+ }
47
+ return err;
48
+ }
49
+ //# sourceMappingURL=duplicate-key.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"duplicate-key.js","sourceRoot":"","sources":["../../../src/implementations/database/duplicate-key.ts"],"names":[],"mappings":";;AAyDA,kDAgBC;AAzED,2BAAmC;AACnC,uEAAmE;AAEnE,iDAAyC;AACzC,+BAAoC;AACpC,qCAAoC;AACpC,mCAAoC;AAEpC,6CAA2E;AAE3E,MAAM,gBAAgB,GAAG,OAAO,CAAC;AACjC,MAAM,kBAAkB,GAAG,CAAC,iBAAS,CAAC,CAAC;AAEvC,MAAM,kBAAkB,GAAG;;;;6DAIkC,CAAC;AAY9D,SAAS,UAAU,CAAC,MAAmB;IACrC,MAAM,OAAO,GAAG,IAAA,iBAAQ,EAAC,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC,OAAO,IAAI,EAAE,CAAC;IACxE,MAAM,IAAI,GAAG,IAAI,GAAG,EAAqB,CAAC;IAC1C,KAAK,MAAM,CAAC,OAAO,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;QACvD,IAAI,KAAK,CAAC,MAAM,KAAK,IAAI,EAAE,CAAC;YAC1B,SAAS;QACX,CAAC;QACD,MAAM,GAAG,GAAG,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,IAAA,iBAAW,EAAC,OAAO,EAAE,KAAK,CAAC,EAAE,CAAC;QACpE,MAAM,IAAI,GAAG,IAAA,sBAAS,EAAC,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QAChD,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,GAAG,CAAC,IAAA,iCAAoB,EAAC,IAAI,CAAC,EAAE,GAAG,CAAC,CAAC;IAC3D,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAGD,KAAK,UAAU,YAAY,CAAC,UAAkB,EAAE,UAAkB;IAChE,MAAM,MAAM,GAAG,MAAM,IAAA,kBAAK,EAAC,kBAAkB,EAAE,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC,CAAC;IACzE,OAAO,MAAM,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC;AAChC,CAAC;AAUM,KAAK,UAAU,mBAAmB,CACvC,GAAY,EACZ,MAAmB;IAEnB,IAAI,CAAC,CAAC,GAAG,YAAY,kBAAa,CAAC,IAAI,GAAG,CAAC,IAAI,KAAK,gBAAgB,EAAE,CAAC;QACrE,OAAO,GAAG,CAAC;IACb,CAAC;IACD,MAAM,UAAU,GAAG,GAAG,CAAC,UAAU,IAAI,EAAE,CAAC;IACxC,MAAM,QAAQ,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;IACpD,IAAI,QAAQ,EAAE,CAAC;QACb,OAAO,IAAI,sCAAiB,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC;IACrE,CAAC;IACD,IAAI,MAAM,YAAY,CAAC,IAAA,uBAAU,EAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,UAAU,CAAC,EAAE,CAAC;QAChE,OAAO,IAAI,sCAAiB,CAAC,iBAAS,EAAE,CAAC,GAAG,kBAAkB,CAAC,CAAC,CAAC;IACnE,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC"}
@@ -199,8 +199,13 @@ const TRAIT_RULES = {
199
199
  !facts.roles.keys.has(facts.column.name) &&
200
200
  !facts.roles.references.has(facts.column.name),
201
201
  };
202
+ function IsTrait(name) {
203
+ return Object.hasOwn(TRAIT_RULES, name);
204
+ }
202
205
  function TraitsOf(facts) {
203
- return Object.keys(TRAIT_RULES).filter((trait) => TRAIT_RULES[trait](facts));
206
+ return Object.keys(TRAIT_RULES)
207
+ .filter(IsTrait)
208
+ .filter((trait) => TRAIT_RULES[trait](facts));
204
209
  }
205
210
  async function ProfileColumn(session, column, source, rows, roles) {
206
211
  const base = await MeasureBase(session, column, source);
@@ -1 +1 @@
1
- {"version":3,"file":"external-column-profile.js","sourceRoot":"","sources":["../../../src/implementations/database/external-column-profile.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"external-column-profile.js","sourceRoot":"","sources":["../../../src/implementations/database/external-column-profile.ts"],"names":[],"mappings":"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"}