Update Moodle to 1.7+ Fatal error: Allowed memory size of 20971520 bytes exhausted
After instalation I have not an administration panel - when I try .../admin/index.php - the same error
What should I do with this problem?
Here is my phpinfo at home server (where worked) and at remote server (where didn't), in the first one memory_limit doesn't appear, but in php.ini it is set to 16M, and working with it.
So the problem is some other thing, but now I don't know what to ask of my hosting provider to get Moodle working. What may happened?
Hi Marek & Ádám
From Petr's suggestions, Moodle needs more than 16M for script execution. From looing at the different phpinfo outputs, this could just be an issue with the number of modules that the host is loading - difficult to say really. A few things to try:
1. Before contacting your host, try to get an increase in memory limit by using the .htaccess file. Try setting this line in your moodle/.htaccess on the remote server
2. Also, the host has allow.url_fopen set to off. This may cause problems later on (search the forums for this problem).
3. Finally, try also adding
to the .htaccess (as recommended here).
Hope this was helpful!
Ken
I tried to modify .htaccess but it was prohibited. Now the guys at the hosting did it for me, but I'm still unable to install Moodle, now because of an other problem.
When it creates the tables in my database and shows a lot of CREATE queries, it stops displaying all the things and on a page, disappears the Continue button below. Then when I reload the page, I get an almost empty part (Setting up module tables - scorm) without Continue button or anything and when I reload it again, I get this dummy text: "Upgrade already running in this session, please wait! Click on the exclamation marks to ignore this warning (!!!)."
How to try to install it without deleting all the files and tables and upload it again?
I tried to delete the tables, delete the config.php file, the moodledata directory and restart my browser a lot of times. Thanks for your help in advance.
Hi Ádám
A few points:
1. Can you please try to drop the database completely by running this command in your mysql program (phpmyadmin, etc):
Then re-create the database by following the instructions at http://docs.moodle.org/en/Installing_Moodle#Creating_a_database.
2. Looking at the phpinfo on your host, there are two settings which are different from your local phpinfo and may cause Moodle to fail:
(a) The host also has a very low mysql.connect_timeout setting. The default is usually 60secs, but they have set it to 10secs. This could be the cause database problems, as it takes more than 10secs on my server to create all the tables.
(b) The host has safe mode enabled. Moodle will just not work with this setting, and one advice given is to change hosts (see the Moodle requirements page).
Sorry!
Ken
Now it seems working, but when I log in as admin, doesn't happen anything, it just says me hello but doesn't appear the Administration panel on the left like at localhost. So I'm not able to add a course, or modify the settings, or anything.
I know that now it's some other kind of problem like before, but I would be very grateful if you helped me to finish the installation and tell me what to modify or reinstall.
Hi Ádám
Well done for getting the install working! The disappearing administration block was a problem with a eariler release of 1.7, which should now be fixed (see Yu's post here). One suggestion in that thread is just to try http://my.moodle.com/admin to see if this fixes the problem.
See also mdl-7640 for clarification about the administration panel in moodle 1.7.
Ken
Thanks a lot!
Adam
Increasing the memory limit may avoid hitting the problem in a particular case by allowing more in-memory php processing. However it does not appear to resolve the underlying problem, which will always occur whenever the course is sufficiently 'large'.
A course can easily become 'too large' by virtue of containing substantial quiz attempts. I wonder whether Moodle currently tries to load all data from a backup file into memory in one go and then process it, rather than processing it incrementally. If it does, that would explain memory limit problems, which would always keep arising until the processing is changed: regardless of what any memory limit might be set to there will always be backup files that are 'too big'.