Replies: 1 comment 1 reply
-
|
Hey @dave-ccs! Sorry it took me a while to get to this... |
Beta Was this translation helpful? Give feedback.
-
|
Hey @dave-ccs! Sorry it took me a while to get to this... |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
-
The following Python code demonstrates an issue with BLPOP randomly dropping the first element pushed to a list. It is inconsistent, sometimes working correctly and sometimes not. I've tried it with multiple versions of Garnet on multiple platforms (Windows, Docker, macOS in .NET Core). All demonstrate the same random behavior. The issue does not occur with any version of Redis that I've tested.
I've tried to identify whether it's an issue in Garnet or in the Python Redis library, but I wasn't able to follow the Garnet code well enough to figure out where the issue lies. I only know that the behavior changes depending on the BLPOP timeout value given. A value of 0 (zero) fails frequently. Values of 0.25 or less but greater than zero don't fail or don't fail often. Values of 1 second or greater fail similar to 0 (zero).
To confirm, run the following Python code. You should see a pop for every push. You don't have to let it run too long. It's always the first element that disappears. Running it a few times should show the problem.
Beta Was this translation helpful? Give feedback.
All reactions