comparison Todo @ 361:65c6d12a5835

*** empty log message ***
author kono
date Sun, 19 Oct 2008 22:50:20 +0900
parents 034acadc0cdc
children f0bd158dace6
comparison
equal deleted inserted replaced
360:b25f832f875d 361:65c6d12a5835
1 Sun Oct 19 21:23:27 JST 2008
2
3 Todo: dispatch先のEditorの作成 (kono)
4
5 Session は select 時に、channelを持つeditorが登録される。
6 外から来た場合は、新しくeditor を作って、それをsession
7 に登録する必要がある。SessionManagerの入口のforwarderを
8 session に登録してしまうと、Sessionが一つの時にしか動かない。
9
10 put_ack は、putの時にすぐに出してしまって構わない。select_ack
11 が廻るので、その時にput_ackを出しても良いが...
12
13 Todo: (kono)
14 複数のsessionのテストを作成する
15
1 Sat Oct 18 20:03:10 JST 2008 16 Sat Oct 18 20:03:10 JST 2008
2 17
3 Note: Routing Table (kono) 18 Todo: Routing Table (kono)
4 19
5 Routing Table (Session, Editor)を作るには、上下双方向の通信が必要。 20 Routing Table (Session, Editor)を作るには、上下双方向の通信が必要。
6 SessionID を master が作ると、一旦、multi cast した後、もう一度、 21 SessionID を master が作ると、一旦、multi cast した後、もう一度、
7 上に上げる必要がある。Select の時には、editor から上に上がるので、 22 上に上げる必要がある。Select の時には、editor から上に上がるので、
8 その時に構築すれば良い。SessionManagerIDと組み合わせれば、eid/sid 23 その時に構築すれば良い。SessionManagerIDと組み合わせれば、eid/sid
23 そのeditor単一のpathだが、routing table に登録される。 38 そのeditor単一のpathだが、routing table に登録される。
24 select は、session ringに到達した時点で update を流す。 39 select は、session ringに到達した時点で update を流す。
25 update は、木をさかのぼりrouting tableを構築する。 40 update は、木をさかのぼりrouting tableを構築する。
26 これで上方向のroutingは確定する。update_ackにより、 41 これで上方向のroutingは確定する。update_ackにより、
27 下方向のsesionn routing tableが確定する。 42 下方向のsesionn routing tableが確定する。
43 Done: Sun Oct 19 21:29:08 JST 2008
28 44
29 Wed Oct 15 13:33:58 JST 2008 45 Wed Oct 15 13:33:58 JST 2008
30 46
31 Note: (kono) 47 Todo: (kono)
32 48
33 Session List を渡すタイミング 49 Session List を渡すタイミング
34 50
35 SM_JOIN_ACK (必須...) 51 SM_JOIN_ACK (必須...)
36 SM_JOIN では、Session List は0なはず。 52 SM_JOIN では、Session List は0なはず。
54 複数 sm_join されることはあるが、その場合は最初のもの 70 複数 sm_join されることはあるが、その場合は最初のもの
55 を使う。ということは、localにsm_join された後、大域的 71 を使う。ということは、localにsm_join された後、大域的
56 に接続される場合があるってことか。ってことは、やっぱり、 72 に接続される場合があるってことか。ってことは、やっぱり、
57 session manager id を配布するべきだってことね。で、 73 session manager id を配布するべきだってことね。で、
58 SMの名前はあくまでも補助的に使う。 74 SMの名前はあくまでも補助的に使う。
59 75 Done: Sun Oct 19 21:29:08 JST 2008
76
77 Todo: (kono)
60 UPDATEの情報によって削除も行なう。delete entry が必要。 78 UPDATEの情報によって削除も行なう。delete entry が必要。
61 79
80 Todo: (kono)
62 Routing Table 81 Routing Table
63 <eid, channel> 82 <eid, channel>
64 <sid, channel> 83 <sid, channel>
65 null は、local。channel==parent なら、自分の下にはいない。 84 null は、local。channel==parent なら、自分の下にはいない。
85 Done: Sun Oct 19 21:29:08 JST 2008
66 86
67 Tue Oct 14 06:02:37 JST 2008 87 Tue Oct 14 06:02:37 JST 2008
68 88
69 Todo: (kono) 89 Todo: (kono)
70 取りあえず、sm_join()からか。次は、join(),put()。そして、 90 取りあえず、sm_join()からか。次は、join(),put()。そして、
71 update()。select()。最後に、gather()。 91 update()。select()。
92 Done: Sun Oct 19 21:29:08 JST 2008
93
94 Todo: (kono)
95 最後に、gather()。
72 96
73 Todo: (kono) 97 Todo: (kono)
74 Select用に、routing tableが必要らしい。session ringへの 98 Select用に、routing tableが必要らしい。session ringへの
75 方向を表すtableを、put, update, update_ack時に作成する。 99 方向を表すtableを、put, update, update_ack時に作成する。
76 100
80 sm_join時のloop の検出。sm_joinを受け取った時には、sm接続にloopが 104 sm_join時のloop の検出。sm_joinを受け取った時には、sm接続にloopが
81 あるかどうかを調べる必要がある。これのテストも必要。 105 あるかどうかを調べる必要がある。これのテストも必要。
82 host_aからのsm_joinを受け取ったら、sm_join(host_a)を親に送る。 106 host_aからのsm_joinを受け取ったら、sm_join(host_a)を親に送る。
83 host_aがsm_join(host_a)を受け取ったら、それはloop。親がsm_join 107 host_aがsm_join(host_a)を受け取ったら、それはloop。親がsm_join
84 を受け取れば、そこからsm_join_ackを流して終了。 108 を受け取れば、そこからsm_join_ackを流して終了。
109 Done: Sun Oct 19 21:29:08 JST 2008
85 110
86 Note: (kono) 111 Note: (kono)
87 複数のsession managerにsm_joinする場合もある。その場合は、 112 複数のsession managerにsm_joinする場合もある。その場合は、
88 親に代わりにsm_joinしてもらう? 親がreachableだとは限りませんが。 113 親に代わりにsm_joinしてもらう? 親がreachableだとは限りませんが。
89 禁止してもいいけど... 114 禁止してもいいけど...
147 Done: 172 Done:
148 173
149 Todo: (kono) 174 Todo: (kono)
150 PUT の時に、master session managerまで行って、session番号を確定する 175 PUT の時に、master session managerまで行って、session番号を確定する
151 必要がある。それまでは、PUT_ACKを出してはならない。 176 必要がある。それまでは、PUT_ACKを出してはならない。
177 Done: Sun Oct 19 21:29:08 JST 2008
178 session manager IDを使ってuniqueにしたので、不要になった。
179 即座に PUT_ACKを出して構わない。
152 180
153 Todo: (kono) 181 Todo: (kono)
154 SM_JOIN時にmaster session managerを決定するプロトコルを実装する必要が 182 SM_JOIN時にmaster session managerを決定するプロトコルを実装する必要が
155 ある。たぶん、UPDATEだと思うが... 183 ある。たぶん、UPDATEだと思うが...
184 Done: Sun Oct 19 21:29:08 JST 2008
185 木の根をmasterとして、変更しない。
156 186
157 Todo: (kono) 187 Todo: (kono)
158 外から、きたSession Listを、ただしく自分に反映する。 188 外から、きたSession Listを、ただしく自分に反映する。
189 Done: Sun Oct 19 21:29:08 JST 2008
159 190
160 Todo: (kono) 191 Todo: (kono)
161 test.ServerSample.java はあるが、ClientSample.java がない。 192 test.ServerSample.java はあるが、ClientSample.java がない。
162 193
163 Todo: (kono) 194 Todo: (kono)
165 196
166 Sun Oct 12 10:33:36 JST 2008 197 Sun Oct 12 10:33:36 JST 2008
167 198
168 Todo: 199 Todo:
169 END_MERGEが繰り返し出てしまう(kono) 200 END_MERGEが繰り返し出てしまう(kono)
201 Done: Sun Oct 19 21:29:08 JST 2008
202 直ったかな?
170 203
171 Sat Oct 11 22:28:49 JST 2008 204 Sat Oct 11 22:28:49 JST 2008
172 205
173 Todo: 206 Todo:
174 Session Manager をまたがった接続のテスト (kono) 207 Session Manager をまたがった接続のテスト (kono)
185 218
186 219
187 Fri Oct 10 15:24:42 JST 2008 220 Fri Oct 10 15:24:42 JST 2008
188 sid は大域的にuniqueにする必要がある。UPDATEで新しくsessionを作ったことを 221 sid は大域的にuniqueにする必要がある。UPDATEで新しくsessionを作ったことを
189 通知して、Masterが新しいsidを決定し、UPDATE_ACKで他のSessionManagerに知らせる(kono) 222 通知して、Masterが新しいsidを決定し、UPDATE_ACKで他のSessionManagerに知らせる(kono)
223 Done: Sun Oct 19 21:29:08 JST 2008
224 put時に、そのsession managerでsession manager idを使って、
225 uniqueなsidを作成する。put/join/ackで他のSessionManagerに知らせる。
190 226
191 Mon Oct 6 16:39:57 JST 2008 227 Mon Oct 6 16:39:57 JST 2008
192 228
193 Todo: translator にある5つのqueueが、Editor にもある。merge のアルゴリズムの 229 Todo: translator にある5つのqueueが、Editor にもある。merge のアルゴリズムの
194 実装を見直す必要がある。(kono) 230 実装を見直す必要がある。(kono)