sidekiq-unique-jobs
sidekiq-unique-jobs copied to clipboard
Conflict resolution documentation
Describe the bug
The paragraph in the introduction describing conflict resolution stops mid-sentence: By default, only one lock for a given hash can be acquired. What happens when a lock can't be acquired is governed by a chosen [Conflict Strategy](https://github.com/mhenrixon/sidekiq-unique-jobs#conflict-strategy) strategy. Unless a conflict strategy is chosen
Expected behavior It would be nice to know:
- What happens when a conflict strategy is not chosen, i.e. what is the default behavior?
- How does one simply ignore queuing a job if the lock is already taken (rather than sending it to the morgue)?
- This text:
By default, only one lock for a given hash can be acquired
implies there's a way to have more than one lock for each hash. Is this a reference to thelock_args
feature or something else?
Additional context Great gem! Thanks for providing this. It is very useful.
This would indeed be very helpful. I've spent some time reading through the code and it looks like the default confliect resolution strategy is [the null strategy(https://github.com/mhenrixon/sidekiq-unique-jobs/blob/main/lib/sidekiq_unique_jobs/on_conflict/null_strategy.rb). However, I'm not quite sure what behavior that entails.