Fork me on GitHub
#jackdaw
<
2022-06-17
>
Alastair Hole16:06:18

Hey all 🙂 Does Jackdaw have support for recursively defined Avro schemas? There is an example in the Avro spec of a linked list:

{
  "type": "record",
  "name": "LongList",
  "aliases": ["LinkedLongs"],                      // old name for this
  "fields" : [
    {"name": "value", "type": "long"},             // each element has a long
    {"name": "next", "type": ["null", "LongList"]} // optional next element
  ]
}
If I try something similar I get a stack overflow. I have hacked together a quick repro into the jackdaw.serdes.avro-test for the record type, I will fork and open an issue I think.

Alastair Hole16:06:28

In a similar vein, is there any option to swap out the Avro schema handling for the standard Apache/Confluent/Interop equivalent, or is it integral to Jackdaw’s operation?