Richard Sinden created IMPALA-7041:
--------------------------------------

             Summary: Incorrect error messages when using bind variables in ODBC
                 Key: IMPALA-7041
                 URL: https://issues.apache.org/jira/browse/IMPALA-7041
             Project: IMPALA
          Issue Type: Bug
          Components: Clients
    Affects Versions: Impala 2.10.0
         Environment: Windows ODBC driver 2.5.41.1029
            Reporter: Richard Sinden


If I run a valid query via ODBC/ADO.NET using a bind variable then it works fine

e.g.

 
{code:java}
SELECT destination, starttime, duration, entity
FROM valid_table 
WHERE entity = ?
{code}
However, if I make the query invalid by making the table name or a column name 
incorrect then I get the following error which appears to suggest that the ? 
character is the problem.

 

 
{noformat}
ERROR [HY000] [Cloudera][ImpalaODBC] (110) Error while executing a query in 
Impala: [HY000] : AnalysisException: Syntax error in line 3:
WHERE entity = ?
               ^
Encountered: Unexpected character
Expected: CASE, CAST, DEFAULT, EXISTS, FALSE, IF, INTERVAL, NOT, NULL, REPLACE, 
TRUNCATE, TRUE, IDENTIFIER{noformat}
If I replace the bind variable with a literal string:

 

 
{code:java}
SELECT destination, starttime, duration, entity
FROM invalid_table 
WHERE entity = '1234'
{code}
Then I get the error I would expect:

 

 
{noformat}
ERROR [HY000] [Cloudera][ImpalaODBC] (110) Error while executing a query in 
Impala: [HY000] : AnalysisException: Could not resolve table reference: 
'invalid_table'{noformat}
I'm working on a system where each deployment has some custom data sets and the 
table name can be configured by the user. If this is incorrect for any reason 
then this error message makes the issue very difficult for them to debug.

 



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to