BELUGA BEHR created HIVE-18896: ---------------------------------- Summary: Do Not Log User Errors in SQLOperation Class Key: HIVE-18896 URL: https://issues.apache.org/jira/browse/HIVE-18896 Project: Hive Issue Type: Improvement Components: HiveServer2 Affects Versions: 3.0.0, 2.4.0 Reporter: BELUGA BEHR
[https://github.com/apache/hive/blob/f7dea1060247dddccd69112e24200ec84d2847a3/service/src/java/org/apache/hive/service/cli/operation/SQLOperation.java#L344] {code:java} 2018-03-05 07:00:25,920 ERROR org.apache.hive.service.cli.operation.Operation: [HiveServer2-Background-Pool: Thread-2412]: Error running hive query: org.apache.hive.service.cli.HiveSQLException: Error while processing statement: FAILED: Execution Error, return code 1 from org.apache.hadoop.hive.ql.exec.DDLTask. Unable to alter table. new table sales.customer_acct already exists at org.apache.hive.service.cli.operation.Operation.toSQLException(Operation.java:399) at org.apache.hive.service.cli.operation.SQLOperation.runQuery(SQLOperation.java:189) at org.apache.hive.service.cli.operation.SQLOperation.access$100(SQLOperation.java:76) at org.apache.hive.service.cli.operation.SQLOperation$2$1.run(SQLOperation.java:241) at java.security.AccessController.doPrivileged(Native Method) at javax.security.auth.Subject.doAs(Subject.java:422) at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1714) at org.apache.hive.service.cli.operation.SQLOperation$2.run(SQLOperation.java:254) at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) at java.util.concurrent.FutureTask.run(FutureTask.java:266) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) at java.lang.Thread.run(Thread.java:745) Caused by: org.apache.hadoop.hive.ql.metadata.HiveException: Unable to alter table. new table sales.customer_acct already exists at org.apache.hadoop.hive.ql.metadata.Hive.alterTable(Hive.java:556) at org.apache.hadoop.hive.ql.exec.DDLTask.alterTable(DDLTask.java:3379) at org.apache.hadoop.hive.ql.exec.DDLTask.execute(DDLTask.java:340) at org.apache.hadoop.hive.ql.exec.Task.executeTask(Task.java:212) at org.apache.hadoop.hive.ql.exec.TaskRunner.runSequential(TaskRunner.java:100) at org.apache.hadoop.hive.ql.Driver.launchTask(Driver.java:1969) at org.apache.hadoop.hive.ql.Driver.execute(Driver.java:1682) at org.apache.hadoop.hive.ql.Driver.runInternal(Driver.java:1419) at org.apache.hadoop.hive.ql.Driver.run(Driver.java:1203) at org.apache.hadoop.hive.ql.Driver.run(Driver.java:1198) at org.apache.hive.service.cli.operation.SQLOperation.runQuery(SQLOperation.java:187) ... 11 more Caused by: InvalidOperationException(message:new table sales.customer_acct already exists) at org.apache.hadoop.hive.metastore.api.ThriftHiveMetastore$alter_table_with_cascade_result$alter_table_with_cascade_resultStandardScheme.read(ThriftHiveMetastore.java:42276) at org.apache.hadoop.hive.metastore.api.ThriftHiveMetastore$alter_table_with_cascade_result$alter_table_with_cascade_resultStandardScheme.read(ThriftHiveMetastore.java:42262) at org.apache.hadoop.hive.metastore.api.ThriftHiveMetastore$alter_table_with_cascade_result.read(ThriftHiveMetastore.java:42204) at org.apache.thrift.TServiceClient.receiveBase(TServiceClient.java:86) at org.apache.hadoop.hive.metastore.api.ThriftHiveMetastore$Client.recv_alter_table_with_cascade(ThriftHiveMetastore.java:1410) at org.apache.hadoop.hive.metastore.api.ThriftHiveMetastore$Client.alter_table_with_cascade(ThriftHiveMetastore.java:1394) at org.apache.hadoop.hive.metastore.HiveMetaStoreClient.alter_table(HiveMetaStoreClient.java:350) at org.apache.hadoop.hive.ql.metadata.SessionHiveMetaStoreClient.alter_table(SessionHiveMetaStoreClient.java:296) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498) at org.apache.hadoop.hive.metastore.RetryingMetaStoreClient.invoke(RetryingMetaStoreClient.java:105) at com.sun.proxy.$Proxy11.alter_table(Unknown Source) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498) at org.apache.hadoop.hive.metastore.HiveMetaStoreClient$SynchronizedHandler.invoke(HiveMetaStoreClient.java:2032) at com.sun.proxy.$Proxy11.alter_table(Unknown Source) at org.apache.hadoop.hive.ql.metadata.Hive.alterTable(Hive.java:552) ... 21 more {code} This is a huge and ugly _ERROR_ level stack trace for something that a Hive service administrator could care less about. For tracing purposes, the HS2 should log that the query terminated with a failure condition, but it should be a simple, concise, message at the _INFO_ logging level. -- This message was sent by Atlassian JIRA (v7.6.3#76005)