閏年問題(うるうどしもんだい、)または閏年バグ()とは、閏年がどの年であるかについての計算の誤りから生じる問題である。特にコンピュータ関連のバグとして発生するが、デジタル化されていない文書においても発生しうる問題である。

実例 閏年問題の実例として、以下のようなものがある。

Microsoft Excelは、初期のバージョンから1900年を平年ではなく閏年として扱っている。そのため、1900年2月28日と3月1日の間に2月29日が存在する。このバグはLotus 1-2-3に由来するもので、後方互換性のためにExcelにされたものである。マイクロソフトはこのバグについての記事を書き、1900年を閏年として扱う理由を説明したExcel 2000 incorrectly assumes that the year 1900 is a leap year. Retrieved 2013-09-22.(Microsoft Excel#1900年閏日問題も参照)。このバグは、EcmaのOffice Open XML(OOXML)の仕様の要件にも組み込まれているStandard ECMA-376 / Open Office XML File Formats. Retrieved 2016-09-10.ISO/IEC 29500 / Open Office XML File Formats. Retrieved 2016-09-10.。 2008年12月31日、マイクロソフトのポータブルメディアプレーヤーの第1世代の多くがフリーズした。マイクロソフトは、この問題はフリースケールが作成した内部クロックドライバと、デバイスが閏年を処理する方法によって引き起こされたと説明した。これは24時間後に自動的に修復されたが、デバイスのバッテリーを消耗させてから2009年1月1日正午(UTC)以降に再充電することでも修正できた。 2010年3月1日、ソニーのゲーム機PlayStation 3は誤って2010年を閏年として扱っていたため、PlayStation Networkで世界規模の障害が発生した(PlayStation_3#問題点を参照)PlayStation®3をご利用のお客様へ - ソニー・コンピュータエンタテインメント 2010年3月2日ソニーが旧型PS3で発生していた時刻のバグを修正、原因は「うるう年」 GIGAZINE 2010年3月2日。 2012年2月28日、Microsoft Azureが閏年バグによりサービスを一時停止した。太平洋標準時(PST)の午後5時45分にWindows Azureの開発チームがこの問題に気づき、閏年の計算が原因であることを突き止めた。

関連項目

脚注