[
https://issues.apache.org/jira/browse/HIVE-3095?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Keegan Mosley updated HIVE-3095:
--------------------------------
Description:
An Avro schema which has a field reference to itself will create an infinite
loop which eventually throws a StackOverflowError.
To reproduce using the linked-list example from
http://avro.apache.org/docs/1.6.1/spec.html
create table linkedListTest row format serde
'org.apache.hadoop.hive.serde2.avro.AvroSerDe'
with serdeproperties ('avro.schema.literal'='
{
"type": "record",
"name": "LongList",
"aliases": ["LinkedLongs"], // old name for this
"fields" : [
{"name": "value", "type": "long"}, // each element has a long
{"name": "next", "type": ["LongList", "null"]} // optional next element
]
}
')
stored as inputformat
'org.apache.hadoop.hive.ql.io.avro.AvroContainerInputFormat'
outputformat 'org.apache.hadoop.hive.ql.io.avro.AvroContainerOutputFormat';
was:
An Avro schema which has a field reference to itself will create an infinite
loop which eventually throws a StackOverflowError.
To reproduce using the linked-list example from
http://avro.apache.org/docs/1.6.1/spec.html:
create table linkedListTest row format serde
'org.apache.hadoop.hive.serde2.avro.AvroSerDe'
with serdeproperties ('avro.schema.literal'='
{
"type": "record",
"name": "LongList",
"aliases": ["LinkedLongs"], // old name for this
"fields" : [
{"name": "value", "type": "long"}, // each element has a long
{"name": "next", "type": ["LongList", "null"]} // optional next element
]
}
')
stored as inputformat
'org.apache.hadoop.hive.ql.io.avro.AvroContainerInputFormat'
outputformat 'org.apache.hadoop.hive.ql.io.avro.AvroContainerOutputFormat';
> Self-referencing Avro schema creates infinite loop on table creation
> --------------------------------------------------------------------
>
> Key: HIVE-3095
> URL: https://issues.apache.org/jira/browse/HIVE-3095
> Project: Hive
> Issue Type: Bug
> Components: Serializers/Deserializers
> Affects Versions: 0.9.1
> Reporter: Keegan Mosley
> Priority: Minor
> Labels: avro
>
> An Avro schema which has a field reference to itself will create an infinite
> loop which eventually throws a StackOverflowError.
> To reproduce using the linked-list example from
> http://avro.apache.org/docs/1.6.1/spec.html
> create table linkedListTest row format serde
> 'org.apache.hadoop.hive.serde2.avro.AvroSerDe'
> with serdeproperties ('avro.schema.literal'='
> {
> "type": "record",
> "name": "LongList",
> "aliases": ["LinkedLongs"], // old name for this
> "fields" : [
> {"name": "value", "type": "long"}, // each element has a
> long
> {"name": "next", "type": ["LongList", "null"]} // optional next element
> ]
> }
> ')
> stored as inputformat
> 'org.apache.hadoop.hive.ql.io.avro.AvroContainerInputFormat'
> outputformat 'org.apache.hadoop.hive.ql.io.avro.AvroContainerOutputFormat';
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira