Skip to content

pinning the api_version in KafkaAdminClient can fail #1675

Closed
@jeffwidman

Description

@jeffwidman

This is crashing when I try to pin the version in ipython, looks like a problem with the api_version stuff:

In [6]: ka = KafkaAdminClient(bootstrap_servers="kafka01.stg.local", api_version=(0,11,0))
---------------------------------------------------------------------------
TypeError                                 Traceback (most recent call last)
<ipython-input-6-1a8b163b5b87> in <module>()
----> 1 ka = KafkaAdminClient(bootstrap_servers="kafka01.stg.local", api_version=(0,11,0))

/Users/jeffwidman/.virtualenvs/datadog-kp-dev/lib/python2.7/site-packages/kafka/admin/client.pyc in __init__(self, **configs)
    200
    201         self._closed = False
--> 202         self._refresh_controller_id()
    203         log.debug("KafkaAdminClient started.")
    204

/Users/jeffwidman/.virtualenvs/datadog-kp-dev/lib/python2.7/site-packages/kafka/admin/client.pyc in _refresh_controller_id(self)
    244     def _refresh_controller_id(self):
    245         """Determine the Kafka cluster controller."""
--> 246         version = self._matching_api_version(MetadataRequest)
    247         if 1 <= version <= 6:
    248             request = MetadataRequest[version]()

/Users/jeffwidman/.virtualenvs/datadog-kp-dev/lib/python2.7/site-packages/kafka/admin/client.pyc in _matching_api_version(self, operation)
    225         """
    226         version = min(len(operation) - 1,
--> 227                       self._client.get_api_versions()[operation[0].API_KEY][1])
    228         if version < self._client.get_api_versions()[operation[0].API_KEY][0]:
    229             # max library version is less than min broker version. Currently,

TypeError: 'NoneType' object has no attribute '__getitem__'

Version pinning is working fine on kafka.client_async.KafkaClient

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions