On 12/3/2013 6:59 PM, zaiyao liu wrote: > Hi Xuelei, > > I can't reproduce this issue after run 900 times at windows and linux > platform, It should be pretty hard to reproduce the issue in normal TCP/IP environment.
> for this fix just run one more round after get exception. > > please review: > http://sqeweb.us.oracle.com/net/sqenfs-1/export1/comp/jsn/users/kevin1/webrev/8028562/webrev/ > > I don't think it is the expected fix. Looks like the underlying issue is that "serverOut.remaining() == 0" (line 282) does not always mean the server has received all of the client message (line 298, (serverIn.remaining() != clientMsg.length)). I would suggest run one more round (at line 241) after server message delivered ("serverOut.remaining() == 0" (line 282)). The logic looks like, in runTest(boolean): loop (line 241): read client message send server message if server delivered all server message { if server received all client message { check the message } else { loop one more time, go to "loop" (only one time?). } } Hope it helps. Xuelei > > Thanks > > Kevin