The tomcat folks state that there is no solution to this issue (in the
tomcat FAQ)... I somehow hope that more recent versions of the JDK can solve
this problem...

I tried the new funky +CMS... java options but they don't seem to help the
redeployment.
Btw, I've seen this happening on JBoss too with a simple J2EE application.

Henri.


On 7/23/06, Jesse Kuhnert <[EMAIL PROTECTED]> wrote:

No ideas at all, but if anyone thinks they get closer to finding something
let me know. I am definitely willing/able to work with someone to solve
problems like this, I just can't do it in the dark.

On 7/23/06, Harvey, David <[EMAIL PROTECTED]> wrote:
>
> Thanks for your comments, discussion.  However, this occurs when caching
> is turned on, i.e.
> -Dorg.apache.tapestry.disable-caching=false.
>
> I sure hope there's a fix, I don't know if MaxPermSize can be made any
> larger in production and it sounds from your discussion that making it
> larger will just delay the OOM condition anyway.
>
> Anybody else have any ideas?
>
> -----Original Message-----
> From: James Carman [mailto:[EMAIL PROTECTED]
> Sent: Sunday, July 23, 2006 6:03 AM
> To: Tapestry users
> Subject: Re: PermGen space
>
> Actually, Tapestry (and HiveMind as well) uses Javassist to generate
> classes at runtime, but all the rest is still true with Javassist as it
is
> with CGLIB (hibernate uses CGLIB).  As Martin said, enabling caching
should
> fix the problem.  Tapestry will only generate (and cache) the classes
for
> each page/component one time with caching enabled.  In a production
> environment, you really shouldn't run into this, since you would have
> caching enabled and you wouldn't be hot redeploying your application.
>
> James
>
> > Hi all,
> > This problem is very common with Tapestry applications. This is due to
> > the fact that Tapestry uses cglib to generate classes at runtime.
> > Java uses a separate Heap space called "PermGenSpace" to put meta-data
> > about classes, which is never garbage collected (this is "normal"
> > since normally, classes never change...) but with cglib, classes are
> > generated, which add to the PermGenSpace. And the next time your
> > application is deployed, new classes are generated which add to the
> > PermGenSpace, etc... So it fills and become full.
> > So this problem is common to Java+Tapestry/cglib+deployed webapps.
> > I hope this explaination is clear. Else ask questions.
> > -jec
> >
> > Harvey, David a écrit :
> >> Hello all,
> >>
> >> We've been having occasional problems with PermGen out of space
> >> errors thrown during the execution of our Tapestry application.  We
> >> usually get a stack trace with something about hivemind at the top
(see
> below).
> >> Then, of course, we have to restart our app server.  Our environment
> >> is
> >>
> >> Tapestry 4.0.1 and Tacos4-Beta3
> >> Jboss 4.0.3 sp1 (Tomcat 5.5 embedded) JRE 1.5.0_03
> >>
> >> The java runtime is initialized with
> >> -XX:PermSize=96M -XX:MaxPermSize=128M
> >>
> >> The stack trace we get at various times is:
> >>
> >> 2006-07-20 17:25:11,415 ERROR
> >> [net.sf.tacos.ajax.impl.AjaxDirectServiceImpl] Error invoking
> >> listener on component $AjaxForm_40
> >> org.apache.hivemind.ApplicationRuntimeException: PermGen space
> >> [context:/WEB-INF/pages/claims/addEdit.page, line 6, column 93]
> >>      at
> >> org.apache.tapestry.engine.RequestCycle.rewindForm(RequestCycle.java:
> >> 461
> >> )
> >>      at
> >> net.sf.tacos.ajax.components.AjaxForm.trigger(AjaxForm.java:418)
> >>      at
> >> net.sf.tacos.ajax.impl.AjaxDirectServiceImpl.triggerComponent(AjaxDir
> >> ect
> >> ServiceImpl.java:348)
> >> .
> >> .
> >> .
> >>
> >> Caused by: java.lang.OutOfMemoryError: PermGen space
> >>
> >>
> >> Anybody have any clues as to what we can do about this?
> >>
> >> Regards,
> >> David Harvey
> >> Ingenix, Inc.
> >>
> >> "Secure Server BSK" made the following  annotations on 07/21/2006
> >> 03:28:13 PM ------------------------------"This e-mail, including
> >> attachments, may include confidential and/or proprietary information,
> >> and may be used only by the person or entity to which it is
> >> addressed. If the reader of this e-mail is not the intended recipient
> >> or his or her authorized agent, the reader is hereby notified that
> >> any dissemination, distribution or copying of this e-mail is
> >> prohibited. If you have received this e-mail in error, please notify
> >> the sender by replying to this message and delete this e-mail
> >> immediately."
> >> ==============================
> >>
> >> ---------------------------------------------------------------------
> >> To unsubscribe, e-mail: [EMAIL PROTECTED]
> >> For additional commands, e-mail: [EMAIL PROTECTED]
> >>
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: [EMAIL PROTECTED]
> > For additional commands, e-mail: [EMAIL PROTECTED]
> >
>
>
> James Carman, President
> Carman Consulting, Inc.
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>
>
>
>
> "Secure Server BSK" made the following
> annotations on 07/23/2006 09:50:20 PM
> ------------------------------"This e-mail, including attachments, may
> include confidential and/or proprietary information, and may be used
only by
> the person or entity to which it is addressed. If the reader of this
e-mail
> is not the intended recipient or his or her authorized agent, the reader
is
> hereby notified that any dissemination, distribution or copying of this
> e-mail is prohibited. If you have received this e-mail in error, please
> notify the sender by replying to this message and delete this e-mail
> immediately."
> ==============================
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>
>


--
Jesse Kuhnert
Tacos/Tapestry, team member/developer

Open source based consulting work centered around
dojo/tapestry/tacos/hivemind.




--
Thanks,

Henri.

Reply via email to