Is your feature request related to a problem or challenge? Please describe what you are trying to do.
I'm trying to use the arrow format for an DataFusion group operator. For that it would be super helpful do detach/own a row (acting as a group key).
Describe the solution you'd like
Introduce a new type OwnedRow that does not borrow buffer (for that particular row, not the entire buffer) and type but owns it. That new type should support all operations that the original Row has (clone, eq, ord, hash, borrow underlying raw data).
Describe alternatives you've considered
Make Row a copy-on-write type (similar to Cow). However this would introduce an enum-dispatch overhead to every row access and I think it's easier to do this on a type level (since I guess all users know if they own the row or not).
Additional context
-
Is your feature request related to a problem or challenge? Please describe what you are trying to do.
I'm trying to use the arrow format for an DataFusion group operator. For that it would be super helpful do detach/own a row (acting as a group key).
Describe the solution you'd like
Introduce a new type
OwnedRowthat does not borrow buffer (for that particular row, not the entire buffer) and type but owns it. That new type should support all operations that the originalRowhas (clone, eq, ord, hash, borrow underlying raw data).Describe alternatives you've considered
Make
Rowa copy-on-write type (similar toCow). However this would introduce an enum-dispatch overhead to every row access and I think it's easier to do this on a type level (since I guess all users know if they own the row or not).Additional context
-