2023年末以降のVer.6.xにおいての各種問題への対応について

4.管理者

2023年11月3日にリリースしたVer.6.0.0以降において様々な問題とご迷惑をおかけしてきましたので整理いたします。

■1 新デザインのデスクトップクライアントの実装よる影響

時期と状況について

2023年11月3日のVer.6.0.0のリリースに合わせてデスクトップクライアントのデザインを刷新しました。
Ver.6.0.0のリリース情報はこちら→リリースノート(Ver.6.0.0)
OnTimeという製品はライブラリの集合体なので、同期エンジン、管理センター、デスクトップクライアント、モバイルクライアント、各オプションなど独立して実装を行っています。とはいえ、それぞれが連携してライブラリを呼び出して動作しているのも事実です。
Ver.6.0.0で実装したデスクトップクライアントのデザインで操作性に関連する様々な不具合をご連絡いただきました。

原因について

不具合が多かった原因は、Ver.6.0.0のリリースのタイミングでデスクトップクライアントを新デザインに切り替えた際に、メーカーが開発元の責任において十分な検証を行なえていなかったことが単純な原因です。動作、操作性、振る舞い、様々な箇所において動作の不具合が発生しておりました。大変申し訳ございませんでした。

対応について

上記の結果、日本ではVer.6.0.0のリリースを中断し、その後、そのタイミングでは動作が安定したと弊Shopが判断した2023年12月20日リリースのVer.6.0.6まで約2ヶ月のあいだ、日本ではVer.6.xはリリースされていないことにさせていただきました。

■2 環境によってサーバーのCPU使用率が高負荷な状態になる現象発生

時期と状況について

2024年4月頃になって、操作面での不具合とは別にエンタープライズ系(弊Shopでは1万ユーザー程以上のご利用)のお客様からサーバーのCPUが一時的に高負荷になるという連絡をいただきました。OnTime for Microsoftは世界でVer.1がリリースされてから2024年12月で既に9年となりますが、過去にこのような不具合は経験しておらずお客様においてもOSやディスクなどの不具合を調査されていたようで弊Shopへのご連絡はこの時期になられていました。

原因について

デスクトップクライアントの複数に関係する特定な操作において大量のSQLへの問い合わせが発生していました。そのクエリ自体は従来から存在するクエリでしたが、新しいデザインのクライアントにおいて大量に利用していました。またそのクエリ自体が複雑な構成で、組織によっては1つのクエリが完了するまでの時間が長く掛かることもありました。更にそのクエリを実行するプログラムによってはSQL接続数の上限を守れておらず、その結果メモリとCPUの許す限りユーザー操作に合わせてサーバーへの負担を増大させていました。

対応について

主に2024年8月21日リリースのVer.6.1.5以降同年11月20日リリースのVer.6.1.9までにおいて、下記の項目それぞれの対応を迅速に対応すべく調査チーム、開発チーム、テストチームの構成にて順次対策を進めました。

  • 特定コマンドの不要な呼び出しを必要回数以上に呼び出さないようにプログラムコードの修正。
  • 呼び出されるコマンドの内容を精査し、シンプルな2パターンに書き直し、それぞれ必要なコマンドだけを実行するように修正。
  • コマンドによっては、大規模利用において直接レコードを操作せずインデックスを利用したクエリ処理の方にコマンドを修正。
  • そもそものSQL接続数をSQLのデフォルト値にかかわらず、アプリ内でご利用ユーザー数とサーバースペックに応じてその上限以内で指定できるように修正。

本不具合は、各組織でOnTimeの運用を行っている皆様の信頼をうしなうほどの重大事項であったと十分に認識しております。本当にご迷惑ご苦労ご心配をおかけいたしました。改めてお詫び申し上げます。Ver.6.1.9のリリース後も各種チューニングを進めています。お気づきの点がございましたらご連絡くださいませ。

■3 10月にExchange Onlineのアップデート時に公開仕様と異なる変更がデプロイ

時期と状況について

2024年10月28日、ご存じの人も多いかと存じますがExchange Onlineに大量の変更がユーザーテナントに順次デプロイが開始されました。皆様においてもご利用のアプリやメールクライアントや自社開発アプリが動作しなくなるなどの影響を受けられたとお聞きしています。その中の1つの変更がOnTimeのイベント同期エンジンにも悪影響を与えておりました。最初にお客様から弊Shopにご連絡いただいたのは10月30日の午前になります。しかし、その不具合を含む変更は弊Shopの利用するテナント全てにはまだデプロイされておらず、まず原因の特定からのスタートとなりました。

原因について

OnTimeはExchange予定表の1つのイベントの情報を取得する際にXMLデータとして取得しています。その取得するタグの1つに予定のキャンセル状態を把握するIsCanceledが存在しています。公開されている仕様では必ずTrue/Flaseと共にタグが含まれることになっています。しかし今回の変更でTrueの場合しかこのタグが存在しなくなりました。Trueとはキャンセルされたことを意味するので殆どのイベント情報が正しく取得出来なくなるという状態になります。ただし、この仕様変更はExchange Onlineアップデートのデプロイが世界同時ではなく各リージョンの各テナント毎に順次行われているため、原因特定時の10月30日には影響を受けるお客様もまだ多くはいらっしゃいませんでした。

対応について

もちろんOnTimeもマイクロソフトにすぐコンタクトをとっていますが、デプロイされたExchangeの修正が多方面で問題を発生させており、OnTimeに関わる原因の特定などパブリックな情報はなかなか出てきませんでした。
とはいえマイクロソフトでは弊Shopが問題を認識した翌日の10月31日午前に問題の調査を開始しています。そして同日正午ごろには特定のEWSメソッドのXMLフローを最適化することを目的とした最近の変更が影響をもたらしていることを確認し、当日中に対策を講じ始めています。
OnTimeも原因が特定されたことで不具合に対応する暫定バージョンを出すことを問題が発覚した翌日には決定しています。
そして、問題発覚の翌々日にあたる11月1日、暫定版ではなく恒久的な正規なバージョンとしてVer.6.1.8bをリリースいたしました。弊Shopが問題認識して2日後となります。
マイクロソフトにおいても、修正プログラムの検証を完了し、同日中に影響を受ける環境へのデプロイを開始しました。とはいえ影響を受けているテナントの規模も相当数なので、この日以降に影響を受け始めてるテナントもでてくる次第です。
最終的にマイクロソフトが該当テナント全てに修正プログラムのデプロイ完了を確認したのは対策開始後の7日後にあたる11月7日と認識しています。マイクロソフトは「将来の展開前にこのような問題をより適切に検出して防止するために、検証と更新の手順を見直しています。」とのことです。

■4 11月にTomcatの脆弱性が発表

時期と状況について

2024年11月20日にJVNでもTomcatのバージョンによっては深刻な脆弱性が発表されました。
OnTimeはJava実行環境として現在はTomcatを利用しています。よってTomcatの脆弱性によっては製品に影響を受ける場合がございます。
本脆弱性に関するOnTimeの対応については別途リリース文書を作成しています。→2024年11月発表のApache Tomcatの複数の脆弱性への対応はVer.6.1.9をご利用ください

内容について

CVE-2024-52316、CVE-2024-52317、CVE-2024-52318の3つの問題を含んでいました。
特にCVE-2024-52316は重大度「CVSS(Common Vulnerability Scoring System)」の値が9.8(最大値10.0)でした。

対応について

2024年10月14日リリースのVer.6.1.8aにて既にTomcatの実装バージョンは10.1.31でCVE-2024-52316、CVE-2024-52317の2つの問題には対応済みです。奇しくも発表同日である11月20日リリースのVer.6.1.9もTomcatの実装バージョンは10.1.31であり、重大度の高い問題を含むCVE-2024-52316とCVE-2024-52317の対策は行われております。
また、残るCVE-2024-52318はJSPに関連する問題ですが、OnTimeはJSPを利用していませんのでこの脆弱性の影響を受けません。
OnTime最新バージョンである6.1.9含む6.1.8a以降をご利用いただく限りTomcatの本脆弱性については影響を受けないことを認識しています。

■その他 従来通り操作面における不具合の修正、ご要望による機能向上は継続して努めております

Ver.6.0.0からVer.6.1.9までバージョンを重ねている間もご指摘いただきました操作面での不具合対応、そして新機能や機能向上や機能改善のご要望について、順次対応を行っております。
当初Ver.7.0.0で実装予定をしていたモバイルクライアントの新しいライブラリもすでに実装済みです。
ソフトウェアメンテナンスサービスをご契約の皆様は、これからも新機能や機能向上や機能改善についてのご要望をお聞かせください。広くあまねく多数のお客様に対してのプライオリティを検討し、皆様に価値ある改善については日本総代理店のアクセル及び開発元であるイントラビジョンにてできる限り実装を努力いたします。
ソフトウェアメンテナンスサービスについて→ソフトウェアメンテナンスサービス

■今後の予定について

EWS APIからGraph APIに全面的に切り替えを進めています

OnTime for DominoのExchange用ライブラリでは既にGraph API化を進めていました。OnTime for Microsoftでも、残るEWS API利用部分についてGraph APIへの移行を進めています。まだ非公開ですが、次リリース予定のVer.6.1.10でも機能している計画がございます。この移行をOnTimeは、同期エンジンの独立化、エンドポイントサーバーの冗長化負荷分散化、将来のクラウド化を見据えて進めております。

デスクトップクライアント、OnTime管理センターのデザインも準備しています

本来ワンストップデザインの予定で進めていたOnTime for Dominoと同じデスクトップクライアントのデザインの実装も準備しています。
同様にOnTime管理センターも管理がしやすい新デザインの準備を進めております。
これらは当初2024年の夏頃をリリース予定としておりましたが、製品の品質を重視するためリリースを延期しておりました。

開発元のイントラビジョンは北欧デザインで有名なデンマークにヘッドオフィスをおいています。順調に進めばこれらの新デザインは2025年前半にも皆様にお披露目が可能なはずです。弊Shopは1つの日本企業として大変楽しみにしております。皆様におかれましても安心して楽しみにしていただけますよう、まずは品質優先し十分な検証を行うよう、OnTime日本総代理店としてイントラビジョンには強く要望しております。
今後とも末永くOnTimeをご贔屓にお願いいたします。

注)会社名・ブランド名・製品名は、一般に各社の商標または登録商標です。記載した会社名・製品名などには、必ずしも敬称及び商標表示(R)をつけておりません。

 

関連記事一覧