Conversation
Signed-off-by: Matthew Peveler <[email protected]>
|
As somewhat hinted at in the OP, this patch as initially committed completely breaks backward compatibility, as it's not clear how much we want to retain it from the linked issue. It would be good to get feedback on how much we might want that, as well as if it would be better to hold off on this PR until semesters change or some other preferred option. There's also a discussion on how much backwards compatibility we want in the file structure itself as well. |
Codecov Report
@@ Coverage Diff @@
## master #5623 +/- ##
=========================================
Coverage 22.26% 22.27%
- Complexity 6269 6274 +5
=========================================
Files 157 157
Lines 20532 20452 -80
=========================================
- Hits 4572 4555 -17
+ Misses 15960 15897 -63
Flags with carried forward coverage won't be shown. Click here to find out more. |
|
@MasterOdin Can you please debug travis? Thanks |
|
Someone should review the migration for this and run the e2e tests locally. |
Please check if the PR fulfills these requirements:
What is the current behavior?
Closes #5282
The original implementation to record access by a user to a gradeable page was done using a log file that was read completely into memory on each page load and then written back out with a new entry. The file was then copied around during the autograding process, and potentially used. The format of the timestamp in the logfile was not in the right format, using
MM-DD-YYYYinstead ofYYYY-MM-DD. Additionally, during a period of high usage, reading and writing the file was causing an unfortunate system bottleneck. This file was saved one level above the submission version folder, and so required being copied in during the grading process.Old format:
{ "page_load_history": [ { "time": "07-04-2020 14:30:33-0400", "who": "instructor" }, { "time": "07-04-2020 14:34:33-0400", "who": "instructor" } ] }What is the new behavior?
We now write to the DB each access, and this is then written out to a file on submission. The timestamp of each entry is also now in the proper format. This file is saved now within the submission folder as a dotfile (
.user_assignment_access.json), which removes the need for copying it in during the grading process.The new format:
Other information?
Currently I am writing out the entire gradeable_access table row to the file. I expect to get feedback on trimming it down, as well as naming of fields within the review, which will help revise things.
To Do: