Hello!
I'm trying to do low memory utilization / low alloc avro decoding. I'm handling unions, lists, structs, string myself and mostly decoding primitives with the schema.Decode interface. I'm noticing in my situation that many new slabs are allocated from the slab pool. These slabs are never actually used for decoding primitives (except for string).

What I would like to see is that slabs are not allocated if they are not required. One way to achieve this could be to get/create slabs only in the functions where they're being used (union, list, struct, map, string).
Thanks!
Hello!
I'm trying to do low memory utilization / low alloc avro decoding. I'm handling unions, lists, structs, string myself and mostly decoding primitives with the schema.Decode interface. I'm noticing in my situation that many new slabs are allocated from the slab pool. These slabs are never actually used for decoding primitives (except for string).

What I would like to see is that slabs are not allocated if they are not required. One way to achieve this could be to get/create slabs only in the functions where they're being used (union, list, struct, map, string).
Thanks!