-
Notifications
You must be signed in to change notification settings - Fork 36
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
Feature/SK-521 | Global model not created if the combiner terminates based on timeout #478
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 really like the "status" update to rounds. We should also add session_id as a field in rounds in statestore. Regarding the implementation of round, it's quite hard to read, I would say one reason for this are the nested functions. I have added many comments, also please add docs strings, we want to have a complete API ref for v1.0
@ahellander can you please write a better description of the PR, with more information what in introduces/fixes? |
Ok, I have updated the message. |
round_data['round_config'] = round_config | ||
# Wait until participating combiners have produced an updated global model, | ||
# or round times out. | ||
def do_if_round_times_out(result): |
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.
@ahellander why wouldn't the library be able to use functions in the global scope?
Description
Rewrites some of the polling in the controller in a more robust way. Increases robustness and removes risks of race condition when combiner times out.