オルタナティブ・ブログ > 栗原潔のテクノロジー時評Ver2 >

知財、ユビキタス、企業コンピューティング関連ニュースに言いたい放題

東証ダウンの原因は連絡ミス

»

東証のダウンは、プログラム修正後の作業指示書に誤りがあったというのが原因のようです(参照記事)。やはり「なーんだ」というような単純ミスでしたね。この前、引用したパターソン教授の論文でも、大規模インターネットサイトのダウンの原因の半分以上がオペミスと言う結果が出ています。結局如何に高信頼性テクノロジーを使おうが、多重化しようが人間がミスをすれば意味ないわけで、そういうミスが出ないような体制とかプロセスを作るのが、基幹システムを稼動している組織の責任だと思います(自分の経験で言えば、都銀系のシステムはそのあたりはかなりしっかりしていると思います)。

ここで、ちょっと気になるのは東証の運用体制で、ひょっとして運用に変更があった時はテストしないでぶっつけということなんでしょうか?要するに今回に限らず運用手順書に記載漏れがあったらかなりリスキーということですね。問題の根はそこにありそうな気がします。

2ちゃんねる情報(とは言え、いかにも内部情報通の人が書いている感じ)なんですが、欧米の証券取引所では本番と同等構成のシステムがテスト用に用意されておりいつでも並行テストできるようになっているそうです(信頼できるソースがないか調査中)。まあたぶんそうなんだろうなと思いますし、そうでなければまずいと思います。

追加(11/8):

日経ITProの記事の方がわかりやすいですね(さすが専門誌)。どうやらビルド(メインフレーム用語で言えばリンクエディット)作業のミスのようです。プログラムを変えたつもりが変わってなくて、古いバージョンのまま動いていて、後になってから問題が顕在化したということのようです。プログラム修正のタイミングと障害発生のタイミングがずれていたので問題判別に手間取ったということではないでしょうか?

ひとつわからない点が、

 10月31日のコンデンス処理では、13日に再登録したサブモジュール間の呼び出し関係をシステムが自動検証した結果、これらを別個のモジュールと判断し呼び出し関係を切断した。翌11月1日朝、参加者データ・ファイルを読み込むプログラムが起動したものの、正しいサブモジュールを呼び出せず、読み込みに失敗したため、売買システムは起動しなかった。

というところで、まあ、独自開発の検証ルーチンが勝手に旧モジュールをはずしてしまったということ(だから、本番で0C4例外)のようですが、その段階でエラーメッセージとかは出さなかったんでしょうか?バッチジョブで変なメッセージが出てればとりあえず関係者集まって調査するというのが常識だと思いますが。

いずれにせよ、人間の些細なミスが重なってこのような事態になってしまったという点は変わりはないでしょう。

追加:

いくつかトラックバックが付いた後で何ですが、タイトルちょっと変えました(オペミス→連絡ミス)。最初に見た朝日新聞のソースでは、作業指示書に間違いがあったということで、オペレーターが誤ったコマンドを入力したと解釈したのですが、その後出た日経ITProやITmediaのソースでは、ビルド(リンクエディット)の指示に誤りがあったということが判明。大きく言えばオペミス(=運用ミス)なのでそのままにしておきましたが、やはりオペミス=オペレータのミスと解釈されそうなのでやはり変えることにしました。

Comment(2)