in tso-server/src/main/java/org/apache/omid/tso/RetryProcessorImpl.java [128:155]
private void handleCommitRetry(RetryEvent event) {
long startTimestamp = event.getStartTimestamp();
try {
Optional<CommitTimestamp> commitTimestamp = commitTableClient.getCommitTimestamp(startTimestamp).get();
if (commitTimestamp.isPresent()) {
if (commitTimestamp.get().isValid()) {
LOG.trace("Tx {}: Valid commit TS found in Commit Table. Sending Commit to client.", startTimestamp);
replyProc.sendCommitResponse(startTimestamp, commitTimestamp.get().getValue(), event.getChannel(), event.getMonCtx(), Optional.<Long>absent());
txAlreadyCommittedMeter.mark();
} else {
LOG.trace("Tx {}: Invalid tx marker found. Sending Abort to client.", startTimestamp);
replyProc.sendAbortResponse(startTimestamp, event.getChannel(), event.getMonCtx());
invalidTxMeter.mark();
}
} else {
LOG.trace("Tx {}: No Commit TS found in Commit Table. Sending Abort to client.", startTimestamp);
replyProc.sendAbortResponse(startTimestamp, event.getChannel(), event.getMonCtx());
noCTFoundMeter.mark();
}
} catch (InterruptedException e) {
LOG.error("Interrupted reading from commit table");
Thread.currentThread().interrupt();
} catch (ExecutionException e) {
LOG.error("Error reading from commit table", e);
}
}