既知の制限事項・不具合
制限事項
インデックス上限値
1つのインデックスにおける論理上の上限値は以下のとおりです。
- 最大レコード数: 268,435,455 (約2億6千万)
- 最大語彙数: 268,435,455 (約2億6千万)
- 最大インデックスサイズ: 256GByte
(実際には他の諸条件の制約により上記の値まで到達しない場合もあります)
マルチプロセス・マルチスレッドでの利用について
複数のプロセスないしスレッドが一つのインデックスに対して同時に更新操作を実行することはできません。 別途排他制御が必要になります。
SEN_SPLIT_ALPHA,DIGIT,SYMBOLについて
SEN_INDEX_NORMALIZEが指定されていない場合は利用できません。
sen_records_find, sen_records_atについて
sen_records_find, sen_records_atを実行した以降に、 sen_records_nextを実行した場合正しい結果が返されることは保証されません。 sen_records_rewindを実行してカーソルを初期化する必要があります。
snippet関数のopentag, closetagについて
snippet関数を呼び終わるまで、opentagとclosetagのバッファ内容は変更できません。 変更した場合、動作が不定となります。
sen_sel_partialオプション, sen_sym_suffix_searchについて
以下の場合、 sen_sel_partialオプションで後方一致するパターンの検索や、 sen_sym_suffix_searchにて後方一致検索を行うことができません。
- 英数字や記号文字列
- SEN_INDEX_DELIMTEDを指定してインデックスを作成した場合
一般的に英語で語尾の変化はあるものの、語幹の変化は少ないと考えられます。 後方一致を行うためには、語彙表に語彙を追加しなければならず、 利用頻度と語彙表のサイズとを勘案した結果このような制限事項が存在します。
Windows版とLinux版でインデックスの形式が異なります
Windows版とLinux版で、インデックスの形式が異なります。
不具合
AIO/DIOが使えない
Linux 2.6以降のAIO/DIO機能を用いたユーザレベルキャッシュを実装しております。 しかし、まだこの機能は不安定で、segmentation faultを起こします。
この問題は、Yappoさんにより報告されました。