disgo: Deadlock Bug
After testing I found that rateLimiterImpl.doCleanup will delete expired buckets.
Webhook limits 30 requests per minute. It will cause high concurrency. Because b.mu.CLock is locked. However, the deletion of expired buckets causes the previous request UnlockBucket to fail. Subsequent requests will be deadlocked.
About this issue
- Original URL
- State: closed
- Created 2 years ago
- Comments: 39 (39 by maintainers)
After I changed to the
tryLockversion, I replaced the services of some online nodes. Let’s see if the above two problems will still occur.I can change the webhook push of some online businesses to the
TryLockversion to test.