I was having a problem yesterday with a "Fatal error: Allowed memory size of..." message which made my site unusable.
After trying in vain to find an answer to fix this, I eventually contacted my hosting support and whatever they did brought my site back up.
This morning, I'm getting this:
"The requested URL /Network/elgg-1.7.1/engine/handlers/pagehandler.php was not found on this server."
Having taken a look at this file, it states "pagehandler.php_Disabled_By_Arvixe" (my hosting)
They fixed one problem and created another, and it's no better because my users can't actually do anything!
Someone please help?
And a tip for you - Don't use Arvixe!!!
It seems they didn't actually assist, they cose to restrict my site...
user **** has a page, pagehander.php, that is using too much CPU consistantly. Pid Owner Priority Cpu % Mem % Command 18687 **** 4 46.5 4.2 /usr/bin/php /home/****/public_html/Network/elgg-1.7.1/engine/handlers/pagehandler.php 18696 **** 4 40.5 3.6 /usr/bin/php /home/****/public_html/Network/elgg-1.7.1/engine/handlers/pagehandler.php 18698 **** 4 40.0 3.6 /usr/bin/php /home/****/public_html/Network/elgg-1.7.1/engine/handlers/pagehandler.php Action taken - I have renamed the file to pagehandler.php_Disabled_By_Arvixe Conditions for turn on - The customer will have to consult the developer to resolve this issue.
So what do I do now?
My site is not usable, Arvixe are not helping me AT ALL. Info on any of the problems I am experiencing cannot be found anywhere.
I just want to get my site back up and running, and Arvixe don't seem at all interested in telling me what I need to do.
I'm at my limit here, any help will be desperately appreciated!
I guess you are on a shared server at Arvixe. I can't tell you exactly why you had the original memory problem (maybe due to php.ini restrictions?). But the problem with pagehandler.php was most likely caused by creating too much CPU load, as the pagehandler.php handles quite a lot of page request on Elgg sites. Shared server terms of service often include some rules about maximum CPU resources you are allowed to use.
I'd been on a shared server at HostUpon and they have the rule to "not use more than 10% CPU resources for more than 60 seconds". One day I found my site down and when I opened a support ticket got the answer that my site broke this rule. Fortunately, they didn't sabotage my site by changing filenames or blocking scripts, but just moved my site to their cloud server. Still a shared server... sometimes performance was great but most of the time it was unbearable slow.
Therefore I moved my site on a VPS. It's still on HostUpon. Support is really good most of the time and after some initial config issues (my.cnf, ffmpeg) and an upgrade to 1 GB RAM it seems to run fine at last.
So, you might consider moving to VPS as you have less restriction on resources and are also not slowed down by other sites.
This is what annoys me about Arvixe. They have already upgraded my hosting once from personal to business for the very same reason, and they did offer VPS, but the site was back up within minutes of talking to them. So it seemed the business class hosting was fine.
This is the second time in a month THEY have made my site unusable without warning.
Not very reliable huh?
Luke, I think the same could happen with other hosters, too. If a site takes too much resources on a shared server, the server admins seem always to react without much mercy. When they moved my site from the shared server I had been at the beginning to their cloud server they didn't tell me in advance either - and I still don't know what had been the exact problem back then.
I think the general problem with Elgg hosting is that shared server might generally not be suitable for Elgg - even if the hosting companies promote Elgg hosting also for their shared server hosting plans... Additionally, the people working in support don't know much about Elgg either - at least in my experience. They might tell you that your "script" uses rather much CPU resources or puts quite a heavy load on the mysql server, so you might want to optimize your "script". Maybe they thought that by renaming pagehandler.php on your site they wouldn't do much damage, only disabling a minor feature that's causing all the trouble... Some guys working in support will also be more helpful than others. So far, I have been in contact with three guys working in support at my hoster. Two of them had always been very helpful and always managed to solve my problems while the third guy is rather annoying. Either he denied that there is a problem at all or he tried to convince me to switch to a more expensive hosting plan not taking into account my needs at all.
You will have to decide on your own if you want to move away from Arvixe or maybe just switch to VPS at Arvixe. I believe you would have the same performance problems on a shared server at any other hoster sooner or later, too.
I have now upgraded to VPS, but the support is still terrible. For instance when they did this they didn't do anything about the pagehandler.php that they'd disabled. I replaced it.
And now, twelve hours after upgrading, the site is painfully slow. I mean it's taking five minutes to load a basic page.
I really don't know what to do from here. It seems wherever I go to seek advice/assistance/info no one seems able or willing to offer solutions, apart from the occasional person o here of course (thank you).
It just seems to me that no one is actually ready for open source social networks. The hosting is misleading (or blatantly dishonest), the support for the system itself is confusing and contradictory, and resources are haphazard and scattered with no real structure to some basic questions.
I'll se how things go in finding relevant info for me over the next few days, but to be honest I'm very disillusioned with the entire endeavour.
And thanks again for your assistance.
There is no way that a basic page should take 5 minutes. If you use the Elgg developer tools, you can check how long each page takes to create. That lets you know whether the issue might be bandwidth related (either on your side or theirs). You'll need to know how to check your error log to use it.
If you're hitting profile pages with plenty of widgets, you'll want to use my eager_widgets plugin. That drastically decreases load for those pages.
A lot of the time, when pages are not loading after a few minutes, I'm getting a 500 Internal Server Error, and I'm getting that Allowed Memory Fatal error too, relating to database.php
The only info I can find on that is changing the allowed memory in php.ini. I located that, but I can't find the setting to alter.
Luke, how much RAM do you have on your VPS? 512 MB or more? I had only 512 MB at the beginning when I switched to VPS and that is not enough. Pages built up slow and were incomplete. The 500 Internal server errors give some indication that you might have the same problem. I have now 1 GB and that improved everything a lot.
Maybe your Apache server is using suphp. Actually that's good as you don't have trouble with permission/ownership of files. But you can't set php parameters in .htaccess anymore. Instead you have to set them in php.ini. If you have WHM/CPanel access you can access the php.ini settings (I think in Service settings). Set memory limit to 64 MB. You can also set upload file size, post size, max execution time, max input time.
Most likely your mysql server settings are also not set well yet. My hoster left me with an empty my.cnf file, i.e. all variables on default. In the meantime I changed a few settings by trial and error. If you are interested I can post my current my.cnf. But 1GB RAM is important. I think that will improve your site most.
Another thought. Ask your support how much RAM your VPS node has. Immediatelly after my site was moved the server had only 4 GB - for all VPS on this server. They increased the RAM of the VPS node to 16 GB and that already made my site faster (most likely less swapping). They also increased the CPU cores of my VPS to 4. But CPU resources seem less of a problem.
But the RAM of your VPS itself should be at least 1 GB. That's the memory available for Elgg.
I took a look at PHP Configuration and it state:
These PHP configuration settings are customizable by the server administrator. They are listed for reference only.
Is this what is causing the problem with Allowed Memory?
And is it embarasing to say I have no idea about RAM, where do I even find this info. Believe me I have explored every aspect of Arvixe cPanel and I can't find it.
This makes me sound like such a complete n00b, but I have actualy created websites before through trial and error and they've worked fine. I don't know why I'm having so much hassle with Elgg and Arvixe!
And now, just as I'm writing this, I'm now getting an Unable to connect page. And I've had an automated email stating:
"httpd failed @ Sat Jul 24 17:35:40 2010. A restart was attempted automagically.
Service Check Method: [tcp connect]
Failure Reason: Unable to connect to port 80"
Seriously, has anyone in the history of Elgg usage had all these problems!?
Believe me, only two weeks ago before I moved to VPS I had not much knowledge either. I'd some bad luck with the move at first, too, as the server was not configured without some glitches (ffmpeg was not working, CPanel and WHM not installed properly and some other minor problems). I'd asked the support guys quite thorougly before the move, if they would configure everything properly and so I asked them to please set up everything when these problems occured. Maybe I was lucky, but they helped me each time!
Luke, CPanel is mainly to maintain your site. You will know it from the shared server already. What's new on VPS is WHM. It's similar to CPanel (I think from the same company) and allows you to administrate your VPS (apache, mysql, DNS, mail server etc...). In Cpanel you only see the php settings, in WHM you can change them. You can log in to WHM also via browser, but most likely you will have a separate login for that (maybe username "root" and another password). Ask Arvixe about the login data.
You might need some time to get an overview about WHM when you log in for the first time. Many, many options! But most things should be configured by Arvixe. If not... complain!
In WHM there's the option "Server status >> Server Information" that shows the memory usage / available memory. Alternatively, you can log in via ssh on your server - if ssh is configured - and use for example the "top" command to see memory usage.
memory_limit can be set to 64 MB. If you want to use for example the izap_videos plugin you might need to increase it depending on the size of the videos you want to allow. But other plugins shouldn't need more than 64 MB. The problem I had with 512 MB wasn't the php memory limit but the limited RAM as such. About at least 250 MB are already occupied by apache, mysql, spamd, kernel and other daemons. When you request a page in Elgg quite a few php processes will get started. And these processes needed more RAM than available - especially with several site visitors.
I've checked out the cPanel and found the WHM, everything seems fine in there. I've checked out a few likely options and nothing is throwing up a red flag at all.
I've also been looking at php.ini and it states 512M
What should I change this to and is there anything else I need to change?
Okay, I spoke to support again and they have said it is definitely an Elgg problem.
They increased memory for me, and I'm still getting the Fatal Error and a 500 Internal Server Error.
I don't know what to do next, I've tried everything I can find in Elgg assistance, and my hosting is saying it's elgg that is the problem.
Surely I can't be the only elgg user to have this problem? And yet I just can't find proper information on it at all.
What I've tried:
Removing chat plugin.
Disabling Tidypics (there are hundreds of images in there, without size limitations imposed).
Increasing php.ini memory setting
Replaced pagehandler.php (the one Arvixe disabled)
I don't know what else to try. Nothing suggested is actually doing anything to fix these errors. Arvixe are adamant that it's elgg that is the problem and not their hosting.
I really don't want to loose my community. I have about 1500 users on there and I have invested several months of work into building the site.
I am considering deleting the entire community from the server and trying a fresh install.
Thanks for all your help iionly, I've been leaving it to Arvixe to investigate as I am now completely out of my depth and cannot find any relevant info on either the CPU usage or Fatal Error for allowed memory problems.
I asked support to assist and they have found that PHP wasn't working on the upgrade to VPS!?
They've also said that there's something in the old database that won't allow a new install of Elgg to use it.
I've replied that right now I just want to get an Elgg installation running without loosing the 1400 members already there, I don't care about losing user data (although I want it to be saved if at all possible). Surely this would be possible by just exporting each section of MySQL, creating new for the new Elgg install, and importing that data to the new one? If something then fails, we'll know which chunk of data is causing the problems and only that can be removed?
This support guy has worked really hard to try to get the site up again, but if even he admits he's having problems, what can I do?
I've now asked them to try to install a new Elgg with all existing users. I've decided that if he comes back to me today and says he can't migrate the users to a new Elgg install, I'm done with Elgg, and with Arvixe and the site I've been working hard on for several months is now dead. There's no other option for me, especially if an IT professional can't get it working.
Thanks again for your help iionly. As a new member of this community I am impressed with the help offered by other members, if not with the factual and proven information provided by Elgg itself.
I hope they can repair it. If it's only a php issue it must be possible to solve it. I guess they just haven't managed to configure your VPS properly yet. And Elgg surely has no exotic requirements. As long as size of RAM and CPU are okay and apache, mysql and php are configured it should work.
As long as the Elgg data folder and the database are not getting damaged / vandalized by the hoster guys it should be possible to get your old installation running again. Don't give up!
I've taken this on myself now.
I'm actually getting somewhere.
I created a fresh Elgg install, and I'm moving Sql data from the old install to the new one. I'm just trying to move users first.
But I'm having one problem which is curious.
When I add the user data, they are not displaying in the Elgg users, it's still just me.
But, when I create a new user in Elgg, it does appear in elgg_users_entity.
Anyone have any ideas?
Would this be a setting in read/write access, and if so how would I change that?
I spent 14 hours trying to figure out this problem today. It's most likely in the database:
@ Luke have you finally found a way out of this situation? I'm having the same 500 Error problems with arvixe. I upgraded to business plan but they can't transfer the database.
My site is down for a week now and the pagehandler processes seem to be increasing. I'm in the same frustrating situation as you were last year.
Unfortunately not. In the end, after weeks of trying to fix it, seeking assistance from both the Elgg community and Arvixe, both were blaming the other for the problem and neither was able to help me to solve it. I removed the entire Elgg system and went back to a basic forum, which has worked without any problems since then.
My honest advice would be to backup any user data you can, at the very least the user email list, then uninstall Elgg completely. It's a great *concept*, but it simply isn't reliable for growing a community.
I gathered all the email addy's I could from my failed Elgg, removed everything, installed a forum and mailing list and invited everyone back. Since then I've only had problems with the primary WordPress install on the main domain being hacked, no problems with resources or usage with Arvixe.
On another note, Arvixe are pretty rubbish when it comes to support. I have several sites with them from basic to VPS and whenever there is a problem on anything I get different explanations and solutions from every support person I speak to. None of them seem to read from the same book and doing something that you'd think would be extremely simple becomes a month-long extravaganza of confusing emails and tickets. It almost always comes down to them suggesting you pay someone to do it for you.
From my experience, Arvixe should not be suggesting that they can support the use of Elgg, because they simply can't!
I wish I had a more positive experience or could suggest a solution, but in all honesty the best thing I did was to remove Elgg entirely and go back to a basic forum.
Good luck with your efforts, I do hope you have a better experience than I did. I lost a lot of members when my site collapsed, and although things are much better now and the site is still growing there are a few valued members who never did come back.
The above link of Evan doesn't work anymore. But the same blog text is available in this discussion:
This might help in some cases where a memory exhausted problem occurs.
The error 500 might be a problem caused by the mysql server being overloaded. Depending on the number of connections to the database happening simultaneously, the server might not be able to cope with them. Or the limit of connections is set too low.
On any shared server hosting, performance problems / connection problems can occur. Either the server is really overloaded or the webhoster might limit the resources available to your site to not block other sites on the same server. With Elgg it happens easily that pagehandler processes might break any CPU load limits that are allowed in the terms of service if your hoster. If Arvixe has modified the code of Elgg to block pagehandler processes as they seemed to have done with Luke's site, it is surely not acceptable though. It would make your site unusable if they might not even tell you what they have changed.
When you move your site to another hosting plan / another server / another hoster, you should also be able to backup and restore your database on your own. This can be done either via CPanel (or a similar admin GUI), phpmyadmin or also other tools like for example mysqldumper. Arvixe should also be capable of tranfering your database easily! If they tell you they can't do it, they are either lazy or stupid. It should be even included in the service of changing the business plan that they set up your server and site completely - other hosters do!
@Luke - They say it's a bad workman who blames his tools, the workbench, his work shed, and everyone in the nearby vicinity.
First, Avrixe is a great host. I see them in here all the time answering questions from users. Combined with their own support forums, they probably offer more free assistance for Elgg than any other third party group.
Secondly, if you're able to replace Elgg with a forum then you were probably trying to fit Elgg into something that it wasn't meant for in the first place. There are a number of solutions you could have tried if you really needed the social networking features Elgg provides, and there are a ton of people here that would have helped. I see you posted a few topics about MySQL usage and had some follow up questions and suggestions form members, but you never replied to them.
@George - iionly gave some good advice. If you are still having problems, get ahold of RJ (http://community.elgg.org/pg/profile/rjcalifornia) and he should be able to help. If you keep discussion open, other members will be able to help, too.
Likely what is happening is that your system is being overwhelmed and Arvixe is disabling it to keep the rest of their sites working. Elgg is more complex than simple forums or blog apps, so requires a beefier server.
One of the easiest things you can do to reduce server load is to install the Eager Widgets plugin: http://community.elgg.org/pg/plugins/project/535997/developer/costelloc/eager-widgets
So is this elgg CPU usage still up in the air?
I am encountering the same problem with CPU usage suddenly. My site hit the same number as yours Luke. And I am having the same problems.
Was on shared hosting then upgraded to VPS and was still hitting the 90%+ (1.7). I was also hittin gthe 500 error but found that it was because someone made edits to allow more connections than the server can handle but once it was set back it's just the CPU usage.
Most of my visitors have decreased and we're losing them daily yet it still hits a high number of CPU usage. I mean my install handled more on their shared hosting than on the VPS.
I'm pretty disappointed that you couldn't find the solution to your problems because it seems that we're in the same boat.
I can't really pay $500+ to go dedicated with 1000 members..and I don't even have any power hungry chat plugins.
Looks like the option is to jump off elgg and give up on my year of hard work learning elgg :(