Skip to content
This repository was archived by the owner on Dec 13, 2023. It is now read-only.

Optimizing reading from datastore during WorkflowSweeper#sweep#3816

Merged
v1r3n merged 4 commits intoNetflix:mainfrom
wildMythicWest:main
Nov 13, 2023
Merged

Optimizing reading from datastore during WorkflowSweeper#sweep#3816
v1r3n merged 4 commits intoNetflix:mainfrom
wildMythicWest:main

Conversation

@wildMythicWest
Copy link
Contributor

@wildMythicWest wildMythicWest commented Oct 18, 2023

Pull Request type

  • Bugfix/Optimization
  • Refactoring (no functional changes, no api changes)

Changes in this PR

Added a dependency to executorDaoFacade in WorkflowSweeper.
Added overloaded method in WorkflowRepairService - verifyAndRepairWorkflowTasks(WorkflowModel workflow)
Added overloaded method in WorkflowExecutor - decideWithLock(WorkflowModel workflow)
WorkflowSweeper now calls executorDaoFacade to get the workflow once and then passes is to the overloaded methods.

Describe the new behavior from this PR, and why it's needed
The new behaviour reduces the stress on the datastore during heavy loads. We have observed absurd loads on our redis instance comming from constant sweeping from the workflowSweeper ( more than 10GBps )

@wildMythicWest
Copy link
Contributor Author

🥺 please review

@wildMythicWest
Copy link
Contributor Author

Started a discussion to give a bit more details for this change - #3841

@v1r3n v1r3n merged commit 9669d46 into Netflix:main Nov 13, 2023
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants