guozhangwang opened a new pull request, #12304:
URL: https://github.com/apache/kafka/pull/12304

   There are some considerata embedded in this seemingly straight-forward PR 
that I'd like to explain here. The StreamPartitioner is used to send records to 
three types of topics:
   
   1) repartition topics, where key should never be null.
   2) changelog topics, where key should never be null.
   3) sink topics, where only non-windowed key could be null and windowed key 
should still never be null.
   
   Also, the StreamPartitioner is used as part of the IQ to determine which 
host contains a certain key, as determined by the case 2) above.
   
   This PR's main goal is to remove the deprecated producer's default 
partitioner, while with those things in mind such that:
   
   1) We want to make sure for not-null keys, the default murmur2 hash behavior 
of the streams' partitioner stays consistent with producer's new built-in 
partitioner.
   2) For null-keys (which is only possible for non-window default stream 
partition, and is never used for IQ), we would fix the issue that we may never 
rotate to a new partitioner by setting the partition as `null` hence relying on 
the newly introduced built-in partitioner.
   
   
   ### Committer Checklist (excluded from commit message)
   - [ ] Verify design and implementation 
   - [ ] Verify test coverage and CI build status
   - [ ] Verify documentation (including upgrade notes)
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to