[ 
https://issues.apache.org/jira/browse/HIVE-5319?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13771780#comment-13771780
 ] 

Neha Tomar commented on HIVE-5319:
----------------------------------

Pasting the exception trace below.

Failed with exception java.io.IOException:org.apache.avro.AvroTypeException: 
Found "long", expecting "int"
13/09/19 16:03:46 ERROR CliDriver: Failed with exception 
java.io.IOException:org.apache.avro.AvroTypeException: Found "long", expecting 
"int"
java.io.IOException: org.apache.avro.AvroTypeException: Found "long", expecting 
"int"
        at 
org.apache.hadoop.hive.ql.exec.FetchOperator.getNextRow(FetchOperator.java:544)
        at 
org.apache.hadoop.hive.ql.exec.FetchOperator.pushRow(FetchOperator.java:488)
        at org.apache.hadoop.hive.ql.exec.FetchTask.fetch(FetchTask.java:136)
        at org.apache.hadoop.hive.ql.Driver.getResults(Driver.java:1412)
        at 
org.apache.hadoop.hive.cli.CliDriver.processLocalCmd(CliDriver.java:271)
        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.run(CliDriver.java:756)
        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.java:37)
        at java.lang.reflect.Method.invoke(Method.java:611)
        at org.apache.hadoop.util.RunJar.main(RunJar.java:212)
Caused by: org.apache.avro.AvroTypeException: Found "long", expecting "int"
        at 
org.apache.avro.io.ResolvingDecoder.doAction(ResolvingDecoder.java:231)
        at org.apache.avro.io.parsing.Parser.advance(Parser.java:88)
        at 
org.apache.avro.io.ValidatingDecoder.readInt(ValidatingDecoder.java:82)
        at 
org.apache.avro.generic.GenericDatumReader.readInt(GenericDatumReader.java:341)
        at 
org.apache.avro.generic.GenericDatumReader.read(GenericDatumReader.java:146)
        at 
org.apache.avro.generic.GenericDatumReader.readRecord(GenericDatumReader.java:166)
        at 
org.apache.avro.generic.GenericDatumReader.read(GenericDatumReader.java:138)
        at 
org.apache.avro.generic.GenericDatumReader.read(GenericDatumReader.java:129)
        at org.apache.avro.file.DataFileStream.next(DataFileStream.java:233)
        at org.apache.avro.file.DataFileStream.next(DataFileStream.java:220)
        at 
org.apache.hadoop.hive.ql.io.avro.AvroGenericRecordReader.next(AvroGenericRecordReader.java:140)
        at 
org.apache.hadoop.hive.ql.io.avro.AvroGenericRecordReader.next(AvroGenericRecordReader.java:49)
        at 
org.apache.hadoop.hive.ql.exec.FetchOperator.getNextRow(FetchOperator.java:514)
        ... 13 more

                
> Executing SELECT on an AVRO table fails after executing ALTER to modify type 
> of an existing column
> --------------------------------------------------------------------------------------------------
>
>                 Key: HIVE-5319
>                 URL: https://issues.apache.org/jira/browse/HIVE-5319
>             Project: Hive
>          Issue Type: Bug
>    Affects Versions: 0.11.0
>         Environment: Linux Ubuntu
>            Reporter: Neha Tomar
>              Labels: avro
>
> 1 >> Created a table in Hive with AVRO data.
>       CREATE EXTERNAL TABLE tweets (username string, tweet string, timestamp 
> bigint)
>     COMMENT 'A table backed by Avro data with the Avro schema stored in HDFS'
>     ROW FORMAT SERDE 'org.apache.hadoop.hive.serde2.avro.AvroSerDe'
>     STORED AS
>     INPUTFORMAT  'org.apache.hadoop.hive.ql.io.avro.AvroContainerInputFormat'
>     OUTPUTFORMAT 'org.apache.hadoop.hive.ql.io.avro.AvroContainerOutputFormat'
>     LOCATION '/home/neha/test_data/avro_create_data'
>     TBLPROPERTIES 
> ('avro.schema.literal'='{"namespace":"com.miguno.avro","name":"Tweet","type":"record","fields":[
>  {"name" : "username","type" : "string","doc" : "Name of the user account on 
> Twitter.com"},{"name" : "tweet","type":"string","doc" : "The content of the 
> Twitter message"}, {"name" : "timestamp", "type" : "long", "doc" : "Unix 
> epoch time in seconds"}]}');
> 2 >> Altered type of a column (to a compatible type) using ALTER TABLE. In 
> this example, altered type for column "timestamp" from "long" to "int".
>       ALTER TABLE tweets SET TBLPROPERTIES 
> ('avro.schema.literal'='{"namespace":"com.miguno.avro","name":"Tweet","type":"record","fields":[
>  {"name" : "username","type" : "string","doc" : "Name of the user account on 
> Twitter.com"},{"name" : "tweet","type":"string","doc" : "The content of the 
> Twitter message"}, {"name" : "timestamp", "type" : "int", "doc" : "Unix epoch 
> time in seconds"}]}');
> 3 >> Now, a select query on this table fails with following error.
> hive> select * from tweets;
> OK
> Failed with exception java.io.IOException:org.apache.avro.AvroTypeException: 
> Found "long", expecting "int"
> Time taken: 4.514 seconds

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to