mirror of https://github.com/apache/cassandra
Check for dead neighbors before starting repair
patch by slebresne; reviewed by jbellis for CASSANDRA-2290 git-svn-id: https://svn.apache.org/repos/asf/cassandra/branches/cassandra-0.7@1094796 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
parent
7dbb7983c2
commit
d951f52538
|
|
@ -39,6 +39,7 @@ import org.apache.cassandra.db.DecoratedKey;
|
|||
import org.apache.cassandra.db.Table;
|
||||
import org.apache.cassandra.dht.Range;
|
||||
import org.apache.cassandra.dht.Token;
|
||||
import org.apache.cassandra.gms.FailureDetector;
|
||||
import org.apache.cassandra.io.AbstractCompactedRow;
|
||||
import org.apache.cassandra.io.ICompactSerializer;
|
||||
import org.apache.cassandra.io.sstable.SSTableReader;
|
||||
|
|
@ -753,6 +754,16 @@ public class AntiEntropyService
|
|||
return;
|
||||
}
|
||||
|
||||
// Checking all nodes are live
|
||||
for (InetAddress endpoint : endpoints)
|
||||
{
|
||||
if (!FailureDetector.instance.isAlive(endpoint))
|
||||
{
|
||||
logger.info("Could not proceed on repair because a neighbor (" + endpoint + ") is dead: " + getName() + " failed.");
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
// begin a repair session
|
||||
Callback callback = new Callback();
|
||||
AntiEntropyService.this.sessions.put(getName(), callback);
|
||||
|
|
|
|||
Loading…
Reference in New Issue