Understand 7.0で解析が遅くなる現象と対策について

Understand

はじめに

いつもUnderstand製品をご利用をいただき、誠にありがとうございます。

最近Understand 7.0へバージョンアップいただいた一部のお客様より、解析が遅くなった、というお問い合わせをいただいております。お客様にはご不便をおかけして申し訳ございません。

Understand 7.0で解析が遅くなる現象

ご連絡いただいた現象として以下があります。

(例)

  • 解析がUnderstand 6.3よりも明らかに遅くなった。
  • 解析が重すぎて終わらないため、使用できない。
  • インスタント検索のインデックス作成が終わらない。

なお本現象は、日本語OS環境でUnderstandをご利用の一部のお客様環境にて発生しております。

問題が発生するバージョン

  • Understand 7.0 (Build 1220)
    ※Understand 6.3 (Build 1139)では本問題は発生しません。

原因

本現象は、Understandプロジェクト設定において、[System]エンコーディングを指定して解析をおこなう場合に発生することが分かりました。これは、Understand 7.0にて使用しているQtライブラリに含まれる比較的新しい不具合に起因するものであることが開発元で確認されました。

対策方法

現在把握できている対策は以下の通りです。
これらの対策を実行していただくことで、本現象を回避いただけることを確認しております。

GUIをご利用の方向け

ファイルエンコーディングを設定する方法

Understand 7.0にてご利用のプロジェクトを開き、[プロジェクト]-[プロジェクトの設定]-[エンコーディング]-[ファイルエンコーディング]で、[System]以外を選択することで、この問題を回避することが可能です。
ファイルエンコーディングはソースコードの文字コードと一致するものを選択ください。
なお、本設定をプロジェクトに適用するには、Understandプロジェクトの解析が必要となります。

[ファイルエンコーディング]を[Shift_JIS]に設定する場合の例

新規プロジェクトの作成時に設定する方法

新規でプロジェクトを作成する場合には、プロジェクト作成ウィザードの[プロジェクト作成後に詳細設定を構成する]にチェックを入れたうえで、[プロジェクトの作成]をクリックし、その後表示される[プロジェクトの設定]画面からファイルエンコーディングの設定を実施してください。

コマンドラインをご利用の方向け

現在のバージョンの確認方法

undコマンドは以下のコマンドを実行いただくことで、現在使用しているundコマンドのバージョンを表示することが可能です。

und version


(Build 1220)と表示される場合はUnderstand 7.0のundコマンドが動作しています。

※undコマンドの実行にはPATH変数にUnderstand 7.0のインストールディレクトリ内のund.exeまでの
 実行パス(例、C:\Program Files\SciTools\bin\pc-win64)の追加が必要です。
 他のバージョンのUnderstandのフォルダが追加されている場合には、Understand 7.0以外のフォルダーを
 削除してください。

ご利用のプロジェクトにおける現在の設定内容の確認方法

下記のコマンドを実行することで、プロジェクトの現在の設定内容を表示することが可能です。

und list settings -db sample.und


以下の実行結果のように、[File Options]-[FileEncoding]において「System」と設定されている場合には、対応が必要となります。

現在の設定の表示例(ファイルコーディングとしてSystem」が設定されています。)

ファイルエンコーディングを設定する方法

unc createコマンドによりプロジェクト作成後、und analyzeコマンドを実行する前に、以下のようにエンコーディング設定を追加します。

  • UTF-8に設定する場合の例
und settings -FileEncoding "UTF-8" -db sample.und
  • Shift_JISに設定する場合の例
und settings -FileEncoding "Shift_JIS" -db sample.und

※sample.undはお客様のプロジェクト名に置き換えてください。

設定内容を反映させるには、上記のund settingsコマンドを実行後、und analyzeコマンドを実行する必要があります。

  • und analyzeコマンドの実行例
und analyze -db sample.und

今後の対応

Understand 7.0をご利用のユーザー様にはご不便をおかけし大変申し訳ございません。

本件につきましては、開発元へフィードバックし対応を依頼中です。
新しい情報を確認できましたら、改めてご案内させていただきます。