-
Notifications
You must be signed in to change notification settings - Fork 1.8k
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
Re-add grace period to Upload completer for backwards compatibility. #12471
Re-add grace period to Upload completer for backwards compatibility. #12471
Conversation
Provide grace period to upload completer in Proxy and Auth services so that proxy/sync recording works with old nodes. Further decouple uploader from upload completer so that they can be configured as standalone processes more easily.
@zmb3 do we have a similar thing in |
You know now that you say this, we might a long-standing bug that the upload completer will not run if you run a standalone desktop service! |
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.
Straining to wrap my head around an unfamiliar part of the code and so could well be wrong, but may have found a logic bug in the change to checkUploads
.
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.
LGTM
Fixes backwards compatibility issues that came from #11551
Specifically, If a node starts a session recording in proxy/sync modes (which records the session directly on the Proxy/Auth servers), then the upload completer in the Proxy/Auth services will periodically check for a corresponding
SessionTracker
for any uncompleted uploads on disk.Since pre-v9 sessions do not create session trackers for ongoing sessions, the Proxy/Auth servers will incorrectly assume that their uploads are abandoned. As a result, the upload will be completed prematurely and result in an error in the session due to the audit writer being closed on Proxy/Auth side.
Changes:
TODO: manually test and fix any failing tests