Understanding and Detecting Software Upgrade Failures in Distributed Systems
Yongle Zhang, Junwen Yang, Zhuqi Jin, Utsav Sethi, Kirk Rodrigues, Shan Lu, Ding Yuan
Abstract
Upgrade is one of the most disruptive yet unavoidable maintenance tasks that undermine the availability of distributed systems. Any failure during an upgrade is catastrophic, as it further extends the service disruption caused by the upgrade. The increasing adoption of continuous deployment further increases the frequency and burden of the upgrade task. In practice, upgrade failures have caused many of today's high-profile cloud outages. Unfortunately, there has been little understanding of their characteristics.
Topics & Concepts
UpgradeSoftware deploymentCloud computingComputer scienceTask (project management)SoftwareService (business)Computer securityReliability engineeringBusinessSystems engineeringEngineeringOperating systemMarketingSoftware System Performance and ReliabilitySoftware Reliability and Analysis ResearchSoftware Testing and Debugging Techniques