This repository has been archived by the owner on Feb 21, 2023. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 335
When load testing the pools with timeouts, once the test is done the pool doesn't recover and keeps failing #231
Milestone
Comments
Yes, I followed the aiocache/aiomcache issue discussion, but I need to take a deep look into this in terms of aioredis. |
popravich
changed the title
Pool behaves badly under high load with timeouts
When load testing the pools with timeouts, once the test is done the pool doesn't recover and keeps failing
May 18, 2017
Ok, I've found the issue causing loop to stuck, it is releated to |
Ahhh good catch there. Thanks for having a look at it! |
Are we need to wait until the python stdlib upgrade? Any suggestion to fix it on a production env? |
pfreixes
added a commit
to pfreixes/aioredis
that referenced
this issue
Jun 7, 2017
A pain in the ass but finally a patch inside of aioredis #241 /cc @popravich |
popravich
pushed a commit
that referenced
this issue
Jun 21, 2017
* #231 Patch for the cpython issue with Lock * Make Lock compatible with 3.3 and 3.4 * Changed test to make it compatible with python 3.3 version * Flake8 issue * Increase coverage by reducing scope, test just the bugfix for 3.6 * One unique version of Lock.acquire function * Use create_future provided by aioredis
popravich
pushed a commit
that referenced
this issue
Jun 21, 2017
* Make Lock compatible with 3.3 and 3.4 * Changed test to make it compatible with python 3.3 version * Flake8 issue * Increase coverage by reducing scope, test just the bugfix for 3.6 * One unique version of Lock.acquire function * Use create_future provided by aioredis
popravich
added a commit
that referenced
this issue
Jun 21, 2017
Squashed commit of the following: commit 71ea399 Author: Alexey Popravka <[email protected]> Date: Wed Jun 21 10:56:12 2017 +0300 fix typo commit 98ee8be Author: Alexey Popravka <[email protected]> Date: Wed Jun 21 10:47:36 2017 +0300 Bump version: 0.3.1 → 0.3.2 commit 013ec54 Author: Alexey Popravka <[email protected]> Date: Wed Jun 21 10:47:22 2017 +0300 update CHANGES commit b2cfb7b Author: Alexey Popravka <[email protected]> Date: Wed Jun 21 10:28:19 2017 +0300 fix timeout passing in pool commit 201451d Author: Pau Freixes <[email protected]> Date: Wed Jun 21 08:46:50 2017 +0200 * #231 Patch for the cpython issue with Lock * Make Lock compatible with 3.3 and 3.4 * Changed test to make it compatible with python 3.3 version * Flake8 issue * Increase coverage by reducing scope, test just the bugfix for 3.6 * One unique version of Lock.acquire function * Use create_future provided by aioredis commit 2ca2f08 Author: argaen <[email protected]> Date: Thu Jun 8 20:40:44 2017 +0200 Create only one task for closing commit e7a0063 Author: argaen <[email protected]> Date: Mon Jun 5 16:26:22 2017 +0200 close_waiter is lazily created commit e38be72 Author: Pau Freixes <[email protected]> Date: Thu May 11 22:07:33 2017 +0200 Removed print commit f77a06b Author: Pau Freixes <[email protected]> Date: Thu May 11 17:07:55 2017 +0200 Some small MR issues fixed commit eaede3d Author: Pau Freixes <[email protected]> Date: Wed May 10 16:40:24 2017 +0200 Support for connection timeout param Related to #184, it allows aioredis to configure a limited time that will be used trying to open a connection, if it is reached a `asyncio.TimeoutError` will be raised By default any timeout is configured. commit 6b13dd1 Author: Alexey Popravka <[email protected]> Date: Mon Mar 6 10:36:37 2017 +0200 tiny styling fix commit 864a390 Author: marijngiesen <[email protected]> Date: Fri Mar 3 10:25:20 2017 +0100 Fixed flake8 errors commit b36a17a Author: marijngiesen <[email protected]> Date: Fri Mar 3 01:38:42 2017 +0100 Fixed typo commit d93e25d Author: marijngiesen <[email protected]> Date: Fri Mar 3 01:36:37 2017 +0100 Added ZREVRANGEBYLEX command commit bab6a0b Author: Alexey Popravka <[email protected]> Date: Tue May 9 22:15:29 2017 +0300 update spelling wordlist commit e2bae24 Author: Alexey Popravka <[email protected]> Date: Tue May 9 22:11:40 2017 +0300 Bump version: 0.3.0 → 0.3.1 commit 1c4327c Author: Alexey Popravka <[email protected]> Date: Tue May 9 22:11:35 2017 +0300 update changes commit 3b779a8 Author: Alexey Popravka <[email protected]> Date: Mon Mar 27 10:42:04 2017 +0300 fix pubsub Receiver missing iter() method (fixes #203)
popravich
added a commit
that referenced
this issue
Nov 2, 2017
commit 1fcdcff Author: Alexey Popravka <[email protected]> Date: Wed Oct 25 11:41:24 2017 +0300 Bump version: 0.3.3 → 0.3.4 commit 56e7c34 Author: Alexey Popravka <[email protected]> Date: Wed Oct 25 11:36:25 2017 +0300 update changes.txt commit 4171376 Author: Alexey Popravka <[email protected]> Date: Wed Oct 25 11:26:06 2017 +0300 fix test commit aaae7b8 Author: Alexey Popravka <[email protected]> Date: Wed Oct 25 11:14:42 2017 +0300 add integrational test to compare v0.x version with v1.x commit 2a6cf14 Author: Alexey Popravka <[email protected]> Date: Wed Oct 25 10:39:23 2017 +0300 fix time command when connection-wide encoding is set (fixes #266) commit ac47208 Author: Alexey Popravka <[email protected]> Date: Fri Jun 30 10:54:12 2017 +0300 spelling commit 7a26c16 Author: Alexey Popravka <[email protected]> Date: Fri Jun 30 10:25:33 2017 +0300 bump version to v0.3.3 commit 1082256 Merge: 71ea399 718f731 Author: Alexey Popravka <[email protected]> Date: Fri Jun 30 10:19:20 2017 +0300 Merge pull request #257 from pfreixes/fix_lock_critical_bug_v03 Fix critical bug with patched Lock commit 718f731 Author: Pau Freixes <[email protected]> Date: Thu Jun 29 22:44:53 2017 +0200 Fix critical bug with patched Lock commit 71ea399 Author: Alexey Popravka <[email protected]> Date: Wed Jun 21 10:56:12 2017 +0300 fix typo commit 98ee8be Author: Alexey Popravka <[email protected]> Date: Wed Jun 21 10:47:36 2017 +0300 Bump version: 0.3.1 → 0.3.2 commit 013ec54 Author: Alexey Popravka <[email protected]> Date: Wed Jun 21 10:47:22 2017 +0300 update CHANGES commit b2cfb7b Author: Alexey Popravka <[email protected]> Date: Wed Jun 21 10:28:19 2017 +0300 fix timeout passing in pool commit 201451d Author: Pau Freixes <[email protected]> Date: Wed Jun 21 08:46:50 2017 +0200 * #231 Patch for the cpython issue with Lock * Make Lock compatible with 3.3 and 3.4 * Changed test to make it compatible with python 3.3 version * Flake8 issue * Increase coverage by reducing scope, test just the bugfix for 3.6 * One unique version of Lock.acquire function * Use create_future provided by aioredis commit 2ca2f08 Author: argaen <[email protected]> Date: Thu Jun 8 20:40:44 2017 +0200 Create only one task for closing commit e7a0063 Author: argaen <[email protected]> Date: Mon Jun 5 16:26:22 2017 +0200 close_waiter is lazily created commit e38be72 Author: Pau Freixes <[email protected]> Date: Thu May 11 22:07:33 2017 +0200 Removed print commit f77a06b Author: Pau Freixes <[email protected]> Date: Thu May 11 17:07:55 2017 +0200 Some small MR issues fixed commit eaede3d Author: Pau Freixes <[email protected]> Date: Wed May 10 16:40:24 2017 +0200 Support for connection timeout param Related to #184, it allows aioredis to configure a limited time that will be used trying to open a connection, if it is reached a `asyncio.TimeoutError` will be raised By default any timeout is configured. commit 6b13dd1 Author: Alexey Popravka <[email protected]> Date: Mon Mar 6 10:36:37 2017 +0200 tiny styling fix commit 864a390 Author: marijngiesen <[email protected]> Date: Fri Mar 3 10:25:20 2017 +0100 Fixed flake8 errors commit b36a17a Author: marijngiesen <[email protected]> Date: Fri Mar 3 01:38:42 2017 +0100 Fixed typo commit d93e25d Author: marijngiesen <[email protected]> Date: Fri Mar 3 01:36:37 2017 +0100 Added ZREVRANGEBYLEX command commit bab6a0b Author: Alexey Popravka <[email protected]> Date: Tue May 9 22:15:29 2017 +0300 update spelling wordlist commit e2bae24 Author: Alexey Popravka <[email protected]> Date: Tue May 9 22:11:40 2017 +0300 Bump version: 0.3.0 → 0.3.1 commit 1c4327c Author: Alexey Popravka <[email protected]> Date: Tue May 9 22:11:35 2017 +0300 update changes commit 3b779a8 Author: Alexey Popravka <[email protected]> Date: Mon Mar 27 10:42:04 2017 +0300 fix pubsub Receiver missing iter() method (fixes #203)
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Hi, after an issue that was opened in aio-libs/aiocache#196 I've been investigating concurrency issues with both aiomcache and aioredis.
TLDR: When load testing the pools with timeouts, once the test is done the pool doesn't recover and keeps failing.
I've been working on aiomcache implementation to fix this aio-libs/aiomcache#46 and performs good enough. Amount of 200s is really high and server keeps working after the load test
ab -n 5000 -c 100 http://127.0.0.1:8080/
.Here are some numbers:
aiomcache
aioredis
Even worse, in my case all requests keep failing when the test has finished.
This is the script I've been using for the load testing:
Requirements:
I have aiocache in the middle because it allows me to swap easily between one aioredis and aiomcache.
Now some extra observations:
If its OK, I will work on fixing it once you or someone else confirms the same problem I'm seeing.
The text was updated successfully, but these errors were encountered: