一个拼写错误,微软误删了十七个数据库

ChatGPT狂飙160天,世界已经不是之前的样子。

新建了人工智能中文站https://ai.weoknow.com
每天给大家更新可用的国内可用chatGPT资源


上个月末,南巴西地区的Microsoft Azure DevOps服务突然停止了约十个小时。事后,微软首席软件工程经理Eric Mattingly为此次故障向用户道歉,并揭示了故障的原因:一个简单的代码拼写错误导致17个生产数据库被删除。

Mattingly解释说,Azure DevOps工程师偶尔需要对生产数据库进行快照,以便调查客户升级或评估潜在的性能改进。为了确保这些快照数据库得到清理,每天都会运行一个超过特定期限便会将其删除的后台作业。

在最近一个敏捷开发的冲刺中,Azure DevOps工程师执行了一个代码升级,用受支持的Azure.ResourceManager.* NuGet包替换已弃用的Microsoft.Azure.Managment.*包。这导致了一个大的拉取请求,交换了旧包中的API调用和新包中的API调用。拼写错误就隐藏在这个拉取请求中,该错误将删除Azure SQL数据库的调用替换成删除托管数据库的Azure SQL Server的调用。由于错误的代码只在特定条件下运行,因此没能被现有测试覆盖。

根据Mattingly的事件报告,在将Sprint 222部署到Ring 0(微软的内部Azure DevOps 组织)时,由于其中不存在任何快照数据库,所以没有执行删除作业。几天后,软件更改被部署到南巴西的客户环境Ring 1。该环境中存在能够触发错误的快照数据库,导致后台作业删除了整个Azure SQL Server和所有17个生产数据库。自此不再能处理任何客户流量,所幸数据并未丢失。

在此次事件后,微软表示会采取一系列措施以避免未来发生类似的问题,例如确保所有快照数据库创建在不同的Azure SQL Server上,以避免与生产数据库冲突。


ChatGPT狂飙160天,世界已经不是之前的样子。

新建了人工智能中文站https://ai.weoknow.com
每天给大家更新可用的国内可用chatGPT资源

猜你喜欢

转载自blog.csdn.net/zyqytsoft/article/details/131075360