bdeggleston commented on code in PR #3551:
URL: https://github.com/apache/cassandra/pull/3551#discussion_r1762046707
##########
src/java/org/apache/cassandra/service/accord/AccordMessageSink.java:
##########
@@ -227,12 +225,33 @@ public void send(Node.Id to, Request request)
messaging.send(message, endpoint);
}
+ private static boolean isRangeBarrier(Request request)
+ {
+ if (!(request instanceof TxnRequest))
+ return false;
+
+ TxnRequest<?> txnRequest = (TxnRequest<?>) request;
+ if (!txnRequest.txnId.kind().isSyncPoint())
+ return false;
+
+ return txnRequest.txnId.domain().isRange();
+ }
+
@Override
public void send(Node.Id to, Request request, AgentExecutor executor,
Callback callback)
{
Verb verb = getVerb(request);
Preconditions.checkNotNull(verb, "Verb is null for type %s",
request.type());
- Message<Request> message = Message.out(verb, request);
+ Message<Request> message;
+ if (isRangeBarrier(request))
Review Comment:
It's possible that all range txns have this issue. For the time being
though, since range barriers do _and_ there's an existing timeout knob for
them, I'm starting there. It's possible this may need to be extended for all
offline range operations though.
--
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.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]