Purava, Oracle implemented the new 11.2 Feature "Edition-Based Redefinition" for exactly that purpose. http://docs.oracle.com/cd/E14072_01/appdev.112/e10471/adfns_editions.htm Of course the application must be prepared for such an upgrade. There is also criticism around: http://www.pythian.com/news/29893/r12-2-online-patching-%E2%80%93-what-are-the-hidden-costs/ Of course, similar techniques can be implemented just by hand, in any case a zero-downtime-application is even more complex and expensive than an application with is designed with downtimes for maintenance tasks. Martin On Tue, Mar 20, 2012 at 07:36, Purav Chovatia <puravc@xxxxxxxxx> wrote: > Hi, > We have a requirement to apply application patches online i.e. without > downtime. Our apps run in active-active mode and hence the app layer is > taken care of i.e. while instance-1 of app is being upgraded, the live > traffic is handled by instance-2. And once that is done, live traffic is > handled by instance-2 and instance-1 is upgraded. However the challenge is > to modify the DB objects i.e. SPs, tables, indices, etc. > > When I was given this requirement, initially I resisted. But later I > thought, may be this looks like a common problem with increasing demand of > high availability. So can you pls give me some guidance on how is this > requirement handled across the industry? What do you all do? > For e.g. if I have to modify a SP, I know that cannot be done while the > apps are accessing it. Is there some workaround? May be writing wrappers, > etc.? > Similarly for other changes like adding or dropping a column. > > I think Edition based Redifinition is a step towards it but a first glance > at it made me feel that its very complicated, still maturing, and does not > cover all types of changes. > > If anybody has some best practices that are being followed can you please > share? > > Thanks. > > > -- > //www.freelists.org/webpage/oracle-l -- //www.freelists.org/webpage/oracle-l