Sounds perfect. Thanks! -John
On Mon, Feb 10, 2020, at 19:18, Sophie Blee-Goldman wrote: > Thanks John. I took out the KafkaConsumer method and moved the javadocs > to the Consumer#enforceRebalance in the KIP -- hope you're happy :P > > Also, I wanted to point out one minor change to the current proposal: make > this > a blocking call, which accepts a timeout and returns whether the rebalance > completed within the timeout. It will still reduce to a nonblocking call if > a "zero" > timeout is supplied. I've updated the KIP accordingly. > > Let me know if there are any further concerns, else I'll call for a vote. > > Cheers! > Sophie > > On Mon, Feb 10, 2020 at 12:47 PM John Roesler <vvcep...@apache.org> wrote: > > > Thanks Sophie, > > > > Sorry I didn't respond. I think your new method name sounds good. > > > > Regarding the interface vs implementation, I agree it's confusing. It's > > always bothered me that the interface redirects you to an implementation > > JavaDocs, but never enough for me to stop what I'm doing to fix it. > > It's not a big deal either way, I just thought it was strange to propose a > > "public interface" change, but not in terms of the actual interface class. > > > > It _is_ true that KafkaConsumer is also part of the public API, but only > > really > > for the constructor. Any proposal to define a new "consumer client" API > > should be on the Consumer interface (which you said you plan to do anyway). > > I guess I brought it up because proposing an addition to Consumer implies > > it would be added to KafkaConsumer, but proposing an addition to > > KafkaConsumer does not necessarily imply it would also be added to > > Consumer. Does that make sense? > > > > Anyway, thanks for updating the KIP. > > > > Thanks, > > -John > > > > > > On Mon, Feb 10, 2020, at 14:38, Sophie Blee-Goldman wrote: > > > Since this doesn't seem too controversial, I'll probably call for a vote > > by > > > end of day. > > > If there any further comments/questions/concerns, please let me know! > > > > > > Thanks, > > > Sophie > > > > > > On Sat, Feb 8, 2020 at 12:19 AM Sophie Blee-Goldman <sop...@confluent.io > > > > > > wrote: > > > > > > > Thanks for the feedback! That's a good point about trying to prevent > > users > > > > from > > > > thinking they should use this API during normal processing and > > clarifying > > > > when/why > > > > you might need it -- regardless of the method name, we should > > explicitly > > > > call this out > > > > in the javadocs. > > > > > > > > As for the method name, on reflection I agree that "rejoinGroup" does > > not > > > > seem to be > > > > appropriate. Of course that's what the consumer will actually be doing, > > > > but that's just an > > > > implementation detail -- the name should reflect what the API is doing, > > > > not how it does it > > > > (which can always change). > > > > > > > > How about "enforceRebalance"? This is stolen from the StreamThread > > method > > > > that does > > > > exactly this (by unsubscribing) so it seems to fit. I'll update the KIP > > > > with this unless anyone > > > > has another suggestion. > > > > > > > > Regarding the Consumer vs KafkaConsumer matter, I included the > > > > KafkaConsumer method > > > > because that's where all the javadocs redirect to in the Consumer > > > > interface. Also, FWIW > > > > I'm pretty sure KafkaConsumer is also part of the public API -- we > > would > > > > be adding a new > > > > method to both. > > > > > > > > On Fri, Feb 7, 2020 at 7:42 PM John Roesler <vvcep...@apache.org> > > wrote: > > > > > > > >> Hi all, > > > >> > > > >> Thanks for the well motivated KIP, Sophie. I had some alternatives in > > > >> mind, which > > > >> I won't even bother to relate because I feel like the motivation made > > a > > > >> compelling > > > >> argument for the API as proposed. > > > >> > > > >> One very minor point you might as well fix is that the API change is > > > >> targeted at > > > >> KafkaConsumer (the implementation), but should be targeted at > > > >> Consumer (the interface). > > > >> > > > >> I agree with your discomfort about the name. Adding a "rejoin" method > > > >> seems strange > > > >> since there's no "join" method. Instead the way you join the group the > > > >> first time is just > > > >> by calling "subscribe". But "resubscribe" seems too indirect from what > > > >> we're really trying > > > >> to do, which is to trigger a rebalance by sending a new JoinGroup > > request. > > > >> > > > >> Another angle is that we don't want the method to sound like something > > > >> you should > > > >> be calling in normal circumstances, or people will be "tricked" into > > > >> calling it unnecessarily. > > > >> > > > >> So, I think "rejoinGroup" is fine, although a person _might_ be > > forgiven > > > >> for thinking they > > > >> need to call it periodically or something. Did you consider > > > >> "triggerRebalance", which > > > >> sounds pretty advanced-ish, and accurately describes what happens when > > > >> you call it? > > > >> > > > >> All in all, the KIP sounds good to me, and I'm in favor. > > > >> > > > >> Thanks, > > > >> -John > > > >> > > > >> On Fri, Feb 7, 2020, at 21:22, Anna McDonald wrote: > > > >> > This situation was discussed at length after a recent talk I gave. > > This > > > >> KIP > > > >> > would be a great step towards increased availability and in > > facilitating > > > >> > lightweight rebalances. > > > >> > > > > >> > anna > > > >> > > > > >> > > > > >> > > > > >> > On Fri, Feb 7, 2020, 9:38 PM Sophie Blee-Goldman < > > sop...@confluent.io> > > > >> > wrote: > > > >> > > > > >> > > Hi all, > > > >> > > > > > >> > > In light of some recent and upcoming rebalancing and availability > > > >> > > improvements, it seems we have a need for explicitly triggering a > > > >> consumer > > > >> > > group rebalance. Therefore I'd like to propose adding a new > > > >> > > rejoinGroup()method > > > >> > > to the Consumer client (better method name suggestions are very > > > >> welcome). > > > >> > > > > > >> > > Please take a look at the KIP and let me know what you think! > > > >> > > > > > >> > > KIP document: > > > >> > > > > > >> > > > > > >> > > https://cwiki.apache.org/confluence/display/KAFKA/KIP-568%3A+Explicit+rebalance+triggering+on+the+Consumer > > > >> > > > > > >> > > JIRA: https://issues.apache.org/jira/browse/KAFKA-9525 > > > >> > > > > > >> > > Cheers, > > > >> > > Sophie > > > >> > > > > > >> > > > > >> > > > > > > > > > >