mirror of https://github.com/apache/cassandra
Make repair no-op when RF=1
patch by yukim; reviewed by krummas for CASSANDRA-7864
This commit is contained in:
parent
77b036a876
commit
46ef9628fa
|
|
@ -8,6 +8,7 @@
|
||||||
(CASSANDRA-7722)
|
(CASSANDRA-7722)
|
||||||
* Always send Paxos commit to all replicas (CASSANDRA-7479)
|
* Always send Paxos commit to all replicas (CASSANDRA-7479)
|
||||||
* Make disruptor_thrift_server invocation pool configurable (CASSANDRA-7594)
|
* Make disruptor_thrift_server invocation pool configurable (CASSANDRA-7594)
|
||||||
|
* Make repair no-op when RF=1 (CASSANDRA-7864)
|
||||||
|
|
||||||
|
|
||||||
2.0.10
|
2.0.10
|
||||||
|
|
|
||||||
|
|
@ -2404,7 +2404,7 @@ public class StorageService extends NotificationBroadcasterSupport implements IE
|
||||||
|
|
||||||
public int forceRepairAsync(final String keyspace, final boolean isSequential, final Collection<String> dataCenters, final Collection<String> hosts, final Collection<Range<Token>> ranges, final String... columnFamilies)
|
public int forceRepairAsync(final String keyspace, final boolean isSequential, final Collection<String> dataCenters, final Collection<String> hosts, final Collection<Range<Token>> ranges, final String... columnFamilies)
|
||||||
{
|
{
|
||||||
if (Keyspace.SYSTEM_KS.equals(keyspace) || ranges.isEmpty())
|
if (ranges.isEmpty() || Keyspace.open(keyspace).getReplicationStrategy().getReplicationFactor() < 2)
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
final int cmd = nextRepairCommand.incrementAndGet();
|
final int cmd = nextRepairCommand.incrementAndGet();
|
||||||
|
|
@ -2428,7 +2428,7 @@ public class StorageService extends NotificationBroadcasterSupport implements IE
|
||||||
|
|
||||||
public int forceRepairAsync(String keyspace, boolean isSequential, boolean isLocal, Collection<Range<Token>> ranges, String... columnFamilies)
|
public int forceRepairAsync(String keyspace, boolean isSequential, boolean isLocal, Collection<Range<Token>> ranges, String... columnFamilies)
|
||||||
{
|
{
|
||||||
if (Keyspace.SYSTEM_KS.equals(keyspace) || ranges.isEmpty())
|
if (ranges.isEmpty() || Keyspace.open(keyspace).getReplicationStrategy().getReplicationFactor() < 2)
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
final int cmd = nextRepairCommand.incrementAndGet();
|
final int cmd = nextRepairCommand.incrementAndGet();
|
||||||
|
|
@ -2497,7 +2497,7 @@ public class StorageService extends NotificationBroadcasterSupport implements IE
|
||||||
|
|
||||||
public void forceKeyspaceRepairRange(final String keyspaceName, final Collection<Range<Token>> ranges, boolean isSequential, boolean isLocal, final String... columnFamilies) throws IOException
|
public void forceKeyspaceRepairRange(final String keyspaceName, final Collection<Range<Token>> ranges, boolean isSequential, boolean isLocal, final String... columnFamilies) throws IOException
|
||||||
{
|
{
|
||||||
if (Keyspace.SYSTEM_KS.equalsIgnoreCase(keyspaceName))
|
if (ranges.isEmpty() || Keyspace.open(keyspaceName).getReplicationStrategy().getReplicationFactor() < 2)
|
||||||
return;
|
return;
|
||||||
createRepairTask(nextRepairCommand.incrementAndGet(), keyspaceName, ranges, isSequential, isLocal, columnFamilies).run();
|
createRepairTask(nextRepairCommand.incrementAndGet(), keyspaceName, ranges, isSequential, isLocal, columnFamilies).run();
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue