runzhiwang edited a comment on pull request #231:
URL: https://github.com/apache/incubator-ratis/pull/231#issuecomment-715370067
@szetszwo There are some clues, I print some message as following.
```
JavaUtils.allOf(remoteWrites).thenCombine(localWrite, (v,
bytesWritten) -> {
System.err.println("dataLength:" + request.getDataLength() + "
bytesWritten:" + bytesWritten);
buf.release();
sendReply(remoteWrites, request, bytesWritten, ctx);
return null;
});
```
```
// check writeAsync requests
for(int i = 0; i < futures.size(); i++) {
final DataStreamReply reply = futures.get(i).join();
Assert.assertTrue(reply.isSuccess());
System.err.println("assert i:" + i + " size:" +
sizes.get(i).longValue() +
" written:" + reply.getBytesWritten());
}
```
Following is the print result when test fail, we can find written: 791264
is the next and next message of dataLength: 987326, but the `assert i:7` need
they are equal, so assert fails. We can find the reply of assert i:7, i:8, i:9
were out of order.
```
assert i:5 size:993851 written:993851
assert i:6 size:916080 written:916080
dataLength:987326 bytesWritten:987326
dataLength:987326 bytesWritten:987326
dataLength:685952 bytesWritten:685952
dataLength:685952 bytesWritten:685952
dataLength:685952 bytesWritten:685952
dataLength:791264 bytesWritten:791264
dataLength:791264 bytesWritten:791264
dataLength:791264 bytesWritten:791264
assert i:7 size:987326 written:791264
assert i:8 size:685952 written:987326
assert i:9 size:791264 written:685952
```
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
[email protected]