You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by "Jason Brown (JIRA)" <ji...@apache.org> on 2017/07/20 21:24:00 UTC
[jira] [Commented] (CASSANDRA-13713) Move processing of EchoMessage
response to gossip stage
[ https://issues.apache.org/jira/browse/CASSANDRA-13713?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16095402#comment-16095402 ]
Jason Brown commented on CASSANDRA-13713:
-----------------------------------------
A simple fix available here:
||trunk||
|[branch|https://github.com/jasobrown/cassandra/tree/13713-trunk]|
|[utests|https://circleci.com/gh/jasobrown/cassandra/tree/13713-trunk/]|
This incorrect behavior has been around for a long time. However, I'm not sure how far back to apply the change (the change will be the same for back to 2.1). The existing execution of {{Gossiper#realMarkAlive}} is already asynchronous (nothing is dependent on it, per se); the only downside is another (short-lived, once per peer) task to be executed on the gossip stage. I feel that's a tiny price to pay for reducing the number of different threads that can modify the state of gossip.
> Move processing of EchoMessage response to gossip stage
> -------------------------------------------------------
>
> Key: CASSANDRA-13713
> URL: https://issues.apache.org/jira/browse/CASSANDRA-13713
> Project: Cassandra
> Issue Type: Bug
> Components: Distributed Metadata
> Reporter: Jason Brown
> Assignee: Jason Brown
> Priority: Minor
> Fix For: 4.x
>
>
> Currently, when a node receives an {{EchoMessage}}, is sends a simple ACK reply back (see {{EchoVerbHandler}}). The ACK is sent on the small message connection, and because it is 'generically' typed as {{Verb.REQUEST_RESPONSE}}, is consumed on a {{Stage.REQUEST_RESPONSE}} thread. The proper thread for this response to be consumed is {{Stage.GOSSIP}}, that way we can move more of the updating of the gossip state to a single, centralized thread, and less abuse of gossip's shared mutable state can occur.
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@cassandra.apache.org
For additional commands, e-mail: commits-help@cassandra.apache.org