You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by "Brandon Williams (JIRA)" <ji...@apache.org> on 2014/11/06 21:51:33 UTC

[jira] [Updated] (CASSANDRA-8236) Delay "node up" and "node added" notifications until native protocol server is started

     [ https://issues.apache.org/jira/browse/CASSANDRA-8236?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Brandon Williams updated CASSANDRA-8236:
----------------------------------------
    Attachment: 8236.txt

Patch to add a new ApplicationState, RPC_READY, which is a boolean that defaults to false at startup.  Once the native server is started, it then flips this to true.  If the remote node is older, we preserve the behavior of CASSANDRA-7510 and give our best effort to notify clients when the server is ready.

Note that while this didn't break anything, I didn't actually test it with a native client.

> Delay "node up" and "node added" notifications until native protocol server is started
> --------------------------------------------------------------------------------------
>
>                 Key: CASSANDRA-8236
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-8236
>             Project: Cassandra
>          Issue Type: Improvement
>          Components: Core
>            Reporter: Tyler Hobbs
>            Assignee: Brandon Williams
>             Fix For: 3.0
>
>         Attachments: 8236.txt
>
>
> As discussed in CASSANDRA-7510, there is still a gap between when a "node up" or "node added" notification may be sent to native protocol clients (in response to a gossip event) and when the native protocol server is ready to serve requests.
> Everything in between the call to {{StorageService.instance.initServer()}} and creation of the native server in {{CassandraDaemon.setup()}} contributes to this delay, but waiting for Gossip to settle introduces the biggest delay.
> We may need to introduce a "STARTING" gossip state for the period inbetween, which is why this is scheduled for 3.0.  If there's a better option, though, it may make sense to put this in 2.1.



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