今年是 2024 年,闰日又来了。和以往的闰年一样,我会尽量多地记录bug报告和故障,并尽可能地附上源代码链接。以下我按照我个人认为的影响程度对它们进行了分类。
最大影响
- 据《连线》、《新西兰先驱报》等多家媒体报道,新西兰的许多加油站都出现了自助支付终端的问题,其中包括 Allied 石油公司、Gull 石油公司、Z 能源公司、Waitomo 石油公司 和 英国石油公司。据报道,该问题与 Invenco 支付解决方案终端有关。Invenco 集团首席执行官John Scott证实,他们的软件确实出现了闰年故障。目前该bug已经被修复,同时该公司已经对其全球支付终端网络进行了更新。
- 据各种报道称,在2 月 29 日,瑞典各地 ICA 杂货店和药店的支付终端都出现了无法处理交易问题,几乎所有类型的支付卡都受到了影响。ICA 的媒体关系经理 Maria Elfvelin 表示,该问题是由于其软件中的一个闰日bug造成的。目前这个问题现已得到解决。
网络安全软件供应商 Sophos 发布公告称,如果在 2 月 29 日启动软件,其产品 Sophos Endpoint、Sophos Server 和 Sophos Home 可能会遇到与 SSL 证书有关的问题。作为一种解决方法,他们最初建议手动禁用软件中解密 SSL/TLS (HTTPS) 连接功能。后来,他们应用了一个策略更新来自动禁用该特性。
- 至少有一份相关报告指出,这个问题导致所有向外网络请求都出现了证书验证错误的信息。
- 目前尚未可知该功能是否已自动恢复。
中等影响
- 据法国《巴黎人报》报道,在2月29日午夜时分,法国巴黎的路灯被意外关闭。运营商 Cielis 告诉记者,该问题与闰日相关的程序故障有关。最后,该故障通过人工恢复照明花费了好几个小时。
Fastrack FS1 智能手表似乎存在无法显示2月29日的日期和时间的问题。有几份报告描述或显示了其在 2 月 28 日晚上 11:59 时冻结,以及还有一些其他问题,可能也与此相关。Fastrack 方面已经承认了这个问题,并表示他们正在努力解决这个问题。
- 更新:这个问题似乎影响到Fastrack公司生产的许多不同型号的智能手表。他们的 Twitter 账户也承认了这个问题,并表示他们正在修复这个问题。
- Amazfit 的智能手表在处理闰日时也出现了一些问题,如错误冻结问题和显示错误的日期和时间问题。
- Citrix 发布的一篇支持性文章显示,Citrix HDX HTML5 视频重定向服务会在 2 月 29 日崩溃。建议的解决方法是将计算机的日历日期设置为 3 月 1 日,但这可能会导致其他副作用。这个问题还会影响与 Microsoft 团队集成相关的功能。根据另一条推文,目前有一个个人的修复程序,但是你必须致电申请才能获得相关技术支持。
- 开源固件项目 Coreboot 存在一个闰年bug,导致它的实时时钟 (RTC) 日期不正确。这个问题已经被修复并合并到代码库中,但在此之前,它可能会影响其下游项目 —— 包括 Dasharo 中的这个bug和 Heads 中的这个bug。
- 据The Japan News 和 BNN Breaking News 报道,在2 月 29 日,日本部分地区发放驾驶执照的计算机系统出现运行故障。
- 详细情况尚未可知,但根据 Hacker News上的一篇文章,一个与创建结婚证书有关的应用程序出现了一个bug,它从申请人的出生日期年份中减去了一个值,以此来确定他们是否到了结婚年龄。而在中国,结婚的法定最低年龄是女性 20 岁,男性 22 岁。2004-02-29 是一个有效日期,但2002-02-29 却不是。
较低影响
- 为金融服务提供API 组件的Teller 公司,其CEO在报告中提到,他们的证书生成代码中出现了闰年bug,其中甚至包括代码示例!在bug得到解决之前,这直接导致注册Teller的新帐户无法下载所需的证书来使用该服务。
- Phoenix Framework 是一个基于 Elixir 编程语言的web开发平台,它存在一个与证书生成相关的问题。当在2024年2月29日运行时,其 phx.gen.cert 任务会试图创建有效期为 2025-02-29 的无效证书。针对该问题的修复程序已经完成创建,并且将包含在下一个版本中,以防止该问题在下一个闰年再次发生。
在 2 月 29 日,有几款不同类型的电子游戏都出现了无法运行的情况。而相关方建议的解决方法是将设备离线并将其时钟调整到不同的日期,或者干脆不玩。
- 《EA Sports WRC》,启动时崩溃
- 《Theatrhythm Final Fantasy》,黑屏
- 《Theat rhythm Final Bar Line》,无法连接远程服务器
- 《Lilith’s Throne》,启动时崩溃,提示 “2019 年 2 月 29 日不是有效日期”。(注:这款游戏属于NSFW级别。)
- 电子产品零售的领先者Best Buy 在其网站上出现了信用卡到期日期下拉选项的问题。在它的网站上,出现了信用卡输入表单不支持用户选择 2024 年 2 月作为闰日期间的到期日的问题。由于信用卡到期日是有效的,因此在3月1日之前,该表格不应该拒绝在2月到期的信用卡。(注:我能够独立验证这一点。)
- 开源的 Akami Unified Log Streamer (ULS) 有一个尚未解决的问题,即在每日活动图表中显示2月29日为空白。Akamai的安全互联网接入(SIA)企业产品(以前称为企业威胁保护器(ETP))的CLI也报告了这个问题。
- 据 Twitter 报道,Apple 天气应用程序也存在一个非常小的闰年bug。在 2 月 29 日,它报告的 30 天平均降水量为零,无论在什么地方。因此,每天的降水量也存在计算错误。例如,在我所在的地区,它显示今天的降水量为 4.4英寸,但它又报告显示这也是比30天平均降水量0英寸高出的4.4英寸。(注:我能够独立验证这一点。)
- 据报道,微软 OneDrive 照片版块中的 “On This Day “功能无法显示往年闰年 2 月 29 日的照片,而是停留在 2 月 28 日。
- 一个与垃圾自动化计划相关的开源家庭自动化软件组件在其Python代码中遇到了一个闰年bug。
- 开源的 COSMIA ACCESS-OM3 全球海洋-海冰-波耦合模式遇到了一个闰日bug,这似乎与 CMEPS 组件(地球预测系统社区调解器)中的另一个bug有关。该bug的影响可能仅限于该模型的科学数据分析用途。
- 有人在 Hacker News 上发帖称,他们无法购买 YouTube 的付费订阅,因为他们出生在闰日,而年龄验证逻辑认为他们未满 18 岁。
- 一位 Redditor 用户分享说,当下流行的预算应用程序 YNAB(”You Need a Budget”)在追踪每月最后一天重复出现的定期交易功能上出现了一个bug。而据报道,本月这些交易都发生在 2 月 28 日,而不是 2 月 29 日。
- Hesai 激光雷达设备出现了一个与闰日有关的bug,目前该bug已通过固件更新得到解决。Hesai上海公司很快注意到,这个bug仅限于较旧的 L4 产品设备,而目前在乘用车中使用的较新 AT128 型号产品设备并不存在该问题。
- OpenAI 的 ChatGPT 3.5 并不能完全理解 2024-02-29 是否是一个有效日期,这取决于你对它的提问方式。但至少有一位 OpenAI API 用户在自己的应用程序中遇到了由于这个问题导致的故障。
- 受大众欢迎的开源命令行调度工具 Remind, 自 28 年前问世以来,在处理闰日时就一直存在问题。。该工具的作者最近在他们的邮件列表上发布了关于这个bug的信息。他们已经修复了这个bug并于今天发布了最新的04.03.00版本。
- 柏林公共交通公司 BVG 的Android应用程序向用户发出警告,称该应用程序中 2 月 29 日的行程显示在了 2 月 28 日的行程上。
- 爱尔兰公共轨道交通的官方移动应用程序出现无法显示 2 月 29 日的任何路线的情况。爱尔兰铁路公司承认了这一问题,并转而引导乘客使用其网站。
- 有人在Twitter上说,哥伦比亚 Avianca 航空公司打印的 2 月 29 日机票(或者登机牌)被错误地显示为 3 月 1 日。他们还附上了他们收到的一封来自 Avianca 要求他们重新下载登机牌的电子邮件的截图。
- 具体的软件尚未可知,但这里有一个有趣的发现,在一个眼科医生办公室的软件中存在一个闰年bug。由于闰日的原因,同一个应用程序产生了两个不同的过期日期。
未知影响
- 一些不同的人提到,他们在不同公司的代码中都遇到过闰日bug。
- 编程语言 Odin 的 datetime_too_time 函数中存在一个bug,导致 2024 年 3 月 1 日被错误地强制变为 2024 年 2 月 29 日。据其维护者称,该问题已在最新的一次提交中已经被修复了,并且将包含在下一个月发布的dev-2024-03版本中。
- 开源网络操作系统 SONiC 是 Linux 基金会的一个项目,在一次重启测试中,它的 Azure Pipelines 版本似乎出现了构建失败。(我无法确定全部影响,但该bug似乎仅限于构建系统,而非产品本身)。
未经证实 / 时间巧合
据瑞士苏黎世市的一些新闻报道,该市在 2 月份向所有员工支付了两倍的正常工资。员工将不得不退还额外收到的工资。该问题最初的说法是由于Zürcher Kantonalbank (ZKB)的技术处理造成的,但后来被归咎于Swisscom使用的软件。
- 注:我本想将其移至 “最大影响 “部分,然而目前尚未可知该问题是否与闰日直接相关,或只是时间上的巧合。请注意,工资单日期是 2 月 26 日,因此问题发生在闰日之前。罪魁祸首很可能是一个闰日bug,但尚未得到证实。如果有人有更多关于这个的细节,请告诉我!
- Cloudflare在2024年2月29日经历了一次与计费相关的服务事件,大约从UTC时间02:00开始。目前还尚不清楚该事件是否是由闰年bug引起的,还是只是时间上的巧合。虽然事件的影响范围尚未可知,但在Hacker News 上有人发帖说,他们收到了一张日期为1970-01-01 (Unix纪元的日期)的发票,而该发票的文件名本应是2024-02-29。不过,除此之外发票的内容似乎都是正确的。
- 据 Twitter 报道,在 2 月 29 日,澳大利亚昆士兰州凯恩斯的 Innisfail 医院经历了电话系统的全面中断。这可能与闰年bug有关,也可能只是时间巧合。
也许不是 Bug
- Apple 日历应用程序中定于2月29日的活动,虽然标明“每年重复”,但实际上只在闰年发生,这令人困惑,但也许是有意为之。值得一提的是,Google日历也做了同样的事情,但它用了一个更好的措辞: “每年 2 月 29 日”。
还有哪些我的清单上没有的bug吗?请告诉我,我会把它们添加进去!