HOW TO Manually Update concrete5 from 18.104.22.168 to 5.5.1 (RESOLVE: Fatal error: Allowed memory size of "X" bytes exhausted (tried to allocate "X" bytes) in /html/updates/concrete22.214.171.124/concrete/helpers/file.php on line 192)3 users found helpful
I have been working on updating a client's site that was previously setup using concrete5. So far, I have not been impressed. The biggest thing lacking is GOOD documentation. It is almost impossible to find what you are looking for on the site without just going to Google to find it on the site for you… Not to mention the endless amount of unanswered blog style forum comments that are impossible to sort through to find any information that is relevant to what you are actually looking for. This issue definitely needs to be addressed if concrete5 is going to be around for any length of time from now. Anyway, enough with my rant. Here's the problem I had and how I fixed it.
I am writing this to try to spare those of you who may have the same problem, the same agony I suffered in trying to find a solution to my problem. ;)
The problem I was having was this. I was trying to do an update to a clients site due to the fact that is was SOOOOO painfully SLOOOOOW.
I believe the current version was concrete126.96.36.199. I went to System & Maintenance -> Update. It said that a new version was available (188.8.131.52) and that I could download it. I also noticed the following note in grey: "Downloading an update will NOT automatically install it".
I went ahead and downloaded it, HOWEVER, I did not get an option to install it. I'm not sure what happened, but the Update tab now said "Download Update Version: 5.5.1…" with the same download button (and note) at the bottom.
I thought it was kind of odd, so I went looking for what version was installed. It's kind of a pain in the a$$ to find. And for those of you who are still looking for it. It's in the upper right hand corner of the dashboard's main page ONLY! (You won't find it under "System & Maintenance".)
Apparently the site did update to 184.108.40.206, I'm not sure how, but it did.
The thing that I think is odd is that I read somewhere if you are going to manually update your site, you need to unzip the download and replace ONLY the "concrete" directory at the root of your site with ONLY the "concrete" directory from the installation archive. However, the site was showing that it was upgraded to 220.127.116.11, but the upgrade was still in /updates/concrete18.104.22.168/concrete. If I moved the concrete directory to /concrete, the site would break. So, apparently it has to stay there. I think this is a bug, but what do I know… :P
Now to the real issue. ;)
I was getting the following error when trying to download the 5.5.1 update from System & Maintenance -> Update:
Fatal error: Allowed memory size of 33554432 bytes exhausted (tried to allocate 13851830 bytes) in /html/updates/concrete22.214.171.124/concrete/helpers/file.php on line 192
I looked everywhere to try to resolve this issue. I found many with the same questions, and no relevant answers.
I looked at line 192 of /html/updates/concrete126.96.36.199/concrete/helpers/file.php and couldn't find anything that referenced memory allocation.
I found this post which appeared to be the most helpful, but still irrelevant to my issue. :(
* I manually cleared the /files/cache directory.
* I checked the /config/site.php code for the correct version.
* I checked the SITE_APP_VERSION & APP_VERSION_LATEST under the CONFIG table of the database for the correct version.
I found all sorts of other suggestions that lead nowhere, until finally I figured out how to fix it myself.
1. BACK UP your site!
2. Download concrete5.5.1.zip.
3. Unarchive it.
4. Rename concrete5.5.1 to concrete.
5. Create /updates/concrete5.5.1 on the site.
6. Upload concrete to /updates/concrete5.5.1/concrete.
7. Change the permissions for /updates/concrete5.5.1 to 777 recursive.
8. Run "Update" from System & Maintenance -> Update.
9. Upgrade to 5.5.1 complete!
1. There defiantly needs to be better documentation by developers. This is a must! If you claim that you develop a good product, the documentation should be there to support it. I know it takes time to do, and when you finish something that works, you just want to get it out to everyone quickly. But there is no reason not to make at least chicken scratch scribbles of your process along the way. USE Evernote. ;) Documentation for directory structure, upgrade procedures, common problems, etc is a must have. :)
2. This upgrade issue will need to be addressed and resolved by the concrete5 development team. (188.8.131.52 perhaps)
The following errors occurred when attempting to process your request:
The directory /home/waynesbu/public_html/updates/concrete5.5.1 already exists. Perhaps this item has already been installed.
One of the problems for me is that upgraded add-ons have exactly the same filenames as every other version. How's about adding a version number to the download filename to make it easier to manage.