Hi all,

We are getting close to releasing a preview version of our software that 
utilizes Multi-tier Cayenne. 
We have started to stress test it and we have hit a problem, something on the 
server us consuming 
memory and never releases it. 
I tried profiling the server application and it appears that RawData objects 
(our first hunch) on the 
server are being GC'ed correctly. There is no indication of excessive instances 
of any class, Cayenne 
or not.

The one thing not being monitored by the profiler is servlets. Judging by the 
memory usage jumps,
I have a sneaking suspicion that it is the HessianServlet responses that are 
not being GC'ed - the 
increases seem to correspond to data requests.

The particular piece of GUI tested fetches a list of ~25,000 records from a 
table into a shared context with 
paging  enabled, page size is 100 records.
The used memory in the JVM jumps by 30+ Mb as we traverse through all the 
records. The JVM never 
releases that memory.

We have been through our code and we are definitely not keeping any references 
to instances of
servlets, requests or responses.

We are using Jetty as the server.

I was hoping  someone might have some pointers before I jump into writing a 
profiling container for 
the servlet. Any help appreciated.


Regards,

Marek Wawrzyczny

Reply via email to