This 'catch all' thing is confusing.
Me thinks much of this is un-fortunate ... but could also be a very specific bug ... which makes it difficult to file with tracker as one has to give details on how to replicate. :|
So far:
php version upgraded before upgrading moodle
or vice versa
upgrade to moodle attempted and needed to upgrade php prior to attempt.
Removal of mod_assignment - easiest - removal of mod_assignment in versions below 4.2 via the GUI - that gets tables related with a check to see if the /mod/assignment/ directory has also been removed ... and if not manually remove.
There is also
OP's past practice of manually removing a directory and then depending upon moodle GUI to upgrade the DB - ie, remove related tables.
Found that executing the admin/cli/uninstall_plugins.php for mod_assignment did remove the tables, but not the code directory.
Room for improvement for sure ... checks.php doesn't do plugins. Maybe a plugins_check.php script needs to be added - right now it's an option switch in uninstall_plugins.php - and folks wouldn't be looking there to find out.
Just in observation ... which isn't very scientific at all ... I'd say uprading to 4.2 or 4.3 has been an unpleasant experience for those that:
use old method of acquiring moodle core code
missed out on checking environment and/or plugin compatibility - kinda out of site out of mind ... a proposal for adding links to Check Environment, Check Plugins, and Backup docs in notification screen might help.
didn't happen to see the recommendation to remove mod_assignment prior to
and if they are at a point where they have to use PHPMyAdmin they are in trouble - I too, hate having to mess with DB tables!
Anyhoo ... maybe ... this thread will hold a future
lesson for OP's/Admins as well as Moodle HQ in communicating what needs to be done prior to upgrades.
Too bad there is not a 'support plugin' to moodle for admin remote assistance ... gives support person access to CLI via web terminal cause tools needed to fix many things are there already (if Linux) - for a fee of course!
My 2 cents!
'SoS', Ken