-
Notifications
You must be signed in to change notification settings - Fork 812
Kafka 4.0 support #1379
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
base: main
Are you sure you want to change the base?
Kafka 4.0 support #1379
Conversation
af9aa5c
to
6bf481f
Compare
6bf481f
to
e2e2dfa
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thank you for this! The main feedback is it looks like ThrottleTime was actually added to CreateTopics responses in v2, not v1. I think if possible it would be good to ensure our tests cover both supported versions with this change. Additionally, we should add Kafka 4.0 to our circleci testing matrix to make sure the tests do actually succeed there
9145639
to
0fd6f96
Compare
0fd6f96
to
5a30e00
Compare
Looks like there are some additional issues with tests. I think these may have started with kafka 3.X and I started trying to dig into them here #1381 |
Thank you for addressing my feedback though, this PR looks good I just need to figure out the test issues before we can merge this |
3af579a
to
9926677
Compare
c3e2460
to
dc6328a
Compare
dc6328a
to
51771dd
Compare
What I am seeing in my PR is a lot of these errors in Kafka's logs that cause many requests to fail during tests
I've tried adding JVM_OPTS for increasing the heap size and I am still seeing the errors even with a huge amount of memory given to Kafka. I wonder if Kafka 4.0 is not stable yet, it seems like the heap size cannot be adjusted as expected and the memory usage is not predictable |
Yes, as you can see, such errors only occur when using |
Updated deprecated protocol fields for Apache Kafka 4.0 support:
While
Conn
does not useClient
, the "negotiateVersion" mechanism has been reused for backward compatibility.