Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Patch Release 2.0.12.0.1 | Dana Powers | 2020-02-19 | 1 | -1/+1 |
| | |||||
* | KAFKA-8962: Use least_loaded_node() for describe_topics() | Jeff Widman | 2020-02-16 | 1 | -15/+7 |
| | | | | | | | | | | | | | | | | | | | | | | | In KAFKA-8962 the `AdminClient.describe_topics()` call was changed from using the controller to using the `least_loaded_node()`: https://github.com/apache/kafka/commit/317089663cc7ff4fdfcba6ee434f455e8ae13acd#diff-6869b8fccf6b098cbcb0676e8ceb26a7R1540 As a result, no metadata request/response processing needs to happen through the controller, so it's safe to remove the custom error-checking. Besides, I don't think this error-checking even added any value because AFAIK no metadata response would return a `NotControllerError` because the recipient broker wouldn't realize the metadata request was intended for only the controller. Originally our admin client was implemented using the least-loaded-node, then later updated to the controller. So updating it back to least-loaded node is a simple case of reverting the associated commits. This reverts commit 7195f0369c7dbe25aea2c3fed78d2b4f772d775b. This reverts commit 6e2978edee9a06e9dbe60afcac226b27b83cbc74. This reverts commit f92889af79db08ef26d89cb18bd48c7dd5080010. | ||||
* | Fix topic error parsing in MetadataResponse | Jeff Tribble | 2020-02-15 | 1 | -6/+11 |
| | |||||
* | Bump version for development of next release | Dana Powers | 2020-02-10 | 1 | -1/+1 |
| | |||||
* | Release 2.0.02.0.0 | Dana Powers | 2020-02-10 | 1 | -1/+1 |
| | |||||
* | _send_request_to_controller returns a raw result, not a future | Tyler Lubeck | 2020-02-06 | 1 | -6/+6 |
| | |||||
* | Use the controller for topic metadata requests | Tyler Lubeck | 2020-02-06 | 1 | -6/+9 |
| | | | | Closes #1994 | ||||
* | Implement list_topics, describe_topics, and describe_cluster | Tyler Lubeck | 2020-02-06 | 1 | -6/+40 |
| | |||||
* | Implement methods to convert a Struct object to a pythonic object (#1951) | Tyler Lubeck | 2020-02-06 | 2 | -1/+37 |
| | | | Implement methods to convert a Struct object to a pythonic object | ||||
* | Remove unused import | Jeff Widman | 2020-02-05 | 1 | -1/+0 |
| | | | | | Forgot to remove this in https://github.com/dpkp/kafka-python/pull/1925 / ca2d76304bfe3900f995e6f0e4377b2ef654997e | ||||
* | Remove some dead code | Jeff Widman | 2020-02-05 | 3 | -196/+0 |
| | |||||
* | Fix slots usage and use more slots | Carson Ip | 2020-02-05 | 4 | -0/+26 |
| | | | | | Use empty slots for ABC classes, otherwise classes which inherit from them will still have __dict__. Also use __slots__ for more classes. | ||||
* | Do not log topic-specific errors in full metadata fetch (#1980) | Dana Powers | 2019-12-29 | 1 | -0/+4 |
| | |||||
* | Optionally return OffsetAndMetadata from consumer.committed(tp) (#1979) | Dana Powers | 2019-12-29 | 4 | -9/+16 |
| | |||||
* | Do not block on sender thread join after timeout in producer.close() (#1974) | Dana Powers | 2019-12-29 | 1 | -5/+1 |
| | |||||
* | Raise AssertionError if consumer closed in poll() (#1978) | Dana Powers | 2019-12-29 | 1 | -0/+3 |
| | |||||
* | Reset conn configs on exception in conn.check_version() (#1977) | Dana Powers | 2019-12-29 | 1 | -2/+7 |
| | |||||
* | Log retriable coordinator NodeNotReady, TooManyInFlightRequests as debug not ↵ | Dana Powers | 2019-12-29 | 1 | -2/+5 |
| | | | | error (#1975) | ||||
* | Implement __eq__ and __hash__ for ACL objects (#1955) | Tyler Lubeck | 2019-12-29 | 1 | -1/+33 |
| | |||||
* | Fixes KafkaAdminClient returning `IncompatibleBrokerVersion` when passing an ↵ | Ian Bucad | 2019-12-29 | 1 | -0/+1 |
| | | | | `api_version` (#1953) | ||||
* | Fix typo | Dana Powers | 2019-12-29 | 1 | -1/+1 |
| | |||||
* | Admin protocol updates (#1948) | Tyler Lubeck | 2019-12-29 | 2 | -30/+266 |
| | |||||
* | Style updates to scram sasl support | Dana Powers | 2019-12-29 | 2 | -78/+87 |
| | |||||
* | Enable SCRAM-SHA-256 and SCRAM-SHA-512 for sasl (#1918) | Swen Wenzel | 2019-12-29 | 5 | -35/+157 |
| | |||||
* | Improve docs for reconnect_backoff_max_ms (#1976) | Dana Powers | 2019-12-28 | 5 | -25/+30 |
| | |||||
* | Fix simple typo: managementment -> management | Tim Gates | 2019-12-08 | 1 | -1/+1 |
| | | | | Closes #1965 | ||||
* | Fix typos | Carson Ip | 2019-11-08 | 7 | -9/+9 |
| | |||||
* | Remove deprecated `ConnectionError` (#1816) | Jeff Widman | 2019-10-11 | 1 | -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 Widman | 2019-10-11 | 23 | -3408/+79 |
| | | | | | | | | | | | | | | | | | | 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 Andersen | 2019-10-11 | 1 | -14/+56 |
| | | | | | | | * 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. | ||||
* | Update docstring to match conn.py's (#1921) | David Bouchare | 2019-10-03 | 1 | -1/+2 |
| | |||||
* | Release 1.4.7 (#1916)1.4.7 | Dana Powers | 2019-09-30 | 1 | -1/+1 |
| | |||||
* | Follow up to PR 1782 -- fix tests (#1914) | Dana Powers | 2019-09-30 | 1 | -1/+2 |
| | |||||
* | Improve/refactor bootstrap_connected | Dana Powers | 2019-09-30 | 4 | -14/+22 |
| | |||||
* | Added a function to determine if bootstrap is successfully connected (#1876) | PandllCom | 2019-09-30 | 2 | -7/+20 |
| | |||||
* | Issue #1780 - Consumer hang indefinitely in fetcher._retrieve_offsets() due ↵ | Commander Dishwasher | 2019-09-30 | 2 | -8/+26 |
| | | | | to topic deletion while rebalancing (#1782) | ||||
* | Change coordinator lock acquisition order (#1821) | Dana Powers | 2019-09-29 | 2 | -43/+39 |
| | |||||
* | Send socket data via non-blocking IO with send buffer (#1912) | Dana Powers | 2019-09-29 | 3 | -12/+105 |
| | |||||
* | Do not use wakeup when sending fetch requests from consumer (#1911) | Dana Powers | 2019-09-29 | 1 | -1/+1 |
| | |||||
* | Rely on socket selector to detect completed connection attempts (#1909) | Dana Powers | 2019-09-28 | 3 | -9/+13 |
| | |||||
* | Wrap consumer.poll() for KafkaConsumer iteration (#1902) | Dana Powers | 2019-09-28 | 3 | -11/+74 |
| | |||||
* | Fix Admin Client api version checking; only test ACL integration on 0.11+ | Dana Powers | 2019-09-28 | 1 | -4/+10 |
| | |||||
* | Add ACL api to KafkaAdminClient (#1833) | Ulrik Johansson | 2019-09-28 | 4 | -9/+488 |
| | |||||
* | Improve connection lock handling; always use context manager (#1895) | Dana Powers | 2019-09-03 | 1 | -126/+151 |
| | |||||
* | Reduce internal client poll timeout for consumer iterator interface (#1824) | Dana Powers | 2019-08-16 | 1 | -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.py | Cameron Boulton | 2019-08-16 | 1 | -0/+3 |
| | |||||
* | Break FindCoordinator into request/response methods | Jeff Widman | 2019-07-31 | 1 | -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 Ip | 2019-07-14 | 2 | -2/+2 |
| | |||||
* | Update link to upstream Kafka docs | Jeff Widman | 2019-07-11 | 1 | -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 Widman | 2019-06-28 | 1 | -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. |