[
https://issues.apache.org/jira/browse/KAFKA-2397?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14660279#comment-14660279
]
Jay Kreps commented on KAFKA-2397:
----------------------------------
[~guozhang] Basically "session" would be the concept that ties a connection to
the business logic layer. The session would be exposed with the request. I
haven't thought through how this would work, but maybe in handleProduce you
could do
session.addOnClose("clear-produce-purgatory", =>
removeRequestFromPurgatory(id))
and in the purgatory when the request is completed you'd do
session.removeOnClose("clear-produce-purgatory")
A similar mechanism would work based on the join-group request to rebalance the
group on connection close.
Like I said, I didn't think this through and don't really advocate it. Like
Jason I think there could be odd side effects.
> leave group request
> -------------------
>
> Key: KAFKA-2397
> URL: https://issues.apache.org/jira/browse/KAFKA-2397
> Project: Kafka
> Issue Type: Sub-task
> Components: consumer
> Reporter: Onur Karaman
> Assignee: Onur Karaman
> Priority: Minor
> Fix For: 0.8.3
>
>
> Let's say every consumer in a group has session timeout s. Currently, if a
> consumer leaves the group, the worst case time to stabilize the group is 2s
> (s to detect the consumer failure + s for the rebalance window). If a
> consumer instead can declare they are leaving the group, the worst case time
> to stabilize the group would just be the s associated with the rebalance
> window.
> This is a low priority optimization!
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)