Support Questions

Find answers, ask questions, and share your expertise
Announcements
Celebrating as our community reaches 100,000 members! Thank you!

Error in Impala ODBC connector

avatar
Expert Contributor

Hi,

 

I have been trying to connect to spotfire using cloudera impala odbc connector 2.5.22.

I am using CDH 5.2 on RHEL 6.5.

 

The security is enabled on the Cloudera cluster:-Kerberos,LDAP,Sentry

 

Sentry works fine in HUE and as well as using impala shell and beeline client.I am able to see the authorized tables.

 

Now i want to connect to spotfire using the cloudera impala connector.

 

I installed 64 bit ODBC Connnctor and tested the connection using SASL (mechansism) username and password giving hostname and port no.

and the database field is left empty,it is tested successfully but in the log files when i see,even though the database field is left empty(or i give the name of any other database) it takes default database, 

 

using sentry i have only access to one database "sentry_test" and not even default.

 

using Spotfire when i connect to my tables,it is connected but abrupty gives an error like:-

 

Could not connect due to an unknown error.

External error:

ERROR [HY000] [Cloudera][ImpalaODBC] (110) Error while executing a query in Impala: [HY000] : AuthorizationException: User 'txxxxx' does not have privileges to access: default.*

 

even if i try to connect to a database i have privilege on it still gives the same error

 

ANy idea why is it redirecting to default database?

 

 

the log file of the impala cloudera connector shows:-

 

Dec 12 14:16:04 INFO 3432 StatementState::InternalPrepare: Preparing query: use sentry_test
Dec 12 14:16:04 INFO 3432 ImpalaDataEngine::Prepare: Trying to parse query: use sentry_test
Dec 12 14:16:04 INFO 3432 ImpalaDataEngine::Prepare: [Cloudera][SQLEngine] (31480) syntax error near 'use<<< ??? >>> sentry_test'.
Dec 12 14:16:04 INFO 3432 ImpalaNativeQueryExecutor::ExecuteQuery: use sentry_test
Dec 12 14:16:04 INFO 3432 Connection::SQLGetInfoW: InfoType: 6
Dec 12 14:16:04 INFO 3432 Connection::SQLGetInfoW: InfoType: 18
Dec 12 14:16:04 INFO 3432 Statement::SQLGetStmtAttrW: Attribute: 10010
Dec 12 14:16:04 INFO 3432 Statement::SQLGetStmtAttrW: Attribute: 10011
Dec 12 14:16:04 INFO 3432 Statement::SQLGetStmtAttrW: Attribute: 10012
Dec 12 14:16:04 INFO 3432 Statement::SQLGetStmtAttrW: Attribute: 10013
Dec 12 14:16:04 INFO 3432 Statement::SQLSetStmtAttrW: Attribute: 0
Dec 12 14:16:04 INFO 3432 Statement::SQLSetStmtAttrW: Attribute: 1228
Dec 12 14:16:04 INFO 3432 StatementAttributes::SetAttribute: Invalid attribute: 1228
Dec 12 14:16:04 ERROR 3432 Statement::SQLSetStmtAttrW: [Cloudera][ODBC] (10210) Attribute identifier invalid or not supported: 1228
Dec 12 14:16:04 INFO 3432 Statement::SQLSetStmtAttrW: Attribute: 1227
Dec 12 14:16:04 INFO 3432 StatementAttributes::SetAttribute: Invalid attribute: 1227
Dec 12 14:16:04 ERROR 3432 Statement::SQLSetStmtAttrW: [Cloudera][ODBC] (10210) Attribute identifier invalid or not supported: 1227
Dec 12 14:16:04 INFO 3432 Connection::ExecuteCatalogFunction: SQLTables
Dec 12 14:16:05 ERROR 3432 Statement::ExecuteCatalogFunction: [Cloudera][ImpalaODBC] (110) Error while executing a query in Impala: [HY000] : AuthorizationException: User 'tsingh12' does not have privileges to access: default.*
Dec 12 14:16:05 INFO 3432 Connection::SQLGetInfoW: InfoType: 6
Dec 12 14:16:05 INFO 3432 Connection::SQLGetConnectAttr: Attribute: 1209
Dec 12 14:16:05 INFO 3432 Connection::SQLGetInfoW: InfoType: 1
Dec 12 14:16:38 INFO 11980 Environment::SQLSetEnvAttr: Attribute: 200
Dec 12 14:16:39 WARN 11980 ImpalaClient::OpenSession: The Database was not valid. Using the default database instead.
Dec 12 14:17:13 INFO 11980 Environment::SQLSetEnvAttr: Attribute: 200

 

ImpalaClouderaConnector.jpgConnectionSuccessful.jpgSpotfireImpalaConnection.jpgSpotfireImpalaError.jpg

 

 

4 REPLIES 4

avatar
New Contributor

Hi,

I have encountered the same issue.

Does anybody have any fruitful idea?

Thanks,

Gabor

avatar
Expert Contributor

Hi,

 

Well this is a spotfire Issue,i had numerous calls with tibco guys and they said its an issue from their side.

Although Tableau works fine in this scenario.

avatar
New Contributor

Hi,

Thank you for the info. 

Let me share with you my findings during the past days.

I have a Cloudera 5.4.3 environment with Hive and Impala set up. On the other side there is a Spotfire 6.5 server.

Related to the Cloudera ODBC driver, I have the 2.5.15 installed (there is some inconsistency, because if you download from the Cloudera site the 2.5.15, in the Programs and Features it says 2.5.14, however in the ODBC administrator it is 2.5.15). For our Cloudera Impala we do not have authentication at the moment and I am able to retrieve data in Spotfire, using the In-DB way. I also downloaded the Impala JDBC, put it on the Spotfire server, set the data source template in Spotfire configuration. Finally I am able to create Information Links as well.

If I want to connect from our customer's Spotfire server to our customer's Cloudera, I receive the error message.

So I can say it is working, but something is wrong with the authentication part. I am going to test different scenarios accordingly and exploring the differences between our and the customer's environment. I will keep this thread updated.

avatar
New Contributor

Hi,

I too encountered the same error, but here I'm using MS Access or Excel to connect to Hadoop via Impala ODBC driver a 32-bit version.

Any pointers will be appreciated.