[groonga-dev,04195] Re: PGROONGAでのデータ異常の検出

Back to archive index

各務 洋 kagam****@outwa*****
2016年 11月 30日 (水) 14:42:54 JST


お世話になります、各務です。

> インデックスデータ等の異常をデータ処理を行わずに取得したいのですが、方
> 法は在りませんでしょうか?

Groonga ではなく Mroonga での事例ですが、同じ WHERE 条件で IGNORE INDEX 
でのSELECT と、Index を使用する SELECT の実行結果に差異が発生した際、
異常発生の恐れありと判断しています。

ただ、 Mroonga は操作中のレコードをそのまま返すので、レコード操作の処
理中は差異が出ますので、差異の検知が続いた際に発報させています。
(差異は主に COUNT を使っています。)

これを良く壊れる Index の数分、仕込んでいます。
(もっと良いアイデアがあればどなたかご教示いただければと思います)

PostgreSQL では上記の指定が出来ないと思いますので、上記同様の Groonga 
コマンドを発行する形かなぁと思いました。

また、ロック残留だけですと、mysqld の起動前に grndb check で確認するの
も検証しましたが、再起動までに時間が掛かるようになるのと、稼働後に更新
できなければすぐ分かるので、実装は見送りました。

(その後自動復旧するのを入れていただけました)

上記、参考になれば幸いです。


----
各務
kagam****@outwa*****




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