kousa****@nttda*****
kousa****@nttda*****
2007年 11月 22日 (木) 14:16:45 JST
幸坂です。こんにちは。 「()」はSennaの演算子となっています。 誤った「()」の使い方をした場合、 LudiaはWARNINGを出力します。 > ・WARNINGは検索対象テーブルのレコード数分表示される。 Ludia1.4.0で改善します。 レコード数分表示 → 1回表示 となります。 > 全文検索用のインデックスは作成していません。 全文検索インデックスを作成しない意図は何でしょうか? 全文検索インデックスを作成しないと、 Ludiaの意味がないと思うのですが・・・。 > -----Original Message----- > From: ludia****@lists***** > [mailto:ludia****@lists*****] On Behalf > Of s-wak****@is-vi***** > Sent: Wednesday, November 21, 2007 10:52 AM > To: ludia****@lists***** > Subject: [Ludia-users 135] Re:特定文字の検索で PostgreSQLダウンします。 > > 本スレッドに関連するであろう現象が弊社でも発生致しましたのでご連絡致しま す。 > > 弊社では以下のバージョンで検証を行ったところ、 > 以下のWARNINGがPostgreSQLのログに出続けるようになりました。 > WARNING: pgsenna2: too many expressions > > 【検証環境】 > PostgreSQL 8.2.4 > Ludia 1.3.1 > ※1.3.0の依存ライブラリ込みバージョンインストール後、 > Ludiaのみアップデート > mecab 0.96 > mecab-ipadic 2.7.0-20070801 > senna 1.0.8 > > > 弊社の状況としましては、 > あるテーブルのフィールドに、通常のインデックスを作成し、 > 全文検索用のインデックスは作成していません。 > そのフィールドに対して@@演算子を使用し > 「')'」半角閉じ括弧を含む文字列で検索を行うと上記WARNINGが発生しました。 > > > 弊社検証でのポイントは以下の通りです。 > ・半角閉じ括弧以降にも何か文字列を追加 > ※全角閉じ括弧では同様の現象は発生しませんでした。 > ・WARNINGは検索対象テーブルのレコード数分表示される。 > ※WARNING出力中、PostgreSQLは高負荷状態になり、他の検索等影響がありま す。 > > 例) > CREATE TABLE table1 (col1 text, col2 varchar(128)); > INSERT INTO table1 VALUES ('すもももももももものうち', 'あの壺はよいものだ '); > INSERT INTO table1 VALUES ('ももから生まれた桃太郎', 'あの壷はよいものだ '); > select * from ludia_test where col1 @@ 'もも(すもも)桃太郎'; > > (結果) > WARNING: pgsenna2: too many expressions (9) > WARNING: pgsenna2: too many expressions (9) > col1 | col2 > ------+------ > (0 rows) > > > 以上、宜しくお願い致します。 > > _______________________________________________ > Ludia-users mailing list > Ludia****@lists***** > http://lists.sourceforge.jp/mailman/listinfo/ludia-users >