Closed ddcprg closed 2 years ago
You can find the Avro reader here:
Looking forward and thanks for your contribution!
Thank you for your prompt response! I'm into this issue now
Thanks for taking this up @ddcprg. Do you mind sharing why you would want to limit this to Realtime tables only? IMHO, we should do this in a generic way at record reader level?
Hi @mayankshriv I've initially thought of realtime tables and not the import jobs as I'm not very familiar the source code yet. I can extend the PR to include record reader as well
@mayankshriv my PR should cover both realtime tables and import jobs, please let me know if this is not the case.
It seems like Avro logical types are not supported in the Avro message decoders.
I have been browsing through the code and checked the past issues and I have not found mentions to Avro logical types.
I will be happy to open a PR when I work out the best place and how to add these changes.
More details about this change:
Avro has support for logical types - more details at Avro spec docs. A subject schema can therefore be defined as
Pinot Avro decoder does not support logical types at the moment there for trying to represent this value a
String
column will result in a wrong representations of the value. Trying to represent this value as aFloat
/Double
column will results in a exception:Table schema:
Exception:
Ideally Pinot should be able to perform automatic logical type conversion if the type details are provided.