GitHub user laurentgo opened a pull request:
https://github.com/apache/drill/pull/764
DRILL-5301: Server metadata API
Add a Server metadata API to the User protocol, to query server support of
various SQL features.
Add support to the client (DrillClient) to query this information.
Add support to the JDBC driver to query this information, if the server
supports the new API, or fallback to the previous behaviour (rely on Avatica
defaults) otherwise.
Add support to the Server metadata API to the C++ client if available. If
the API is not supported to the server, fallback to the previous hard-coded
values.
You can merge this pull request into a Git repository by running:
$ git pull https://github.com/laurentgo/drill laurent/server-meta
Alternatively you can review and apply these changes as the patch at:
https://github.com/apache/drill/pull/764.patch
To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:
This closes #764
----
commit 48bf728c88b8244c0fc51ae8856d0f786bd9e986
Author: Laurent Goujon <[email protected]>
Date: 2016-11-04T20:31:19Z
Refactor DrillCursor
Refactor DrillCursor to be more self-contained.
commit 6583d69df3b972270e146e53ab2ddcf9c4aff93c
Author: Laurent Goujon <[email protected]>
Date: 2016-11-04T20:32:44Z
DRILL-4730: Update JDBC DatabaseMetaData implementation to use new Metadata
APIs
Update JDBC driver to use Metadata APIs instead of executing SQL queries
commit 17ce38a44d098e744620a28b25c93fd352e7c76d
Author: Laurent Goujon <[email protected]>
Date: 2016-11-05T00:36:42Z
DRILL-4994: Add back JDBC prepared statement for older servers
When the JDBC client is connected to an older Drill server, it always
attempted to use server-side prepared statement with no fallback.
With this change, client will check server version and will fallback to the
previous client-side prepared statement (which is still limited to only
execute
queries and does not provide metadata).
commit 5048bb650bf3a42e9f7920727e19e33ae59f0188
Author: Laurent Goujon <[email protected]>
Date: 2017-02-24T23:41:07Z
DRILL-5301: Server metadata API
Add a Server metadata API to the User protocol, to query server support
of various SQL features.
Add support to the client (DrillClient) to query this information.
Add support to the JDBC driver to query this information, if the server
supports
the new API, or fallback to the previous behaviour (rely on Avatica
defaults) otherwise.
commit d912267efad379e3730f800bc7b3af57bee2aa06
Author: Laurent Goujon <[email protected]>
Date: 2017-02-26T18:23:59Z
DRILL-5301: Add C++ client support for Server metadata API
Add support to the Server metadata API to the C++ client if
available. If the API is not supported to the server, fallback
to the previous hard-coded values.
Update the querySubmitter example program to query the information.
----
---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at [email protected] or file a JIRA ticket
with INFRA.
---