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
After dealing with the new LockReleaseError in #222 (which was most of the problems I was having), I discovered that there's still a small percentage of the time that exiting a with LuaLock block will just never return.
You should always see "before aexit" and "after aexit" if you saw "entered lock block", or you should hit the Exception print if there was an error.
Current Behaviour
On the same decently-large distributed system as in #222, I'm still very occasionally (~once/day) hitting a situation where I see "before aexit" but not "after aexit" and no "hit exception".
Steps to Reproduce
This is a production bug that I'm not sure how to reproduce reliably, other than having a lot of contention for locks. It does seem like it only happens when the lock is held for a very short period of time.
Workaround
For now, I'm considering the following as a workaround:
That way I can at least ensure that exiting the lock will always return within a set timeout value (and allow the lock to expire on the Redis side on its own), rather than sometimes just going out to lunch and never coming back.
Your Environment
coredis version: 4.17.0
Redis version: 6.0.16
Operating system: Debian 11
Python version: 3.9.2
The text was updated successfully, but these errors were encountered:
After dealing with the new LockReleaseError in #222 (which was most of the problems I was having), I discovered that there's still a small percentage of the time that exiting a
with LuaLock
block will just never return.Expected Behaviour
You should always see "before aexit" and "after aexit" if you saw "entered lock block", or you should hit the Exception print if there was an error.
Current Behaviour
On the same decently-large distributed system as in #222, I'm still very occasionally (~once/day) hitting a situation where I see "before aexit" but not "after aexit" and no "hit exception".
Steps to Reproduce
This is a production bug that I'm not sure how to reproduce reliably, other than having a lot of contention for locks. It does seem like it only happens when the lock is held for a very short period of time.
Workaround
For now, I'm considering the following as a workaround:
That way I can at least ensure that exiting the lock will always return within a set timeout value (and allow the lock to expire on the Redis side on its own), rather than sometimes just going out to lunch and never coming back.
Your Environment
The text was updated successfully, but these errors were encountered: