[
https://issues.apache.org/jira/browse/CALCITE-522?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14501042#comment-14501042
]
Xavier FH Leong commented on CALCITE-522:
-----------------------------------------
I originally put all the properties in a map during a static block for the
ENUM, but I figure that's another data structure to maintain for that 4
properties.
I'll removed the interface instead of marking them DEPRECATED.
I also more pro on returning what you ask for on the Avatica side, that's why I
break up the request to have a parameter to indicate the ask and return just
what you ask. Instead of giving you the whole stack (as you can see, property
like SqlKeywords can be lengthy). But caching the response seem to be a good
idea.
I thought the DatabaseProperty class serve as a POJO to encapsulate the payload
(may include type in future), map works as well, but map does require more
memory footprint and serialized with the same (key,value) pair (not able to
extend to include type if needed).
But if we concluded to transfer 1 time property stack, map serve well.
> In remote JDBC driver, transmit static database properties as a map
> -------------------------------------------------------------------
>
> Key: CALCITE-522
> URL: https://issues.apache.org/jira/browse/CALCITE-522
> Project: Calcite
> Issue Type: Bug
> Reporter: Julian Hyde
> Assignee: Julian Hyde
>
> A lot of DatabaseMetaData methods are not parameterized, and give the same
> answer every time. Some examples:
> * allProceduresAreCallable
> * getUserName
> * isReadOnly
> * getDatabaseProductName
> * getDatabaseProductVersion
> * getDriverName
> * getDriverVersion
> * getDriverMajorVersion
> * getDriverMinorVersion
> * getSqlKeywords
> * getNumericFunctions
> * getStringFunctions
> * getSystemFunctions
> * getTimeDateFunctions
> This task would define an enum of properties, add a method to Meta that
> returns (property, value) map.
> See DatabaseMetaData and Connection for the full list.
> Obsolete the following Meta methods:
> * getSqlKeywords
> * getNumericFunctions
> * getStringFunctions
> * getSystemFunctions
> * getTimeDateFunctions
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)