If there is performance issue and request queue time is more than 60 seconds, 
previously MM will keep waiting until offset commit succeeds. Now the MM just 
timeout offset commit operation and continue consume/produce messages. This may 
cause data duplication if `commitOffsets(...)` is called in 
`onPartitionsRevoked()` or if it is called when the MM is shutdown.

Would it make sense to change the default configuration of consumers in MM so 
that `default.api.timeout.ms` is set to MAX_LONG to keep old behavior as 
default behavior?

Going further along this line, in the scenario that offset commit can not 
finish in 60 seconds in `onPartitionsRevoked()`, what is the benefit to let MM 
give up waiting and give the partition ownership to another consumer, instead 
of keep trying/waiting infinitely?



[ Full content available at: https://github.com/apache/kafka/pull/5492 ]
This message was relayed via gitbox.apache.org for [email protected]

Reply via email to