Details
-
Bug
-
Status: Closed
-
Minor
-
Resolution: Fixed
-
1.17.0
Description
When dealing with records coming from Java classes, Avatica relies on the order of fields coming from java.lang.Class#getFields instead of using the order defined in the underlying SQL data type:
- org.apache.calcite.avatica.MetaImpl#createGetter(int ordinal)
- org.apache.calcite.avatica.util.RecordIteratorCursor#RecordIteratorCursor(Iterator<E> iterator, Class<E> clazz)
This behaviour prevents the change of fields orders, and it's particularly problematic because #getFields is JVM-specific.
Attachments
Issue Links
- is related to
-
CALCITE-4556 CalciteMetaImpl#createEmptyResultSet override of (Avatica) MetaImpl#createEmptyResultSet should not pass a class instance to CursorFactory#deduce
- Closed
- relates to
-
CALCITE-2489 Order of fields in JavaTypeFactoryImpl#createStructType is unstable
- In Progress