-
Notifications
You must be signed in to change notification settings - Fork 12
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Non unique schedule redis lock key #42
Comments
Thanks for reporting. If your fix is generic, we can do the same in ExqScheduler itself. I will look into this weekend |
Ran into this too, this might be a good thing :) |
One of the first lines from the readme and the reason for using this library. I'd say this is the main feature of this library and needs to be addressed. Have you had a chance to take a look at this? |
@marcowindt I couldn't find any option named @mkarnebeek I have the fix ready #44, if you could test it, it would be great. |
Thank you for the very fast fix! I will test this today and let you know |
@ananthakumaran Yes, we use it as follows: input
|> Jason.decode!(objects: :ordered_objects) |
Nice! |
Deployed to various stages and ended on production yesterday. This morning it looked good. So ✅! Thank you very much for the fast response! |
We ran into the issue that Redis lock key for job scheduler is non-deterministic across nodes when using Jason encode, since the key is based on the MD5 hash of the serialized job. Right now the order of the keys in json object has to be the same which is not always the case, resulting in different keys for the same job.
Using a custom serializer fixes this. We now use Jason encode with ordered keys option.
Leaving a comment in case someone else runs into this in the future.
The text was updated successfully, but these errors were encountered: