Hi, I just committed the changes. There are a few new LiftRules variables
/** * If a Comet request fails timeout for this period of time. Default value is 10 seconds */ var cometFailureRetryTimeout: Long = 10 seconds /** * By default lift uses a garbage-collection mechanism of removing unused bound functions from LiftSesssion * Setting this to false will disbale this mechanims and there will be no Ajax polling mechanims attempted. */ var enableLiftGC = true; /** * If Lift garbage collection is enabled, functions that are not seen in the page for this period of time * (given in milliseonds) will be discarded hence eligibe for garbage collections. * The default value is 10 minutes. */ var unusedFunctionsLifeTime: Long = 10 minutes /** * The polling interval for background Ajax requests to keep functions to not be garbage collected. * Default value is set to 75 seconds. */ var liftGCPollingInterval: Long = 75 seconds /** * The polling interval for background Ajax requests to keep functions to not be garbage collected. * This will be applied if the AJax request will fail. Default value is set to 15 seconds. */ var liftGCFailureRetryTimeout: Long = 15 seconds Dave ... just wanted to also make people aware on what we just discussed. With the gc mechanism where unused function survive for 10 minutes (by default ... but now can be configured) the back button scenarios would have a negative impact as browsers tend to reload the page from cache and not make a request to server. Hence Lift requests from that page will fail if the functions are GC-ed. We need a mechanism to determine the back button cases and I'll be doing some noodling on that. Of course creative ideas are more then welcomed ! Br's, Marius On Feb 8, 9:13 pm, David Pollak <feeder.of.the.be...@gmail.com> wrote: > On Sun, Feb 8, 2009 at 7:40 AM, Marius <marius.dan...@gmail.com> wrote: > > > I can make these changes one of these days if it's fine with you. > > Please make them as soon as is convenient. It's time to let the bits sit > prior to 1.0 shipping. > > > > > > > On Feb 8, 5:23 pm, David Pollak <feeder.of.the.be...@gmail.com> wrote: > > > On Sun, Feb 8, 2009 at 12:37 AM, Marius <marius.dan...@gmail.com> wrote: > > > > > Dave this is way awesome! > > > > > I have some questions/suggestions if I may > > > > > 1. Currently Lift purges the unseen functions that are older then 10 > > > > minutes. I think it might help to make this time window configurable > > > > via LiftRules so that people may adjust it to fit their specific > > > > application needs. > > > > Sure. > > > > > 2. AddLiftGCToBody should probably not renders anything related with > > > > GC if the GC nodes list is empty? ... or have the ability to disable > > > > the GC support which might be quite handy for mobile web applications > > > > used for limited browsers. > > > > Disable GC... cool. Not sending the Ajax request if the list is empty, > > > cool. But it's possible that items come onto the page via Ajax or Comet. > > > Thus, we have to run the node walk as long as GC is enabled. > > > > > 3. Lift for every page is starting the JS GC "daemon" that > > > > periodically sends the GC request up (every 75 seconds for success or > > > > 15 seconds for failure). Shouldn't we make these these times intervals > > > > configurable from LiftRules? > > > > Sure. > > > > > Thoughts? > > > > > Br's, > > > > Marius > > > > > On Feb 8, 2:05 am, David Pollak <feeder.of.the.be...@gmail.com> wrote: > > > > > Folks, > > > > > > I've found and squashed a bunch of memory retention issues in the > > Lift > > > > comet > > > > > stuff (and added the garbage collection for functions.) > > > > > > I've tested the fixes against the livehttp://demo.liftweb.netandthere > > > > has > > > > > been no memory growth (except in Derby, but that's not Lift's > > problem) > > > > for > > > > > 24 hours. > > > > > > I've been using YouKit (http://yourkit.com/) to profile that > > > > application. > > > > > I've gotta say that YourKit is awesome, even for debugging remote > > code. > > > > I'd > > > > > like to thank YourKit again for contributing licenses to the Lift > > > > > committers. > > > > > > I've dialed the heap size for demo.liftweb.net from 1GB to 192M. In > > > > > practice, the actual heap size for the site never grew beyond about > > 10MB. > > > > > > Thanks, > > > > > > David > > > > > > PS -- Yes, my confidence about making 1.0 on 2/26 is very high. > > > > > > -- > > > > > Lift, the simply functional web frameworkhttp://liftweb.net > > > > > Beginning Scalahttp://www.apress.com/book/view/1430219890 > > > > > Follow me:http://twitter.com/dpp > > > > > Git some:http://github.com/dpp > > > > -- > > > Lift, the simply functional web frameworkhttp://liftweb.net > > > Beginning Scalahttp://www.apress.com/book/view/1430219890 > > > Follow me:http://twitter.com/dpp > > > Git some:http://github.com/dpp > > -- > Lift, the simply functional web frameworkhttp://liftweb.net > Beginning Scalahttp://www.apress.com/book/view/1430219890 > Follow me:http://twitter.com/dpp > Git some:http://github.com/dpp --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Lift" group. To post to this group, send email to liftweb@googlegroups.com To unsubscribe from this group, send email to liftweb+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/liftweb?hl=en -~----------~----~----~----~------~----~------~--~---