Peter, you saved me. Thanks a lot! I also upgraded to using the deploy-task with update="true" and got even better behavior than before. Application-update works with a sub-second downtime now.
BTW I use in META-INF/context.xml: <Context> <Manager pathname="${catalina.base}/conf/Catalina/myapp_SESSIONS.ser" /> </Context> as the path. This it is working out of the box without creating dirs and setting permissions. Reinhard Am Dienstag, 14. März 2006 16:29 schrieb Peter Rossbach: > Please open a bug report, > then we can better discuss the issue. > > Peter > > Am 14.03.2006 um 16:21 schrieb Reinhard Moosauer: > > Hi Peter, > > > > thanks for making it clear. > > > > I would appreciate your opinon in how we could enhance this: > > > > - I think, even on production systems, there should be a > > possibility to > > do a 'soft' application update without interrupting all users. > > When only minor changes in the application are made, the session > > state > > should be fully compatible. > > - I agree, that in many situations, a clear state is very much > > helpful. > > But this applies even more to development systems, doesn't it? > > - I hoped, we could simply add a manager attribute 'keepSessions' > > to the > > undeploy-task. But I am afraid, that's no easy to get, because > > deletion is > > not done in the manager but in the context. > > Do you think its possible? > > - It would be quite straightforward, if the 'update'-attribute to > > manager-deploy would have just this effect. > > > > If anyone has a good idea how to do this, please let me know. > > All other please vote for this enhancement because we have lost a > > very nice > > feature here. > > > > kind regards, > > > > Reinhard > > > > Am Dienstag, 14. März 2006 15:44 schrieb Peter Rossbach: > >> Hmm, > >> > >> I thing you are right. > >> > >> ContextConfig.destroy() remove the working dir after undeploy the > >> app. > >> > >> /** > >> * Process a "destroy" event for this Context. > >> */ > >> protected synchronized void destroy() { > >> // Called from StandardContext.destroy() > >> if (log.isDebugEnabled()) > >> log.debug(sm.getString("contextConfig.destroy")); > >> > >> // Changed to getWorkPath per Bugzilla 35819. > >> String workDir = ((StandardContext) context).getWorkPath(); > >> if (workDir != null) > >> ExpandWar.delete(new File(workDir)); > >> } > >> > >> This feature is important do guaranty a clear state after change the > >> binary. Feel free to open > >> an enhancement bug report, and feel free to add a patch. The current > >> behaviour is > >> correct for production sites. > >> > >> Peter > >> > >> Am 14.03.2006 um 15:03 schrieb Reinhard Moosauer: > >>> Hi List, > >>> > >>> I found something, that looked promising, but did not work. > >>> Developers, please look, this could be a bug: > >>> > >>> The deploy-task has an attribute "update", removes the context > >>> before > >>> re-installing it. I hoped that this one would do what I want. > >>> > >>> But unfortunately, it is equivalent to undeploy/deploy so my > >>> sessions are gone > >>> again. :-( > >>> > >>> Maybe I have to clarify, what I am doing with my sessions (for > >>> Rodrigo): > >>> > >>> I have all session-attribute in my application serializable, so > >>> that tomcat > >>> can save all session data to disk when the context or tomcat > >>> itself is > >>> stopped. > >>> At startup these serialized data is being read back by tomcat > >>> automatically. > >>> As a result, users can coutinue their work exactly where the are. > >>> (Except that the application is not available for 1-2 seconds. But > >>> it is still > >>> unlikely that a users fires a request just in this moment, at least > >>> for > >>> medium-frequency apps) > >>> Formerly, the persisted session data survived the remove, so I could > >>> re-install the app. > >>> > >>> Please help! > >>> > >>> Reinhard > >>> > >>> Am Dienstag, 14. März 2006 13:53 schrieb Reinhard Moosauer: > >>>> Hello List, > >>>> > >>>> recently I upgraded from tomcat 5.5.9 to 5.5.15 > >>>> Since then, all my sessions are lost after a remove/install via the > >>>> manager. > >>>> > >>>> The problem is the following: > >>>> I installed a war-file, which is copied to the webapps-folder > >>>> during > >>>> manager-install. When I want to replace the war with a new > >>>> version, I > >>>> _have_ to undeploy, which deletes my persistent sessions too. > >>>> > >>>> How can I get back the smooth behavior of 5.5.9, which allowed > >>>> me an > >>>> application update on the fly without disturbing user sessions? > >>>> > >>>> many thanks in advance for your advice > >>>> > >>>> Reinhard > >>>> > >>>> ------------------------------------------------------------------- > >>>> -- > >>>> 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] > > --------------------------------------------------------------------- > 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]