I experienced the following problem while switching between some tabs on some forms in operational mode while other tabs and forms were performing normally.
HTTP Status 500 -
type Exception report
message description The server encountered an internal error () that prevented it from fulfilling this request.
exception
javax.servlet.ServletException: Servlet execution threw an exception
root cause
java.lang.OutOfMemoryError
note The full stack trace of the root cause is available in the Apache Tomcat/5.0.28 logs.
Apache Tomcat/5.0.28
It seems that it is related to Tomcat memory allocation. How can I prevent this from occurring?
Tomcat can run out of memory if there are two many concurrent users. This may also happen if timeout for Tomcat sessions is set to some large value or it doesn't time out at all. In this case memory for all users that forget to log out after using the system will never be released, which will eventually cause "Out of memory" error.
There are 2 ways to address it:
1) Make the timeout of a Tomcat session smaller. This is controlled in the webapp.props file located in AwareIMRoot/Tomcat/webapps/AwareIM directory. Change the following line:
SessionTimeout=1800
The value is in seconds - 1800 is half an hour.
2) Change the startup settings of Tomcat to increase the amount of memory it uses. This can be done in a file called startupOptions.props. There is a sample of such a file in the SAMPLES directory. If you put this file in the BIN directory Aware IM will use it on startup. To increase the memory used by Tomcat modify the following line:
This file is in SAMPLES directory initially. If you put this file into BIN directory Aware IM will start using it. Otherwise it uses the default startup options (which are the same options that you find in the original file that resides in the SAMPLES directory).
So if you want to change the startup settings you need to modify this file and place it in the BIN directory.
As far as Tomcat is concerned, yes, we do recommend increasing the memory if you expect large amount of concurrent users (provided that your server has enough free memory)
I have recently started to be affected by this problem. I have followed the above instructions to the letter and its no better.
I have noticed the operation mode does seem to run very slow anyway. I wasn't sure if it was just me being a bit picky but sine this memory problem is starting to occur (everyday at some point) it has brought it further to my attention.
Our server is on Windows 2k Pro and has 512 RAM. I know this is more than enough, especially when I am only testing my data (in early design stages) so I have very little actually in the system.
Are there any other known fixes or hints you can give me to get my system up to speed?
It wasn't really a complaint I am just eager to get the software running? I joined this feed because the error I am getting is very similar to the one above
Exception report
message
description The server encountered an internal error () that prevented it from fulfilling this request.
note The full stack trace of the root cause is available in the Apache Tomcat/5.0.28 logs.
I have had a look at the logs (where I think they are) but it doesn't really tell me much. This has happened before but a couple of hours later it was ok again. This time however I have come in the next day and it is still the same.
Could you point me in the right direction for the logs I should be looking at so I can pass the information onto you. So far I have looked in the AwareIM\Tomcat\logs and found today's file and it says the same thing.
If your question was about the server PC, it doesnt really get used for anything else at the moment but it appears to be running ok
First of all please check the amount of free memory that your server has (there may be some hidden services running there that are eating up memory). There must be at least 256M for Aware IM to run properly.
(we have just had a complaint from a customer who was saying that his server had 1Gb of memory, but when he checked for free memory it turned out that his server only had less than 100M available).
Next step is to increase memory allocated to Tomcat in the startupOptions.props file as explained in this thread and also in the Installation Guide. Have you tried that? Try to increase memory further and further (don't forget to re-start Aware IM). If this doesn't help there MUST be lack of physical memory on your server.
Thanks for that, I will have a look. Just a quick question on this. The code -Xmx256m -Xms20m states the maximum and starting values of the memory alocated (correct me if im wrong). Does the starting value Xms20m have any affect?
Not really. It's the -Xmx that makes all the difference. There are separate settings for Aware IM server (in startAwareIM.bat), Tomcat and JBoss (in startupOptions.props)