Tomas, I can understand why you might want to reset a page, but it would be helpful if you could provide more detailed information so we don't have to guess at your implementation.
I have an app running on a test server where I have tried to duplicate this problem, but so far I haven't been able to. I have a moderately-complex page, including @Form, @Foreach, @Insert, @Conditional, @Hidden, @base:If, @base:Else, @contrib:Table, @DirectLink, @Block, and a couple of custom components, and I can reset it frequently and repeatedly (100 or more times), but I am not seeing any indication of a memory leak. I have added a "-verbose: gc" argument to my JVM startup options (so I can log garbage collection activity), but everything looks good to me. Please try adding "-verbose: gc" to your startup options and report what you see in your logs. Also, it might be helpful to know what Java version and what servlet container you are using. It would also be important to know what other Java packages you are using (JDBC driver, etc.). Shawn Quoting Tomas Jucius <[EMAIL PROTECTED]>: > Imho I need to reload page templates.... > > There is no other sollution... > > > > On 6/20/05, Geoff Longman <[EMAIL PROTECTED]> wrote: > > Perhaps it is a bug but I don't see the reasoning for doing what > you > > are doing in the first place. > > > > Why are you trying to clean out the pool? > > > > Geoff > > > > On 6/20/05, Tomas Jucius <[EMAIL PROTECTED]> wrote: > > > The Java Language Specification allows for the unloading of > classes.. > > > And it is done during garbage collection... > > > > > > So it is tapestry bug.. > > > > > > On 6/20/05, Robert Zeigler <[EMAIL PROTECTED] > wrote: > > > > Tomas Jucius wrote: > > > > > Here what I have found.. I can't develop my project because > of this.. > > > > > Because it depends on this feature.. > > > > > > > > > > As we all know tapestry put all things into pool ant it > retrieves it > > > > > when you request for page and etc... > > > > > > > > > > My application sometimes need to reset this pool.. > > > > > > > > ?? What for? Aside from the development cycle, I can't think of > any > > > > reason to reset the pool. It's generally considered a bad idea > to have > > > > the reset service enabled during deployment. > > > > > > > > > > > > > > So I use reset service.. > > > > > > > > > > But after a lot of resets jvm memory becomes full, and I get > > > > > "java.lang.OutOfMemoryError" > > > > > So after each reset some object are not collected.. And some > > > > > references to objects are left.. I could't find where.. > > > > > > > > I haven't looked into this in great detail, but I suspect that > it's the > > > > same issue as discussed earlier, dealing with an alleged memory > leak > > > > when the disable-caching vm property is set to true. The > general idea: > > > > tapestry creates enhanced versions of the the classes, > generating > > > > concrete accessors for you, etc. Each time you reset, new > enhanced > > > > classes must be generated. But the JVM caches the classes, so, > > > > eventually, the jvm runs out of memory due to the cached class > > > > definitions, rather than any caching that tapestry is doing. > Check out > > > > the recent thread on this subject with the disable-caching vm > property > > > > set to true; somebody there posted a set of jvm arguments that > seems to > > > > sidestep the problem. > > > > > > > > > IF THEREIS NO ANY COMPONENT in page when it is not leaking > (so I put > > > > > this insert).. > > > > > So maybe of component specifications it is leaking? > > > > > > > > Nope... your page has no properties in need of enhancement, but > the > > > > insert component does. Taking the components out = a single > class > > > > definition; putting the component in means each reset generates > a new > > > > enhanced insert class. > > > > > > > > Robert > > > > > > > > > --------------------------------------------------------------------- > > > > 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] > > > > > > > > > > --------------------------------------------------------------------- > 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]
