The KafkaEndpoint now populates Camel Message header values based on the Kafka record attributes. These are values specific to the Kafka record read from the poll.
The KafkaConsumer and KafkaProducer support propagation of Camel Headers to Kafka.
When combining these two behaviours, this means that we set the 'kafka.' headers originally from the record, we produce these headers onto any subsequent Kafka messages. If camel-kafka then reads this message, it will overwrite the correct KafkaEndpoint set values for record specific information such as Topic name and timestamp, overwriting with the header values it had propagated from a prior Kafka record.
Ultimately, camel-kafka sets incorrect message headers if reading a Kafka record produced by camel-kafka from a Kafka input previously.