lilichun / olyo

Automatically exported from code.google.com/p/olyo
0 stars 1 forks source link

IM丢失、电话不通 #6

Closed GoogleCodeExporter closed 9 years ago

GoogleCodeExporter commented 9 years ago
What steps will reproduce the problem?
1.用户B由于某种原因重启SC
2.用户A给用户B拨电话,发IM 
3.

What is the expected output? What do you see instead?
期望结果:正常传送
目前状况:消息无法送达,但B的SC显示注册在线

Please use labels and text to provide additional information.
目前基本确定问题为:
B重启之后,DHT中B的key下面有多个value,而A 
get出B的value之后无法判断哪个是有效的。

Original issue reported on code.google.com by wangyao....@gmail.com on 12 Jun 2008 at 7:52

GoogleCodeExporter commented 9 years ago
一个key对应多个value的问题,主要原因定位在dht方面。
终端每次关闭,都会执行一次remove,将当前用户对应的k-v对��
�dht删除。所以说正常情况下,每个key应当
是只对应唯一一个value。
我们尝试在用户注册执行put语句之前,先检测这个用户名是��
�在dht中存在对应的key-value对。如果存在
k-v对,那么先执行remove语句,删除探测到的旧的k-v对,从而��
�保每次启动终端,在dht上只存在唯一一对
k-v对。经过测试,当重新启动sc后,刷新overlayweaver,发现情��
�很理想——dht仅仅存在一对k-v对;
但是经过一定时间再刷新,旧的k-v对也出现。
问题暂时定位为dht不理想,sc处不存在问题。
该问题暂时放下。

Original comment by dongfeng...@gmail.com on 12 Jun 2008 at 8:38