[Ludia-users 201] RE: RE: Re: Indexを用いた検索で、ヒットしないことがあります

Back to archive index

Kawanishi Tetsuo t_kawan****@hotma*****
2008年 3月 10日 (月) 14:25:16 JST


こんにちは。川西です。

一部ファイルがかけているINDEXを含むDBは
不必要だったため、DROPし、再度、pgs2indexinfoを行ったところ、
正常に動作しました。
そして、sen_index_flagsの値は"19"になっていました。

pgs2indexinfoが動作しないというのは、あまり関係なく、
ヒットしない現象が発生しているインデックスに対して、
REINDEXを行うことで正常に検索できるようになりました。

また、数ヶ月前にVACUUMに失敗することがあったため、
その影響で今回の現象が発生している可能性も考えれるため、
再度精査してみます。

ご解答いただき、ありがとうございました。


> From: t_kawan****@hotma*****
> To: ludia****@lists*****
> Date: Thu, 6 Mar 2008 10:25:19 +0900
> Subject: [Ludia-users 198] RE: Re: Indexを用いた検索で、ヒットしないことがあります
>
>
> こんにちは。川西です。
>
> 幸坂さん、ご解答ありがとうございます。
>
>> ls -l /var/lib/pgsql/data/base/2453394/4249058*
>> とするとどうなるでしょうか。
>> 4249058.SEN 4249058.SEN.l 4249058.SEN.i 4249058.SEN.i.c
>> は4つで1セットなのですが、一部のファイルが欠けていたり、
>> ファイルが破損していると、インデックス異常と見なされ、
>> 上記のエラーが発生します。
>> その場合、川西さんが行ったように、REINDEXすると、
>> 異常なインデックスは消え、pgs2indexinfoも動作するはずです。
>
> 幸坂さんのおっしゃる通り、4249058、4249058.SENの2ファイルしか存在しませんでした。
> また、oid:2453394のDBは不要なDBですのでタイミングを見てDROPし、
> 再度pgs2indexinfoを実行してみます。
>
>> 2点とも問題ないと思われます。
>> リストアに関しては、以下の内容も参照してください。
>> http://lists.sourceforge.jp/mailman/archives/ludia-users/2007-September/0000
>> 86.html
>
> create databaseの後、pgsenna2.sqlは実行しています。
>
> 定期的なREINDEXも検討してみます。
>
>> Date: Wed, 5 Mar 2008 16:21:40 +0900
>> From: kousa****@nttda*****
>> To: ludia****@lists*****
>> Subject: [Ludia-users 197] Re: Indexを用いた検索で、ヒットしないことがあります
>>
>> 幸坂です。こんにちは。
>>
>>> ERROR: pgsenna2: pgs2indexinfo cannot open senna index
>>> /var/lib/pgsql/data/base/2453394/4249058
>> ls -l /var/lib/pgsql/data/base/2453394/4249058*
>> とするとどうなるでしょうか。
>> 4249058.SEN 4249058.SEN.l 4249058.SEN.i 4249058.SEN.i.c
>> は4つで1セットなのですが、一部のファイルが欠けていたり、
>> ファイルが破損していると、インデックス異常と見なされ、
>> 上記のエラーが発生します。
>> その場合、川西さんが行ったように、REINDEXすると、
>> 異常なインデックスは消え、pgs2indexinfoも動作するはずです。
>>
>>> pgs2destroy()を行いましたが、結果は0件でインデックスは削除されませんでし
>> た。
>> pgs2destroyは、不要なインデックスの回収をするだけです。
>> 異常なインデックスの回収はしません。
>>
>>> 現象発生の原因として、気になる点が2点あります。
>> 2点とも問題ないと思われます。
>> リストアに関しては、以下の内容も参照してください。
>> http://lists.sourceforge.jp/mailman/archives/ludia-users/2007-September/0000
>> 86.html
>>
>>
>>> -----Original Message-----
>>> From: ludia****@lists*****
>>> [mailto:ludia****@lists*****] On Behalf Of Kawanishi
>>> Tetsuo
>>> Sent: Wednesday, March 05, 2008 10:42 AM
>>> To: ludia****@lists*****
>>> Subject: [Ludia-users 196] RE: RE: Re: Indexを用いた検索で、ヒットしな
>>> いことがあります
>>>
>>>
>>> 川西です。こんにちは。
>>>
>>> pgs2destroy()を行いましたが、結果は0件でインデックスは削除されませんで
>>> した。
>>>
>>> また、pgs2indexinfo()も行えない状態のままです。
>>> SELECT * FROM pgs2indexinfo();
>>>
>>> ERROR: pgsenna2: pgs2indexinfo cannot open senna index
>>> /var/lib/pgsql/data/base/2453394/4249058
>>>
>>>
>>> また、対象のインデックスのREINDEXを行ったところ、修復できているようで
>>> す。
>>>
>>>
>>> 現象発生の原因として、気になる点が2点あります。
>>>
>>> 1点目はDBのRENAMEを行っている点です。
>>> db_aというDBを使用しているとして、下記のようにrenameを行いました。
>>> 例)
>>> db_a => db_b
>>> db_c => db_a
>>>
>>> 2点目、pg_dumpでdumpしたものを、pg_restoreして使用している点です。
>>> pg_dumpはオプションに「-Fc」を付けました。
>>>
>>> 上記は問題ありますでしょうか?
>>>
>>> よろしくお願いします。
>>>
>>>> From: t_kawan****@hotma*****
>>>> To: ludia****@lists*****
>>>> Date: Tue, 4 Mar 2008 12:39:07 +0900
>>>> Subject: [Ludia-users 195] RE: Re: Indexを用いた検索で、ヒットしない
>>> ことがあります
>>>>
>>>>
>>>> 川西です。こんにちは。
>>>>
>>>> 幸坂さん、ご回答ありがとうございます。
>>>>
>>>>> ludia.sen_index_flagsの設定ミスはないですか?
>>>>> SELECT * FROM pgs2indexinfo();
>>>>> で確認してみてください。
>>>>
>>>> クエリを実行してみたところ、実行できず、以下のメッセージが出力されま
>>> した。
>>>> ERROR: pgsenna2: pgs2indexinfo cannot open senna index
>>> /var/lib/pgsql/data/base/2453394/4249058
>>>>
>>>> 上記のノード番号のインデックスはDB上に存在しなかったので、
>>>> タイミングを見て、pgs2destroy() を行った後、再度試してみたいと思いま
>>> す。
>>>>
>>>> また、SELECT * FROM pgs2getoption();
>>>> の結果は下記のとおりです。
>>>> -[ RECORD 1 ]------+-------
>>>> max_n_sort_result | 100000
>>>> enable_seqscan | on
>>>> seqscan_flags | 1
>>>> sen_index_flags | 19
>>>> max_n_index_cache | 12
>>>> initial_n_segments | 512
>>>>
>>>> よろしくお願いします。
>>>>
>>>>> Date: Tue, 4 Mar 2008 09:03:40 +0900
>>>>> From: kousa****@nttda*****
>>>>> To: ludia****@lists*****
>>>>> Subject: [Ludia-users 194] Re: Indexを用いた検索で、ヒットしないこと
>>> があります
>>>>>
>>>>> 幸坂です。こんにちは。
>>>>>
>>>>> 可能性としては、以下の2点が考えられます。
>>>>>
>>>>> ludia.max_n_sort_resultの値を過剰に小さくすると、
>>>>> ヒット件数が少なくなります。
>>>>> が、今回は関係なさそうです…。
>>>>>
>>>>> ludia.sen_index_flagsの設定ミスはないですか?
>>>>> SELECT * FROM pgs2indexinfo();
>>>>> で確認してみてください。
>>>>> SET ludia.sen_index_flag to 19;
>>>>> として、設定に失敗するケースがよく見られます。
>>>>> (flagは間違い。flagsが正しい。)
>>>>>
>>>>>> -----Original Message-----
>>>>>> From: ludia****@lists*****
>>>>>> [mailto:ludia****@lists*****] On Behalf Of
>>> Kawanishi
>>>>>> Tetsuo
>>>>>> Sent: Monday, March 03, 2008 2:09 PM
>>>>>> To: ludia****@lists*****
>>>>>> Subject: [Ludia-users 191] Indexを用いた検索で、ヒットしないことが
>>> あり
>>>>>> ます
>>>>>>
>>>>>>
>>>>>> こんにちは。川西です。
>>>>>> お世話になります。
>>>>>>
>>>>>> インデックスを用いた検索で、ヒットしないことがあるのですが、
>>>>>> 原因がわからず、困っています。
>>>>>> 以下の通り、"like"や"="ではヒットしますが、@@ではヒットしません。
>>>>>>
>>>>>> ▼ヒットしない
>>>>>> select * from people_2008 where id = 1 and name @@ '山田太郎';
>>>>>>
>>>>>> ▼ヒットする
>>>>>> select * from people_2008 where id = 1 and name like '%山田太郎%';
>>>>>> select * from people_2008 where id = 1 and name = '山田太郎';
>>>>>>
>>>>>> また、カウントの結果にも誤差が出てきています。
>>>>>> select count(*) from people_2008 where name @@ '山田太郎';
>>>>>> => 41件ヒット
>>>>>>
>>>>>> select count(*) from people_2008 where name like '%山田太郎%';
>>>>>> => 50件ヒット
>>>>>>
>>>>>> まだ試していませんが、reindexすることで解決する可能性はあると思いま
>>> すが、
>>>>>> クラッシュ以外にこのような現象に陥る可能性は考えられますでしょう
>>> か?
>>>>>>
>>>>>> また、環境は以下の通りです。
>>>>>> Redhat EL5
>>>>>> PostgreSQL 8.2.5
>>>>>> ludia-1.3.1
>>>>>> senna-1.0.9
>>>>>> ※CEにて年単位でテーブル分割を行っています。
>>>>>> ※indexはfulltextuにて作成し、ludia.sen_index_flagsの値は19にし
>>> てい
>>>>>> ます。
>>>>>>
>>>>>>
>>>>>> お手数おかけいたしますが、ご教示くださいますよう、
>>>>>> よろしくお願いします。
>>>>>>
>>>>>> Tetsuo Kawanishi
>>>>>> t_kawan****@hotma*****
>>>>>> _________________________________________________________________
>>>>>> 栄養不足?MSN相談箱で「サプリメント」について知ろう!
>>>>>>
>>> http://questionbox.msn.co.jp/search.php3?start=0&pt=0&qt=all&k=pbWl16X
>>>>>> qpeGl86XI
>>>>>>
>>>>>> _______________________________________________
>>>>>> Ludia-users mailing list
>>>>>> Ludia****@lists*****
>>>>>> http://lists.sourceforge.jp/mailman/listinfo/ludia-users
>>>>>
>>>>> _______________________________________________
>>>>> Ludia-users mailing list
>>>>> Ludia****@lists*****
>>>>> http://lists.sourceforge.jp/mailman/listinfo/ludia-users
>>>>
>>>> _________________________________________________________________
>>>> 確定申告大丈夫?Live Searchで検索していろいろ下準備。
>>>>
>>> http://search.live.com/results.aspx?mkt=ja-jp&q=%E7%A2%BA%E5%AE%9A%E7%
>>> 94%B3%E5%91%8A&FORM=MGCEAB
>>>>
>>>> _______________________________________________
>>>> Ludia-users mailing list
>>>> Ludia****@lists*****
>>>> http://lists.sourceforge.jp/mailman/listinfo/ludia-users
>>>
>>> _________________________________________________________________
>>> 確定申告大丈夫?Live Searchで検索していろいろ下準備。
>>> http://search.live.com/results.aspx?mkt=ja-jp&q=%E7%A2%BA%E5%AE%9A%E7%
>>> 94%B3%E5%91%8A&FORM=MGCEAB
>>>
>>> _______________________________________________
>>> Ludia-users mailing list
>>> Ludia****@lists*****
>>> http://lists.sourceforge.jp/mailman/listinfo/ludia-users
>>
>> _______________________________________________
>> Ludia-users mailing list
>> Ludia****@lists*****
>> http://lists.sourceforge.jp/mailman/listinfo/ludia-users
>
> _________________________________________________________________
> 「脳内メーカー」の次は「鞄の中身メーカー」? Live Search で検索!
> http://search.msn.co.jp/results.aspx?q=%E9%9E%84%E3%81%AE%E4%B8%AD%E8%BA%AB%E3%83%A1%E3%83%BC%E3%82%AB%E3%83%BC&FORM=MGCEAA
>
> _______________________________________________
> Ludia-users mailing list
> Ludia****@lists*****
> http://lists.sourceforge.jp/mailman/listinfo/ludia-users

_________________________________________________________________
確定申告大丈夫?Live Searchで検索していろいろ下準備。
http://search.live.com/results.aspx?mkt=ja-jp&q=%E7%A2%BA%E5%AE%9A%E7%94%B3%E5%91%8A&FORM=MGCEAB




Ludia-users メーリングリストの案内
Back to archive index