-
Notifications
You must be signed in to change notification settings - Fork 90
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
Refactor driver timeouts #2061
Refactor driver timeouts #2061
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think this is not the longterm solution we should pursue but if you think this gets us closer to deploying on prod mainnet we can try it out.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This PR is quite a bit of non-trivial logic around different parts of the whole driver stack. I wonder if the logic could be smaller/more contained if we
- Keep the timing math local to the
Deadline
and expose the different final deadlines we are interested in (for solvers and the merging) - Not differentiate for now between quote/solve
I'd also like for percentages to be the same format we have them for most of our other configuration parameters.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I like this approach much better. Just some nits around naming and use of conversion traits, but nothing blocking.
Description
Tackles checkboxes 1 and 2 from #2041 (comment)
Changes
This is my attempt to make timeouts more explicit and clear.
First, we split the deadline given to driver into 3 pieces:
http_delay
)The time is split in a following way: competition time and http delay are values read from the configuration (so hardcoded), while the solving time is whatever is left after deducting those two from the deadline given to driver.
It's important to note that:
Default values are set to something like:
/solve: 20s given to driver, http delay is 0.5s, competition is 4.5s, solving time 15s
/quote: 3s given to driver, http delay is 0.5s, competition time 1s, solving time 1.5s
Release notes: check the default timeouts and if they need to be adjusted.