On Feb 16, 2011, at 6:05 PM, Pascal Robert wrote: > I think what most people do is to install the new version with some kind of > identifier, like SomeApp.woa-build36 and they symlink SomeApp.woa to that > particular version. But you still need to stop and start the app, or like > Chuck said, you will get troubles. On OS X, HFS+ is pretty good at tracking > back old resources so you have less troubles if you deploy a new version, but > on Linux/ext3, beware.
On OS X, if you have not accessed it, HFS won't track it. That is why you can get the new template / old code problem. > The best thing would be to add a "Pull new version from Hudson" action in > Monitor or wotaskd, and that action would fetch the new version without > installing it, put the instances in "refuse new sessions" mode, and when no > sessions are active, install the new version and restart the app. > > You can also try the "bounce" action, which let you start instances on the > newer code, but let the other instances on the older version. You can have "A" and "B" instances configured. When the A instances are running, install under B, start the B instances and set the A ones to refuse new sessions. Reverse the next time you deploy. > Be aware that it might cause problems if you deploy a new version that do > database schema changes. For example, if you change the constraint on a > column so that it cannot accept NULL anymore and the older version of your > app don't have that change in its model, current sessions in the older > version will get an JDBC exception when they try to put NULL in the column > where the constraint was changed. Many other database changes will also cause problems. If you need to update the schema, you pretty much have to schedule a service outage. Chuck > >> Ouch. Do rolling updates still have to be managed directly through monitor >> then or is there a Better Way™? (^_^) >> >> Ramsey >> >> On Feb 16, 2011, at 5:49 PM, Chuck Hill wrote: >> >>> You can run into problems replacing the files. If there was a code change >>> and a template change that relies on that code AND no user has used that >>> page/component before the update, they will get the new version (as WO >>> loads it into the cache) but it will still run against the original code. >>> >>> Chuck >>> >>> >>> On Feb 16, 2011, at 4:33 PM, Ramsey Gurley wrote: >>> >>>> Hi all, >>>> >>>> I am working on a deployment script with hudson and wonder monitor. What >>>> is the recommended way to do an application update. Is this as simple as >>>> replacing the old app and wsr directories with the new ones and then >>>> bounce graceful or bounce shutdown? >>>> >>>> Ramsey >>> >>> >>> >>> -- >>> Chuck Hill Senior Consultant / VP Development >>> >>> Practical WebObjects - for developers who want to increase their overall >>> knowledge of WebObjects or who are trying to solve specific problems. >>> http://www.global-village.net/products/practical_webobjects >>> >>> >>> >>> >>> >>> >>> >> >> _______________________________________________ >> Do not post admin requests to the list. They will be ignored. >> Webobjects-deploy mailing list ([email protected]) >> Help/Unsubscribe/Update your Subscription: >> http://lists.apple.com/mailman/options/webobjects-deploy/probert%40macti.ca >> >> This email sent to [email protected] > -- Chuck Hill Senior Consultant / VP Development Practical WebObjects - for developers who want to increase their overall knowledge of WebObjects or who are trying to solve specific problems. http://www.global-village.net/products/practical_webobjects
smime.p7s
Description: S/MIME cryptographic signature
_______________________________________________ Do not post admin requests to the list. They will be ignored. Webobjects-deploy mailing list ([email protected]) Help/Unsubscribe/Update your Subscription: http://lists.apple.com/mailman/options/webobjects-deploy/archive%40mail-archive.com This email sent to [email protected]
