| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|
|
|
| |
error (#1975)
|
| |
|
|
|
|
| |
`api_version` (#1953)
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
Closes #1965
|
| |
|
|
|
|
|
|
| |
This has been deprecated for a bit in favor of `KafkaConnectionError`
because it conflicts with Python's built-in `ConnectionError`.
Time to remove it as part of cleaning up our old deprecated code.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
In the 2.0 release, we're removing:
* `SimpleClient`
* `SimpleConsumer`
* `SimpleProducer`
* Old partitioners used by `SimpleProducer`; these are superceded by
the `DefaultPartitioner`
These have been deprecated for several years in favor of `KafkaClient`
/ `KafkaConsumer` / `KafkaProducer`.
Since 2.0 allows breaking changes, we are removing the deprecated
classes.
Additionally, since the only usage of `unittest` was in tests for these
old Simple* clients, this also drops `unittest` from the library. All
tests now run under `pytest`.
|
|
|
|
|
|
|
| |
* Fix describe config for multi-broker clusters
Currently all describe config requests are sent to "least loaded node". Requests for broker configs must, however, be sent to the specific broker, otherwise an error is returned. Only topic requests can be handled by any node.
This changes the logic to send all describe config requests to the specific broker.
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
to topic deletion while rebalancing (#1782)
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
| |
More attempts to address heartbeat timing issues in consumers, especially with the iterator interface. Here we can reduce the `client.poll` timeout to at most the retry backoff (typically 100ms) so that the consumer iterator interface doesn't block for longer than the heartbeat timeout.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This splits the `_find_coordinator_id()` method (which is blocking) into
request generation / response parsing methods.
The public API does not change. However, this allows power users who are
willing to deal with risk of private methods changing under their feet
to decouple generating the message futures from processing their
responses. In other words, you can use these to fire a bunch of requests
at once and delay processing the responses until all requests are fired.
This is modeled on the work done in #1845.
Additionally, I removed the code that tried to leverage the error
checking from `cluster.add_group_coordinator()`. That code had changed
in #1822, removing most of the error checking... so it no longer adds
any value, but instead merely increases complexity and coupling.
|
| |
|
|
|
| |
the new consumer is now the standard consumer, so they dropped the `new_` from the anchor
|
|
|
|
|
|
| |
Previously the `sasl_kerberos_domain_name` was missing from the Admin
client. It is already present in the Consumer/Producer, and in all three
cases gets transparently passed down to the client.
|
|
|
| |
Updated to include SASL_PLAINTEXT and SASL_SSL as options for security_protocol.
|
| |
|
|
|
|
|
|
|
|
|
|
| |
This breaks some of the consumer operations into request generation /
response parsing methods.
The public API does not change. However, this allows power users who are
willing to deal with risk of private methods changing under their feet
to decouple generating the message futures from processing their
responses. In other words, you can use these to fire a bunch of request
at once and delay processing the responses until all requests are fired.
|
|
|
| |
This changes the coordinator_id to be a unique string, e.g., `coordinator-1`, so that it will get a dedicated connection. This won't eliminate lock contention because the client lock applies to all connections, but it should improve in-flight-request contention.
|
|
|
|
| |
Delaying the conversion to seconds makes the code intent more clear.
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
| |
The docs for `api_version_auto_timeout_ms` mention setting
`api_version='auto'` but that value has been deprecated for years in
favor of `api_version=None`.
Updating the docs for now, and will remove support for `'auto'` in next
major version bump.
|
| |
|
|
|
| |
If the cluster metadata object has no info about the topic, then issue a blocking metadata call to fetch it.
|
| |
|
|
|
|
|
| |
Use `futures` to parallelize calls to `_send_request_to_node()`
This allows queries that need to go to multiple brokers to be run in parallel.
|
|
|
| |
Now that the old zookeeper consumer has been completely deprecated/removed, these are no longer the "new consumer configs" but rather simply the "consumer configs"
|
|
|
|
|
|
| |
1. Remove unused variable: `partitions_for_topic`
2. No need to cast to list as `sorted()` already returns a list
3. Using `enumerate()` is cleaner than `range(len())` and handles assigning
`member`
|
| |
|
| |
|