Hello, I'm trying to build a Rust based Flight server and I'd like to use Dictionary encoding for a number of string columns in my data. I've seen that StringDictionary was recently added to Rust here: https://github.com/apache/arrow/commit/c7a7d2dcc46ed06593b994cb54c5eaf9ccd1d21d#diff-72812e30873455dcee2ce2d1ee26e4ab.
However, that doesn't seem to reach down into Flight. When I attempt to send a schema through flight that has a Dictionary<UInt8, Utf8> it throws an error when attempting to convert from the Rust type to the Flatbuffer field type. I figured I'd take a swing at adding that to convert.rs here: https://github.com/apache/arrow/blob/master/rust/arrow/src/ipc/convert.rs#L319 However, when I look at the definitions in Schema.fbs and the related generated Rust file, Dictionary isn't a type there. Should I be sending this down as some other composed type? And if so, how does this look at the client side of things? In my test I'm connecting to the Flight server via PyArrow and working with it in Pandas so I'm hoping that it will be able to consume Dictionary fields. Separately, the Rust field type doesn't have a spot for the dictionary ID, which I assume I'll need to send down so it can be consumed on the client. Would appreciate any thoughts on that. A little push in the right direction and I'll be happy to submit a PR to help push the Rust Flight implementation farther along. Thanks, Paul