Skip to content
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

Failure of transaction with watch should be ignored. #977

Merged
merged 1 commit into from Aug 12, 2023

Conversation

lopaz
Copy link
Contributor

@lopaz lopaz commented Aug 12, 2023

The method Scheduler.cleanupTimestamp uses Optimistic locking by watch command, it's quite possible some watched keys changed during transaction (as a result, null is returned), it's OK, scheduler will start next polling, and the failed timestamp will be retried.

ref: https://redis.io/docs/interact/transactions/#optimistic-locking-using-check-and-set

Closes #976 (comment)

The method `Scheduler.cleanupTimestamp` uses Optimistic locking by watch command, it's quite possible some watched keys changed during transaction (as a result, null is returned), it's OK, scheduler will start next polling, and the failed timestamp will be retried. 

ref: https://redis.io/docs/interact/transactions/#optimistic-locking-using-check-and-set
@evantahler evantahler added this pull request to the merge queue Aug 12, 2023
@evantahler evantahler removed this pull request from the merge queue due to the queue being cleared Aug 12, 2023
@evantahler evantahler merged commit cc0c0de into actionhero:main Aug 12, 2023
7 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Scheduler.cleanupTimestamp should check if transaction response is null before iterating on it?
2 participants