ahww520 / xmemcached

Automatically exported from code.google.com/p/xmemcached
Apache License 2.0
0 stars 0 forks source link

Timed out (reopen Issue 181:) #201

Closed GoogleCodeExporter closed 8 years ago

GoogleCodeExporter commented 8 years ago
java.util.concurrent.TimeoutException: Timed out(3000) waiting for operation
    at net.rubyeye.xmemcached.XMemcachedClient.latchWait(XMemcachedClient.java:2528)
    at net.rubyeye.xmemcached.XMemcachedClient.sendStoreCommand(XMemcachedClient.java:2511)

Issue 
181:    频繁报TimeoutException说解决了,但是并没有解决根本问题��
�

看了源代码,mergeFactor并不能解决根本问题,mergeFactor只是list
的初始化大小,应该在mergeBuffer加入合包超时,当数据包小数
量大的时候,如果没有达到sendBufferSize,但是到了合包超时时
间也应该把信息发出去

Original issue reported on code.google.com by huxbm...@gmail.com on 27 Jun 2012 at 3:20

GoogleCodeExporter commented 8 years ago
@huxbmail
不到sendBufferSize大小当然会发出去,你看看代码,不需要什么
超时。
这个合并只做尽量合并,如果不够也没关系。

Original comment by killme2...@gmail.com on 27 Jun 2012 at 3:22

GoogleCodeExporter commented 8 years ago
看了你的代码,不知道我理解对不对:
1.queue里面没有数据包了就发送
2.达到sendBufferSize就发送
在这种情况下不会发送:
当发送的数据包很小,但是又一直再发,过了设置的operation 
time还没有达到sendBufferSize的大小(我在服务端抓包,没有发��
�超时的那个数据包)

Original comment by huxbm...@gmail.com on 28 Jul 2012 at 4:33

GoogleCodeExporter commented 8 years ago
没有不会发送的情况,你再看看。

Original comment by killme2...@gmail.com on 28 Jul 2012 at 4:34