У нас есть пользовательское приложение, в котором мы читаем сообщение из Кафки, декодирующего его, и пытаемся десериализировать его с помощью схемы AVRO, но мы получаем ошибку ниже ошибки.
Мы использовали здесь правильную схему, даже если мы получаем ошибку. < /p>
2025-03-29 13:13:39.648 INFO 1 --- [ main] com.nokia.nac.controller.NACReplicator : Reading records from kafka, Number of events = 1
2025-03-29 13:13:39.648 DEBUG 1 --- [ main] com.nokia.nac.controller.NACReplicator : Record is not empty
2025-03-29 13:13:39.648 DEBUG 1 --- [ main] com.nokia.nac.controller.NACReplicator : Binary decoding successfull
2025-03-29 13:13:39.648 DEBUG 1 --- [ main]
2025-03-29 13:13:39.670 WARN 1 --- [ main] org.apache.avro.Schema : Ignored the com.nokia.nac.tt.notification.v2.Ticket.creationdate.logicalType property ("timestamp-millis"). It should probably be nested inside the "type" for the field.
2025-03-29 13:13:39.670 WARN 1 --- [ main] org.apache.avro.Schema : Ignored the com.nokia.nac.tt.notification.v2.Ticket.changeDate.logicalType property ("timestamp-millis"). It should probably be nested inside the "type" for the field.
2025-03-29 13:13:39.671 WARN 1 --- [ main] org.apache.avro.Schema : Ignored the com.nokia.nac.tt.notification.v2.Ticket.creationdate.logicalType property ("timestamp-millis"). It should probably be nested inside the "type" for the field.
2025-03-29 13:13:39.672 WARN 1 --- [ main] org.apache.avro.Schema : Ignored the com.nokia.nac.tt.notification.v2.Ticket.changeDate.logicalType property ("timestamp-millis"). It should probably be nested inside the "type" for the field.
2025-03-29 13:13:39.675 ERROR 1 --- [ main] com.nokia.nac.controller.NACReplicator : Error while decoding/deserialization of received tt event
org.apache.avro.AvroRuntimeException: Malformed data. Length is negative: -1
at org.apache.avro.io.BinaryDecoder.readString(BinaryDecoder.java:308)
at org.apache.avro.io.ResolvingDecoder.readString(ResolvingDecoder.java:208)
at org.apache.avro.generic.GenericDatumReader.readString(GenericDatumReader.java:469)
at org.apache.avro.generic.GenericDatumReader.readString(GenericDatumReader.java:459)
at org.apache.avro.generic.GenericDatumReader.readWithoutConversion(GenericDatumReader.java:191)
at org.apache.avro.specific.SpecificDatumReader.readField(SpecificDatumReader.java:136)
at org.apache.avro.generic.GenericDatumReader.readRecord(GenericDatumReader.java:247)
at org.apache.avro.specific.SpecificDatumReader.readRecord(SpecificDatumReader.java:123)
at org.apache.avro.generic.GenericDatumReader.readWithoutConversion(GenericDatumReader.java:179)
at org.apache.avro.specific.SpecificDatumReader.readField(SpecificDatumReader.java:136)
at org.apache.avro.generic.GenericDatumReader.readRecord(GenericDatumReader.java:247)
at org.apache.avro.specific.SpecificDatumReader.readRecord(SpecificDatumReader.java:123)
at org.apache.avro.generic.GenericDatumReader.readWithoutConversion(GenericDatumReader.java:179)
at org.apache.avro.specific.SpecificDatumReader.readField(SpecificDatumReader.java:136)
at org.apache.avro.generic.GenericDatumReader.readRecord(GenericDatumReader.java:247)
at org.apache.avro.specific.SpecificDatumReader.readRecord(SpecificDatumReader.java:123)
at org.apache.avro.generic.GenericDatumReader.readWithoutConversion(GenericDatumReader.java:179)
at org.apache.avro.generic.GenericDatumReader.read(GenericDatumReader.java:160)
at org.apache.avro.generic.GenericDatumReader.read(GenericDatumReader.java:153)
at com.nokia.nac.controller.NACReplicator.lambda$replicator$0(NACReplicator.java:116)
at java.lang.Iterable.forEach(Iterable.java:75)
at com.nokia.nac.controller.NACReplicator.replicator(NACReplicator.java:104)
at com.nokia.nac.SpringBootWithKafkaApplication.main(SpringBootWithKafkaApplication.java:21)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.springframework.boot.loader.MainMethodRunner.run(MainMethodRunner.java:48)
at org.springframework.boot.loader.Launcher.launch(Launcher.java:87)
at org.springframework.boot.loader.Launcher.launch(Launcher.java:51)
at org.springframework.boot.loader.PropertiesLauncher.main(PropertiesLauncher.java:597)
Подробнее здесь: https://stackoverflow.com/questions/795 ... -correct-a