Heap / Memory Issues

I have been running Wildfire 2.4.4 for some time on a Linux OS (Slackware 10.2)

It has been running flawlessly for almost a year now with about 150 concurrent users.

We are now adding about 400 or more users to the roster bringing the concurrent users to about 2-300 and probably more once its fully integrated.

The issue I ran into the other day is the memory

Once we get about 200 people online as you would expect the default 64m is maxed out and shortly thereafter crashes wildfire.

I have poured over the documentation and forums and found no way to increase the heap size.

This is what I have tried.

in file: /usr/local/bin/wildfire

Line 6: #INSTALL4J_ADD_VM_PARAMS="-Xms=256m -Xmx=512m"

When I uncomment that line Wildfire will not start because other vm options are not set primarily the HOME

So looking further through that file I found

Line 228: INSTALL4J_ADD_VM_PARAMS="$INSTALL4J_ADD_VM_PARAMS $vmoptions_val"

So I am guessing that the first line is messing up this one?

Not really sure

Regardless I examined the script to see what developed those variables and found that if it exists it will read the file

/opt/wildfire/bin/wildfire.vmoptions

Of course though that did not exist

I created a file /opt/wildfire/bin/wildfire.vmoptions

with the following

line1: -Xms32m

line2: -Xmx512m

Upon restart I get no errors in nohup.out but the max memory is still only 64m

So to make sure it is actually using that file I through in some crazy stuff in the vmoptions file (things I know will cause errors)

Sure enough nohup.out threw countless expected errors. So that confirmed to me that it is reading the file and applying the variables or at least trying to.

However since that didnt work I also tried direct editing of the /usr/local/bin/wildfire file again to add the heap stack sizes but this time I tried editing line 228 to the following

Line 228: INSTALL4J_ADD_VM_PARAMS="$INSTALL4J_ADD_VM_PARAMS $vmoptions_val -Xms32m -Xmx512m"

Again I got no errors but no change in the memory either.

All this was done late at night so even with only 64m I was still under 10% utilization. So i though maybe I would wait till today to see if it requested more when it hit 30% or more and the number would then change.

Sure enough it hasn’'t.

right now its sitting at

38.31 MB of 63.31 MB (60.5%) used

And I am at a lost on how to change the memory size.

Any help would be appreciated.

Edit: The server has 1g of ram with 733 avail to jabber

Message was edited by: rkuhnjr

Hey Richard,

Have you tried having only one line in the file with this content: -Xms32m -Xmx512m?

Regards,

– Gato

Hi,

Line 6: #INSTALL4J_ADD_VM_PARAMS="-Xms=256m -Xmx=512m" is exactly the line you should change. Is it possible for you to restore the original wildfire script and use as line 6 “INSTALL4J_ADD_VM_PARAMS=”-Xms=256m -Xmx=512m"?

If you see errors please post them here. It may also help to run “sh -x ./wildfire start” to display the Wildfire start command with all parameters.

LG

Im setting up a crash machine right now as the other one is in production so I cant just restart it at will.

I will try it on there and let you know what I come up with

Thanks

Hi,

there you could also try the very short start startup command (users and paths match http://wiki.jivesoftware.org/display/WILDFIRE/LinuxInstallationGuide - please adjust them for your installation):

su - jiveWF
cd /home/jiveWF/WF/bin
nohup /opt/java/jdk1.5.0_08/jre/bin/java -server -Xms200m -Xmx500m -jar ../lib/startup.jar >../logs/STDOUT.log 2>../logs/STDERR.log &

LG

edited: it should read “nohup … 2>…/logs/STDERR.log &” and not & but this is a forum bug

Using my first post as a refrence:

I uncommented line 6

line6: INSTALL4J_ADD_VM_PARAMS="-Xms=256m -Xmx=512m"

And commented Line 228

line228: #INSTALL4J_ADD_VM_PARAMS="$INSTALL4J_ADD_VM_PARAMS $vmoptions_val"

Wildfire startup fails

nohup.out states this for the error.

Invalid initial heap size: -Xms=256m

Could not create the Java virtual machine.

I then changed the line6 to the following

line6: INSTALL4J_ADD_VM_PARAMS="-Xms256m -Xmx512m"

I must note that line 228 is still commented out

Upon reboot I got

17.70 MB of 506.31 MB (3.5%) used

That is what I was looking

Of course this is still on the crash machine but with this being the long weekend I wont be able to try it on the production server until tuesday morning… dont ask =p

I will reply to this post then with the results

Thanks guys

As expected it worked like a charm on the production server.

IE: Had to uncomment line 6 and comment line 228 of /usr/local/bin/wildfire