トラブル対応はいよいよ深夜の時間帯に突入しようとしていた。チトセの何気ない一言が、ケンイチにシステム運用のプロとしての自覚のなさを痛烈に認めさせることとなった――。
「栗平!本気でマズい状態なんじゃないか。このバッチ処理を今スキップさせても、翌朝に間に合わないだろこれ。どうすんだ」
上司との電話で散々の言われようだったのだろう。マサさんの強い口調での指摘は、ケンイチをパニックに陥れるのに十分だったようだ。
「あ、え…えっと…あの、えっと…なんとか、データが変になってまして…」
「あのですね、再実行しても同じことを繰り返すのではないでしょうか?…えーと、夜間バッチ処理の内容がシステム導入当初と変わっていないのなら、他社への業務影響回避を優先して対応する手立てはあります。ただ、社内の業務開始が遅れてしまいます。その優先度の考え方でもよろしいでしょうか?」
煮え切らないケンイチの返答をチトセが遮る。マサさんは、意味を理解した様子だ。
「整合性を担保した状態で社内向けのバッチだけ後回しにできるんですか?」
「もちろんデータ次第ですが、外部向け電文送信と社内向け統計処理は、一部を除いて切り離せます。今回確認しているポイントは、外部向けの発注データ作成ですが、ここの整合性を無視すると、状態がぐちゃぐちゃになってしまいますね。推測ですが、今書かれているデータを見る限り、再実行した分だけデータが作成されているようですから…」
ケンイチが先ほど調べたデータ件数は、普段の10倍近くになっている。確かに10回ほど再実行したような気がする。このままスキップしなくて良かったと、ケンイチは緊張の中、密かに安堵した。
「重複した発注データを正常な状態にした後、後続の処理を進めたいと考えています。バッチ処理の後半で、社内向けの統計処理をシリアルに処理している部分がありますから、そのジョブを後回しにしましょう。前回の処理履歴を見る限り、この社内向け処理で全体の3分の1の時間がかかっています。この処理を飛ばせば、1時間近いバッファになりますね。まだ安心はできませんが」
「なるほど。社内は何とかなるか。よし。そのまま続けてください。ちょっと電話してきます」
マサさんは出ていったが、チトセはまだ何か考え込んでいるようだ。
「データが不正で異常終了したらロールバックしそうなものだけど、リリース直前の仕様変更でバグ混入? …でも何故フロント側でもエラー? 事象を全て説明するには、何かが足りないのよね…何か…。ジョブがタイムアウトしてるから同じタイミングで落ちたように見えてるとして…あー…そっちのタイムアウト? ジョブマネージャー側はタイムアウトして落としたつもりで実はプロセス回り続けてる? ならプロセスは何してるんだろう…単純な空無限ループならまだいいけど、その中で処理してたらリソース不足で関係ない部分にエラー出る?出るかも…そうだとすると、ちょっと心折れるかも…」
(心折れないでくださいぃぃぃ…!)
「折れないでちょうだいよ、チトセちゃん…」
もはや心の声で応援するだけのケンイチだったが、瀬谷と気持ちがシンクロして、そのことにやや情けない気持ちになった。俺って何なんだろう。
「ま、やってみましょう。何とかするしかないですしね!」
チトセは鞄からペンとA4のコピー用紙を数枚取り出した。机の上に紙を広げ、バッチ処理のタイムラインとこれからの作業項目を書き始めた。書きながらケンイチに今後の作業方針を説明する。
「瀬谷さんも聞いておいてくださいよ。タイムキーパーしてください。あと、作業内容以外のことを私が共有せずに勝手に作業しないようチェックしていてくださいね」
Copyright © ITmedia, Inc. All Rights Reserved.