[groonga-dev,03584] Re: Mroonga_で_data_truncated_for_primary_key_column: <id> が発生する

Back to archive index

Kouhei Sutou kou****@clear*****
2015年 10月 20日 (火) 19:28:58 JST


須藤です。

In <20151****@domai*****>
  "[groonga-dev,03580] Re: Mroonga_で_data_truncated_for_primary_key_column: <id> が発生する" on Mon, 19 Oct 2015 16:13:54 +0900,
  各務 洋 <kagam****@outwa*****> wrote:

>> 注意してほしい点は、この修正では、「削除しながらレコードを追
>> 加するとプライマリーキーが同じレコードが複数見える可能性があ
>> る」という問題が直る
> 
> 上記を確認しました。OKです。

よかったです!

> 今までは プライマリーキーに 0 が複数入っているのが見えた事がありましたが、
> 今回(MROONGA_LIBGROONGA_VERSION 5.0.8-95-g493be32)からは見えなくなり
> ました。
> 
> SELECT (SELECT current_timestamp) AS '', id AS '', a_id AS '' FROM tbl_test_pat_0005; SELECT '--' AS ''";
> 
> で回した所、
> 
> 2015-10-19 15:07:17     450138  0
> 2015-10-19 15:07:17     0       0
> 
> --
> 
> 2015-10-19 15:22:14     557081  0
> 2015-10-19 15:22:14     557082  0
> 
> --
> 
> 2015-10-19 15:25:20     580817  0
> 2015-10-19 15:25:20     580818  0
> 
> --
> 
> と、Unique 制約部には 0 が複数入っているのは見えましたが、これはプライ
> マリーキーではないので対象外で良いでしょうか?

これは単にデフォルト値が入っている(= レコード作成直後でカラ
ムの値をまだ設定していない状態)だけだと思うので問題ないと思
います。

ダーティーリードのようなものです。Groongaはカラムの更新はア
トミックですが、レコード全体の更新はアトミックではないので更
新途中の値が見えます。

> 問題なければ、Mroonga 側も update して確認を続けたいと思います。

よろしくお願いします。

-- 
須藤 功平 <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 メーリングリストの案内
Back to archive index