2016-09-25から1日間の記事一覧

Merge残り

start receiveの2case

merge対象が一つだけになる時

最初、A, Bの2つのリストがmerge対象となるが、途中でどちらかのリストの要素が無くなりこれ以上取得できない場合、scan_onlyに移行してmerge対象のリストは1つだけになる。できれば対象が1つになった時点で別のクラスに移行したい。が、別のクラスに移行す…

merge

大まかな流れ N A, Bの各kvlistをkeyを比較しながらwriteしていく 片方のkvlistが残ったらscan_onlyに移行 scan_onlyでkvlistに要素が無くなったらterminate mergeからスタートするとN=0で始まるので、すぐにreceive待ちになると思うんだけど、誰がstepメッ…

handle_cast

https://github.com/krestenkrab/hanoidb/blob/master/src/hanoidb_merger.erl#L202なんでhanoidb_writer:handle_castを外部モジュールから直接呼び出しているんだろう。 同期的な挙動にしたかったのかな。メッセージングで処理するのが面倒だったのかな。 …