プログラムにタイムアウトを設定する事は一般的だが、それが0.2secというのは現実的なの?
たぶんね、処理の内容に関わらずにタイムアウトの値を設定していたんだと思いますよ。推測ですが。
HDDからSSDへの交換が原因に、JR九州がシステム障害について説明
タイムアウトは無応答の事ですが、瞬断という言葉で僕は痛い目にあった事があります。これほどいい加減な言葉もないという事を思い知らされました。それは「業界が違うと瞬断の基準が変わる」ということなんです。
最近は一括りにIT系という言葉が使われていますが、コンピュータ屋さんと通信屋さんでは言葉も文化も違うんですよ。瞬断が正にそれで、コンピュータ屋さんは文字通り1000分の数秒が瞬断だと皆思っています。ところが通信屋さんの瞬断は数秒を意味するんです。
通信屋さん「これから瞬断しまーす」
俺「了解!監視してます」
一瞬の間の後、メインフレームのマスターコンソールが鳴り響きオールレッドのメッセージがもの凄い勢いで流れていきます。
運用者「回線切れました!」
俺「何が起きたんですか?(`ヘ´) プンプン」と隣の部屋の通信屋さんに怒鳴りこむ
通信屋さん「再起動完了です!」
俺「今、回線切れたんですけど? ぜんぶ」
通信屋さん「へ?瞬断で通常起動ですねぇ」
俺「はっ (゜o゜; あの〜どれ位瞬断したんですか?」
通信屋さん「4秒です ( ̄  ̄)」
俺「瞬断だって言ったじゃないですかぁ (>_<)」
通信屋さん「瞬断です ( ̄  ̄)v」」
俺、運用者「・・・・・」
後で関係者が集まるありがたい機会(障害対策会議-別名-お白州ともいう)で判明したことは、通信屋さんでは瞬断は「数秒(2〜4秒)以内」とのことでした。
この事故は、「やっぱ通信屋の事勉強しないと背景というか文化が理解できん」とCisco製品を勉強し始め、やがてネットワーク屋に転身する切っ掛けとなった思い出深い事件であります。まぁ今のクラウドエンジニアもネットワークの延長にあるので、何が切っ掛けになるか分かりませんがね。
さて話をJR九州のタイムアウトに戻しましょう。コンピュータの世界では数ミリ秒で無応答と判断する事は普通です。でも今回の事故で気になる点が一つあります。
HDDならリセット値0.2secを実現できていたんですかね?
本当はリセット確認テストを過去にやってなかったんじゃね?という疑念が沸々と沸いてきます。やっぱりSSDが悪い訳ではなく、プログラムに埋め込まれた未検討のタイムアウト値が問題のような気がします。