2024年2月29日に、多くの人が想定していなかった「うるう年(閏年)」を原因とするITトラブルが発生しました。
このトラブルはどんなもので、なぜ発生するのでしょうか?そして、うるう年だけでなく、他にも「うるう秒(閏秒)」の問題があることをご存知でしょうか?
今回は、うるう年、うるう秒の問題とどんな対策が大切かをまとめました。
- もくじ
1. 2024年2月29日、ITシステムトラブル発生
1-1 不意をついて!? うるう年トラブルが発生
2024年はうるう年(閏年:leap year)です。ややこしい言い方になりますが、うるう年とは、"うるう"のある年のことです。
うるうとは、暦のずれを調節するために入れられる「日」や「秒」のことです。うるうのない年は「平年」といいます。乱暴な表現をしてしまうと、平年に足される"余分な一日"がうるうです。本来は「閏」と漢字がありますが、常用漢字ではないので、報道などではカギカッコ付き「うるう」や「うるう年」と記されていることが多いようです。
うるう年である2024年2月29日。不意打ちのように、想定外のITシステムトラブルが多発することになりました。多くの企業や個人が影響を受けたとされ、当日午後から翌日にかけて大きく報じられることになりました。
例えば、神奈川、新潟、岡山、愛媛の4県では、運転免許証を発行する機械にシステム障害が起き、一時、免許証を発行できない事態となったり、大手ドラッグストアの全国の店舗で、薬の処方や会計などができなくなったりするなどしたのです。
1-2 トラブル発生の原因は?
報道では、うるう年トラブル発生の原因は「うるう年の設定がされていなかった」と記されていたようです。具体的には、以下が代表的な原因です。
日時計算・設定のミス
日付を計算する際に2月29日を無視したり、2月28日としたり、3月1日としたりすることがあり、これにより、日付関連の処理が正確に行われず、データの不整合や破損、不正確な計算がされることになりました。2024年の報道はこの関連が多かったように思います。
データベース更新失敗、システム停止
これも直接の原因は上の日時計算・設定のミスです。そこから連鎖的に、データベースの更新に失敗し、さらにシステム停止を引き起こすケースもあるとされます。
ネットワーク機器の停止
ネットワーク機器がうるう年に対応していないと、機器が停止するなどして、ネットワーク全体で同期エラーが発生しました。
うるう年トラブルの原因はこのようにいろいろと挙げられますが、突き詰めれば<日時計算または設定のミス>ということになるのかもしれません。
1-3 うるう年生まれの人の「誕生日」はどうなる?
ところで、うるう年の2月29日生まれの人の誕生日はどうなるのでしょうか? まさか4年に1度しか歳を取らない......ということはありえませんが、どうなっているか気になるところです。
日本の法律では、誕生日を基準とした行政手続きは「みなし誕生日」を2月28日としています。平年は、うるう年に関わりなく、2月28日24時に加齢されます。会員データベースなどで誕生日を扱う場合は気をつけておきたいポイントです。
2. 今度は「うるう秒」でトラブルが発生する?
2-1 うるう秒とは
「うるう秒(閏秒:leap second)」とは、現行の協定世界時(UTC)と地球の自転に基づく「世界時(UT1)」との差を調整するために追加もしくは削除される秒のことです。
うるう秒の挿入は国際的に実施されており、日本では2017年1月1日午前9時直前にうるう秒(8時59分60秒)の挿入が行われました。その時の様子をYouTubeで見ることができます。
総務省 国立研究開発法人情報通信研究機構のWEBサイトには、2017年のうるう秒について以下のように記されています。
平成29年(2017年)1月1日(日)午前8時59分59秒と午前9時00分00秒の間に「8時59分60秒」を挿入します。
2-2 うるう秒とうるう年の関係
うるう秒とうるう年はどちらも、「うるう(閏)」の言葉が使われ、「時間を調整する」意味では共通していますが、その役割や実施のタイミングには違いがあります。
うるう年は、地球が太陽を一周するのにかかる時間がちょうど365日ではなく、少し長い(約365.25日)ため、暦を調整するために4年に一度、2月29日を追加します。
うるう秒は、数年に一度、1秒を追加または削除することで時間を調整します(これまで削除されたことはありません)。
つまり、うるう年は暦を、うるう秒は時間そのものを調整するという点で違いがあります。くわえて、うるう年は定期的に訪れるのに対し、うるう秒は必要に応じて不定期に行われる点も異なります。定期的でないため、予測、対応するのが難しいという一面があります。
2-3 うるう秒の実施は「見送り」へ
うるう秒は、2035年までは基本的に実施されない見込みとなっています。
国際度量衡局(BIPM)が、4年ごとに開催している国際度量衡総会(CGPM)の中でうるう秒の廃止について決議を行い、2035年までにうるう秒の追加を停止することが可決されたためです。この背景には、後述するように、うるう秒でITシステム障害等が発生するケースが報告され、危機感が募っていたことがあります。
2023年12月、国際電気通信連合(ITU)の無線通信部門の決議で「1秒単位でのうるう秒の調整をしない」と決定し、2035年までに新たな協定世界時(UTC)が導入されることになりました。
これを受け、その後の流れを、「ITmedia NEWS」では、『「うるう秒」はまだ終わっていない』と題した記事で以下のように指摘しています。
『新たなUTCの導入時期はまだ決まっておらず、最長で今後11年間は、まだうるう秒調整が発生する可能性もある。』
3. うるう年、うるう秒で予測される「問題」は?
3-1 日付・時間関係には注意が必要
うるう年で、2月29日が追加されたり、うるう秒が挿入されたりすると、ITシステムやネットワークにおいて、日付・時間に関係する問題を中心にさまざまなトラブルが発生する可能性があります。しかし、事前に対策がなされていれば発生しないのがポイントといえます。
通常、ITシステムやネットワークは時間が連続的に進むことを前提に設計されていますが、うるう年、うるう秒の対策がされていないと、1日、または1秒間がくわえられることで誤動作等のシステム障害が発生するリスクがあります。
具体的には、タイムスタンプの不整合や、システムのクラッシュ、ネットワーク遅延、ネットワークの同期ミスなどの発生が想定できます。
うるう秒でのトラブルの一例ですが、2012年にうるう秒が追加された時には、海外の大手ウェブサービスが一時的にダウンするという事態が複数発生しており、ネット上は騒然としました。
発生したトラブルは、タイムスタンプの不一致等によるデータベースの破損や非対応ソフトが稼働していたサーバのクラッシュ、再起動、ネットワーク機器間で同期が取れなくなる不具合など、リアルタイムの処理を行うシステムで多く見られたようです。
金融機関や通信インフラ、航空交通管理など、時間の正確性が求められる分野ではとくに注意が必要なのがうるう秒、うるう年の問題だといえます。
3-2 「時差」も忘れずに
グローバル化された現代において、うるう年・うるう秒の問題は1国の範囲で収まる問題ではないこともあります。サービスが国際展開していたり、海外と取引があったりする場合など、国外の日時データを扱う場合はとくに注意が必要になってくるといえます。
4. うるう年・うるう秒対策の基本
4-1 情報収集をする
2016年には、国立研究開発法人情報通信研究機構(NICT)は『「うるう秒」実施に関する説明会』を開いています。
NICTはうるう秒の実施と予定を公開しています。上で説明したように、うるう秒については当面の間、心配する必要はなさそうですが、うるう年に不具合が発生しないか検証する際には、うるう秒についても確認しておきたいところです。
4-2 システム・運営での対応
うるう年やうるう秒やに対する基本対策としては、以下のような対応があります。
システムのアップデートとパッチの適用
システムが最新の状態であることを確認し、うるう年やうるう秒に対応できるようにしておくことが大切です。
テスト環境での事前検証・シミュレーション
うるう年やうるう秒の影響があるか、事前にテスト環境でシミュレーションし、問題が発生しないことを確認します。タイムサーバーを利用して、システム全体の時間を統一することも有効だとされています。
開発側と運営側の連携
システム開発チームと運営チームが連携し、うるう年やうるう秒に関する情報を共有しておくとよいでしょう。
4-3 個人での事前対策
うるう年やうるう秒に対する準備は、企業やシステム管理者だけでなく、個人でもトラブル回避の意味で進めておくとよいでしょう。
実施日時など、事前情報の確認
うるう年や、今後あるとして、うるう秒が挿入される日時を事前に確認して、対象時間帯の前に重要な作業を終えておくと安心です。とくに、これまでの報道等を見ると、金融取り引きやオンラインサービスの利用は、トラブルが発生する可能性があると思われるので、先に対応しておくと安心です。
システムの時計を正確にあわせておく
パソコンやスマートフォンなどの時計を、正確な時刻に同期させておくことよいでしょう。うるう年やうるう秒対策に限りませんが、日付や時間に依存するアプリケーションやサービスを利用している場合は、定期的に時計を同期させることで不要なトラブルを防ぐことができます。
バックアップを取っておく
万が一に備え、重要なデータのバックアップを取っておくことも重要です。とくに、システム障害やデータの破損が発生した場合に備えて、クラウドや外部ストレージにバックアップを取っておくと安心です。
まとめ
2035年まで、うるう秒の追加は延期されますが、それまでに新たな協定世界時(UTC)が始まる可能性があり、次のうるう年が訪れる2028年も含めてシステム管理者やエンジニアは対策が必要になる可能性があります。
一般ユーザーの皆さんも利用しているサービスによっては事前の対策が必要になるかもしれません。グローバル化が当然の現代において、時差を含めて日付・時間に関するデータの取り扱いには注意をしたいところです。
今後、技術の進化が急速に進む現代において、時間の精度に関する問題は重要性を増していくと考えられます。
企業、個人に関わらず、気に留めておきたい問題です。