Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Send socket data via non-blocking IO with send buffer (#1912) | Dana Powers | 2019-09-29 | 1 | -8/+72 |
| | |||||
* | Rely on socket selector to detect completed connection attempts (#1909) | Dana Powers | 2019-09-28 | 1 | -5/+5 |
| | |||||
* | Improve connection lock handling; always use context manager (#1895) | Dana Powers | 2019-09-03 | 1 | -126/+151 |
| | |||||
* | Update conn.py | Cameron Boulton | 2019-08-16 | 1 | -0/+3 |
| | |||||
* | Fix minor typo (#1865) | Carson Ip | 2019-07-14 | 1 | -1/+1 |
| | |||||
* | Catch TimeoutError in BrokerConnection send/recv (#1820) | Dana Powers | 2019-05-29 | 1 | -6/+7 |
| | |||||
* | Do not call state_change_callback with lock (#1775) | Dana Powers | 2019-04-02 | 1 | -13/+21 |
| | |||||
* | Additional BrokerConnection locks to synchronize protocol/IFR state (#1768) | Dana Powers | 2019-04-02 | 1 | -61/+85 |
| | |||||
* | Return connection state explicitly after close in connect() (#1778) | Dana Powers | 2019-04-02 | 1 | -1/+3 |
| | |||||
* | Reset reconnect backoff on SSL connection (#1777) | Dana Powers | 2019-04-02 | 1 | -0/+1 |
| | |||||
* | Fix possible AttribueError during conn._close_socket (#1776) | Dana Powers | 2019-04-01 | 1 | -1/+1 |
| | |||||
* | Revert 703f0659 / fix 0.8.2 protocol quick detection (#1763) | Dana Powers | 2019-03-27 | 1 | -3/+0 |
| | |||||
* | Update sasl configuration docstrings | Dana Powers | 2019-03-23 | 1 | -4/+4 |
| | |||||
* | Support SASL OAuthBearer Authentication (#1750) | Phong Pham | 2019-03-22 | 1 | -3/+57 |
| | |||||
* | Allow configuration of SSL Ciphers (#1755) | Dana Powers | 2019-03-21 | 1 | -1/+10 |
| | |||||
* | Wrap SSL sockets after connecting (#1754) | Dana Powers | 2019-03-21 | 1 | -19/+11 |
| | |||||
* | Fix race condition in protocol.send_bytes (#1752) | Filip Stefanak | 2019-03-21 | 1 | -1/+2 |
| | |||||
* | Fix default protocol parser version | Dana Powers | 2019-03-13 | 1 | -0/+3 |
| | |||||
* | Don't recheck version if api_versions data is already cached (#1738) | Dana Powers | 2019-03-13 | 1 | -0/+3 |
| | | | I noticed during local testing that version probing was happening twice when connecting to newer broker versions. This was because we call check_version() once explicitly, and then again implicitly within get_api_versions(). But once we have _api_versions data cached, we can just return it and avoid probing versions a second time. | ||||
* | Catch thrown OSError by python 3.7 when creating a connection (#1694) | Daniel Johansson | 2019-03-12 | 1 | -0/+3 |
| | |||||
* | Synchronize puts to KafkaConsumer protocol buffer during async sends | Dana Powers | 2019-03-12 | 1 | -21/+36 |
| | |||||
* | Do network connections and writes in KafkaClient.poll() (#1729) | Dana Powers | 2019-03-08 | 1 | -19/+30 |
| | | | | | | * Add BrokerConnection.send_pending_requests to support async network sends * Send network requests during KafkaClient.poll() rather than in KafkaClient.send() * Dont acquire lock during KafkaClient.send if node is connected / ready * Move all network connection IO into KafkaClient.poll() | ||||
* | Timeout all unconnected conns (incl SSL) after request_timeout_ms | Dana Powers | 2019-01-13 | 1 | -6/+8 |
| | |||||
* | Fix SSL connection testing in Python 3.7 | Ben Weir | 2019-01-03 | 1 | -0/+7 |
| | |||||
* | Stop using broker-errors for client-side problems | Jeff Widman | 2018-11-18 | 1 | -1/+1 |
| | | | | | | | | | | | | | `UnsupportedVersionError` is intended to indicate a server-side error: https://github.com/dpkp/kafka-python/blob/ba7372e44ffa1ee49fb4d5efbd67534393e944db/kafka/errors.py#L375-L378 So we should not be raising it for client-side errors. I realize that semantically this seems like the appropriate error to raise. However, this is confusing when debugging... for a real-life example, see https://github.com/Parsely/pykafka/issues/697. So I strongly feel that server-side errors should be kept separate from client-side errors, even if all the client is doing is proactively protecting against hitting a situation where the broker would return this error. | ||||
* | Add KafkaAdmin class | Richard Lee | 2018-10-24 | 1 | -0/+10 |
| | | | | | | Requires cluster version > 0.10.0.0, and uses new wire protocol classes to do many things via broker connection that previously needed to be done directly in zookeeper. | ||||
* | add kerberos domain name config for gssapi sasl mechanism handshake (#1542) | the-sea | 2018-08-31 | 1 | -2/+6 |
| | |||||
* | add support for smaller topic metadata fetch during bootstrap (#1541) | Ning Xie | 2018-08-31 | 1 | -3/+3 |
| | |||||
* | Improve connection handling when bootstrap list is invalid (#1507) | Dana Powers | 2018-05-26 | 1 | -6/+3 |
| | | | | * only perform single dns lookup for connect_blocking() * fix blocking timeout in check_version() | ||||
* | Stop shadowing `ConnectionError` | Jeff Widman | 2018-05-23 | 1 | -14/+14 |
| | | | | | | | | | | In Python3, `ConnectionError` is a native exception. So rename our custom one to `KafkaConnectionError` to prevent accidentally shadowing the native one. Note that there are still valid uses of `ConnectionError` in this code. They already expect a native Python3 `ConnectionError`, and also already handle the Python2 compatibility issues. | ||||
* | Improve BrokerConnection initialization (#1475) | Rômulo Rosa Furtado | 2018-04-15 | 1 | -1/+1 |
| | |||||
* | Fix KafkaConsumer docstring for request_timeout_ms default (#1459) | Dana Powers | 2018-03-23 | 1 | -2/+2 |
| | |||||
* | Connect with sockaddrs to support non-zero ipv6 scope ids (#1433) | Dana Powers | 2018-03-09 | 1 | -13/+10 |
| | |||||
* | Re-enable logging during broker version check (#1430) | Dana Powers | 2018-03-09 | 1 | -12/+1 |
| | |||||
* | Connection logging cleanups (#1432) | Dana Powers | 2018-03-09 | 1 | -4/+5 |
| | |||||
* | Add BrokerConnection.connect_blocking() (#1411) | Dana Powers | 2018-03-09 | 1 | -17/+47 |
| | |||||
* | Short-circuit BrokerConnection.close() if already disconnected (#1424) | Dana Powers | 2018-03-09 | 1 | -3/+6 |
| | |||||
* | Only increase reconnect backoff if all addrinfos have been tried (#1423) | Dana Powers | 2018-03-09 | 1 | -1/+4 |
| | |||||
* | Close leaked selector in version check (#1425) | Dana Powers | 2018-03-09 | 1 | -0/+1 |
| | |||||
* | Make BrokerConnection .host / .port / .afi immutable, use _sock_* attributes ↵ | Dana Powers | 2018-03-09 | 1 | -15/+25 |
| | | | | for current lookups (#1422) | ||||
* | Fix BrokerConnection.connection_delay() to return milliseconds (#1414) | Dana Powers | 2018-03-08 | 1 | -2/+9 |
| | |||||
* | use absolute imports everywhere (#1362) | Kevin Tindall | 2018-02-06 | 1 | -3/+3 |
| | |||||
* | Add Request/Response structs for kafka broker 1.0.0 | Dana Powers | 2018-02-06 | 1 | -0/+1 |
| | |||||
* | Fix for Python 3 byte string handling in SASL auth (#1353) | Christophe Lecointe | 2018-01-24 | 1 | -2/+2 |
| | |||||
* | Honor reconnect_backoff in conn.connect() (#1342) | Dana Powers | 2018-01-11 | 1 | -1/+1 |
| | | | * Honor reconnect_backoff in conn.connect() | ||||
* | Read all available socket bytes (#1332) | Dana Powers | 2018-01-10 | 1 | -22/+22 |
| | | | | * Recv all available network bytes before parsing * Add experimental support for configuring socket chunking parameters | ||||
* | Improve KafkaConsumer cleanup (#1339) | Dana Powers | 2018-01-10 | 1 | -3/+9 |
| | |||||
* | Fix typo in _try_authenticate_plain (#1333) | everpcpc | 2017-12-28 | 1 | -1/+1 |
| | |||||
* | Add security layer negotiation to the GSSAPI authentication. (#1283) | Andre Araujo | 2017-12-26 | 1 | -22/+43 |
| | | | | | | | | | | | | | | | | | | When trying to establish a connection with Kafka using SASL with the GSSAPI authentication mechanism the connection was hanging an timing out after 60 secons. On the Kafka broker side I noticed that the SaslServerAuthenticator was going from the AUTHENTICATE to the FAILED state. The GSSAPI auth implementation was missing the second handshake defined in RFC 2222, which happens after the security context is established. This handshake is used by the client and server to negotiate the security layer (QoP) to be used for the connection. Kafka currently only support the "auth" QoP, so the implementation in this commit doesn't make it configurable, but this can be extended later. With this change I was able to successfully connect to a Kerberos-enabled Kafka broker using the SASL_PLAINTEXT protocol and the GSSAPI mechanism. | ||||
* | KAFKA-3888 Use background thread to process consumer heartbeats (#1266) | Dana Powers | 2017-12-21 | 1 | -1/+1 |
| |