[ https://issues.apache.org/jira/browse/HIVE-6136?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Brock Noland updated HIVE-6136: ------------------------------- Description: Hive 0.12 with datanucleus 3.2.1 generates invalid SQL syntax if the metastore is configured with DB2. To reproduce the issue, simply create a table and drop it using Hive CLI: create table test(i1 int); drop table test; Drop will fail and this is the stacktrace: {noformat} com.ibm.db2.jcc.am.SqlSyntaxErrorException: DB2 SQL Error: SQLCODE=-206, SQLSTATE=42703, SQLERRMC=SUBQ.A0.CREATE_TIME, DRIVER=4.16.53 at com.ibm.db2.jcc.am.fd.a(fd.java:739) at com.ibm.db2.jcc.am.fd.a(fd.java:60) at com.ibm.db2.jcc.am.fd.a(fd.java:127) at com.ibm.db2.jcc.am.to.c(to.java:2771) at com.ibm.db2.jcc.am.to.d(to.java:2759) at com.ibm.db2.jcc.am.to.a(to.java:2192) at com.ibm.db2.jcc.am.uo.a(uo.java:7827) at com.ibm.db2.jcc.t4.ab.h(ab.java:141) at com.ibm.db2.jcc.t4.ab.b(ab.java:41) at com.ibm.db2.jcc.t4.o.a(o.java:32) at com.ibm.db2.jcc.t4.tb.i(tb.java:145) at com.ibm.db2.jcc.am.to.kb(to.java:2161) at com.ibm.db2.jcc.am.uo.wc(uo.java:3657) at com.ibm.db2.jcc.am.uo.b(uo.java:4454) at com.ibm.db2.jcc.am.uo.jc(uo.java:760) at com.ibm.db2.jcc.am.uo.executeQuery(uo.java:725) at com.jolbox.bonecp.PreparedStatementHandle.executeQuery(PreparedStatementHandle.java:172) at org.datanucleus.store.rdbms.ParamLoggingPreparedStatement.executeQuery(ParamLoggingPreparedStatement.java:381) at org.datanucleus.store.rdbms.SQLController.executeStatementQuery(SQLController.java:504) at org.datanucleus.store.rdbms.query.JDOQLQuery.performExecute(JDOQLQuery.java:637) at org.datanucleus.store.query.Query.executeQuery(Query.java:1786) at org.datanucleus.store.query.Query.executeWithArray(Query.java:1672) at org.datanucleus.api.jdo.JDOQuery.execute(JDOQuery.java:266) at org.apache.hadoop.hive.metastore.ObjectStore.listMPartitions(ObjectStore.java:1698) at org.apache.hadoop.hive.metastore.ObjectStore.getPartitionsInternal(ObjectStore.java:1428) at org.apache.hadoop.hive.metastore.ObjectStore.getPartitions(ObjectStore.java:1402) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:60) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:37) at java.lang.reflect.Method.invoke(Method.java:611) at org.apache.hadoop.hive.metastore.RetryingRawStore.invoke(RetryingRawStore.java:124) at com.sun.proxy.$Proxy7.getPartitions(Unknown Source) at org.apache.hadoop.hive.metastore.HiveMetaStore$HMSHandler.dropPartitionsAndGetLocations(HiveMetaStore.java:1286) at org.apache.hadoop.hive.metastore.HiveMetaStore$HMSHandler.drop_table_core(HiveMetaStore.java:1189) at org.apache.hadoop.hive.metastore.HiveMetaStore$HMSHandler.drop_table_with_environment_context(HiveMetaStore.java:1328) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:60) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.j at java.lang.reflect.Method.invoke(Method.java:611) at org.apache.hadoop.hive.metastore.RetryingHMSHandler.invoke(RetryingHMSHandler. at com.sun.proxy.$Proxy8.drop_table_with_environment_context(Unknown Source) at org.apache.hadoop.hive.metastore.HiveMetaStoreClient.dropTable(HiveMetaStoreCl at org.apache.hadoop.hive.metastore.HiveMetaStoreClient.dropTable(HiveMetaStoreCl at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:60) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.j at java.lang.reflect.Method.invoke(Method.java:611) at org.apache.hadoop.hive.metastore.RetryingMetaStoreClient.invoke(RetryingMetaSt at com.sun.proxy.$Proxy9.dropTable(Unknown Source) at org.apache.hadoop.hive.ql.metadata.Hive.dropTable(Hive.java:869) at org.apache.hadoop.hive.ql.metadata.Hive.dropTable(Hive.java:836) at org.apache.hadoop.hive.ql.exec.DDLTask.dropTable(DDLTask.java:3329) at org.apache.hadoop.hive.ql.exec.DDLTask.execute(DDLTask.java:277) at org.apache.hadoop.hive.ql.exec.Task.executeTask(Task.java:151) at org.apache.hadoop.hive.ql.exec.TaskRunner.runSequential(TaskRunner.java:65) at org.apache.hadoop.hive.ql.Driver.launchTask(Driver.java:1437) at org.apache.hadoop.hive.ql.Driver.execute(Driver.java:1215) at org.apache.hadoop.hive.ql.Driver.runInternal(Driver.java:1043) at org.apache.hadoop.hive.ql.Driver.run(Driver.java:911) at org.apache.hadoop.hive.cli.CliDriver.processLocalCmd(CliDriver.java:259) at org.apache.hadoop.hive.cli.CliDriver.processCmd(CliDriver.java:216) at org.apache.hadoop.hive.cli.CliDriver.processLine(CliDriver.java:413) at org.apache.hadoop.hive.cli.CliDriver.executeDriver(CliDriver.java:781) at org.apache.hadoop.hive.cli.CliDriver.run(CliDriver.java:675) at org.apache.hadoop.hive.cli.CliDriver.main(CliDriver.java:614) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:60) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.j at java.lang.reflect.Method.invoke(Method.java:611) at org.apache.hadoop.util.RunJar.main(RunJar.java:212) {noformat} Other SQL commands like ALTER also fail. Since this might be a bug in datanucleus itself, we also submitted a JIRA in datanucleus (see http://www.datanucleus.org/servlet/jira/browse/NUCRDBMS-736), but Hive needs to pick up a newer version of datanucleus once the problem is fixed: was: Hive 0.12 with datanucleus 3.2.1 generates invalid SQL syntax if the metastore is configured with DB2. To reproduce the issue, simply create a table and drop it using Hive CLI: create table test(i1 int); drop table test; Drop will fail and this is the stacktrace: com.ibm.db2.jcc.am.SqlSyntaxErrorException: DB2 SQL Error: SQLCODE=-206, SQLSTATE=42703, SQLERRMC=SUBQ.A0.CREATE_TIME, DRIVER=4.16.53 at com.ibm.db2.jcc.am.fd.a(fd.java:739) at com.ibm.db2.jcc.am.fd.a(fd.java:60) at com.ibm.db2.jcc.am.fd.a(fd.java:127) at com.ibm.db2.jcc.am.to.c(to.java:2771) at com.ibm.db2.jcc.am.to.d(to.java:2759) at com.ibm.db2.jcc.am.to.a(to.java:2192) at com.ibm.db2.jcc.am.uo.a(uo.java:7827) at com.ibm.db2.jcc.t4.ab.h(ab.java:141) at com.ibm.db2.jcc.t4.ab.b(ab.java:41) at com.ibm.db2.jcc.t4.o.a(o.java:32) at com.ibm.db2.jcc.t4.tb.i(tb.java:145) at com.ibm.db2.jcc.am.to.kb(to.java:2161) at com.ibm.db2.jcc.am.uo.wc(uo.java:3657) at com.ibm.db2.jcc.am.uo.b(uo.java:4454) at com.ibm.db2.jcc.am.uo.jc(uo.java:760) at com.ibm.db2.jcc.am.uo.executeQuery(uo.java:725) at com.jolbox.bonecp.PreparedStatementHandle.executeQuery(PreparedStatementHandle.java:172) at org.datanucleus.store.rdbms.ParamLoggingPreparedStatement.executeQuery(ParamLoggingPreparedStatement.java:381) at org.datanucleus.store.rdbms.SQLController.executeStatementQuery(SQLController.java:504) at org.datanucleus.store.rdbms.query.JDOQLQuery.performExecute(JDOQLQuery.java:637) at org.datanucleus.store.query.Query.executeQuery(Query.java:1786) at org.datanucleus.store.query.Query.executeWithArray(Query.java:1672) at org.datanucleus.api.jdo.JDOQuery.execute(JDOQuery.java:266) at org.apache.hadoop.hive.metastore.ObjectStore.listMPartitions(ObjectStore.java:1698) at org.apache.hadoop.hive.metastore.ObjectStore.getPartitionsInternal(ObjectStore.java:1428) at org.apache.hadoop.hive.metastore.ObjectStore.getPartitions(ObjectStore.java:1402) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:60) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:37) at java.lang.reflect.Method.invoke(Method.java:611) at org.apache.hadoop.hive.metastore.RetryingRawStore.invoke(RetryingRawStore.java:124) at com.sun.proxy.$Proxy7.getPartitions(Unknown Source) at org.apache.hadoop.hive.metastore.HiveMetaStore$HMSHandler.dropPartitionsAndGetLocations(HiveMetaStore.java:1286) at org.apache.hadoop.hive.metastore.HiveMetaStore$HMSHandler.drop_table_core(HiveMetaStore.java:1189) at org.apache.hadoop.hive.metastore.HiveMetaStore$HMSHandler.drop_table_with_environment_context(HiveMetaStore.java:1328) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:60) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.j at java.lang.reflect.Method.invoke(Method.java:611) at org.apache.hadoop.hive.metastore.RetryingHMSHandler.invoke(RetryingHMSHandler. at com.sun.proxy.$Proxy8.drop_table_with_environment_context(Unknown Source) at org.apache.hadoop.hive.metastore.HiveMetaStoreClient.dropTable(HiveMetaStoreCl at org.apache.hadoop.hive.metastore.HiveMetaStoreClient.dropTable(HiveMetaStoreCl at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:60) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.j at java.lang.reflect.Method.invoke(Method.java:611) at org.apache.hadoop.hive.metastore.RetryingMetaStoreClient.invoke(RetryingMetaSt at com.sun.proxy.$Proxy9.dropTable(Unknown Source) at org.apache.hadoop.hive.ql.metadata.Hive.dropTable(Hive.java:869) at org.apache.hadoop.hive.ql.metadata.Hive.dropTable(Hive.java:836) at org.apache.hadoop.hive.ql.exec.DDLTask.dropTable(DDLTask.java:3329) at org.apache.hadoop.hive.ql.exec.DDLTask.execute(DDLTask.java:277) at org.apache.hadoop.hive.ql.exec.Task.executeTask(Task.java:151) at org.apache.hadoop.hive.ql.exec.TaskRunner.runSequential(TaskRunner.java:65) at org.apache.hadoop.hive.ql.Driver.launchTask(Driver.java:1437) at org.apache.hadoop.hive.ql.Driver.execute(Driver.java:1215) at org.apache.hadoop.hive.ql.Driver.runInternal(Driver.java:1043) at org.apache.hadoop.hive.ql.Driver.run(Driver.java:911) at org.apache.hadoop.hive.cli.CliDriver.processLocalCmd(CliDriver.java:259) at org.apache.hadoop.hive.cli.CliDriver.processCmd(CliDriver.java:216) at org.apache.hadoop.hive.cli.CliDriver.processLine(CliDriver.java:413) at org.apache.hadoop.hive.cli.CliDriver.executeDriver(CliDriver.java:781) at org.apache.hadoop.hive.cli.CliDriver.run(CliDriver.java:675) at org.apache.hadoop.hive.cli.CliDriver.main(CliDriver.java:614) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:60) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.j at java.lang.reflect.Method.invoke(Method.java:611) at org.apache.hadoop.util.RunJar.main(RunJar.java:212) Other SQL commands like ALTER also fail. Since this might be a bug in datanucleus itself, we also submitted a JIRA in datanucleus (see http://www.datanucleus.org/servlet/jira/browse/NUCRDBMS-736), but Hive needs to pick up a newer version of datanucleus once the problem is fixed: > Hive metastore configured with DB2 LUW doesn't work > --------------------------------------------------- > > Key: HIVE-6136 > URL: https://issues.apache.org/jira/browse/HIVE-6136 > Project: Hive > Issue Type: Bug > Components: Metastore > Affects Versions: 0.12.0 > Reporter: Thomas Friedrich > Attachments: hive.log > > > Hive 0.12 with datanucleus 3.2.1 generates invalid SQL syntax if the > metastore is configured with DB2. > To reproduce the issue, simply create a table and drop it using Hive CLI: > create table test(i1 int); > drop table test; > Drop will fail and this is the stacktrace: > {noformat} > com.ibm.db2.jcc.am.SqlSyntaxErrorException: DB2 SQL Error: SQLCODE=-206, > SQLSTATE=42703, SQLERRMC=SUBQ.A0.CREATE_TIME, DRIVER=4.16.53 > at com.ibm.db2.jcc.am.fd.a(fd.java:739) > at com.ibm.db2.jcc.am.fd.a(fd.java:60) > at com.ibm.db2.jcc.am.fd.a(fd.java:127) > at com.ibm.db2.jcc.am.to.c(to.java:2771) > at com.ibm.db2.jcc.am.to.d(to.java:2759) > at com.ibm.db2.jcc.am.to.a(to.java:2192) > at com.ibm.db2.jcc.am.uo.a(uo.java:7827) > at com.ibm.db2.jcc.t4.ab.h(ab.java:141) > at com.ibm.db2.jcc.t4.ab.b(ab.java:41) > at com.ibm.db2.jcc.t4.o.a(o.java:32) > at com.ibm.db2.jcc.t4.tb.i(tb.java:145) > at com.ibm.db2.jcc.am.to.kb(to.java:2161) > at com.ibm.db2.jcc.am.uo.wc(uo.java:3657) > at com.ibm.db2.jcc.am.uo.b(uo.java:4454) > at com.ibm.db2.jcc.am.uo.jc(uo.java:760) > at com.ibm.db2.jcc.am.uo.executeQuery(uo.java:725) > at > com.jolbox.bonecp.PreparedStatementHandle.executeQuery(PreparedStatementHandle.java:172) > at > org.datanucleus.store.rdbms.ParamLoggingPreparedStatement.executeQuery(ParamLoggingPreparedStatement.java:381) > at > org.datanucleus.store.rdbms.SQLController.executeStatementQuery(SQLController.java:504) > at > org.datanucleus.store.rdbms.query.JDOQLQuery.performExecute(JDOQLQuery.java:637) > at org.datanucleus.store.query.Query.executeQuery(Query.java:1786) > at org.datanucleus.store.query.Query.executeWithArray(Query.java:1672) > at org.datanucleus.api.jdo.JDOQuery.execute(JDOQuery.java:266) > at > org.apache.hadoop.hive.metastore.ObjectStore.listMPartitions(ObjectStore.java:1698) > at > org.apache.hadoop.hive.metastore.ObjectStore.getPartitionsInternal(ObjectStore.java:1428) > at > org.apache.hadoop.hive.metastore.ObjectStore.getPartitions(ObjectStore.java:1402) > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:60) > at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:37) > at java.lang.reflect.Method.invoke(Method.java:611) > at > org.apache.hadoop.hive.metastore.RetryingRawStore.invoke(RetryingRawStore.java:124) > at com.sun.proxy.$Proxy7.getPartitions(Unknown Source) > at > org.apache.hadoop.hive.metastore.HiveMetaStore$HMSHandler.dropPartitionsAndGetLocations(HiveMetaStore.java:1286) > at > org.apache.hadoop.hive.metastore.HiveMetaStore$HMSHandler.drop_table_core(HiveMetaStore.java:1189) > at > org.apache.hadoop.hive.metastore.HiveMetaStore$HMSHandler.drop_table_with_environment_context(HiveMetaStore.java:1328) > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:60) > at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.j > at java.lang.reflect.Method.invoke(Method.java:611) > at > org.apache.hadoop.hive.metastore.RetryingHMSHandler.invoke(RetryingHMSHandler. > at com.sun.proxy.$Proxy8.drop_table_with_environment_context(Unknown > Source) > at > org.apache.hadoop.hive.metastore.HiveMetaStoreClient.dropTable(HiveMetaStoreCl > at > org.apache.hadoop.hive.metastore.HiveMetaStoreClient.dropTable(HiveMetaStoreCl > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:60) > at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.j > at java.lang.reflect.Method.invoke(Method.java:611) > at > org.apache.hadoop.hive.metastore.RetryingMetaStoreClient.invoke(RetryingMetaSt > at com.sun.proxy.$Proxy9.dropTable(Unknown Source) > at org.apache.hadoop.hive.ql.metadata.Hive.dropTable(Hive.java:869) > at org.apache.hadoop.hive.ql.metadata.Hive.dropTable(Hive.java:836) > at org.apache.hadoop.hive.ql.exec.DDLTask.dropTable(DDLTask.java:3329) > at org.apache.hadoop.hive.ql.exec.DDLTask.execute(DDLTask.java:277) > at org.apache.hadoop.hive.ql.exec.Task.executeTask(Task.java:151) > at > org.apache.hadoop.hive.ql.exec.TaskRunner.runSequential(TaskRunner.java:65) > at org.apache.hadoop.hive.ql.Driver.launchTask(Driver.java:1437) > at org.apache.hadoop.hive.ql.Driver.execute(Driver.java:1215) > at org.apache.hadoop.hive.ql.Driver.runInternal(Driver.java:1043) > at org.apache.hadoop.hive.ql.Driver.run(Driver.java:911) > at > org.apache.hadoop.hive.cli.CliDriver.processLocalCmd(CliDriver.java:259) > at org.apache.hadoop.hive.cli.CliDriver.processCmd(CliDriver.java:216) > at > org.apache.hadoop.hive.cli.CliDriver.processLine(CliDriver.java:413) > at > org.apache.hadoop.hive.cli.CliDriver.executeDriver(CliDriver.java:781) > at org.apache.hadoop.hive.cli.CliDriver.run(CliDriver.java:675) > at org.apache.hadoop.hive.cli.CliDriver.main(CliDriver.java:614) > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:60) > at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.j > at java.lang.reflect.Method.invoke(Method.java:611) > at org.apache.hadoop.util.RunJar.main(RunJar.java:212) > {noformat} > Other SQL commands like ALTER also fail. > Since this might be a bug in datanucleus itself, we also submitted a JIRA in > datanucleus (see > http://www.datanucleus.org/servlet/jira/browse/NUCRDBMS-736), but Hive needs > to pick up a newer version of datanucleus once the problem is fixed: -- This message was sent by Atlassian JIRA (v6.1.5#6160)