# HG changeset patch # User kono # Date 1223942404 -32400 # Node ID a092a8fe9d97adaa26cef94c21e52604a091b9d5 # Parent d07414ff79d3206c98aaebe83f2a3c6f7b105064 *** empty log message *** diff -r d07414ff79d3 -r a092a8fe9d97 Todo --- a/Todo Mon Oct 13 16:56:39 2008 +0900 +++ b/Todo Tue Oct 14 09:00:04 2008 +0900 @@ -1,11 +1,21 @@ +Tue Oct 14 06:02:37 JST 2008 + +Todo: (kono) +取りあえず、sm_join()からか。次は、join(),put()。そして、 +update()。select()。最後に、gather()。 + +Todo: (kono) +Select用に、routing tableが必要らしい。session ringへの +方向を表すtableを、put, update, update_ack時に作成する。 + Mon Oct 13 12:34:39 JST 2008 Todo: (kono) sm_join時のloop の検出。sm_joinを受け取った時には、sm接続にloopが あるかどうかを調べる必要がある。これのテストも必要。 -host_aからのsm_joinを受け取ったら、sm_join_ackと同時に、親に -ch_master(host_a)を送る。host_aがch_master(host_a)を -受け取ったら、それはloop。sm_joinを送るのでも良いけど。 +host_aからのsm_joinを受け取ったら、sm_join(host_a)を親に送る。 +host_aがsm_join(host_a)を受け取ったら、それはloop。親がsm_join +を受け取れば、そこからsm_join_ackを流して終了。 Note: (kono) 複数のsession managerにsm_joinする場合もある。その場合は、 @@ -20,7 +30,13 @@ sidのnatという手はあるのか。かなり複雑だけど。それだと複数の親が いてもだいじょうぶか? ちゃんと書き換え出来るなら動くっぽい。あとで -入れることも可能か。 +入れることも可能か。 + +selectが以外に難しい。sessionとjoinして来たeditorを見つけない +といけない。しかも、最短距離で。見つけるだけなら簡単だが... 取りあえず、 +select は、join したsession managerでしか出来ないということに +する。そうでないと、joinしたeditorを探す必要があり、全部を見るか、 +routing tableを作る必要がある。後者でも良いが。 Note: (kono) Session間の通信は、木を作って、自分の親に送り、親がack/updateをmulti cast @@ -50,6 +66,7 @@  SessionManager SM_JOINと、masterの決定  put/selectの生成、masterによるsession id の決定 updateによるsessionの共有 + Done:Mon Oct 13 19:02:42 JST 2008 (kono) Sun Oct 12 19:12:20 JST 2008