Hi,

Thanks for all the help.

We did loadtesting of our application running on tomcat 4.1.27 with jdk1.4
on solaris, we enabled the GC stack to get details of how GC works, we ran
for 10000 users with 5 users logging every 30 secs. We set min and max heap
size as 512mb The test ran perfectly for first 2 hours and total heap
ocupied was only 10448K out of total of  519168K , later as test case
progessed for around 10 hours the tomcat stopped responding and it has
thrown OutOfMemoryError , but as can be seen from GC output before
outofmemory error 
the total heap occupied was only 30846K, though we have lot of more space on
heap still tomcat crashed and give connectiontimeout for remaining pages.
When we see the size occupied from top command , when tomcat is started it
was 622Mb and at time of crash it was 723MB.

We are looking for following clarifications
1 What could be the reason for tomcat to crash though we have lot of heap
remaining.
2 Why the memory occupied as seend from top command increased though there
was lot of space on heap
3 We noticed that though heap has space when size seen from top command
reached 720 to 270 mb tomcat crashes.
4 How to make tomcat running without crash , certianly heap is not problem
in this case
5 Is this a known issue, Any optimization to be done to avoid this problem.


The below is the output of the GC after which we get outofmemory error

[GC 55404.101: [DefNew Desired survivor size 2621440 bytes, new threshold 31
(max 31)
- age   1:     359488 bytes,     359488 total
- age   2:     314104 bytes,     673592 total
: 167034K->657K(169600K), 0.2717012 secs] 197223K->30846K(519168K),
0.2745516 secs]
java.lang.OutOfMemoryError: unable to create new native thread
        at java.lang.Thread.start(Native Method)
        at
org.apache.catalina.connector.http.HttpProcessor.threadStart(HttpProcessor.j
ava:1178)
        at
org.apache.catalina.connector.http.HttpProcessor.start(HttpProcessor.java:12
62)
        at
org.apache.catalina.connector.http.HttpConnector.newProcessor(HttpConnector.
java:937)
        at
org.apache.catalina.connector.http.HttpConnector.createProcessor(HttpConnect
or.java:868)
        at
org.apache.catalina.connector.http.HttpConnector.run(HttpConnector.java:1075
)        
   at java.lang.Thread.run(Thread.java:534)


thanks and regards,
Javid

>  -----Original Message-----
> From:         Mohammed Javid - CTD, Chennai.  
> Sent: Wednesday, January 14, 2004 10:00 PM
> To:   '[EMAIL PROTECTED]'
> Subject:      RE: verbose gc
> 
> we are using tomcat 4.1 withjdk1.3, we have folowing clarifications
> 
> 1) [Full GC 34521K->15504K(38328K), 0.5953540 secs]
> [GC 27533K->16335K(38328K), 0.0396336 secs]
> 
> is the statements got in catalina.out by adding -server -verbose:gc  in
> catalina.sh
> 
> 2) what does the above statements got in catalina.out means, is garbage
> collection active. 
> When i execute top command on solaris and see the memory it shows  size
> and resisdent memory , what is the diference between the two.
> 
> 3) I see that gc statements are logged to catalina.out but the memory
> usage keeps increasing, does it mean there is problem with
> garbage collection,
> 
> 4) can we get more information like how many obejcts created / objects
> destroyed during a gc run, what options to pass to get that information
> 
> thanks
>        -----Original Message-----
>       From:   Mohammed Javid - CTD, Chennai.  
>       Sent:   Wednesday, January 14, 2004 2:18 PM
>       To:     '[EMAIL PROTECTED]'
>       Subject:        verbose gc
> 
>       Hi,
> 
>         When we give verbose:gc in cataline.sh during startup of tomcat
> where does
>       the gc information get logged.
>         I am not seeing any information in catalina.out.
> 
>       thanks.

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to