[groonga-dev,03487] Re: groonga-clientのタイムアウト値と、遅いクエリについて

Back to archive index

Hiroyuki Sato hiroy****@gmail*****
2015年 9月 9日 (水) 20:50:51 JST


補足です。

生データの確認

 groonga-client経由での検索は0件になるが、
 groongaコマンドで databaseに直接接続してselect文(上記とは違うselect)を発行するとデータが入っていることが確認できた。



コアダンブの調査

1, コアダンプしたケース
 コアダンプしたのは、次のフィルタを加えた時

  :filter =>"program_start_time >= 1441033200 && program_start_time <=
1441738799"

2, コアダンプはしないが値が0件になったケース

 次のように値を1438354800(2015,9,1)にした場合は検索結果が0になった。

 :filter =>"program_start_time >= 1438354800 && program_start_time <=
1441738799"

3, 検索結果が(たしか)取得できたケース
 :filtersを指定しない。
 (慌てていたので細かい確認までできなかった)


require 'groonga/client'

require 'pp'

cli = Groonga::Client.new({ :host => 'localhost',
                    :protocol => 'http',
                    :port => 10042 })

param = {
  :table => "Data" ,
  :limit => -1,
  :query => "文字列",
  :match_columns  => "",
  :sortby => "",
  :output_columns =>  "",
  :command_version => 2 ,
  :filter =>"program_start_time >= 1441033200 && program_start_time <=
1441738799"
}

:filter =>"program_start_time >= 1438354800 && program_start_time <= 1441738799"

ret = cli.select(param)

ret.records.each do |r|
  pp r
end

ちなみにgroonga-httpは使っていません。


2015年9月9日 20:38 Hiroyuki Sato <hiroy****@gmail*****>:
> 須藤様
>
> 佐藤です。
>
> ありがとうございます。速くなりました。
>
> ただ私の手順が悪かったのか、アップロード直後動作がおかしくなりました。
> 下記の手順で復旧しました。
>
> groonga-5.0.6からそのままあげて大丈夫?というのが少し心配です。
> 取り急ぎ状況だけおしらせします。
>
> OS: Scientific Linux 6.5
>
> groonga-5.0.7-highlight改修版バージョンアップしたが、検索結果が0件に
>
>   1, groonga-5.0.7-highlight改修版を導入 rpm -Uvh
>   2, 多分(その後groongaを止めて)、groongaを起動
>   3, 検索を実行 => 結果が0件になってしまった。(本来は1件以上の結果が返ってくるはず)
>
> groonga-5.0.6に戻す
>
>   4, 仕方がないのでgroonga-5.0.6に戻した。
>     rpm -qa | grep gronga | xargs rpm -e
>     rpm -ivh groonga-* (5.6のパッケージ)
>   5, 検索を再実行 => 現象かわらず
>   6, 確認用のスクリプトを作ってテスト => セグメンテーションフォルト
>   7, 壊れたデータベースディレクトリを後でデバッグするように退避
>   8, groonga dump でデータを出力
>   9, データベースディレクトリをrm -rf
>   10, データベース再構築 groonga -n dbfile < dump_data
>   11, 検索再実行 => セグメンテーション例外
>     https://gist.github.com/hiroyuki-sato/a5979362d7194caecc02
>
> groonga-5.0.7-highlightにあげてみる
>
>   12, 再度 groonga-5.0.7にアップデート
>   13, 検索再実行 => OK
>
>
>
> 2015年9月9日 18:27 Kouhei Sutou <kou****@clear*****>:
>> 須藤です。
>>
>> In <CA+Tq-RpE_L-c8meycVWUTKtADJhES_XLhMHsjE7-Oe8Uz=6ftw****@mail*****>
>>   "[groonga-dev,03484] Re: groonga-clientのタイムアウト値と、遅いクエリについて" on Wed, 9 Sep 2015 17:41:34 +0900,
>>   Hiroyuki Sato <hiroy****@gmail*****> wrote:
>>
>>> masterのパッケージあるとありがたいです。
>>> 現状 groonga-clientのreadt_timeout 600(10分)にして
>>> 検索が終わらないので、2回検索してキャッシュに乗せて
>>> 対応しています。
>>>
>>> いま稼働させているのはScientificLinux6(CentOS6) 64bit版で
>>> Groongaは5.0.6を使っています。
>>
>> http://packages.groonga.org/tmp/
>> にアップロードしました!
>>
>> groonga-libs-5.0.7-2.el6.x86_64.rpm
>> とか「5.0.7-2.el6.x86_64」がついているRPMをダウンロードして
>> rpm -Uvhしてください。
>>
>>> 懸念点として、5.0.8?がリリースされた時に
>>> rpm -Uvhでアップデートできるかな?ってことです。
>>
>> 大丈夫です!
>>
>>
>> --
>> 須藤 功平 <kou****@clear*****>
>> 株式会社クリアコード <http://www.clear-code.com/>
>>
>> Groongaベースの全文検索システムを総合サポート:
>>   http://groonga.org/ja/support/
>> パッチ採用 - プログラミングが楽しい人向けの採用プロセス:
>>   http://www.clear-code.com/recruitment/
>> コードリーダー育成支援 - 自然とリーダブルコードを書くチームへ:
>>   http://www.clear-code.com/services/code-reader/
>>
>> _______________________________________________
>> groonga-dev mailing list
>> groon****@lists*****
>> http://lists.osdn.me/mailman/listinfo/groonga-dev
>
>
>
> --
> Hiroyuki Sato



-- 
Hiroyuki Sato



groonga-dev メーリングリストの案内
Back to archive index