Totara Learn Open Discussions

Program and certification completion checkers

 
Nathan Lewis
Program and certification completion checkers
by Nathan Lewis - Monday, 22 May 2017, 9:44 PM
Group Totara

Hi Everyone.


This post should be relevant to all sites using programs or certifications.

We've recently had a few reports of some problems which have shown up in certifications. Don't panic, nothing major! In fact, most of the problems discovered appear to be left-over invalid data from earlier versions of Totara, and the bugs have already been fixed in released code. While we do have a few patches coming soon which will fix some small edge cases and add additional logging, I wanted to take this opportunity to explain the process which we hope sites will take which will minimise confusion in the event that a problem is discovered.

As of February 2016, in Totara 2.5.36, 2.6.29, 2.7.12, 2.9.4 and above (including all versions of 9, Evergreen and all future versions), Totara has included the program and certification completion editors. These allow you to make changes and fix various problems with completion records, and include comprehensive checkers and some automated fixes for known problems. They also include completion transaction logs which can help track down the reason data has changed, whether it is due to some action a user takes, or some automated process.

It was our intention, but not clearly communicated, that sites which upgrade to a version of Totara which includes the completion editors would follow these steps as soon as possible after upgrade:

  1. Enable the program and certification completion editors by ticking the "Enable program completion editor" setting.
  2. Run the program completion checker. This can be run per-program from the Completion tab when editing a program, or across all programs on a site by using the link on the Site administration > Courses > Manager programs page.
  3. Use the automated fixes where appropriate and available, and otherwise manually edit completion records individually, to repair all reported problems. Note that the automated fixes are applied to all affected records in the scope you are viewing them - it will fix all on the site when viewing all problems across the site, all in the program when viewing the problems for one program, and just the individual user's record when viewing one user's completion record.
  4. Repeat steps 2 and 3 for certifications.

After following those steps - ensuring that all problems reported by the checkers are fixed - the site will be in a clean state. If the program or certification checker is run after the cleanup and reports a new problem, we will know that the problem is cause by existing code and isn't due to data left in an invalid state from before the upgrade. We should also have sufficient logs to be able to track the cause of the problem.

The steps only need to be followed once, when upgrading from a version without the completion editors to a version with the completion editors. If your site did not follow the steps above at the time of upgrade, it's not too late! You can follow those steps now, and be sure that any problem discovered in the future will be isolated to your current (or future) code version and will have transaction logs which will help with figuring out the cause.

After cleanup, we suggest that you run the program and certification checkers occasionally, perhaps once per week to start with, then less frequently as it continues to report no new problems. If one of the checkers reports any problem, even affecting just a single record, even if the checker provides an automated fix for the problem, we here at Totara would like to know about it, through the usual support channels. The completion transaction logs should provide sufficient information for us to figure out the cause and provide a solution, or identify if it has already been fixed in a later version of Totara.

While I'm talking about certifications and how to prevent problems, I'll take this opportunity to mention the certification completion restoration tool. This tool was provided to several clients to allow them to fix a specific problem, before the completion editor was available. The tool does not work in conjunction with recent versions of Totara, and does not record certification completion transaction logs. Since March 2016, in Totara 2.5.37, 2.6.30, 2.7.13, 2.9.5 and above (the monthly release following the inclusion of the program and certification completion editors), when a user is reassigned to a certification, their previous completion data is automatically restored. This effectively reproduces the behaviour of the tool, but automatically. Using the certification completion restoration tool would at best have no effect, and at worst could corrupt completion data (and leave no transaction logs to allow us to trace the cause). For these reasons, any site which has upgraded to or above the mentioned versions should remove the tool completely.

So in summary, please make sure that all your program and certification completion data has been completely cleaned at some point since upgrading, then report any and all problems which the checkers discover through the usual support channels.

Nathan

Nathan Lewis
Re: Program and certification completion checkers
by Nathan Lewis - Tuesday, 25 July 2017, 4:41 PM
Group Totara

Hello again Everyone.

In the June 2017 releases of Totara, 2.5.52, 2.6.45, 2.7.28, 2.9.20, 9.8 and Evergreen, we improved the program and certification completion checkers to additionally deal with two new classes of problems. The checkers are now able to detect three types of problems:

  • Consistency: The completion records are not internally consistent, e.g. if a record has status "complete" but the date of completion is empty.
  • Records: One or more records are either missing or should not be present, e.g. if a user has an assignment record but the corresponding completion record is missing.
  • History: There is a problem with completion history, e.g. if a history record is marked "unassigned" but the user is currently assigned.

The first category includes all the problems that the completion checkers originally checked for. The second and third categories include all the new checks and automated fixes.

As the checkers are now able to detect more problems than before, we advise that you repeat the process which was described in the original post in this forum discussion: After upgrading to a version which includes the new classes of checks, use the completion checkers to identify all program and certification problems, fix all the reported problems, then monitor the checkers and report any new problems through the usual support channels.

The same releases of Totara also included fixes for all of the know causes of the problems that the checkers are now able to detect, and additional logging which should allow us to track what is happening if something goes wrong. Hopefully after upgrading and fixing all existing problems, no new problems of these classes will be reported.

Nathan