[
https://issues.apache.org/jira/browse/HIVE-7868?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14166151#comment-14166151
]
Ferdinand Xu commented on HIVE-7868:
------------------------------------
The messages are as followings:
0: jdbc:hive2://localhost:10000> describe test_avro;
14/10/10 09:07:28 ERROR exec.DDLTask:
org.apache.hadoop.hive.ql.metadata.HiveException: Exception while processing
test_avro
at
org.apache.hadoop.hive.ql.exec.DDLTask.describeTable(DDLTask.java:3137)
at org.apache.hadoop.hive.ql.exec.DDLTask.execute(DDLTask.java:366)
at org.apache.hadoop.hive.ql.exec.Task.executeTask(Task.java:161)
at
org.apache.hadoop.hive.ql.exec.TaskRunner.runSequential(TaskRunner.java:85)
at org.apache.hadoop.hive.ql.Driver.launchTask(Driver.java:1605)
at org.apache.hadoop.hive.ql.Driver.execute(Driver.java:1365)
at org.apache.hadoop.hive.ql.Driver.runInternal(Driver.java:1178)
at org.apache.hadoop.hive.ql.Driver.run(Driver.java:1005)
at org.apache.hadoop.hive.ql.Driver.run(Driver.java:1000)
at
org.apache.hive.service.cli.operation.SQLOperation.runQuery(SQLOperation.java:144)
at
org.apache.hive.service.cli.operation.SQLOperation.access$100(SQLOperation.java:69)
at
org.apache.hive.service.cli.operation.SQLOperation$1$1.run(SQLOperation.java:196)
at java.security.AccessController.doPrivileged(Native Method)
at javax.security.auth.Subject.doAs(Subject.java:415)
at
org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1556)
at
org.apache.hadoop.hive.shims.HadoopShimsSecure.doAs(HadoopShimsSecure.java:508)
at
org.apache.hive.service.cli.operation.SQLOperation$1.run(SQLOperation.java:208)
at
java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
at java.util.concurrent.FutureTask.run(FutureTask.java:262)
at
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:724)
Caused by: java.sql.SQLException: Encountered AvroSerdeException determining
schema. Returning signal schema to indicate problem: Unable to read schema from
given path: hdfs://localhost:9000/tmp/test_serializer.avsc
at
org.apache.hadoop.hive.ql.exec.DDLTask.describeTable(DDLTask.java:3094)
... 21 more
14/10/10 09:07:28 ERROR ql.Driver: FAILED: Execution Error, return code 1 from
org.apache.hadoop.hive.ql.exec.DDLTask. Exception while processing test_avro
14/10/10 09:07:28 ERROR operation.Operation: 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. Exception while processing test_avro
at
org.apache.hive.service.cli.operation.Operation.toSQLException(Operation.java:314)
at
org.apache.hive.service.cli.operation.SQLOperation.runQuery(SQLOperation.java:146)
at
org.apache.hive.service.cli.operation.SQLOperation.access$100(SQLOperation.java:69)
at
org.apache.hive.service.cli.operation.SQLOperation$1$1.run(SQLOperation.java:196)
at java.security.AccessController.doPrivileged(Native Method)
at javax.security.auth.Subject.doAs(Subject.java:415)
at
org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1556)
at
org.apache.hadoop.hive.shims.HadoopShimsSecure.doAs(HadoopShimsSecure.java:508)
at
org.apache.hive.service.cli.operation.SQLOperation$1.run(SQLOperation.java:208)
at
java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
at java.util.concurrent.FutureTask.run(FutureTask.java:262)
at
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:724)
Caused by: org.apache.hadoop.hive.ql.metadata.HiveException: Exception while
processing test_avro
at
org.apache.hadoop.hive.ql.exec.DDLTask.describeTable(DDLTask.java:3137)
at org.apache.hadoop.hive.ql.exec.DDLTask.execute(DDLTask.java:366)
at org.apache.hadoop.hive.ql.exec.Task.executeTask(Task.java:161)
at
org.apache.hadoop.hive.ql.exec.TaskRunner.runSequential(TaskRunner.java:85)
at org.apache.hadoop.hive.ql.Driver.launchTask(Driver.java:1605)
at org.apache.hadoop.hive.ql.Driver.execute(Driver.java:1365)
at org.apache.hadoop.hive.ql.Driver.runInternal(Driver.java:1178)
at org.apache.hadoop.hive.ql.Driver.run(Driver.java:1005)
at org.apache.hadoop.hive.ql.Driver.run(Driver.java:1000)
at
org.apache.hive.service.cli.operation.SQLOperation.runQuery(SQLOperation.java:144)
... 12 more
Caused by: java.sql.SQLException: Encountered AvroSerdeException determining
schema. Returning signal schema to indicate problem: Unable to read schema from
given path: hdfs://localhost:9000/tmp/test_serializer.avsc
at
org.apache.hadoop.hive.ql.exec.DDLTask.describeTable(DDLTask.java:3094)
... 21 more
Error: Error while processing statement: FAILED: Execution Error, return code 1
from org.apache.hadoop.hive.ql.exec.DDLTask. Exception while processing
test_avro (state=08S01,code=1)
> AvroSerDe error handling could be improved
> ------------------------------------------
>
> Key: HIVE-7868
> URL: https://issues.apache.org/jira/browse/HIVE-7868
> Project: Hive
> Issue Type: Improvement
> Reporter: Brock Noland
> Assignee: Ferdinand Xu
> Attachments: HIVE-7868.1.patch, HIVE-7868.2.patch
>
>
> When an Avro schema is invalid, AvroSerDe returns an error message instead of
> throwing an exception. This is described in
> {{AvroSerdeUtils.determineSchemaOrReturnErrorSchema}}:
> {noformat}
> /**
> * Attempt to determine the schema via the usual means, but do not throw
> * an exception if we fail. Instead, signal failure via a special
> * schema. This is used because Hive calls init on the serde during
> * any call, including calls to update the serde properties, meaning
> * if the serde is in a bad state, there is no way to update that state.
> */
> {noformat}
> I believe we should find a way to provide a better experience to our users.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)