| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
to topic deletion while rebalancing (#1782)
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
| |
Signed-off-by: ossdev <ossdev@puresoftware.com>
|
| |
|
|
|
|
|
|
|
|
| |
This makes it so the only remaining use of `unittest` is in the old
tests of the deprecated `Simple*` clients. All `KafkaConsumer` tests are
migrated to `pytest`.
I also had to bump the test iterations up on one of the tests, I think there was a race condition there that was more commonly hit under pytest , planning to cleanup that in a followup PR. See https://github.com/dpkp/kafka-python/pull/1886#discussion_r316860737 for details.
|
|
|
|
|
| |
Bump integration tests from Kafka:
- 0.10.2.1 --> 0.10.2.2
- 0.11.0.2 --> 0.11.0.3
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Now that we are using `pytest`, there is no need for a custom decorator
because we can use `pytest.mark.skipif()`.
This makes the code significantly simpler. In particular, dropping the
custom `@kafka_versions()` decorator is necessary because it uses
`func.wraps()` which doesn't play nice with `pytest` fixtures:
- https://github.com/pytest-dev/pytest/issues/677
- https://stackoverflow.com/a/19614807/770425
So this is a pre-requisite to migrating some of those tests to using
pytest fixtures.
|
|
|
|
| |
Remove unused import, whitespace, etc. No functional changes, just
cleaning it up so the diffs of later changes are cleaner.
|
|
|
| |
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.
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
socket.SOCK_STREAM is platform specific and on some
platforms (most notably on Linux on MIPS) does not
equal 1; so it's better to use the constant where
appropriate.
This change fixes the tests on my MIPS32 LE machine.
Signed-off-by: Ivan A. Melnikov <iv@altlinux.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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`
|
| |
|
| |
|
| |
|
| |
|
| |
|