[ 
https://issues.apache.org/jira/browse/CASSANDRA-7816?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14487290#comment-14487290
 ] 

Sergio Bossa commented on CASSANDRA-7816:
-----------------------------------------

I find the pending echo check a bit dangerous, as if the echo reply gets 
swallowed (i.e. because the connection pool is reset?), the node could stay 
marked down until the next major state change. If the objective is to avoid 
repeated {{Gossiper#realMarkAlive}} calls, wouldn't it be safer to make the 
echo callback idempotent? I.e., we could make {{EndpointState#isAlive}} an 
{{AtomicBoolean}}, and use CAS in {{EndpointState#markAlive}} and 
{{EndpointState #markDead}}, returning the CAS result (that is, if it was 
actually dead and turned alive, and vice-versa): this could be used by the 
{{Gossiper}} to conditionally execute {{realMarkAlive}}.

> Duplicate DOWN/UP Events Pushed with Native Protocol
> ----------------------------------------------------
>
>                 Key: CASSANDRA-7816
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-7816
>             Project: Cassandra
>          Issue Type: Bug
>          Components: API
>            Reporter: Michael Penick
>            Assignee: Stefania
>            Priority: Minor
>             Fix For: 2.0.15, 2.1.5
>
>         Attachments: 7816-v2.0.txt, tcpdump_repeating_status_change.txt, 
> trunk-7816.txt
>
>
> Added "MOVED_NODE" as a possible type of topology change and also specified 
> that it is possible to receive the same event multiple times.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to