Challenges with turning on Persistent Grades

We are trying to prepare our systems for the impending removal of PersistentGradesEnabledFlag . Although it was originally proposed to be removed in Maple, it seems like it might actually come to pass in the Olive release.

To prepare for this, we thought it best to turn on persistent grades on our systems. We were also hoping that having persistent grades would improve the performance and usabilty of the GradeBook MFE.

However, we have run into some issues.

First, it seems like the only available documentation on transition from no persistent grades to having persistent grades is this confluence page, dating back to the days of Hawthorne: WIP: How to Enable Persistent Grades in Hawthorne. The documentation isn’t clear about when to use which flags. And it doesn’t seem to be up to date with the waffle technical documentation for PersistentGradesEnabledFlag.enabled. And what is PERSISTENT_GRADES_ENABLED_FOR_ALL_TESTS for?

We did eventually seem to find the right combination of flags, but the docs didn’t warn us that when turning this on that all existing grades woudl be hidden, and that it can take some time for the backfill to complete. Maybe we should have run the backfill before turning on the persistent grades? I don’t know, but we did get some alarmed email from users.

It was also very difficult to monitor the progress and state of the backfill. Is there any way to predict how long it will take? Is there a way to speed it up (maybe by adding more workers)? How do we know when it is done.

And finally, some of our courses never seemed to get persistent grades at all – perhaps because they had closed in the past and the grades were frozen? Is there documentation about freezing grades? Can it be overridden temporarily? Can it be changed site-wide?

I know this is a lot of questions, but I want to get them all out soon since others may find themselves in our situation when Olive is released and there is no longer support for non-persistent (and very slow) grades.

Peter PInch
MIT Open Learning

Hey @pdpinch welcome to the issues I had with Persistent Grades a few weeks ago.

We haven’t moved our Production system from Native Koa to Tutor Nutmeg yet, but we did turn on Persistent Grades on our Native Koa instance.

First, you found the exact same documentation I did.

Second, we turned on /admin/grades/persistentgradesenabledflag/ to make sure all courses would be “graded”.

Third, the backfill took a while on our instance. I can’t imagine how long it has taken on yours since you probably have far more courses than us.

Fourth, I totally agree with you with regards to monitoring the progress and state of the backfill.

Fifth, yes, courses that have ended more than 30 days ago won’t get regraded.

Sixth, I found this that could be useful to you if you want to regrade a course for which grades were frozen
edx-platform/how-to-regrade-everyone-in-a-course.rst at master · openedx/edx-platform · GitHub

Forgot to add that after following the instructions on

that you will need to regrade a single course with either

./manage.py lms compute_grades 'edX/DemoX/Demo_Course'
or
./manage.py lms compute_grades --courses 'edX/DemoX/Demo_Course'

You could also rerun
./manage.py lms compute_grades --all_courses
and watch the grass grow again :grin:

1 Like