Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Does kafka4s support the use of the CooperativeStickyAssignor ? #678

Open
okouyad opened this issue Oct 19, 2022 · 2 comments
Open

Does kafka4s support the use of the CooperativeStickyAssignor ? #678

okouyad opened this issue Oct 19, 2022 · 2 comments

Comments

@okouyad
Copy link

okouyad commented Oct 19, 2022

Hi, just wondering if kafka4s handle the new CooperativeStickyAssignor well ?

@Kazark
Copy link
Contributor

Kazark commented Oct 19, 2022

Not as far as I know

@okouyad
Copy link
Author

okouyad commented Oct 20, 2022

Now that i think about it, I remembered what you told me when i was first discovering the lib

It takes a slightly different approach: rather than implementing the wire protocol, it wraps the Java client.

So i wonder if actually Kafka4s needs to do anything specific here. In my understanding it would just work. Indeed, I try to find any reference to assignement strategy in code, and there is nothing about it.

Now, i am not versed enough in the current code base to know if there is an interplay between the rebalance protocol and and the current code base and in particular with the usage of stream. For instance, (1) are things implemented to handle the eager rebalance protocol only, which will include a range of assignor (roundrobin, range, sticky, ....) but not the cooperative one, as partition can be revoked individually. (2) Or maybe all of this in delegated to the underlying client and is transparent to the higher level api.

I know that in the case of fs2-kafka they have had to do something specific for the cooperativeSticky assignor, and even then the support is currently not without bug apparently.

Hope it make sense and give enough context to my question.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants