It certainly does look like an issue with encoding, but you can see in his code the query he is trying to run. There are not unicode characters that I can see. It is possible that this is getting corrupted somehow in the ODBC driver. Please file a JIRA with this case, I don't have a suggestion for a fix myself, but it is something we should take a look at soon.
employee_query = """SELECT position_title, COUNT( employee_id ) as employee_count FROM cp.`employee.json` GROUP BY position_title ORDER BY COUNT( employee_id ) DESC""" On Wed, Jul 8, 2015 at 10:52 AM, Abhishek Girish <[email protected]> wrote: > I'm not quite sure what is happening, but I could guess it's due to unicode > characters in the query text. I faced a somewhat similar issue before - > DRILL-987 <https://issues.apache.org/jira/browse/DRILL-987> > > Just to give it a try, can you copy your query text into a text editor that > can display invisible characters (such as TextWrangler) or rewrite the > query to get rid of these? > > Let us know if this resolves. Others can comment if they know better. > > -Abhishek > > On Tue, Jul 7, 2015 at 2:21 PM, Charles Givre <[email protected]> wrote: > > > All, > > I'm trying to write some python code to interact with Drill and I'm > getting > > a strange error. I'm able to connect, and the SQL query is valid, but > the > > query does not execute. I tried the query via the web interface, and it > > worked...I've tried googling and not really gotten anywhere. I'm running > > Drill 1.0.0. Any help would be greatly appreciated. > > Thanks, > > -Charles > > > > > > import pyodbc > > import pandas as pd > > > > MY_DSN = > > > > > "DRIVER=/opt/mapr/drillodbc/lib/universal/libmaprdrillodbc.dylib;Host=localhost;Port=31010;ConnectionType=Direct;Catalog=Drill;Schema=mfs.views;AuthenticationType=No > > Authentication" > > conn = pyodbc.connect(MY_DSN, autocommit=True) > > > > employee_query = """SELECT position_title, COUNT( employee_id ) as > > employee_count > > FROM cp.`employee.json` > > GROUP BY position_title > > ORDER BY COUNT( employee_id ) DESC""" > > > > data = pd.read_sql( employee_query, conn ) > > > > > > Error: ('HY000', '[HY000] [MapR][Drill] (1040) Drill failed to execute > > the query: > > > ������������������������������\U000a0074�����������\U000a0060������������\n\n[30027]Query > > execution error. Details:[ \nPARSE ERROR: Lexical error at line 1, > > column 1. Encoun (1040) (SQLExecDirectW)') > > > > During handling of the above exception, another exception occurred: > > > > > > > > DatabaseError: Execution failed on sql 'SELECT position_title, COUNT( > > employee_id ) as employee_count > > FROM cp.`employee.json` > > GROUP BY position_title > > ': ('HY000', '[HY000] [MapR][Drill] (1040) Drill failed to execute the > > query: > > > ������������������������������\U000a0074�����������\U000a0060������������\n\n[30027]Query > > execution error. Details:[ \nPARSE ERROR: Lexical error at line 1, > > column 1. Encoun (1040) (SQLExecDirectW)') > > >
