[pgsql-jp: 40383] Re: ver8.4でのunionの非互換について

Masahiro Kato kato @ ndkcom.co.jp
2010年 9月 9日 (木) 21:00:29 JST


板垣様
カトウです。

#define INDEX_CACHE_SIZE 8
#define QUERY_CACHE_SIZE 12
としたら正常に動作しました。

ありがとうございました。


----- Original Message ----- 
From: "Itagaki Takahiro" <itagaki.takahiro @ gmail.com>
To: "PostgreSQL Japanese Mailing List" <pgsql-jp @ ml.postgresql.jp>
Sent: Wednesday, September 08, 2010 10:28 AM
Subject: [pgsql-jp: 40370] Re:ver8.4でのunionの非互換について


> 板垣です。
>
> 2010/9/8 Masahiro Kato <kato @ ndkcom.co.jp>:
>> posgresqlを8.3から8.4にバージョンアップしたら
>> server closed the connection unexpectedly
>> 8.3ではludia-1.5.2ですが、8.4ではtextsearch_sena-8.4.5を使っています。
>
> PostgreSQL本体ではなく、textsearch_sennaの問題と思われます。
> 動作を再現できる試験パターンか、クラッシュ時のバックトレースが
> 取れたら送ってください。
>
>> AND ((col_title %% '2') OR (col_title_kana %% '2') OR (col_title_eng %%
>> '2') OR (col_subtitle %% '2') OR (col_subtitle_kana %% '2'))
>
> 複数の senna インデックスを1つのクエリで同時に使っていることが
> 関係しているかもしれません。textsearch_senna では、あまり深く考えず、
>  #define INDEX_CACHE_SIZE 4
>  #define QUERY_CACHE_SIZE 8
> などとしているので、1クエリ内でキャッシュが溢れると
> クラッシュするのかもしれません。
>
> 暫定対処としては、この定数を増やして様子を見てもらうのが1つです。
> また、もし常にすべての列を検索するのであれば、複数のインデックスの代わりに
>  CRETE INDEX ... USING senna ON ((col_title || E'\n' || col_title_kana || 
> ...))
> のような連結したテキストに対する1個のインデックスにまとめると
> 動くようになるかもしれません。
>
> -- 
> Itagaki Takahiro
> 



pgsql-jp メーリングリストの案内