Short version:
SELECT * FROM `INFORMATION_SCHEMA`.`TABLES`;
org.apache.drill.common.exceptions.UserRemoteException: SYSTEM ERROR:
IllegalArgumentException: Multiple entries with same key: vessel=JdbcTable
{vessel} and vessel=JdbcTable {vessel}
Long Version:
1) Setup a JDBC driver in Drill to Postgres
2) Create a public foreign table like below in postgres
public | vessel | foreign table | postgres
public | vessel_movement | foreign table | postgres
public | vessel_movement_hist | foreign table | postgres
3) On windows install the MapR ODBC driver
https://drill.apache.org/docs/installing-the-driver-on-windows/
4) Setup an ODBC connection with the MapR
5) Now in the ODBC connections, use the "Drill Explorer"
The Drill explorer tries to run the query
SELECT * FROM `INFORMATION_SCHEMA`.`TABLES`;
This fails with the error
org.apache.drill.common.exceptions.UserRemoteException: SYSTEM ERROR:
IllegalArgumentException: Multiple entries with same key: vessel=JdbcTable
{vessel} and vessel=JdbcTable {vessel}
This is the same problem a was also reported here.
https://stackoverflow.com/questions/47149236/unable-to-query-postgresql-with-apache-drill-1-11-validation-error
This looks like BUG in Drill, not a "use foo.schema" workaround as listed above.
We have tried various ?currentSchema=foo in the postgres driver. Nothing seems
to get rid of the problem. Its Drill+ForeignTable specific.
Has anyone else ran into this?
Erik Anderson
Bloomberg