diff options
author | Tincu Gabriel <gabi@aiven.io> | 2020-05-05 13:29:23 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-05-05 14:29:23 +0300 |
commit | 6fc008137c75c751a9fbea3e0ef36d2870119c7b (patch) | |
tree | 667c4cb56dd57c819e8a73387c6689383a5ac564 /kafka/protocol/admin.py | |
parent | f9e0264e0b0f8d92afb6177d51976795e3bdbcd8 (diff) | |
download | kafka-python-6fc008137c75c751a9fbea3e0ef36d2870119c7b.tar.gz |
Add logic for inferring newer broker versions (#2038)
* Add logic for inferring newer broker versions
- New Fetch / ListOffsets request / response objects
- Add new test cases to inferr code based on mentioned objects
- Add unit test to check inferred version against whatever resides in KAFKA_VERSION
- Add new kafka broker versions to integration list
- Add more kafka broker versions to travis task list
- Add support for broker version 2.5 id
* Implement PR change requests: fewer versions for travis testing, remove unused older versions for inference code, remove one minor version from known server list
Do not use newly created ACL request / responses in allowed version lists, due to flexible versions enabling in kafka actually requiring a serialization protocol header update
Revert admin client file change
Diffstat (limited to 'kafka/protocol/admin.py')
-rw-r--r-- | kafka/protocol/admin.py | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/kafka/protocol/admin.py b/kafka/protocol/admin.py index b2694dc..af88ea4 100644 --- a/kafka/protocol/admin.py +++ b/kafka/protocol/admin.py @@ -477,6 +477,13 @@ class DescribeAclsResponse_v1(Response): ('permission_type', Int8))))) ) + +class DescribeAclsResponse_v2(Response): + API_KEY = 29 + API_VERSION = 2 + SCHEMA = DescribeAclsResponse_v1.SCHEMA + + class DescribeAclsRequest_v0(Request): API_KEY = 29 API_VERSION = 0 @@ -490,6 +497,7 @@ class DescribeAclsRequest_v0(Request): ('permission_type', Int8) ) + class DescribeAclsRequest_v1(Request): API_KEY = 29 API_VERSION = 1 @@ -504,6 +512,17 @@ class DescribeAclsRequest_v1(Request): ('permission_type', Int8) ) + +class DescribeAclsRequest_v2(Request): + """ + Enable flexible version + """ + API_KEY = 29 + API_VERSION = 2 + RESPONSE_TYPE = DescribeAclsResponse_v2 + SCHEMA = DescribeAclsRequest_v1.SCHEMA + + DescribeAclsRequest = [DescribeAclsRequest_v0, DescribeAclsRequest_v1] DescribeAclsResponse = [DescribeAclsResponse_v0, DescribeAclsResponse_v1] @@ -862,3 +881,4 @@ CreatePartitionsRequest = [ CreatePartitionsResponse = [ CreatePartitionsResponse_v0, CreatePartitionsResponse_v1, ] + |