summaryrefslogtreecommitdiff
path: root/redis/connection.py
Commit message (Collapse)AuthorAgeFilesLines
...
* | ignore errors raised in SocketBuffer's close method. See #633.Andy McCurdy2015-11-021-2/+10
| |
* | cleanupAndy McCurdy2015-11-021-7/+2
| |
* | decreased length of exception class retrieving lineth13f2015-10-261-1/+4
| |
* | parsing 'max number of clients reached' as ConnectionErrorth13f2015-10-261-2/+9
| |
* | removed the proactive check in HiredisParser for a line endingAndy McCurdy2015-09-281-9/+0
|/ | | | | it turns out just calling into hiredis to test this is faster than doing string compare in Python. fixes #615 and #650.
* fix: Connection.encode complains when value is an object having unicode ↵Eric Du2015-05-041-1/+1
| | | | characters in its printable representation
* Handle percent-encoded URLs in parsing codePaul Keene2015-02-091-8/+24
|
* Merge branch 'pr/520'Andy McCurdy2014-08-151-2/+3
|\
| * pep8Andy McCurdy2014-08-151-1/+2
| |
| * add optional "timeout" parameter to pubsub.can_readAndy Isaacson2014-08-121-2/+2
| |
* | pep8Andy McCurdy2014-08-141-1/+2
| |
* | handle buffer edgecaseJosh Owen2014-08-131-1/+1
|/
* fix for pipelines when sending large valuesAndy McCurdy2014-07-281-3/+3
|
* bytearray didn't work with socket.recv_into in python 2.6Andy McCurdy2014-07-211-7/+6
|
* cleanup and optimizations to new bytearray codeAndy McCurdy2014-07-211-23/+25
|
* Merge branch 'master' into pr/505Andy McCurdy2014-07-211-10/+25
|\ | | | | | | | | Conflicts: redis/connection.py
| * check for the server closing a connection that's compatible with Python 3Andy McCurdy2014-07-061-2/+2
| | | | | | | | fixes #508
| * Consistent option names for encoding and encoding_errors. Fixes #510Andy McCurdy2014-07-031-0/+11
| |
| * better pack_commands algorithm with less string joiningAndy McCurdy2014-07-031-9/+13
| |
* | Added support for reusing a bytearray buffer when parsing with hiredis-py 0.1.4tzickel2014-06-271-9/+32
|/
* fix python3 compatAndy McCurdy2014-06-161-2/+2
|
* pack multiple commands in a pipeline into larger strings.Andy McCurdy2014-06-161-0/+16
| | | | fixes #495
* using repr() on a long value includes the trailing "L". use str() instead.Andy McCurdy2014-05-281-2/+4
| | | | fixes #484
* Don't retry commands that fail due to a socket.timeout by default.Andy McCurdy2014-05-271-3/+14
| | | | | | | | | | | | | | | | | | | | Users now have the ability about how socket.timeout errors are handled. Previously socket.timeout errors were handled just like any other socket error in that the command would be retried once. This createed a potential race condition when the client sends a command to a busy Redis server that can't reply faster than the client's `socket_timeout` option. In this case, the server will still eventually process the command. There's now a `retry_on_timeout` option that's set to False by default. If `retry_on_timeout` is False, any socket.timeout error will raise a TimeoutError exception. If `retry_on_timeout` is set to True, the client will retry executing the command once just like other socket.error exceptions. TODO: Write better tests for this code. TODO: Much of this logic could/should be moved to the ConnectionPool or Connection objects. Fixes #261
* it's ok if max_connections is a long.Andy McCurdy2014-05-261-9/+5
|
* consistent naming, #446Andy McCurdy2014-05-141-12/+13
|
* added socket_connect_timeout and socket_keepalive options. fixed #353Andy McCurdy2014-05-131-11/+43
|
* allow cert_reqs to be a string and convert it to the appropriate SSL constant.Andy McCurdy2014-05-131-0/+10
|
* construct SSL connections from URLs. #446Andy McCurdy2014-05-131-0/+9
|
* added the ablity to pass ssl options to client classes. #446Andy McCurdy2014-05-131-4/+6
|
* cleaner 2.6 fallback code for querystring parsing on python 2.6Andy McCurdy2014-05-121-7/+11
|
* Merge branch 'pr/446'Andy McCurdy2014-05-121-1/+33
|\ | | | | | | | | | | Conflicts: redis/client.py redis/connection.py
| * add SSL supportOran Agra2014-03-221-1/+22
| |
* | string literals no longer get encoded before being send to RedisAndy McCurdy2014-05-121-10/+43
| | | | | | | | | | | | | | | | | | | | | | | | previously all pieces of a command, including the command name and literal options to it (such as "WITHSCORES" on ZSET commands) would get encoded. this works fine on utf-8, but other encodings like utf-16 break. a new Token class has been introduced that command names and literal options get wrapped. the encoder falls back to the latin-1 encoding for these literals as they are all ascii. fixes #430
* | work around python2.6's broken urlparse implementationAndy McCurdy2014-05-111-1/+11
| |
* | Cleaned up URL parsing code, now returns ConnectionPool instances.Andy McCurdy2014-05-111-67/+49
| | | | | | | | | | | | | | StrictRedis.from_url() now creations a connection pool instance and passes that as the connection_pool argument to the client class. Cleaned up the test suite for URL parsing and BlockingConnectionPool tests
* | remove debuggingAndy McCurdy2014-05-111-1/+1
| |
* | cleanup ConnectionPool and BlockingConnectionPool.Andy McCurdy2014-05-111-89/+32
| |
* | Merge branch 'pr/436'Andy McCurdy2014-05-111-1/+104
|\ \ | | | | | | | | | | | | Conflicts: tests/test_connection_pool.py
| * | restore a feature that was inadvertently removedwil paredes2014-02-091-1/+1
| | | | | | | | | | | | * fixed parsing URLs without a scheme, e.g. "//localhost:6379"
| * | pep8 fixeswil paredes2014-02-091-6/+6
| | |
| * | add from_url() classmethod to ConnectionPool and BlockingConnectionPool, add ↵wil paredes2014-02-091-1/+104
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ability to parse UNIX domain socket URLs * add redis.connection.parse_url() * moved code from StrictRedis.from_url() to here * add ability to parse UNIX domain socket URLs * return keyword args to pass to StrictRedis.__init__() * StrictRedis.from_url() - call parse_url() to get keyword args * add classmethod from_url() to ConnectionPool and BlockingConnectionPool * get keyword args from parse_url() * touch up keyword args from StrictRedis format for connection pool * tests/test_connection_pool.py * add from_url() tests for ConnectionPool and BlockingConnectionPool * add from_url() tests for a single Redis client object
* | | Add TCP_NODELAY to TCP sockets.tzickel2014-05-091-0/+1
| | |
* | | Force `port` to an int in case someone passes it as a string. Fixes #292Andy McCurdy2014-05-071-1/+1
| | |
* | | SentinelManagedConnections to master servers disconnect on READONLY errors.Andy McCurdy2014-05-061-0/+2
| | | | | | | | | | | | | | | Any attempt to reconnect will force all connections in that pool to update their connections to the new master. Fixes #435
* | | better performance of pack_command and send_packed_command when dealing with ↵Andy McCurdy2014-04-291-6/+19
| | | | | | | | | | | | large values
* | | receiving empty strings from socket.recv indicates the server hungup.Andy McCurdy2014-04-291-0/+6
| | | | | | | | | | | | fixes #386 and #465. Thanks David Lawrence.
* | | tiny benchmark framework and a benchmark to determine the optimal number of ↵Andy McCurdy2014-04-281-2/+2
| | | | | | | | | | | | bytes to read from a socket
* | | accumulate data based on its length rather than the size of the bufferAndy McCurdy2014-04-281-6/+14
| | |
* | | socket_read_size can now be customizedAndy McCurdy2014-04-211-13/+18
| | |