cassandra-pr mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From aweisberg <...@git.apache.org>
Subject [GitHub] cassandra pull request #278: Avoid running query to self through messaging s...
Date Mon, 08 Oct 2018 15:07:26 GMT
Github user aweisberg commented on a diff in the pull request:

    https://github.com/apache/cassandra/pull/278#discussion_r223397323
  
    --- Diff: src/java/org/apache/cassandra/service/reads/repair/AbstractReadRepair.java ---
    @@ -102,12 +104,24 @@ void sendReadCommand(Replica to, ReadCallback readCallback, boolean
speculative)
                 else type = to.isFull() ? "full" : "transient";
                 Tracing.trace("Enqueuing {} data read to {}", type, to);
             }
    -        MessageOut<ReadCommand> message = command.createMessage();
    -        // if enabled, request additional info about repaired data from any full replicas
    -        if (command.isTrackingRepairedStatus() && to.isFull())
    -            message = message.withParameter(ParameterType.TRACK_REPAIRED_DATA, MessagingService.ONE_BYTE);
     
    -        MessagingService.instance().sendRRWithFailure(message, to.endpoint(), readCallback);
    +        if (to.isSelf())
    +        {
    +            try (ReadExecutionController executionController = command.executionController();
    --- End diff --
    
    Just asking the question, should this occur in this thread or the read stage?
    
    Is there a possibility of this operation succeeding if the local portion times out? If
there is maybe it shouldn't be done synchronously in the request stage?


---

---------------------------------------------------------------------
To unsubscribe, e-mail: pr-unsubscribe@cassandra.apache.org
For additional commands, e-mail: pr-help@cassandra.apache.org


Mime
View raw message