ableegoldman commented on code in PR #16024: URL: https://github.com/apache/kafka/pull/16024#discussion_r1608911390
########## streams/src/main/java/org/apache/kafka/streams/processor/assignment/TopicPartitionAssignmentInfo.java: ########## @@ -0,0 +1,45 @@ +package org.apache.kafka.streams.processor.assignment; + +import java.util.Optional; +import java.util.Set; + +/** + * This is a simple container class used during the assignment process to distinguish + * TopicPartitions type. Since the assignment logic can depend on the type of topic we're + * looking at, and the rack information of the partition, this container class should have + * everything necessary to make informed task assignment decisions. + */ +public interface TopicPartitionAssignmentInfo { Review Comment: the only thing I take issue with is the name here -- technically this is just application metadata about how this topic partition fits into the topology, ie it's not really "assignment" info -- we're just using it for assignment purposes ...I'm not sure I'm explaining that well and it sounds overly pedantic, but if I didn't bring it up now then someone probably would say the same thing on the KIP discussion once we send out this update. I know `TopicPartitionInfo` is already taken, and is too broad anyways. I'd recommend something like `TaskTopicPartition` which I think helps drive home the point that this is metadata related to how this topic partition relates to the given task, not info about the topic partition itself per say Does that make any sense? -- 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: jira-unsubscr...@kafka.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org