diff --git a/ratis-client/src/main/java/org/apache/ratis/client/impl/OrderedAsync.java b/ratis-client/src/main/java/org/apache/ratis/client/impl/OrderedAsync.java index 791adc8982..f63266544a 100644 --- a/ratis-client/src/main/java/org/apache/ratis/client/impl/OrderedAsync.java +++ b/ratis-client/src/main/java/org/apache/ratis/client/impl/OrderedAsync.java @@ -114,7 +114,7 @@ public void fail(Throwable e) { @Override public String toString() { - return "[cid=" + callId + ", seq=" + getSeqNum() + "]"; + return "[cid=" + callId + ", seq=" + getSeqNum() + (isFirst? "(1st)": "") + "]"; } } @@ -201,7 +201,8 @@ private void sendRequestWithRetry(PendingOrderedRequest pending) { } if (getSlidingWindow(request).isFirst(pending.getSeqNum())) { - pending.setFirstRequest(); + Preconditions.assertTrue(request.getSlidingWindowEntry().getIsFirst(), + () -> "The first request is not marked as first: " + request); } LOG.debug("{}: send* {}", client.getId(), request); client.getClientRpc().sendRequestAsync(request).thenAccept(reply -> { diff --git a/ratis-common/src/main/java/org/apache/ratis/util/ProtoUtils.java b/ratis-common/src/main/java/org/apache/ratis/util/ProtoUtils.java index 161715bf80..29ee24f51c 100644 --- a/ratis-common/src/main/java/org/apache/ratis/util/ProtoUtils.java +++ b/ratis-common/src/main/java/org/apache/ratis/util/ProtoUtils.java @@ -239,7 +239,7 @@ static String toString(SlidingWindowEntry proto) { if (proto == null) { return null; } - return proto.getSeqNum() + (proto.getIsFirst()? "*": ""); + return proto.getSeqNum() + (proto.getIsFirst()? "(1st)": ""); } static String toString(RaftRpcRequestProto proto) {