Quoting error when executing a Drill query from JetBrains JDBC driver

139 Views Asked by At

I have a custom datasource driver in JetBrans (Rider 2019.2) which uses apache-drill-1.17.jar JDBC driver (official).

Using the driver results in this error:

SELECT * FROM dfs.my_parquets."Test" limit 10;
--
PARSE ERROR: Lexical error at line 1, column 19. Encountered: "`" (96), after : ""  
SQL Query: ALTER SESSION SET `exec.query.max_rows`=501 

From the error is obvious that Rider tries to execute this hidden query with backticked identifiers:

ALTER SESSION SET `exec.query.max_rows`=501

The problem is that the quoting_identifiers in target drill are not set to ` (backtick) but to " (double quote).

As a connection string I'm using this: jdbc:drill:drillbit=my-drill-instance;quoting_identifiers='"'

Is there a way to tell the driver to use double quotes in the hidden queries?

1

There are 1 best solutions below

3
On

Manual shows, that option should be passed without quotes:

jdbc:drill:zk=local;quoting_identifiers=[

jdbc:drill:drillbit=my-drill-instance;quoting_identifiers="