You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository has been archived by the owner on Feb 21, 2023. It is now read-only.
If an application has a connection break with the network, it accumulates broken connections with the Redis server and tries to reuse them to execute commands. This is due to the fact that the connect() methods do not check whether an exception is set in the StreamReaders:
classConnection:
asyncdefconnect(self):
"""Connects to the Redis server if not already connected"""ifself.is_connected: # <-- self._reader may contain an exception (e.g. OSError No route to host).return
classSentinelManagedConnection:
asyncdefconnect(self):
ifself._reader: # <-- self._reader may contain an exception (e.g. OSError No route to host).return# already connected
This cases should be handled.
To Reproduce
Initialize base Redis client or Sentinel client, connect to Redis server
Describe the bug
If an application has a connection break with the network, it accumulates broken connections with the Redis server and tries to reuse them to execute commands. This is due to the fact that the connect() methods do not check whether an exception is set in the StreamReaders:
This cases should be handled.
To Reproduce
Expected behavior
There should be no errors in step 6
Logs/tracebacks
Python Version
3.9.10
aioredis Version
2.0.1
Additional context
No response
Code of Conduct
The text was updated successfully, but these errors were encountered: