Forums | Mahara Community
Support
/
Odd Error Sending Message
23 September 2013, 22:40
Hi all,
I'm getting an odd error when someone tries to send a message. Mahara displays the usual "There may be a bug" message but the error logs report:
1449: The user specified as a definer ('mahara'@'localhost') does not exist] in EXECUTE
The interesting thing is, we're not using the Localhost db, config is set up to use a remote db server. Any ideas?
Thanks
24 September 2013, 11:32
Hi Andy,
What version of Mahara are you using? I'd ask which database, but I can see from the format of the error message that it's MySQL.
Google informs me that a MySQL 1449 error is due to trying to execute a stored procedure that was created by a user who no longer exists. ( http://stackoverflow.com/questions/11566481/error-1449-in-mysql-alternative-solutions ). If I recall correctly, when you send a message, we use a trigger to update the "new messages" count for the user receiving it. It would appear that when you installed Mahara this trigger got created by a user called 'mahara'@'localhost' who no longer exists.
Hm, from that stackexchange article it sounds like you may need to drop and recreate the triggers. You should be able to do that by running this script from your Mahara webroot: https://mahara.org/view/artefact.php?artefact=290494&view=81194
Or you could just delete the triggers and not re-create them. The only thing they do is make users' inbox count update "live". If they're gone, then I think users' inbox count only gets updated every few minutes when the cron runs.
Cheers,
Aaron
24 September 2013, 21:15
Aaron, you're a life saver. We've dropped the triggers for now but will rebuild them shortly.
28 October 2015, 10:45
Hello Aaron
I just used your script to fix almost all the problems described.
I had to drop one trigger in myphpadmin. It was about updating usr-table. Your script did not drop this one and neither rebuilded it.
Thank you very much.
Gabriel