Arina Ielchiieva created DRILL-4903: ---------------------------------------
Summary: Implicit columns are shown when Jdbc plugin is enabled Key: DRILL-4903 URL: https://issues.apache.org/jira/browse/DRILL-4903 Project: Apache Drill Issue Type: Bug Affects Versions: 1.8.0 Reporter: Arina Ielchiieva Priority: Minor Fix For: Future When any Jdbc Plugin enabled (ex: MySql) implicit columns are returned as part of select * query. Simple json: {noformat} {id: 1, name: "Bob"} {noformat} When Jdbc plugin is enabled: {noformat} 0: jdbc:drill:zk=local> select * from dfs.`/home/osboxes/files/simple.json`; +----------------------------------+----------------------+--------------+---------+-----+-------+ | fqn | filepath | filename | suffix | id | name | +----------------------------------+----------------------+--------------+---------+-----+-------+ | /home/osboxes/files/simple.json | /home/osboxes/files | simple.json | json | 1 | Bob | +----------------------------------+----------------------+--------------+---------+-----+-------+ 1 row selected (0.203 seconds) 0: jdbc:drill:zk=local> explain plan for select * from dfs.`/home/osboxes/files/simple.json`; +------+------+ | text | json | +------+------+ | 00-00 Screen 00-01 Scan(groupscan=[EasyGroupScan [selectionRoot=file:/home/osboxes/files/simple.json, numFiles=1, columns=[`*`], files=[file:/home/osboxes/files/simple.json]]]) | { {noformat} When Jdbc plugin is disabled: {noformat} 0: jdbc:drill:zk=local> select * from dfs.`/home/osboxes/files/simple.json`; +-----+-------+ | id | name | +-----+-------+ | 1 | Bob | +-----+-------+ 1 row selected (0.547 seconds) 0: jdbc:drill:zk=local> explain plan for select * from dfs.`/home/osboxes/files/simple.json`; +------+------+ | text | json | +------+------+ | 00-00 Screen 00-01 Project(*=[$0]) 00-02 Scan(groupscan=[EasyGroupScan [selectionRoot=file:/home/osboxes/files/simple.json, numFiles=1, columns=[`*`], files=[file:/home/osboxes/files/simple.json]]]) {noformat} The problem is that implicit columns are removed from queries with select * clause during project stage. But JdbcStoragePlugin adds ProjectRemoveRules.class to rules which simplifies query plan and removes project stage. https://github.com/apache/drill/blob/master/contrib/storage-jdbc/src/main/java/org/apache/drill/exec/store/jdbc/JdbcStoragePlugin.java#L140 -- This message was sent by Atlassian JIRA (v6.3.4#6332)