-
Notifications
You must be signed in to change notification settings - Fork 23
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
User session status split #365
Conversation
This might interact w/ #348, perhaps we should attempt a fix for that issue in this branch |
I checked out this branch and it fails to build. I'm not sure what's going on yet, but the error happens outside of the code from this PR, but doesn't happen on the master branch. I'm investigating. |
73f8b05 fixed the build error. |
There appears to be a remaining bug, or at least weird behavior if |
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 made some changes to docs and fixed the test case that was no longer testing everything. This appears to work in my tests, but we'll want to be aware that something may break and need fixing. This does break the current "create user" hack somewhat used by some experiments, so we will want to prioritize that fix for the next release.
This branch splits the per-session written user status (sessions completed) from the remainder of the user status file. The new per-session status file format supports an iterative write approach and therefore serializes to disk faster. This file uses a CSV format with
user ID
,session ID
formatting for each line. It is read in once from disk at startup to recover the user session status for all users.The old user status file still contains the
currentUser
field (and potentially adding new users) which requires write-back when the user changes/is added but otherwise should be written far less frequently.Custom session status log names can be specified using the new
completedLogFilename
configuration parameter in the top-level of the user status file.Merging this branch closes #355