Live Upgrade Techniques for CORBA Applications

The ability to perform live software upgrades is essential for long-running applications that provide critical services. Program modifications are necessary as programmer errors and new user requirements are uncovered. If software is to remain relevant, it must be upgradable. The Eternal Evolution Manager allows distributed CORBA applications to be upgraded while they continue to provide service. In addition to avoiding planned downtime, the Evolution Manager accomplishes the difficult tasks inherent to software evolution with minimal help from the application programmer. With our live upgrade techniques, and the underlying fault tolerance of the Eternal System, we can allow applications to run forever.

[1]  Barbara Liskov,et al.  Distributed programming in Argus , 1988, CACM.

[2]  Jeff Kramer,et al.  Maintaining node consistency in the face of dynamic change , 1996, Proceedings of International Conference on Configurable Distributed Systems.

[3]  Louise E. Moser,et al.  Totem: a fault-tolerant multicast group communication system , 1996, CACM.

[4]  Toby Bloom,et al.  Reconfiguration and module replacement in Argus: theory and practice , 1993, Softw. Eng. J..

[5]  Ophir Frieder,et al.  On-the-fly program modification: systems for dynamic updating , 1993, IEEE Software.

[6]  Steffen Hauptmann,et al.  On-line maintenance with on-the-fly software replacement , 1996, Proceedings of International Conference on Configurable Distributed Systems.

[7]  Valérie Issarny,et al.  A dynamic reconfiguration service for CORBA , 1998, Proceedings. Fourth International Conference on Configurable Distributed Systems (Cat. No.98EX159).

[8]  Peter H. Feiler,et al.  Consistency in dynamic reconfiguration , 1998, Proceedings. Fourth International Conference on Configurable Distributed Systems (Cat. No.98EX159).

[9]  Pascal Felber,et al.  THE CORBA OBJECT GROUP SERVICE: A SERVICE APPROACH TO OBJECT GROUPS IN CORBA , 1998 .

[10]  Jeff Magee,et al.  The Evolving Philosophers Problem: Dynamic Change Management , 1990, IEEE Trans. Software Eng..

[11]  Twittie Senivongse Enabling flexible cross-version interoperability for distributed services , 1999, Proceedings of the International Symposium on Distributed Objects and Applications.

[12]  Lui Sha,et al.  Designing for evolvability: building blocks for evolvable real-time systems , 1996, Proceedings Real-Time Technology and Applications.

[13]  Priya Narasimhan,et al.  Consistent Object Replication in the external System , 1998, Theory Pract. Object Syst..