[groonga-dev,03571] Re: Mroonga で data truncated for primary key column: <id> が発生する

Back to archive index

Susumu Yata yata****@razil*****
2015年 10月 16日 (金) 14:32:08 JST


対応が遅くなってすみません.
矢田です.

> おかげで(これと関係しそうな)問題を見つけられました。
>
> 森さん、Int64がキーなTABLE_PAT_KEYで壊れたデータになってしま
> うケースの再現スクリプトを作ったので見てもらえないでしょうか?
> (Int64なのは関係なさそうな気はしますが。。。)
>
>   https://github.com/groonga/groonga/issues/415

こちらの問題について,デバッグが完了いたしました.

問題の起きる条件(の一つ)は,テーブルが空の状態から,
最終ビットのみが異なるキーを二つ追加し,
それから片方のみを削除するというものでした.

原因は削除の処理にありました.
TABLE_PAT_KEY が内部に持つ木構造において,
ルート直下のノードは扱いが特殊になることが
考慮されていなかったために問題が起きていました.

以下のコミットにより,上記問題を解決しました.
従来のテストおよび須藤さんの紹介してくれた
再現コマンドについて問題がないことを確認しています.

https://github.com/groonga/groonga/commit/06e344848baa0a6a411c4b189188092f6c5e9297

-- 
Susumu Yata <yata****@razil*****>



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