I've seen this before, altough it wasnt 2GB, but in a small 70MB heap dump
the cache size was around 25MB. The ConcurrentHashMap caches a lot of
unneeded string keys, where the keys are quite large, maybe strings of size
1k characters, like  key :
"org.apache.wicket.extensions.markup.html.repeater.data.table.DataTable$1:rows-ir.co.meraat.avicenna.web.components.AvicennaDataTable$InnerDataTable:inner-table-ir.co.meraat.avicenna.web.components.AvicennaDataTable$1:filter-form-ir.co.meraat.avicenna.web.components.AvicennaDataTable:table-ir.co.meraat.avicenna.vita.GradesManagementPanel$1:studentSearch-ir.co.meraat.avicenna.vita.GradesManagementPanel:componentId-ir.co.meraat.avicenna.web.CompositePage:5-fa_IR-nullg.apache.wicket.markup.repeater.OddEvenItem:29-...."

As you see the component hierarchy is dumped into the string, making it very
large. I guess we're both localizing a lot of strings, so our problem could
be the same.

Iman

On Sat, May 10, 2008 at 9:38 AM, Johan Compagner <[EMAIL PROTECTED]>
wrote:

> Can you really see what it holds?
> Almost 2G in memory in localizer is extreme... Thats really a lot of
> strings..
> You could try to read that dump with yourkit if your current one
> doesnt show enough.
>
> On 5/9/08, Quan Zhou <[EMAIL PROTECTED]> wrote:
> > Hello everyone.
> >
> > I recently develop my App use Wicket1.3.3. It's my first time to use this
> > framework and I feel it's really really a perfect framework for me.
> > My app support both Simplified Chinese , Traditional Chinese, I implement
> > this with Wicket i18n feature.
> > With the load increasing these days, I found my app would become very lag
> > abount every 24 hours ,so that i would only restart it
> > without any choice.
> > when I found the lag, My log records many Exceptions like :
> > "after 1 minute the Pagemap null is still locked by:
> > Thread[http-8080-321,5,main], giving
> > up trying to get the page for path xxx"
> >
> > I check the JVM status with jstat -gc , It tells that the Heapsize is
> full
> > even after full GC.
> > My VM paraemter is "-Xms2000m -Xmx2000m -XX:MaxNewSize=250m
> > -XX:MaxPermSize=250m"
> > My deploy server has 2*CPU and 4G memory, Redhat AS4 OS + tomcat 6.0.
> > There're 2000 sessions on the day while the timeout threshold is 15
> minutes.
> > So i dump the whole heapsize with the command " jmap
> > -dump:live,format=b,file=3.dump.hprof processid"
> > and i truely get a 2G size dump files. I use SAP Memory Analyer to see
> > what're stored in HeapMemory.
> > and I found a strange number of Retained Heap usage:
> > Classname
> >                              ShallowHeap                   RetainHeap
> >                           RetainedHeap%
> > [EMAIL PROTECTED]
> >                             16
> > 1,755,070,352                            87.64%
> >  [EMAIL PROTECTED]
> > 48                     1,755,070,336                            87.69%
> >   [EMAIL PROTECTED]
> >          33,554,448
> >                      1,755,069,632                       87.69%
> >    -  [EMAIL PROTECTED]
> >        24                                   3928
> >         0.00%
> >    -  [EMAIL PROTECTED]
> >        24                                   3928
> >         0.00%
> >    -  [EMAIL PROTECTED]
> >        24                                   3928
> >         0.00%
> >    -  [EMAIL PROTECTED]
> >        24                                   3928
> >         0.00%
> >    -  [EMAIL PROTECTED]
> >        24                                   3928
> >         0.00%
> >    -  [EMAIL PROTECTED]
> >        24                                   3928
> >         0.00%
> >   + 2,863,659 more...
> >
> > Is that means that the Localizer Object used most of the heap size?
> > or Is this number normal for Wicket App?
> >
> > I wonder whether I forget to release the memory by my mis-using of i18n
> > feature?
> > Is there any attentions I must pay to when dealing with Localizer?
> >
> > This problem annoys me more the 2 weeks. I really need some help. Thanks
> .
> >
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>
>

Reply via email to