Support Questions

Find answers, ask questions, and share your expertise

Hive JDBC Driver appening '.' to my queries?

avatar
New Contributor

I'm encountering a frustrating and somewhat hard to troubleshoot issue with sending queries through the Cloudera Hive Driver implementation in my Spring Batch app.

I have my select statement as follows:

SELECT * FROM table WHERE `table`.`column`=y;

(the above query is generated using a string concat function, though the stacktrace displays the sql query as it should be expected)

ERROR :

SQL state [HY000]; error code [10360]; [Cloudera][JDBC](10360) Column name not found: column.;

For some reason there is a full stop appended to the end of the column name. Why? Googling has yielded no solution

Odd note; This error only occurs every 5-30 of identical queries that my program fires off to hive, so I am struggling to debug at what point this error can occur. It doesn't correlate with my pool size either.

I have attempted to use the UseNativeQuery option in the hive driver but there seems to be no effect on this occurrence with it enabled or disabled.

2 REPLIES 2

avatar
Expert Contributor

You're using the Cloudera driver not the Hortonworks driver so you might not get many responses. How are you using the parameter UseNativeQuery in your JDBC Connection String? I think it should be UseNativeQuery=1 but I don't normally use the Cloudera Driver.

Can you attach an example of your connection string with the hostname anonymized?

avatar
New Contributor

Hello Rory,
I would like to know if you could solve this problem.
I have a similar issue, launch a count simultaneously in several threats using Hive and Cloudera JDBC Driver and y get "[Cloudera][JDBC](10360) Column name not found: column.".
If I launch every thread one by one the process works fine.

 

Caused by: java.sql.SQLException: [Cloudera][JDBC](10360) Column name not found: column.
	at com.cloudera.hiveserver2.exceptions.ExceptionConverter.toSQLException(Unknown Source)
	at com.cloudera.hiveserver2.jdbc.common.SForwardResultSet.findColumn(Unknown Source)
	at com.cloudera.hiveserver2.jdbc.common.SForwardResultSet.getObject(Unknown Source)