@Override
  public String toString() {
    StringBuilder sb = new StringBuilder();
    sb.append("ReplicateBlobRequest[");
    sb.append("BlobID=").append(blobId);
    sb.append(", ").append("PartitionId=").append(blobId.getPartition());
    sb.append(", ").append("ClientId=").append(clientId);
    sb.append(", ").append("CorrelationId=").append(correlationId);
    sb.append(", ").append("AccountId=").append(blobId.getAccountId());
    sb.append(", ").append("ContainerId=").append(blobId.getContainerId());
    sb.append(", ").append("SourceHostName=").append(sourceHostName);
    sb.append(", ").append("SourceHostPort=").append(sourceHostPort);
    if (versionId == VERSION_2) {
      sb.append(", ").append("OperationType=").append(operationType);
      sb.append(", ").append("OperationTimeInMs=").append(operationTimeInMs);
      sb.append(", ").append("LifeVersion=").append(lifeVersion);
      sb.append(", ").append("ExpirationTimeInMs=").append(expirationTimeInMs);
    }
    sb.append("]");
    return sb.toString();
  }
@return the size of the serialized ReplicateBlobRequest stream
ambry-protocol/src/main/java/com/github/ambry/protocol/ReplicateBlobRequest.java