[ https://issues.apache.org/jira/browse/HIVE-3015?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Ashutosh Chauhan updated HIVE-3015: ----------------------------------- Assignee: Navis > org.apache.hadoop.hive.jdbc.HiveResultSetMetaData.getColumnClassName Method > not supported > ----------------------------------------------------------------------------------------- > > Key: HIVE-3015 > URL: https://issues.apache.org/jira/browse/HIVE-3015 > Project: Hive > Issue Type: Wish > Components: JDBC > Affects Versions: 0.7.1 > Environment: JDK 1.6, Hadoop 0.20.2-cdh3u3, Hive 0.7.1-cdh3u3, > myBatis 3.1.1 > Reporter: Keigun S. Moon > Assignee: Navis > > When I use Hive JDBC driver, > If I call > org.apache.hadoop.hive.jdbc.HiveResultSetMetaData.getColumnClassName() method, > it throws exception like this > java.sql.SQLException: Method not supported > at > org.apache.hadoop.hive.jdbc.HiveResultSetMetaData.getColumnClassName(HiveResultSetMetaData.java:47) > at com.ucloud.log.app.hive.HiveService.main(HiveService.java:54) > I tested hive with myBatis. > When myBatis parsed ResultSet, it used getColumnClassName() method to get > column name of Hive Table. > This is unit test error message. > ############################################ > Cause: java.sql.SQLException: Method not supported > ; uncategorized SQLException for SQL []; SQL state [null]; error code [0]; > Method not supported; nested exception is java.sql.SQLException: Method not > supported > at > org.springframework.jdbc.support.AbstractFallbackSQLExceptionTranslator.translate(AbstractFallbackSQLExceptionTranslator.java:83) > at > org.springframework.jdbc.support.AbstractFallbackSQLExceptionTranslator.translate(AbstractFallbackSQLExceptionTranslator.java:80) > at > org.springframework.jdbc.support.AbstractFallbackSQLExceptionTranslator.translate(AbstractFallbackSQLExceptionTranslator.java:80) > at > org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:71) > at > org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:365) > at $Proxy10.selectOne(Unknown Source) > at > org.mybatis.spring.SqlSessionTemplate.selectOne(SqlSessionTemplate.java:160) > at org.apache.ibatis.binding.MapperMethod.execute(MapperMethod.java:95) > at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:40) > at $Proxy12.selectTestById(Unknown Source) > at com.ucloud.log.app.test.HiveTest.selectHive(HiveTest.java:40) > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) > at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) > at java.lang.reflect.Method.invoke(Method.java:597) > at > org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:45) > at > org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:15) > at > org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:42) > at > org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:20) > at > org.springframework.test.context.junit4.statements.RunBeforeTestMethodCallbacks.evaluate(RunBeforeTestMethodCallbacks.java:74) > at > org.springframework.test.context.junit4.statements.RunAfterTestMethodCallbacks.evaluate(RunAfterTestMethodCallbacks.java:83) > at > org.springframework.test.context.junit4.statements.SpringRepeat.evaluate(SpringRepeat.java:72) > at > org.springframework.test.context.junit4.SpringJUnit4ClassRunner.runChild(SpringJUnit4ClassRunner.java:231) > at > org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:47) > at org.junit.runners.ParentRunner$3.run(ParentRunner.java:231) > at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:60) > at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:229) > at org.junit.runners.ParentRunner.access$000(ParentRunner.java:50) > at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:222) > at > org.springframework.test.context.junit4.statements.RunBeforeTestClassCallbacks.evaluate(RunBeforeTestClassCallbacks.java:61) > at > org.springframework.test.context.junit4.statements.RunAfterTestClassCallbacks.evaluate(RunAfterTestClassCallbacks.java:71) > at org.junit.runners.ParentRunner.run(ParentRunner.java:300) > at > org.springframework.test.context.junit4.SpringJUnit4ClassRunner.run(SpringJUnit4ClassRunner.java:174) > at > org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestReference.java:50) > at > org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38) > at > org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:467) > at > org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:683) > at > org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:390) > at > org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:197) > Caused by: java.sql.SQLException: Method not supported > at > org.apache.hadoop.hive.jdbc.HiveResultSetMetaData.getColumnClassName(HiveResultSetMetaData.java:47) > at > org.apache.ibatis.executor.resultset.FastResultSetHandler$ResultColumnCache.<init>(FastResultSetHandler.java:585) > at > org.apache.ibatis.executor.resultset.FastResultSetHandler.handleResultSets(FastResultSetHandler.java:151) > at > org.apache.ibatis.executor.statement.PreparedStatementHandler.query(PreparedStatementHandler.java:57) > at > org.apache.ibatis.executor.statement.RoutingStatementHandler.query(RoutingStatementHandler.java:70) > at > org.apache.ibatis.executor.ReuseExecutor.doQuery(ReuseExecutor.java:54) > at > org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:267) > at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:141) > at > org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:105) > at > org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:81) > at > org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:101) > at > org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:95) > at > org.apache.ibatis.session.defaults.DefaultSqlSession.selectOne(DefaultSqlSession.java:59) > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) > at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) > at java.lang.reflect.Method.invoke(Method.java:597) > at > org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:355) > ... 34 more > #################################################### > Can you fix this for collaboration with myBatis? -- This message was sent by Atlassian JIRA (v6.1.5#6160)