tulios / kafkajs

A modern Apache Kafka client for node.js
https://kafka.js.org
MIT License
3.75k stars 527 forks source link

Implement static membership feature on client side (KIP-345) #1594

Open sandeepkumarcel opened 1 year ago

sandeepkumarcel commented 1 year ago

implement kip-345

add test fixtures

ts-defs

distracteddev commented 1 year ago

This is exciting work! It seems like this has also implemented most of (all of?) KIP-320.

Can you help me understand what parts of Nevon's earlier checklist might still be left to complete?

  1. Implement KIP-320. This is probably gonna be an epic in and of itself. The reason we need this is because we need to support Fetch v12 in order to get the currentLeaderEpoch field, which we need in order to support OffsetFetch v6-7, which in turn we need because it includes the groupInstanceId field that's needed for KIP-345.
  2. Add support for OffsetFetch v7
  3. Change the behavior of a consumer leaving the group to not issue a LeaveGroup request if the instance id is set.
  4. Expose a way of configuring the instance id on the consumer.
  5. Update the partition assigner to take into account the instance id (the KIP has a good example of how) I have not really mapped out the work for KIP-320, so I don't know how big or small it is, but it's definitely the first step needed. We have another issue open for that https://github.com/tulios/kafkajs/issues/818

I'd love to help get this over the line.

Rez0k commented 1 year ago

can we advance this pr? we can really use this ability

swan2488 commented 1 year ago

This feature will be very helpful in our case. Is there any way to speed up the pr

abbccdda commented 1 year ago

Same here, this is really useful.

olfedorenk commented 1 year ago

This pr will help us a lot

usbtrs commented 1 year ago

Agree, that this feature will help many developers

Gekeris commented 1 year ago

Please don't delay this pr. I need it

larysakutyrkina commented 1 year ago

+1, would help a lot with a current project

Exc1usive commented 1 year ago

@sandeepkumarcel check please comments, realy waiting for this PR

priyesh2609 commented 9 months ago

@sandeepkumarcel have you tested this PR somewhere? if yes, then let us know, at least I am ok to use your forked version in my use case. Thanks 🙇