Repository navigation
Commit b1bca1f
committed
fix(s090): type the UUID columns the schemaless ledger reads, for Postgres
The pull request failed the postgres leg while the gate passed, twelve times with
one shape: Postgrex expected a binary of 16 bytes, got a UUID string.
A schemaless query has no schema to tell the adapter that session_id is a UUID.
SQLite stores one as text and accepts the string; Postgres wants sixteen bytes
and refuses it. The queries now annotate the type, which is correct on both. The
test seeded rows the same way and with the same result, so it seeds through the
schema instead, which dumps the UUID and the JSON correctly wherever it runs and
surfaced a third thing the schemaless path had hidden: utc_datetime_usec refuses
a second-truncated timestamp.
This is the second cost of the schemaless choice, and the choice is still right.
The first was losing the compiler's check on column names, answered with a test
that reads the table's columns; this is the second. Both are the price of a
boundary rule that is correct, and neither is an argument against it.
Verified locally rather than by pushing again: a pgvector pg17 container on 5433,
MIX_BUILD_PATH=_build_pg, and the leg's own command, mix test --exclude sqlite,
giving 656 passed and 38 excluded. Re-running CI to find out would have been
slower and told me less.
NOTES also records a mistake that cannot be undone. slice/090 was tagged and
pushed before the merge it named was confirmed, and the merge had not happened
because this very check was red, so the tag points at slice 080's merge commit.
The ruleset forbids deleting or moving a tag, which is the correct rule working
as intended, so the error is permanent and public. It is recorded beside the
truth rather than worked around: the real commit is named in PROOF and in
coverage.tsv. The rule that prevents a repeat is to tag after a merge is
confirmed, never after one is requested.
Signed-off-by: Ayla Croft <aylacroft@proton.me>1 parent 1ab456a commit b1bca1f
3 files changed
Lines changed: 32 additions & 29 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
59 | 59 | | |
60 | 60 | | |
61 | 61 | | |
62 | | - | |
| 62 | + | |
| 63 | + | |
| 64 | + | |
| 65 | + | |
63 | 66 | | |
64 | 67 | | |
65 | 68 | | |
| |||
77 | 80 | | |
78 | 81 | | |
79 | 82 | | |
80 | | - | |
| 83 | + | |
81 | 84 | | |
82 | 85 | | |
83 | 86 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
42 | 42 | | |
43 | 43 | | |
44 | 44 | | |
45 | | - | |
46 | | - | |
47 | | - | |
48 | | - | |
49 | | - | |
50 | | - | |
51 | | - | |
52 | | - | |
53 | | - | |
| 45 | + | |
| 46 | + | |
| 47 | + | |
| 48 | + | |
| 49 | + | |
| 50 | + | |
| 51 | + | |
| 52 | + | |
54 | 53 | | |
55 | 54 | | |
56 | 55 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
16 | 16 | | |
17 | 17 | | |
18 | 18 | | |
| 19 | + | |
| 20 | + | |
| 21 | + | |
| 22 | + | |
19 | 23 | | |
20 | | - | |
21 | | - | |
22 | | - | |
23 | | - | |
24 | | - | |
25 | | - | |
26 | | - | |
27 | | - | |
28 | | - | |
29 | | - | |
30 | | - | |
31 | | - | |
32 | | - | |
33 | | - | |
34 | | - | |
35 | | - | |
36 | | - | |
37 | | - | |
| 24 | + | |
| 25 | + | |
| 26 | + | |
| 27 | + | |
| 28 | + | |
| 29 | + | |
| 30 | + | |
| 31 | + | |
| 32 | + | |
| 33 | + | |
| 34 | + | |
| 35 | + | |
| 36 | + | |
| 37 | + | |
| 38 | + | |
38 | 39 | | |
39 | 40 | | |
40 | 41 | | |
| |||
0 commit comments