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
KIP-455: Implement alterPartitionReassignments/listPartitionReassignments admin methods #1419
KIP-455: Implement alterPartitionReassignments/listPartitionReassignments admin methods #1419
Conversation
Update fixtures for alterPartitionReassigments Update request and response for alterPartitionReassignments to take into account TAG_BUFFERS, COMPACT_ARRAYS, and COMPACT Strings
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.
I'm afraid I haven't had time to go through this really thoroughly yet, as I'm busy with my real job, but there are a couple of things that will need to be looked at. Most importantly the handling of the tagged fields in the response header, since the current implementation won't work if we receive any tagged field, even though the API version indicates that we support them.
src/protocol/requests/alterPartitionReassignments/v0/request.spec.js
Outdated
Show resolved
Hide resolved
Co-authored-by: Tommy Brunn <tommy.brunn@gmail.com>
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.
Looks good. I just have a question about what looks like a bug in reading uvarintbytes, and then we're good to go.
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.
Just noticed the mixup of nullable and non-nullable fields.
This PR adds the protocols and methods for alterPartitionReassignments and listPartitionReassignments referenced in #1181. There are also a few updates to the encoder and decoder for working with the types added by KIP-482:
One note on tagged fields. Requests and responses with tagged fields have them in two places:
The implication of this is that if there are no tagged fields a zero byte needs to be written/read in multiple places depending on the rest of the request/response.
Hope that helps with how to handle any protocols that use the tagged fields or compact types.