Tombstone Records
使用 compaction 主题时,具有 null
值(也称为 tombstone 记录)的记录表示已删除某个键。要接收 Spring Cloud Stream 函数中的此类消息,可以使用以下策略。
@Bean
public Function<Message<Person>, String> myFunction() {
return value -> {
Object v = value.getPayload();
String className = v.getClass().getName();
if (className.isEqualTo("org.springframework.kafka.support.KafkaNull")) {
// this is a tombstone record
}
else {
// continue with processing
}
};
}