I have just upgraded from version 3.5 to 3.9.
The 3.5 version had Email-based self-registration working correctly.
Post upgrade all appeared to work, however 2 days later I received notification Email-based self-registration was reporting 'Error reading from database'.
The same error is reported on manual account creation.
I have checked the email address is not in the mdl_user table in either the username or email fields. There are a number of unconfirmed accounts which were not confirmed within the 7 day window and none of these relate to the new accounts.
Debug info with email address changed:
Error reading from database
More information about this error
× Debug info: COLLATION 'utf8mb4_bin' is not
valid for CHARACTER SET 'utf8'
SELECT 'x'
FROM mdl_user
WHERE LOWER(email) COLLATE utf8mb4_bin = LOWER(?)
AND id IN (SELECT id
FROM mdl_user
WHERE email = ?
AND mnethostid = ?) LIMIT 0, 1
[array (
0 => 'new_user_email@gmail.com',
1 => 'new_user_email@gmail.com',
2 => '1',
)]
Error code: dmlreadexception
× Stack trace:
· line 486 of /lib/dml/moodle_database.php: dml_read_exception thrown
· line 1212 of /lib/dml/mysqli_native_moodle_database.php: call to moodle_database->query_end()
· line 1955 of /lib/dml/moodle_database.php: call to mysqli_native_moodle_database->get_recordset_sql()
· line 1048 of /lib/authlib.php: call to moodle_database->record_exists_sql()
· line 150 of /login/signup_form.php: call to signup_validate_data()
· line 615 of /lib/formslib.php: call to login_signup_form->validation()
· line 551 of /lib/formslib.php: call to moodleform->validate_defined_fields()
· line 661 of /lib/formslib.php: call to moodleform->is_validated()
· line 85 of /login/signup.php: call to moodleform->get_data()
Top of Form
Thanks in advance for any assistance.
Ken