[groonga-dev,03762] Re: 複数のプロセスから開いているDBのtruncateについて

アーカイブの一覧に戻る

Susumu Yata yata****@razil*****
2015年 12月 14日 (月) 11:40:01 JST


矢田です.

私の環境でも同様の問題が起きることを確認いたしました.
また, TABLE_HASH_KEY, TABLE_PAT_KEY では再現しますが,
TABLE_DAT_KEY では再現しませんでした.

このことから, grn_hash, grn_pat では truncate を別プロセスで
検出できていないのではないかと思います.

調査してみます.

2015年12月13日 21:39 Yutaro SHIMAMURA <yu****@irx*****>:
>
> お久しぶりです!
>
> ある一つのDBを複数のプロセスで使用している時、
> どれか一つのプロセスからtruncateを実行しても他のプロセスから見るとレコードが残り続けるという現象にぶつかりました。
>
> * プロセス1
>>   table_create tbla TABLE_HASH_KEY ShortText
> [[0,1450009296.21617,0.0567305088043213],true]
>> column_create tbla cola COLUMN_SCALAR ShortText
> [[0,1450009297.84113,0.048534631729126],true]
>> load --table tbla --values [{\"_key\":\"kv1\",\"cola\":\"stc1\"}]
> [[0,1450009387.73932,0.000219821929931641],1]
>> select tbla
> [[0,1450009393.44995,0.000159502029418945],[[[1],[["_id","UInt32"],["_key","ShortText"],["cola","ShortText"]],[1,"kv1","stc1"]]]]
>
>
> * この状態でプロセス2を起動
>> select tbla
> [[0,1450009397.69844,0.000183820724487305],[[[1],[["_id","UInt32"],["_key","ShortText"],["cola","ShortText"]],[1,"kv1","stc1"]]]]
>
>
> * プロセス1でtruncate
>> truncate tbla
> [[0,1450009402.65819,0.112846612930298],true]
>> select tbla
> [[0,1450009413.23927,7.53402709960938e-05],[[[0],[["_id","UInt32"],["_key","ShortText"],["cola","ShortText"]]]]]
> ↑消えてる
>
> * プロセス2でselect, unmapやio_flushしてみる
>>  select tbla
> [[0,1450009418.21568,7.84397125244141e-05],[[[1],[["_id","UInt32"],["_key","ShortText"],["cola","ShortText"]],[1,"kv1","stc1"]]]]
> ↑残ってる
>> database_unmap
> [[0,1450009429.77373,0.00843930244445801],true]
>> select tbla
> [[0,1450009433.26145,5.17368316650391e-05],[[[1],[["_id","UInt32"],["_key","ShortText"],["cola","ShortText"]],[1,"kv1","stc1"]]]]
>> io_flush
> [[0,1450009599.38242,0.0351345539093018],true]
>> select tbla
> [[0,1450009602.99016,5.07831573486328e-05],[[[1],[["_id","UInt32"],["_key","ShortText"],["cola","ShortText"]],[1,"kv1","stc1"]]]]
> ↑まだいる
>
> * プロセス2を抜けてもう一度起こす
>> quit
> # groonga test.grn
>> select tbla
> [[0,1450009738.21378,0.000265359878540039],[[[0],[["_id","UInt32"],["_key","ShortText"],["cola","ShortText"]]]]]
> ↑いなくなる
>
>
> 既知の問題で報告かぶってたらすいません!
> よろしくお願いします。
> _______________________________________________
> groonga-dev mailing list
> groon****@lists*****
> http://lists.osdn.me/mailman/listinfo/groonga-dev



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



groonga-dev メーリングリストの案内
アーカイブの一覧に戻る