[groonga-dev,03149] Re: selectの出力のJSONが壊れていることがある

Back to archive index

HAYASHI Kentaro hayas****@clear*****
2015年 4月 3日 (金) 11:26:41 JST


林です。

On Thu, 02 Apr 2015 15:52:11 +0900
Masumi SHOJI <shoji****@doga*****> wrote:

> 正司です。
> 
> > まだ再現させることができていないのですが、
> > 必ず"1"で場所も限定されているというのがわかっただけでも貴重な情報です。
> > ありがとうございます!
> 
> それがですね、昨日"234"というのが見つかりました。場所は同じです。
> もう少し何か分かってからまとめてご報告しようと思ってたので
> 遅くなってしまいましたが。

いえ、協力してもらえてとても助かります。
それはそうと、"1"に限定されないのですか。。。
"1"だけならbooleanなものを余計に出力しようとしたケースかもと考えていたのですが、
"234"が見つかったとなると、意味のあるデータっぽいので、それは関係なさそうですねぇ。

> それが発生したときに、同じ条件での検索をコマンドラインの対話モードからも
> やってみたのですが、そちらでは正常なJSONが返ってきました。
> (権限の関係で常用はできないんですが)
> プロセスが違うから同じキャッシュを使ってないということでしょうか。
> (引用符の有り無しなどの微妙な差ができてしまってたかも…)
> その後もHTTPの方は"234"の付いたのを返してました。

プロセスごとにキャッシュしているので対話モードのときはまだ
キャッシュされていなくて、正常なJSONを返したというのはありえそうです。
HTTPのほうは"234"つきでかえしていたというのは、そっちはキャッシュされたものを
返していたからというので説明がつきそうです。

> > cache=noのときでも発生するかどうか確認してもらうことってできますか?
> > cache=noで発生しないなら、やっぱりキャッシュのせいだったねということで
> > もうすこし調べるべき範囲を限定できないかなと思っています。
> 
> それは、現象が発生したときにcache=noを付けても再現するかということじゃ
> なくて、cache=noで現象が発生するのを待って、同じ検索を繰り返して
> 再発するか、そもそも発生するか、ということでしょうか。
> 頻発するわけではないので時間が掛かるかもしれませんが、試してみます。

そもそも発生するかどうかというのを気にしていました。
(cache=noだと発生しないかもと思っていましたが、まだ"かも知れない"という状態だったので)

ただ、発生したときに対話モードでやってみたときには問題なかったということなので
何らかの理由でキャッシュから結果を返すところでレアなバグを踏みぬいてしまったの
かもしれませんね。うーん。

-- 
HAYASHI Kentaro <hayas****@clear*****>




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