I was plugging in my own message decoder which was interpreting the incoming message to a specific Avro record object, however due to this particular casting in com/linkedin/camus/etl/kafka/common/AvroRecordWriterProvider.java , line 50 , to a GenericRecord its failing due to the fact that a specific Avro record object is not a sub-class of the GenericRecord interface.
I modified the code on line 50 to actually cast it to (GenericContainer) , which is a top level avro class that is above both GenericRecord and IndexedRecord(the super-class of specific record) and it seems to work fine. The only reason for this casting at present seems to be to get the underlying avro SCHEMA object.
Can you guys kindly make this change and push it.