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.

The research in this paper has been supported by DARPA/ONR Contract N00174-95-K-0083, DARPA/AFOSR Contract F3602-97-1-0248 and MURI/AFOSR Contract F49620-00-1-0330.