[
https://issues.apache.org/jira/browse/SPARK-48939?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Yuchen Liu updated SPARK-48939:
-------------------------------
Description:
Recursive reference denotes the case that the type of a field can be defined
before in the parent nodes. A simple example is:
{code:java}
{
"type": "record",
"name": "LongList",
"fields" : [
{"name": "value", "type": "long"},
{"name": "next", "type": ["null", "LongList"]}
]
}
{code}
This is written in Avro Schema DSL and represents a linked list data structure.
Spark currently will throw an error on this schema. Many users used schema like
this, so we should support it.
was:
We should support reading Avro message with recursive reference in schema.
Recursive reference denotes the case that the type of a field can be defined
before in the parent nodes. A simple example is:
{code:java}
{
"type": "record",
"name": "LongList",
"fields" : [
{"name": "value", "type": "long"},
{"name": "next", "type": ["null", "LongList"]}
]
}
{code}
This is written in Avro Schema DSL and represents a linked list data structure.
> Support recursive reference of Avro schema
> ------------------------------------------
>
> Key: SPARK-48939
> URL: https://issues.apache.org/jira/browse/SPARK-48939
> Project: Spark
> Issue Type: New Feature
> Components: Connect
> Affects Versions: 4.0.0
> Reporter: Yuchen Liu
> Priority: Major
>
> Recursive reference denotes the case that the type of a field can be defined
> before in the parent nodes. A simple example is:
> {code:java}
> {
> "type": "record",
> "name": "LongList",
> "fields" : [
> {"name": "value", "type": "long"},
> {"name": "next", "type": ["null", "LongList"]}
> ]
> }
> {code}
> This is written in Avro Schema DSL and represents a linked list data
> structure. Spark currently will throw an error on this schema. Many users
> used schema like this, so we should support it.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]