Hi Steve,
Moodle 4.1 requirements were decided @ MDL-71747 and we followed the usual procedure there:
- Check the currently required databases support dates (MariaDB 10.3 support ends in May 2023).
- Verify if they cover the support dates of the Moodle release (Moodle 4.1 general support ends November 2023).
- Apply for a requirement bump to a version covering, at very least - sometimes we bump further - , point 2. (MariaDB 10.4 support ends in Jun 2024).
Talking about "bumping further", note that in the sister issue for Moodle 4.2 requirements (MDL-74905), to be released in April 2023, it has been just agreed to bump the requirements to MariaDB 10.6.
Regarding your question about using older MariaDB versions, first of all, note that there isn't any guarantee that they will work, neither there won't be any support to them. So, yes, it's 100% at your own risk situation.
That said, I'm not able to imagine, right now, any change in the Moodle 4.1.x codebase leading to problems with those older versions, so your approach "hacking" the admin/environment.xml
file may be a viable one.
I would recommend you to try to run all the tests (phpunit and behat) available in Moodle 4.1.x and, ideally keep them running continuously, so you can detect any problem in advance (let's imagine that, in Moodle 4.1.z we apply some change, explicitly using some new MariaDB feature or whatever - very, very unlikely but, still, possible).
While those tests don't cover the whole codebase, surely they cover enough to detect problems in advance. You can use moodle-docker or any other similar setup to try your combinations.
Also, you can take a look to the differences in the mysql/mariadb drivers (under lib/dml/
between the MOODLE_400_STABLE
and the MOODLE_401_STABLE
branches and see if there is any difference that may lead to different behaviours... I don't think you will find anything significative there...
And that's it!
tl;dr: Normally the database requirements are raised exclusively for support-matching reasons and everything should continue working the same with relatively modern old ones. But please, be absolutely clear that those combinations are certainly not supported or guaranteed at all.
Hope it helps, ciao 