Kawanishi Tetsuo
t_kawan****@hotma*****
2007年 10月 26日 (金) 23:42:45 JST
幸坂さん こんばんは。川西です。 ご解答いただきましてありがとうございます。 Ludia1.3.1を使用したところ、エラーがでることなく正常に動作しました。 検索対象のカラムには148件ほど、空文字列のデータが含まれていました。 また、VACUUM、および、ANALYZEをしていなかったことも原因だったのかもしれません。 > この二種類のクエリのexplainを送っていただけないでしょうか? > (先ほどリリースしたLudia1.3.1を使用して頂けると助かります。) Ludia1.3.1で、VACUUM ANALYZE済みの状態でEXPLAINしたところ、 下記ようなクエリプランになり、dateとfulltext3の順序以外は差異の無い状態でした。 Aggregate (cost=100000000.67..100000000.69 rows=1 width=0) -> Append (cost=100000000.00..100000000.55 rows=50 width=0) -> Seq Scan on data (cost=100000000.00..100000000.52 rows=1 width=0) Filter: ((date>= '2006-09-01'::date) AND (date <= '2007-09-01'::date) AND (fulltext3 @@ '*D+ "テスト"'::text)) -> Index Scan using idx_data_2006_fulltext3 on data_2006 data (cost=0.00..0.02 rows=25 width=0) Index Cond: (fulltext3 @@ '*D+ "テスト"'::text) Filter: ((date>= '2006-09-01'::date) AND (date <= '2007-09-01'::date)) -> Index Scan using idx_data_2007_fulltext3 on data_2007 data (cost=0.00..0.02 rows=24 width=0) Index Cond: (fulltext3 @@ '*D+ "テスト"'::text) Filter: ((date>= '2006-09-01'::date) AND (date <= '2007-09-01'::date)) (10 rows) > また、テーブルのサイズも教えていただけると原因解明に役立ちます。 pg_relation_size / pg_total_relation_sizeは下記の通りです。 data_2006 : 212MB / 451MB data_2007 : 206MB / 441MB また、インデックスは全ての子テーブルに張っている状態でした。 Ludiaのバージョンアップ後に、VACUUMをかけたところ、VACUUM実行中に 以下のメッセージが出力されるようになってしまいました。 "pgsenna2: |A| sen_nstr_open failed at sen_lex_open" 上記のDBより、データ量が多いDBで行った際に発生しましたが、 環境の変化も多少あったため、問題の切り分けができていません。 また、検索したころ、下記のMLの記事を見つけました。 http://lists.sourceforge.jp/mailman/archives/senna-dev/2007-July/000645.html 何かお解りでしたら、ご教示くださいますよう、お願いいたします。 Tetsuo Kawanishi t_kawan****@hotma***** _________________________________________________________________ 今話題になってる出来事や有名人をランキングで毎週発表「MSN 気になる言葉」 http://keyword.jp.msn.com/default.aspx