I’m encountering a problem while lowering tableIRs that change partitioning – I need partition intervals in the IR, but these aren’t actually real TInterval objects because they contain optionally truncated structs.
I’m proposing two changes:
We back the partition interval ordering out of the type system and make it a standalone ordering used in the interval partitioning. Struct/Tuple ordering in the IR should always assume that every field is included in the comparison.
We use an IR function to build the comparison function to be used in IR.