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*****>