File tree Expand file tree Collapse file tree 1 file changed +8
-4
lines changed
Expand file tree Collapse file tree 1 file changed +8
-4
lines changed Original file line number Diff line number Diff line change @@ -113,10 +113,14 @@ async def delete_by_pattern(self, pattern: str) -> int:
113113 try :
114114 client = await self .get_client ()
115115 deleted_count = 0
116- async for key in client .scan_iter (match = pattern , count = 100 ):
117- result = await client .delete (key )
118- if result :
119- deleted_count += 1
116+ keys_to_delete = []
117+ async for key in client .scan_iter (match = pattern , count = 500 ):
118+ keys_to_delete .append (key )
119+ if len (keys_to_delete ) >= 500 :
120+ deleted_count += await client .delete (* keys_to_delete )
121+ keys_to_delete = []
122+ if keys_to_delete :
123+ deleted_count += await client .delete (* keys_to_delete )
120124 return deleted_count
121125 except (redis .RedisError , OSError ) as exc :
122126 logger .error (f"Failed to delete keys matching pattern '{ pattern } ' in Redis: { exc } " )
You can’t perform that action at this time.
0 commit comments