FessでAD認証ログインに時間がかかる

FessでActive Directoryと連携したときにログインに時間がかかる事例がたまに報告される事象があったけど、これはユーザーにネストしたグループがあるときにADがその情報を返すのに時間がかかる場合があるのが原因でした。とはいえ、常にADのレスポンスが遅かったりするわけでもないようなので、ADを構築している環境なのか、条件があるようにも思います。この取得に数分かかったりするので、ログインに時間がかかる状態になります。

ということで、ネストしていないグループの情報を瞬時に取得できるので、ネストしているグループ情報取得はログイン後に遅延ロード的に反映されるのを仕様としておきます。次のリリースから反映されます。

Fess 13.6.2のリリース

13.6.1で同義語展開をbi-gramでもやったのだけど、問題があるケースがあったので、それを修正してリリースしました。結論的には、同義語展開時のbi-gramを展開するのはやめました…。なので、同義語の単語に内包される単語は同義語として、一緒に入れる必要があります。

ということで、Fess 13.6.2を使う際には、elasticsearchプラグインのanalysis-extension 7.6.2を使っていただければと思います。旧バージョンのインデックスを利用する場合は、管理画面のメンテナンスで再インデクシングを実行してください。

何かあれば、フォーラムに投げてください。

Fess 13.6.1のリリース

Fess 13.6.1をリリースしました。バグフィックス的な修正がほとんどだった気もしますが、1つ影響がありそうな変更としては、同義語の処理を変更してます。standard_analyzerがいままで、複数を展開していたのですが、展開するのはやめて、インデックスでは1つの単語に寄せるようにしました。さらに、今までの処理だと同義語登録した単語に内包される単語が検索できなくなっていたのですが、それをbi-gramで展開するようにもしてみました。なので、同義語処理まわりが改善できたかなと思います。次のリリースに入れるでも良かった気もしますが、商用でもこのバージョンを使いたかったので…。

その他の改善系だと、インデクシング時にElasticsearchに投げる前のドキュメントをメモリに保存しているのですが、どれくらい保存するかがcontent lengthの情報に頼っていたので、実際のヒープメモリの使用量と乖離がある場合があったのですが、ヒープ使用量を見積もって、Elasticsearchに投げるようにしました。なので、データストアクロールとかで予期しないOOMとかが回避できるかと思います。

そんな感じで改善をおこなったので、利用してみてください。何かあれば、フォーラムに投げてもらえればと。

同義語処理の変更

Fessはstandard_analyzerで同義語を展開して検索できるようにしていますが、次のリリースで処理をちょっと見直そうしています。

現在は、A, Bを同義語として登録した場合、インデックスにはAとBが登録されます。これをAだけにする予定です。つまり、同義語展開してインデックスをしないようにします。これにより、インデックスサイズを減らす想定です。(まぁ、微々たるものなので、ほとんど減らないと思いますが…)

あとは、現状だと、同義語に内包されている単語がヒットできないのですが、同義語処理前の元の単語に内包される単語にヒットできるようにする予定です。なので、長い単語を登録したときとかにヒットしない問題を解決します。

そんなわけで、fessインデックスの設定が変わるのと、elasticsearch-analysis-extensionプラグインの更新で対応する予定です。

Fess 13.6のリリース

Fess 13.6をリリースしました。いろいろと入れたような気もします。

まずは、管理画面をAdminLTE 3にバージョンを上げました。これに伴い、色合いが変わったので見た目も変わった感じがするかもしれません。見た目が変わったついでに、ここ数年で統一感がなくなっていた部分などもいろいろと統一をしました。カタカナ長音もマイクロソフトのルールに従い、クローラーとか、ーが付けるものは付けるにしてます。

設定ファイルにはsystem.propertiesとfess_config.propertiesがありますが、Dockerで使うときだと、ファイルを変えるのはちょっと面倒だったりします。ということで、fess.system.*とfess.config.*というシステムプロパティでコマンド実行時に渡せるようにしました。これで、設定をdocker run時とかに渡すことができるようになりました。

管理ロールの細分化できるようになりました。以前から管理画面を細かく出し分けたい、という話があったのですが、ついに入れました。FioneがFessの管理画面を使っているので、ログインしたときにFioneのメニューだけを出したい、というのがあったので、入れた感じです。

という感じで、それ以外はバグ修正的な細かい話を直した感じだったと思います。どうぞ、ご利用ください。