4月1日のシステム障害では、50便が欠航、最大137便が遅延と大きな影響が出た(4月1日、羽田空港)
4月1日のシステム障害では、50便が欠航、最大137便が遅延と大きな影響が出た(4月1日、羽田空港)
[画像のクリックで拡大表示]

 日本航空(JAL)は2016年4月6日、4月1日に発生した重量管理システムの障害について公表した。開発元から適用されたパッチの中に、キャッシュの排他制御を追加する設計変更があり、もともと実装されていたディスクの排他制御との間でデッドロックが発生したことが引き金になった。

システムはルフトハンザ子会社製

 問題となった重量管理システムは、独航空大手Lufthansaの子会社である独Lufthansa Systems(LHS)製の「NetLine/Load」。乗客の人数や座席配置、貨物や燃料の量を基に重心を計算し、貨物の最適な搭載位置を算出して指示を出す役割を担う。JALのほか独LufthansaやカナダのAir Canadaなどが導入している。JALの場合、サーバーは東京都内のJAL拠点にあり、主要9空港からアクセスして業務に使っている。

 JALは自社開発の重量管理システムをメインフレーム上で20年程度使っていたが、2014年1月にNetLine/Loadへ切り替えた。4~5種類のソフトからLHSを選んだといい「重量計算にまつわる業務の多くを自動化できる点が決め手になった」(JAL)という。

 システムは、重量計算を担うアプリケーションサーバーと、計算結果を格納するデータベースサーバー、他のシステムから乗客や貨物、燃料などの情報を受信する連携サーバー、空港職員が操作するためのWebサーバーで構成される。アプリケーションサーバーにはキャッシュ、データベースサーバーにはディスクが付いている。デッドロックはこのキャッシュとディスクへの排他制御を巡り発生した。

JALが採用している重量管理システム「NetLine/Load」の構成図(出所:日本航空)
JALが採用している重量管理システム「NetLine/Load」の構成図(出所:日本航空)
[画像のクリックで拡大表示]