summaryrefslogtreecommitdiff
path: root/redis/asyncio/connection.py
Commit message (Collapse)AuthorAgeFilesLines
* Merge branch 'master' into cluster-fixesChayim2022-11-081-1/+1
|\
| * fix docs for password protected socket access (#2378)Robert Hofer2022-11-071-1/+1
| | | | | | Co-authored-by: dvora-h <67596500+dvora-h@users.noreply.github.com>
* | Updating retry object for existing and new connectionsBar Shaul2022-11-021-0/+6
| |
* | Cluster&AsyncCluster: Removed handling of timeouts/connection errors within ↵Bar Shaul2022-11-021-1/+1
|/ | | | the cluster loop, fixed "cannot pickle '_thread.lock' object" bug, added client's side failover handling improvements
* Remove the superflous SocketBuffer from asyncio PythonParser (#2418)Kristján Valur Jónsson2022-10-301-133/+37
| | | | | | | | | | | * Remove buffering from asyncio SocketBuffer and rely on on the underlying StreamReader * Skip the use of SocketBuffer in PythonParser * Remove SocketBuffer altogether * Code cleanup * Fix unittest mocking when SocketBuffer is gone
* fix: catch OSError on asyncio (#2412)송형근(Hyeongguen Song)/DnU2022-10-251-2/+2
|
* Simplify async timeouts and allowing `timeout=None` in ↵v4.4.0rc2Kristján Valur Jónsson2022-09-291-91/+47
| | | | | | | | | | | | | | | | | | | `PubSub.get_message()` to wait forever (#2295) * Avoid an extra "can_read" call and use timeout directly. * Remove low-level read timeouts from the Parser, now handled in the Connection * Allow pubsub.get_message(time=None) to block. * update Changes * increase test timeout for robustness * expand with statement to avoid invoking null context managers. remove nullcontext * Remove unused import
* Dev/no can read (#2360)Kristján Valur Jónsson2022-09-291-31/+20
| | | | | | | | * make can_read() destructive for simplicity, and rename the method. Remove timeout argument, always timeout immediately. * don't use can_read in pubsub * connection.connect() now has its own retry, don't need it inside a retry loop
* Add `nowait` flag to `asyncio.Connection.disconnect()` (#2356)Kristján Valur Jónsson2022-09-291-10/+11
| | | | | | | | | | | | | | * Don't wait for disconnect() when handling errors. This can result in other errors such as timeouts. * add CHANGES * Update redis/asyncio/connection.py Co-authored-by: Aarni Koskela <akx@iki.fi> * await a task to try to diagnose unittest failures in CI Co-authored-by: Aarni Koskela <akx@iki.fi>
* Catch `Exception` and not `BaseException` in the `Connection` (#2104)Kristján Valur Jónsson2022-09-291-5/+3
| | | | | | | * Add failing unittests for passing BaseException through * Resolve failing unittest * Remove redundant checks for asyncio.CancelledError
* Dev/no lock (#2308)Kristján Valur Jónsson2022-09-281-35/+0
| | | | | * Remove async lock in asyncio.Connection.read_response * Skip concurrent-commands test on non-pooled connections
* Handle auth errors for newer versions of Redis. (#2325) (#2329)Luca Cillario2022-08-301-0/+11
|
* Drop python 3.6 support (#2306)dvora-h2022-07-271-17/+8
|
* fix: workaround asyncio bug on connection reset by peer (#2259)Mehdi ABAAKOUK2022-07-241-1/+10
| | | Fixes #2237
* fix is_connected (#2278)dvora-h2022-07-211-1/+1
|
* Use retry mechanism in async version of Connection objects (#2271)szumka2022-07-211-1/+5
|
* Fix retries in async mode (#2180)Eric Lemoine2022-06-191-0/+17
| | | | | | | | | * Avoid mutating a global retry_on_error list * Make retries config consistent in sync and async * Fix async retries * Add new TestConnectionConstructorWithRetry tests
* update black to 22.3.0 (#2171)Utkarsh Gupta2022-05-301-1/+1
|
* async_cluster: add/update typing (#2195)Utkarsh Gupta2022-05-301-4/+4
| | | | | | | * async_cluster: add/update typing * async_cluster: update cleanup_kwargs with kwargs from async Connection * async_cluster: properly remove old nodes
* Add Async RedisCluster (#2099)Utkarsh Gupta2022-05-081-57/+83
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Copy Cluster Client, Commands, Commands Parser, Tests for asyncio * Async Cluster Tests: Async/Await * Add Async RedisCluster * cluster: use ERRORS_ALLOW_RETRY from self.__class__ * async_cluster: rework redis_connection, initialize, & close - move redis_connection from NodesManager to ClusterNode & handle all related logic in ClusterNode class - use Locks while initializing or closing - in case of error, close connections instead of instantly reinitializing - create ResourceWarning instead of manually deleting client object - use asyncio.gather to run commands/initialize/close in parallel - inline single use functions - fix test_acl_log for py3.6 * async_cluster: add types * async_cluster: add docs * docs: update sphinx & add sphinx_autodoc_typehints * async_cluster: move TargetNodesT to cluster module * async_cluster/commands: inherit commands from sync class if possible * async_cluster: add benchmark script with aredis & aioredis-cluster * async_cluster: remove logging * async_cluster: inline functions * async_cluster: manage Connection instead of Redis Client * async_cluster/commands: optimize parser * async_cluster: use ensure_future & generators for gather * async_conn: optimize * async_cluster: optimize determine_slot * async_cluster: optimize determine_nodes * async_cluster/parser: optimize _get_moveable_keys * async_cluster: inlined check_slots_coverage * async_cluster: update docstrings * async_cluster: add concurrent test & use read_response/_update_moved_slots without lock Co-authored-by: Chayim <chayim@users.noreply.github.com>
* Replace OSError exceptions from `can_read` with `redis.ConnectionError` (#2140)Kristján Valur Jónsson2022-05-081-1/+7
| | | | | | | * Replace OSError exceptions from `can_read` with `redis.ConnectionError` * Fix formatting * Revert unintended formatting change
* always clear reference to closed reader/writer (#2077)Bea Steers2022-04-041-2/+3
| | | | | * always clear reference to reader/writer * add #2065 to changes
* Add support to use certificates from string in ssl connection (#2048)dvora-h2022-03-141-2/+11
| | | | | | | | | * ssl string cert * fix async test * linters * change test name
* redis_connect_func (#2046)Lazaros Toumanidis2022-03-141-0/+2
|
* Add Async Support (#1899)Andrew Chen Wang2022-02-221-0/+1707
Co-authored-by: Chayim I. Kirshen <c@kirshen.com> Co-authored-by: dvora-h <dvora.heller@redis.com>