| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
Remove workaround for handling unicode with older Pythons.
|
|
|
|
|
| |
* now uses unique string tokens to claim lock ownership
* added extend() method to extend the timeout on an already acquired lock
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
| |
Any attempt to reconnect will force all connections in that pool to update
their connections to the new master. Fixes #435
|
|
|
|
|
|
|
|
|
| |
ResponseErrors generated by commands executed in a pipeline now includes the
command position in the pipeline and the actual command sent to the Redis
server. For example:
Command # 3 (LPUSH c 3) of pipeline caused error: <actual error message from
Redis server>
|
| |
|
|
|
|
| |
errors.
|
|
|
|
|
|
| |
A simple patch to enable pep8 in tox and format our code properly.
Signed-off-by: Paul Belanger <paul.belanger@polybeacon.com>
|
|\
| |
| |
| |
| |
| |
| | |
mattrobenolt-master
Conflicts:
redis/exceptions.py
|
| |
| |
| |
| |
| |
| |
| | |
This is important if you want to detect if there was an issue that resulted from the server being broken specifically, as opposed to the client issuing a bad command.
See: https://github.com/disqus/nydus/pull/31
Also, let me know if there are other exceptions that could extend the base `ServerError`. These are just the two that stood out.
|
| |
| |
| |
| | |
server change: https://groups.google.com/forum/?hl=en&fromgroups=#!topic/redis-db/VUiEFT8U8U0
|
| | |
|
|/ |
|
| |
|
| |
|
| |
|
|
|
|
| |
and pipelining.
|
|
|