1

I have an Impala Kudu database secured via Kerberos. Even if I specify the database name in connection string, this will be ignored and I need to use it in my query (which is annoying because I have a lot of queries generated dynamically).

Due of database missing from the query, I get the error "User X does not have privileges to execute 'SELECT' on default.table".

connectionString = 'jdbc:impala://domain:port/databaseName;AuthMech=1;KrbRealm=NAME;KrbHostFQDN=HOST;...'

query = 'SELECT * FROM tableName;'

When time to execute the query is coming, because connectionString ignores my database set before, the location will go down one level, and will try to access 'default' db, where of course, the user don't have privileges.

User 'username@group' does not have privileges to execute 'SELECT' on: default.tableName

So, a solution is to use dbName.tableName everywhere in my query. But I hope I can do it from connectionString, because I don't have joins between databases right now, and I don't need to specify it explicitly in my query.

mazaneicha
  • 8,794
  • 4
  • 33
  • 52
AlleXyS
  • 2,476
  • 2
  • 17
  • 37

0 Answers0