我想将小retention_ms
设置为1200000,以便有时删除初始脏载。
json是完全正确的,因为它不起作用,另外我也尝试设置其他参数。但是,我的消费者仍然可以获取两周前存在的数据。
{"config": {"segment.ms": "1200000", "retention.ms": "1200000", "cleanup.policy": "delete", "segment.jitter.ms": "1200000", "delete.retention.ms": "1200000", "min.cleanable.dirty.ratio": "0.01"}, "version": 1}
总结一下,我想知道默认的retention.ms是7天但我的消费者可以在7天内找到数据,而autooffser.reset是最早的,
kafka忽略我的retention.ms会是什么原因?
答案 0 :(得分:0)
阅读源代码https://github.com/apache/kafka/blob/trunk/core/src/main/scala/kafka/admin/AdminUtils.scala#L492后,
Kafka通过在zookeeper中存储更改通知来更新主题配置。所以问题是将配置json存储在/config/topics
中是不够的,你还需要将{j}存储在zookeeper中的/config/changes
中。