summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* StopIteration when consumer closedissue-1219-closed-consumerDana Powers2019-12-291-0/+2
|
* Raise AssertionError if consumer closed in poll()Dana Powers2019-12-291-0/+1
|
* Improve docs for reconnect_backoff_max_ms (#1976)Dana Powers2019-12-285-25/+30
|
* xfail test_describe_configs_topic_resource_returns_configs (Issue #1929)Dana Powers2019-12-281-0/+3
|
* Fix simple typo: managementment -> managementTim Gates2019-12-081-1/+1
| | | | Closes #1965
* Fix typosCarson Ip2019-11-089-11/+11
|
* Fix doc import paths (#1933)Jeff Widman2019-10-212-2/+2
| | | Since `SimpleClient` was deleted, the new `KafkaClient` currently resides at `kafka.client_async.KafkaClient`... that may get updated in the future, so instead just import the `KafkaClient` from the top-level.
* Remove unused/empty .gitsubmodules file (#1928)Jeff Widman2019-10-111-0/+0
| | | | | This is a legacy file that has not been used in a long time. It's leftover from when the tests used git submodules to pull down kafka source... today they use shell scripts to pull down the binaries.
* Remove deprecated `ConnectionError` (#1816)Jeff Widman2019-10-111-4/+0
| | | | | | 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.
* Remove SimpleClient, Producer, Consumer, Unittest (#1196)Jeff Widman2019-10-1153-7392/+98
| | | | | | | | | | | | | | | | | | 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 (#1869)Jeppe Andersen2019-10-112-15/+112
| | | | | | | * 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.
* convert test_admin_integration to pytest (#1923)Ulrik Johansson2019-10-073-103/+90
|
* Update docstring to match conn.py's (#1921)David Bouchare2019-10-031-1/+2
|
* Release 1.4.7 (#1916)1.4.7Dana Powers2019-09-303-7/+121
|
* Add KAFKA 2.3.0 to test matrix (#1915)Dana Powers2019-09-3021-9/+975
|
* Follow up to PR 1782 -- fix tests (#1914)Dana Powers2019-09-302-4/+4
|
* Improve/refactor bootstrap_connectedDana Powers2019-09-304-14/+22
|
* Added a function to determine if bootstrap is successfully connected (#1876)PandllCom2019-09-302-7/+20
|
* Issue #1780 - Consumer hang indefinitely in fetcher._retrieve_offsets() due ↵Commander Dishwasher2019-09-303-12/+26
| | | | to topic deletion while rebalancing (#1782)
* Change coordinator lock acquisition order (#1821)Dana Powers2019-09-292-43/+39
|
* Send socket data via non-blocking IO with send buffer (#1912)Dana Powers2019-09-294-13/+108
|
* Do not use wakeup when sending fetch requests from consumer (#1911)Dana Powers2019-09-292-2/+2
|
* Rely on socket selector to detect completed connection attempts (#1909)Dana Powers2019-09-285-11/+15
|
* Wrap consumer.poll() for KafkaConsumer iteration (#1902)Dana Powers2019-09-283-11/+74
|
* Skip admin integration tests -- travis fixture issuesDana Powers2019-09-281-4/+7
|
* Update kafka.properties for ACL tests (0.11+ only)Dana Powers2019-09-287-18/+3
|
* Fix Admin Client api version checking; only test ACL integration on 0.11+Dana Powers2019-09-282-9/+18
|
* Fixup test_admin_integration test fixturesDana Powers2019-09-281-5/+14
|
* Add ACL api to KafkaAdminClient (#1833)Ulrik Johansson2019-09-2822-9/+674
|
* kafka-python: Fixed crc32c avilability on non-intel architectures. (#1904)ossdev072019-09-252-1/+2
| | | Signed-off-by: ossdev <ossdev@puresoftware.com>
* Improve connection lock handling; always use context manager (#1895)Dana Powers2019-09-031-126/+151
|
* Convert remaining `KafkaConsumer` tests to `pytest` (#1886)Jeff Widman2019-08-224-256/+284
| | | | | | | | 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 to 0.10.2.2 and 0.11.0.3 (#1890)Jeff Widman2019-08-228-4/+380
| | | | | Bump integration tests from Kafka: - 0.10.2.1 --> 0.10.2.2 - 0.11.0.2 --> 0.11.0.3
* Cleanup handling of KAFKA_VERSION env var in tests (#1887)Jeff Widman2019-08-2210-142/+65
| | | | | | | | | | | | | 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.
* Minor test cleanup (#1885)Jeff Widman2019-08-218-11/+25
| | | | Remove unused import, whitespace, etc. No functional changes, just cleaning it up so the diffs of later changes are cleaner.
* Reduce internal client poll timeout for consumer iterator interface (#1824)Dana Powers2019-08-161-3/+1
| | | 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.
* Update conn.pyCameron Boulton2019-08-161-0/+3
|
* tests: Use socket.SOCK_STREAM in assertionsIvan A. Melnikov2019-08-151-4/+4
| | | | | | | | | | | 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>
* Break FindCoordinator into request/response methodsJeff Widman2019-07-311-32/+48
| | | | | | | | | | | | | | | | | | 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.
* Fix minor typo (#1865)Carson Ip2019-07-142-2/+2
|
* Update link to upstream Kafka docsJeff Widman2019-07-111-1/+1
| | | the new consumer is now the standard consumer, so they dropped the `new_` from the anchor
* Add the `sasl_kerberos_domain_name` arg to `KafkaAdminClient`Jeff Widman2019-06-281-0/+3
| | | | | | 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.
* Update KafkaAdminClient DocsRob Cardy2019-06-211-1/+2
| | | Updated to include SASL_PLAINTEXT and SASL_SSL as options for security_protocol.
* Allow the coordinator to auto-commit for all api_version.Jay Chan2019-06-201-1/+1
|
* Break consumer operations into request / response methods (#1845)Jeff Widman2019-06-191-94/+155
| | | | | | | | | | 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.
* Use dedicated connection for group coordinator (#1822)Dana Powers2019-06-192-25/+17
| | | 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.
* Sanity test for consumer.topics() and consumer.partitions_for_topic()Brian Sang2019-06-041-0/+9
|
* Delay converting to secondsJeff Widman2019-05-301-2/+2
| | | | Delaying the conversion to seconds makes the code intent more clear.
* Reduce client poll timeout when no ifrsDana Powers2019-05-292-0/+15
|
* Catch TimeoutError in BrokerConnection send/recv (#1820)Dana Powers2019-05-291-6/+7
|