xiangfu0 commented on code in PR #18687:
URL: https://github.com/apache/pinot/pull/18687#discussion_r3376832545


##########
pinot-plugins/pinot-stream-ingestion/pinot-kafka-3.0/src/main/java/org/apache/pinot/plugin/stream/kafka30/KafkaStreamMetadataProvider.java:
##########
@@ -124,8 +124,31 @@ public List<PartitionGroupMetadata> 
computePartitionGroupMetadata(String clientI
       List<PartitionGroupConsumptionStatus> partitionGroupConsumptionStatuses, 
int timeoutMillis)
       throws IOException, java.util.concurrent.TimeoutException {
     if (_partitionIdSubset.isEmpty()) {
-      return 
StreamMetadataProvider.super.computePartitionGroupMetadata(clientId, 
streamConfig,

Review Comment:
   Agreed. I moved the no-subset fix into 
`StreamMetadataProvider.computePartitionGroupMetadata()` and reverted Kafka 
3.0/4.0 no-subset handling back to 
`StreamMetadataProvider.super.computePartitionGroupMetadata(...)`. The default 
now uses `fetchPartitionIds()` when supported, keyed by 
`getStreamPartitionGroupId()`, and only falls back to contiguous 
`fetchPartitionCount()` ids for legacy providers. The Kafka partition-subset 
branch still stays explicit because it must honor `_partitionIdSubset`. Added 
an SPI regression for sparse current statuses plus the Kafka provider tests for 
sparse metadata and topic expansion.



-- 
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]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to