To Upgrade or Not to Upgrade: Impact of Online Upgrades Across Multiple Administrative Domains

TitleTo Upgrade or Not to Upgrade: Impact of Online Upgrades Across Multiple Administrative Domains
Publication TypeConference Papers
Year of Publication2010
AuthorsDumitras T, Narasimhan P, Tilevich E
Conference NameOOPSLA'10 Proceedings of the ACM International Conference on Object Oriented Programming Systems Languages and Applications
Date Published2010///
ISBN Number978-1-4503-0203-6
Keywordsmixed-version race, multiple administrative domains, online upgrade, risk assessment

Online software upgrades are often plagued by runtime behaviors that are poorly understood and difficult to ascertain. For example, the interactions among multiple versions of the software expose the system to race conditions that can introduce latent errors or data corruption. Moreover, industry trends suggest that online upgrades are currently needed in large-scale enterprise systems, which often span multiple administrative domains (e.g., Web 2.0 applications that rely on AJAX client-side code or systems that lease cloud-computing resources). In such systems, the enterprise does not control all the tiers of the system and cannot coordinate the upgrade process, making existing techniques inadequate to prevent mixed-version races. In this paper, we present an analytical framework for impact assessment, which allows system administrators to directly compare the risk of following an online-upgrade plan with the risk of delaying or canceling the upgrade. We also describe an executable model that implements our formal impact assessment and enables a systematic approach for deciding whether an online upgrade is appropriate. Our model provides a method of last resort for avoiding undesirable program behaviors, in situations where mixed-version races cannot be avoided through other technical means.