Repository navigation
TUR-134: MLIR: unwind a typed list of any value type into a typed column - #1452
sulaimansuhas merged 1 commit into
Conversation
|
Note AI-generated summary. Summary
unwoundElementType(list<T>)
- if T not in {node_id, edge_id, string, list, f64, i1, i64}
- return !storage.any
- if T is node_id or edge_id
- return T
- return nullable<T>
+ if holdsItsOwnNull(T) # any, node_id, edge_id, path
+ return T
+ else if elementTypeToValueType(T) == Invalid # mixed list, nulls alone
+ return !storage.any
+ return nullable<T> # datetime, duration, point, map, embedding, ...Two follow-ons make that rule reach every case: The path sort key is needed because EvidenceRun locally on
The same holds for datetimes, points, maps, embeddings, collected properties ( Merge DangerDoor: two-way No stored format or wire format changes. The change only picks a different chunk type at lowering time. Blast Radius: query-wide Every query that unwinds a typed list of a type outside the old allow-list now reads a typed column, not |
074e4b8 to
5f7bf8d
Compare
5f7bf8d to
07f8a0c
Compare
Unwind a list of datetimes, durations, points, maps, embeddings or paths into a column of that type instead of type-erased cells.
Stacked on #1448 (bot stack
main): review and merge #1448 first.