cassandra-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Jeremiah Jordan (JIRA)" <>
Subject [jira] [Updated] (CASSANDRA-9206) Remove seed gossip probability
Date Thu, 17 Nov 2016 21:39:59 GMT


Jeremiah Jordan updated CASSANDRA-9206:
    Status: Patch Available  (was: Open)

> Remove seed gossip probability
> ------------------------------
>                 Key: CASSANDRA-9206
>                 URL:
>             Project: Cassandra
>          Issue Type: Improvement
>            Reporter: Brandon Williams
>            Assignee: Brandon Williams
>             Fix For: 3.x
>         Attachments: 9206.txt
> Currently, we use probability to determine whether a node will gossip with a seed:
> {noformat} 
>                 double probability = seeds.size() / (double) (liveEndpoints.size() +
>                 double randDbl = random.nextDouble();
>                 if (randDbl <= probability)
>                     sendGossip(prod, seeds);
> {noformat}
> I propose that we remove this probability, and instead *always* gossip with a seed. 
This of course means increased traffic and processing on the seed(s), but even a 1000 node
cluster with a single seed will only put ~1000 messages per second on the seed, which is virtually
nothing.  Should it become a problem, the solution is simple: add more seeds.  Since seeds
will also always gossip with each other, this effectively gives us a poor man's spanning tree,
with the only cost being removing a few lines of code, and should greatly improve our gossip
convergence time, especially in large clusters.

This message was sent by Atlassian JIRA

View raw message