当前位置: 华文星空 > 知识

你目前写出的最大的 Bug 是怎样的?

2015-03-24知识

不是我写的,但很有意思。Azure底层fabric有过这么一段code,目的是检查一张证书的有效期是否在一年以内。

那么要先获得一年后的日期,本来用DateTime.Today().Add(new TimeSpan(365,0,0,0))就可以了(编辑:经提醒,AddYear(1)是最简单而且更精确的)。写代码的哥们脑洞了下写成new DateTime(today.Year+1,today.Month,today.Day)。

经过各种测试运行一直都没问题。直到2012年2月29日,ArgumentOutOfRangeException。

后果是整个Azure挂了十多个小时吧。

----------------------------------------------------------

编辑:关于这次outage,Azure官方的说明在这里:

Summary of Windows Azure Service Disruption on Feb 29th, 2012

。有兴趣的可以看下,