i think the code assumes that with a "good enough" hash function (and maybe few enough keys) the chance of such a collision is acceptably small to justify the savings of not keeping the keys in memory.
On Wed, Dec 21, 2016 at 11:50 PM, Renkai <gaelook...@gmail.com> wrote: > Hi, all: > > I am just learning the Kafka codebase, as what I saw in > https://github.com/apache/kafka/blob/6ed3e6b1cb8a73b1f5f78926ccb247 > a8953a554c/core/src/main/scala/kafka/log/OffsetMap.scala#L43-L43 > > if different log keys have the same digest value, they will be treated as > the same key in log compaction. Though the risk of such things happens is > very small, I still want it to be avoided. If what I thought is wrong > please let me know, and I hope to know the thoughts of who created or is > maintaining the code. > > > >