Hello, I noticed that if the rows passed to org.apache.calcite.avatica.Meta.Frame contain Float values, the following exception [1] occurs when the frame is sent to the client with PROTOBUF serialization.
Would this be considered a valid use case? I can only reproduce it in unit tests or with custom code using the Avatica server. If Avatica is corrected to a JDBC backend, it appears to always convert float values to Double and this failure mode does not manifest. A similar class cast problem occurs with char values. What do you think? If you think it is worth fixing, I should be able to submit a pull request quickly. I believe the fix is fairly small. Thanks, Dmitri. [1] Exception snippet: java.lang.ClassCastException: java.lang.Long cannot be cast to java.lang.Float at org.apache.calcite.avatica.remote.TypedValue.writeToProtoWithType(TypedValue.java:600) at org.apache.calcite.avatica.remote.TypedValue.toProto(TypedValue.java:805) at org.apache.calcite.avatica.Meta$Frame.serializeScalar(Meta.java:991) at org.apache.calcite.avatica.Meta$Frame.parseColumn(Meta.java:977) at org.apache.calcite.avatica.Meta$Frame.toProto(Meta.java:942) at org.apache.calcite.avatica.remote.Service$FetchResponse.serialize(Service.java:1468) [...snip...]
