言語ゲーム

とあるエンジニアが嘘ばかり書く日記

Twitter: @propella

すべてがFになる isbn:4062639246

今回この本を選んだのは失敗だった。飛行機に乗るときにはいつも暇つぶしに一冊文庫本を忍ばせるのだが、こういう続きが気になる話を選んでしまうと、寝るべき時に眠れない。楽しめて良かった。

一方で、コンピュータを生業にする者としては、なんかこう、日本を舞台にした外国映画のような奇妙な違和感、微妙なコレジャナイ感が漂う。ミステリーの題材としてコンピュータが使われたというのは嬉しいが、一方でここをこう書けばもっとリアルな描写になるのになーとじれったくなる。

コンピュータ業界で仕事していて、本物のミステリーは沢山ある。今まで一番印象に残っている一つを紹介。数年前に客先から、我々が開発したウェブアプリが真っ白に消えてしまうという苦情があった。それはデータセンターに置かれた重要な情報を全国に散らばるお客さんの支店からアクセス出来るという物で、ある支店ではたまに画面が真っ白になってしまうのだと言う。

当然万全のテストをした後の出荷であり、こちらではその現象を確認できない為、当初顧客のパソコンやネットワークの不調ではと考えた。しかし現場に足を運んで調査しても、それらしき原因は見当たらない。いくつかの気になる特徴としては、回線プロバイダによって問題が発生する支店と発生しない支店があるようだという事だった。そんな事がありえるだろうか???

我々は緊急に顧客と完全に同じ環境を自社に構築し、すべての可能性を徹底的にチェックした。そしてついにある日、出力の長さがある値を超えると、画面が真っ白になるという事が判明した。原因はまだ特定できないが、問題が再現出来るという事は解決の糸口になる。部下のニノミヤ君がパケットキャプチャを凝視しながら私を呼んだのはその数時間後だった。

パケットキャプチャと言うのは、ネットを流れる情報をビットの一つまで細かに観察するためのツールで、彼は表示が正常に行ったケースと問題になるケースを比較していた。

「見てくださいよ、ここの数値を、正常なケースでは順調に数値が増えて行きますが、問題のケースでは、32767 のあと0に戻ってしまう。」

32767 すなわち 2 の 15 乗マイナス 1 は、この業界の人間にとって特別な数の一つである。これで謎がすべて解けた。ルータのバグにより、ネットを流れるデータがある長さを超えるとその後は破棄されてしまうのだ。プロバイダによって問題が発生したのは、回線によっては一つのパケットに入る情報が少なく、問題が顕在化しやすい為であった。

実は、この事件。本当に面白いのはルータの問題を引き起こした本当の原因である社内事情や人間関係であるのだが、さすがにまだここには書けない。が、調べればこの手の事件はどこでもあるだろうし、いくらでもうまく手を加えてミステリーのネタに出来ると思う。なぜ『すべてがFになる』を読んでこの話を思い出したかと言うと、それこそネタバレなので書きません。