You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by bd...@apache.org on 2017/11/09 01:03:23 UTC

[1/6] cassandra git commit: Fix repair race that caused gossip to block

Repository: cassandra
Updated Branches:
  refs/heads/cassandra-3.0 58daf1376 -> 49edd7074
  refs/heads/cassandra-3.11 df37bcb7c -> 7d6474bb4
  refs/heads/trunk 77a352b26 -> ba5f946e5


Fix repair race that caused gossip to block

Patch by Sergey Lapukhov; Reviewed by Blake Eggleston for CASSANDRA-13849


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/49edd707
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/49edd707
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/49edd707

Branch: refs/heads/cassandra-3.0
Commit: 49edd70740e2efae3681cb79a391369bfb7de02e
Parents: 58daf13
Author: Sergey Lapukhov <se...@booking.com>
Authored: Wed Nov 1 11:35:09 2017 +0100
Committer: Blake Eggleston <bd...@gmail.com>
Committed: Wed Nov 8 16:38:21 2017 -0800

----------------------------------------------------------------------
 CHANGES.txt                                                 | 1 +
 .../org/apache/cassandra/service/ActiveRepairService.java   | 9 ++++++---
 2 files changed, 7 insertions(+), 3 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cassandra/blob/49edd707/CHANGES.txt
----------------------------------------------------------------------
diff --git a/CHANGES.txt b/CHANGES.txt
index 3f4f3f2..a94dbc9 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -1,4 +1,5 @@
 3.0.16
+ * Fix repair race that caused gossip to block (CASSANDRA-13849)
  * Tracing interferes with digest requests when using RandomPartitioner (CASSANDRA-13964)
  * Add flag to disable materialized views, and warnings on creation (CASSANDRA-13959)
  * Don't let user drop or generally break tables in system_distributed (CASSANDRA-13813)

http://git-wip-us.apache.org/repos/asf/cassandra/blob/49edd707/src/java/org/apache/cassandra/service/ActiveRepairService.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/service/ActiveRepairService.java b/src/java/org/apache/cassandra/service/ActiveRepairService.java
index b4cea79..adb6fab 100644
--- a/src/java/org/apache/cassandra/service/ActiveRepairService.java
+++ b/src/java/org/apache/cassandra/service/ActiveRepairService.java
@@ -280,7 +280,7 @@ public class ActiveRepairService implements IEndpointStateChangeSubscriber, IFai
         return neighbors;
     }
 
-    public synchronized UUID prepareForRepair(UUID parentRepairSession, InetAddress coordinator, Set<InetAddress> endpoints, RepairOption options, List<ColumnFamilyStore> columnFamilyStores)
+    public UUID prepareForRepair(UUID parentRepairSession, InetAddress coordinator, Set<InetAddress> endpoints, RepairOption options, List<ColumnFamilyStore> columnFamilyStores)
     {
         long timestamp = System.currentTimeMillis();
         registerParentRepairSession(parentRepairSession, coordinator, columnFamilyStores, options.getRanges(), options.isIncremental(), timestamp, options.isGlobal());
@@ -351,7 +351,7 @@ public class ActiveRepairService implements IEndpointStateChangeSubscriber, IFai
         throw new RuntimeException(errorMsg);
     }
 
-    public void registerParentRepairSession(UUID parentRepairSession, InetAddress coordinator, List<ColumnFamilyStore> columnFamilyStores, Collection<Range<Token>> ranges, boolean isIncremental, long timestamp, boolean isGlobal)
+    public synchronized void registerParentRepairSession(UUID parentRepairSession, InetAddress coordinator, List<ColumnFamilyStore> columnFamilyStores, Collection<Range<Token>> ranges, boolean isIncremental, long timestamp, boolean isGlobal)
     {
         if (!registeredForEndpointChanges)
         {
@@ -360,7 +360,10 @@ public class ActiveRepairService implements IEndpointStateChangeSubscriber, IFai
             registeredForEndpointChanges = true;
         }
 
-        parentRepairSessions.put(parentRepairSession, new ParentRepairSession(coordinator, columnFamilyStores, ranges, isIncremental, timestamp, isGlobal));
+        if (!parentRepairSessions.containsKey(parentRepairSession))
+        {
+            parentRepairSessions.put(parentRepairSession, new ParentRepairSession(coordinator, columnFamilyStores, ranges, isIncremental, timestamp, isGlobal));
+        }
     }
 
     public Set<SSTableReader> currentlyRepairing(UUID cfId, UUID parentRepairSession)


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@cassandra.apache.org
For additional commands, e-mail: commits-help@cassandra.apache.org


[3/6] cassandra git commit: Fix repair race that caused gossip to block

Posted by bd...@apache.org.
Fix repair race that caused gossip to block

Patch by Sergey Lapukhov; Reviewed by Blake Eggleston for CASSANDRA-13849


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/49edd707
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/49edd707
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/49edd707

Branch: refs/heads/trunk
Commit: 49edd70740e2efae3681cb79a391369bfb7de02e
Parents: 58daf13
Author: Sergey Lapukhov <se...@booking.com>
Authored: Wed Nov 1 11:35:09 2017 +0100
Committer: Blake Eggleston <bd...@gmail.com>
Committed: Wed Nov 8 16:38:21 2017 -0800

----------------------------------------------------------------------
 CHANGES.txt                                                 | 1 +
 .../org/apache/cassandra/service/ActiveRepairService.java   | 9 ++++++---
 2 files changed, 7 insertions(+), 3 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cassandra/blob/49edd707/CHANGES.txt
----------------------------------------------------------------------
diff --git a/CHANGES.txt b/CHANGES.txt
index 3f4f3f2..a94dbc9 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -1,4 +1,5 @@
 3.0.16
+ * Fix repair race that caused gossip to block (CASSANDRA-13849)
  * Tracing interferes with digest requests when using RandomPartitioner (CASSANDRA-13964)
  * Add flag to disable materialized views, and warnings on creation (CASSANDRA-13959)
  * Don't let user drop or generally break tables in system_distributed (CASSANDRA-13813)

http://git-wip-us.apache.org/repos/asf/cassandra/blob/49edd707/src/java/org/apache/cassandra/service/ActiveRepairService.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/service/ActiveRepairService.java b/src/java/org/apache/cassandra/service/ActiveRepairService.java
index b4cea79..adb6fab 100644
--- a/src/java/org/apache/cassandra/service/ActiveRepairService.java
+++ b/src/java/org/apache/cassandra/service/ActiveRepairService.java
@@ -280,7 +280,7 @@ public class ActiveRepairService implements IEndpointStateChangeSubscriber, IFai
         return neighbors;
     }
 
-    public synchronized UUID prepareForRepair(UUID parentRepairSession, InetAddress coordinator, Set<InetAddress> endpoints, RepairOption options, List<ColumnFamilyStore> columnFamilyStores)
+    public UUID prepareForRepair(UUID parentRepairSession, InetAddress coordinator, Set<InetAddress> endpoints, RepairOption options, List<ColumnFamilyStore> columnFamilyStores)
     {
         long timestamp = System.currentTimeMillis();
         registerParentRepairSession(parentRepairSession, coordinator, columnFamilyStores, options.getRanges(), options.isIncremental(), timestamp, options.isGlobal());
@@ -351,7 +351,7 @@ public class ActiveRepairService implements IEndpointStateChangeSubscriber, IFai
         throw new RuntimeException(errorMsg);
     }
 
-    public void registerParentRepairSession(UUID parentRepairSession, InetAddress coordinator, List<ColumnFamilyStore> columnFamilyStores, Collection<Range<Token>> ranges, boolean isIncremental, long timestamp, boolean isGlobal)
+    public synchronized void registerParentRepairSession(UUID parentRepairSession, InetAddress coordinator, List<ColumnFamilyStore> columnFamilyStores, Collection<Range<Token>> ranges, boolean isIncremental, long timestamp, boolean isGlobal)
     {
         if (!registeredForEndpointChanges)
         {
@@ -360,7 +360,10 @@ public class ActiveRepairService implements IEndpointStateChangeSubscriber, IFai
             registeredForEndpointChanges = true;
         }
 
-        parentRepairSessions.put(parentRepairSession, new ParentRepairSession(coordinator, columnFamilyStores, ranges, isIncremental, timestamp, isGlobal));
+        if (!parentRepairSessions.containsKey(parentRepairSession))
+        {
+            parentRepairSessions.put(parentRepairSession, new ParentRepairSession(coordinator, columnFamilyStores, ranges, isIncremental, timestamp, isGlobal));
+        }
     }
 
     public Set<SSTableReader> currentlyRepairing(UUID cfId, UUID parentRepairSession)


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@cassandra.apache.org
For additional commands, e-mail: commits-help@cassandra.apache.org


[2/6] cassandra git commit: Fix repair race that caused gossip to block

Posted by bd...@apache.org.
Fix repair race that caused gossip to block

Patch by Sergey Lapukhov; Reviewed by Blake Eggleston for CASSANDRA-13849


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/49edd707
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/49edd707
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/49edd707

Branch: refs/heads/cassandra-3.11
Commit: 49edd70740e2efae3681cb79a391369bfb7de02e
Parents: 58daf13
Author: Sergey Lapukhov <se...@booking.com>
Authored: Wed Nov 1 11:35:09 2017 +0100
Committer: Blake Eggleston <bd...@gmail.com>
Committed: Wed Nov 8 16:38:21 2017 -0800

----------------------------------------------------------------------
 CHANGES.txt                                                 | 1 +
 .../org/apache/cassandra/service/ActiveRepairService.java   | 9 ++++++---
 2 files changed, 7 insertions(+), 3 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cassandra/blob/49edd707/CHANGES.txt
----------------------------------------------------------------------
diff --git a/CHANGES.txt b/CHANGES.txt
index 3f4f3f2..a94dbc9 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -1,4 +1,5 @@
 3.0.16
+ * Fix repair race that caused gossip to block (CASSANDRA-13849)
  * Tracing interferes with digest requests when using RandomPartitioner (CASSANDRA-13964)
  * Add flag to disable materialized views, and warnings on creation (CASSANDRA-13959)
  * Don't let user drop or generally break tables in system_distributed (CASSANDRA-13813)

http://git-wip-us.apache.org/repos/asf/cassandra/blob/49edd707/src/java/org/apache/cassandra/service/ActiveRepairService.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/service/ActiveRepairService.java b/src/java/org/apache/cassandra/service/ActiveRepairService.java
index b4cea79..adb6fab 100644
--- a/src/java/org/apache/cassandra/service/ActiveRepairService.java
+++ b/src/java/org/apache/cassandra/service/ActiveRepairService.java
@@ -280,7 +280,7 @@ public class ActiveRepairService implements IEndpointStateChangeSubscriber, IFai
         return neighbors;
     }
 
-    public synchronized UUID prepareForRepair(UUID parentRepairSession, InetAddress coordinator, Set<InetAddress> endpoints, RepairOption options, List<ColumnFamilyStore> columnFamilyStores)
+    public UUID prepareForRepair(UUID parentRepairSession, InetAddress coordinator, Set<InetAddress> endpoints, RepairOption options, List<ColumnFamilyStore> columnFamilyStores)
     {
         long timestamp = System.currentTimeMillis();
         registerParentRepairSession(parentRepairSession, coordinator, columnFamilyStores, options.getRanges(), options.isIncremental(), timestamp, options.isGlobal());
@@ -351,7 +351,7 @@ public class ActiveRepairService implements IEndpointStateChangeSubscriber, IFai
         throw new RuntimeException(errorMsg);
     }
 
-    public void registerParentRepairSession(UUID parentRepairSession, InetAddress coordinator, List<ColumnFamilyStore> columnFamilyStores, Collection<Range<Token>> ranges, boolean isIncremental, long timestamp, boolean isGlobal)
+    public synchronized void registerParentRepairSession(UUID parentRepairSession, InetAddress coordinator, List<ColumnFamilyStore> columnFamilyStores, Collection<Range<Token>> ranges, boolean isIncremental, long timestamp, boolean isGlobal)
     {
         if (!registeredForEndpointChanges)
         {
@@ -360,7 +360,10 @@ public class ActiveRepairService implements IEndpointStateChangeSubscriber, IFai
             registeredForEndpointChanges = true;
         }
 
-        parentRepairSessions.put(parentRepairSession, new ParentRepairSession(coordinator, columnFamilyStores, ranges, isIncremental, timestamp, isGlobal));
+        if (!parentRepairSessions.containsKey(parentRepairSession))
+        {
+            parentRepairSessions.put(parentRepairSession, new ParentRepairSession(coordinator, columnFamilyStores, ranges, isIncremental, timestamp, isGlobal));
+        }
     }
 
     public Set<SSTableReader> currentlyRepairing(UUID cfId, UUID parentRepairSession)


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@cassandra.apache.org
For additional commands, e-mail: commits-help@cassandra.apache.org


[4/6] cassandra git commit: Merge branch 'cassandra-3.0' into cassandra-3.11

Posted by bd...@apache.org.
Merge branch 'cassandra-3.0' into cassandra-3.11


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/7d6474bb
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/7d6474bb
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/7d6474bb

Branch: refs/heads/trunk
Commit: 7d6474bb4d5e8fe940ad0a75652524ca221dab62
Parents: df37bcb 49edd70
Author: Blake Eggleston <bd...@gmail.com>
Authored: Wed Nov 8 16:40:38 2017 -0800
Committer: Blake Eggleston <bd...@gmail.com>
Committed: Wed Nov 8 16:42:13 2017 -0800

----------------------------------------------------------------------
 CHANGES.txt                                                 | 1 +
 .../org/apache/cassandra/service/ActiveRepairService.java   | 9 ++++++---
 2 files changed, 7 insertions(+), 3 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cassandra/blob/7d6474bb/CHANGES.txt
----------------------------------------------------------------------
diff --cc CHANGES.txt
index 83015b1,a94dbc9..6bd6de8
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@@ -1,9 -1,5 +1,10 @@@
 -3.0.16
 +3.11.2
 + * Add asm jar to build.xml for maven builds (CASSANDRA-11193)
 + * Round buffer size to powers of 2 for the chunk cache (CASSANDRA-13897)
 + * Update jackson JSON jars (CASSANDRA-13949)
 + * Avoid locks when checking LCS fanout and if we should defrag (CASSANDRA-13930)
 +Merged from 3.0:
+  * Fix repair race that caused gossip to block (CASSANDRA-13849)
   * Tracing interferes with digest requests when using RandomPartitioner (CASSANDRA-13964)
   * Add flag to disable materialized views, and warnings on creation (CASSANDRA-13959)
   * Don't let user drop or generally break tables in system_distributed (CASSANDRA-13813)

http://git-wip-us.apache.org/repos/asf/cassandra/blob/7d6474bb/src/java/org/apache/cassandra/service/ActiveRepairService.java
----------------------------------------------------------------------
diff --cc src/java/org/apache/cassandra/service/ActiveRepairService.java
index fea690e,adb6fab..626aa91
--- a/src/java/org/apache/cassandra/service/ActiveRepairService.java
+++ b/src/java/org/apache/cassandra/service/ActiveRepairService.java
@@@ -283,9 -280,9 +283,9 @@@ public class ActiveRepairService implem
          return neighbors;
      }
  
-     public synchronized UUID prepareForRepair(UUID parentRepairSession, InetAddress coordinator, Set<InetAddress> endpoints, RepairOption options, List<ColumnFamilyStore> columnFamilyStores)
+     public UUID prepareForRepair(UUID parentRepairSession, InetAddress coordinator, Set<InetAddress> endpoints, RepairOption options, List<ColumnFamilyStore> columnFamilyStores)
      {
 -        long timestamp = System.currentTimeMillis();
 +        long timestamp = Clock.instance.currentTimeMillis();
          registerParentRepairSession(parentRepairSession, coordinator, columnFamilyStores, options.getRanges(), options.isIncremental(), timestamp, options.isGlobal());
          final CountDownLatch prepareLatch = new CountDownLatch(endpoints.size());
          final AtomicBoolean status = new AtomicBoolean(true);


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@cassandra.apache.org
For additional commands, e-mail: commits-help@cassandra.apache.org


[5/6] cassandra git commit: Merge branch 'cassandra-3.0' into cassandra-3.11

Posted by bd...@apache.org.
Merge branch 'cassandra-3.0' into cassandra-3.11


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/7d6474bb
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/7d6474bb
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/7d6474bb

Branch: refs/heads/cassandra-3.11
Commit: 7d6474bb4d5e8fe940ad0a75652524ca221dab62
Parents: df37bcb 49edd70
Author: Blake Eggleston <bd...@gmail.com>
Authored: Wed Nov 8 16:40:38 2017 -0800
Committer: Blake Eggleston <bd...@gmail.com>
Committed: Wed Nov 8 16:42:13 2017 -0800

----------------------------------------------------------------------
 CHANGES.txt                                                 | 1 +
 .../org/apache/cassandra/service/ActiveRepairService.java   | 9 ++++++---
 2 files changed, 7 insertions(+), 3 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cassandra/blob/7d6474bb/CHANGES.txt
----------------------------------------------------------------------
diff --cc CHANGES.txt
index 83015b1,a94dbc9..6bd6de8
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@@ -1,9 -1,5 +1,10 @@@
 -3.0.16
 +3.11.2
 + * Add asm jar to build.xml for maven builds (CASSANDRA-11193)
 + * Round buffer size to powers of 2 for the chunk cache (CASSANDRA-13897)
 + * Update jackson JSON jars (CASSANDRA-13949)
 + * Avoid locks when checking LCS fanout and if we should defrag (CASSANDRA-13930)
 +Merged from 3.0:
+  * Fix repair race that caused gossip to block (CASSANDRA-13849)
   * Tracing interferes with digest requests when using RandomPartitioner (CASSANDRA-13964)
   * Add flag to disable materialized views, and warnings on creation (CASSANDRA-13959)
   * Don't let user drop or generally break tables in system_distributed (CASSANDRA-13813)

http://git-wip-us.apache.org/repos/asf/cassandra/blob/7d6474bb/src/java/org/apache/cassandra/service/ActiveRepairService.java
----------------------------------------------------------------------
diff --cc src/java/org/apache/cassandra/service/ActiveRepairService.java
index fea690e,adb6fab..626aa91
--- a/src/java/org/apache/cassandra/service/ActiveRepairService.java
+++ b/src/java/org/apache/cassandra/service/ActiveRepairService.java
@@@ -283,9 -280,9 +283,9 @@@ public class ActiveRepairService implem
          return neighbors;
      }
  
-     public synchronized UUID prepareForRepair(UUID parentRepairSession, InetAddress coordinator, Set<InetAddress> endpoints, RepairOption options, List<ColumnFamilyStore> columnFamilyStores)
+     public UUID prepareForRepair(UUID parentRepairSession, InetAddress coordinator, Set<InetAddress> endpoints, RepairOption options, List<ColumnFamilyStore> columnFamilyStores)
      {
 -        long timestamp = System.currentTimeMillis();
 +        long timestamp = Clock.instance.currentTimeMillis();
          registerParentRepairSession(parentRepairSession, coordinator, columnFamilyStores, options.getRanges(), options.isIncremental(), timestamp, options.isGlobal());
          final CountDownLatch prepareLatch = new CountDownLatch(endpoints.size());
          final AtomicBoolean status = new AtomicBoolean(true);


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@cassandra.apache.org
For additional commands, e-mail: commits-help@cassandra.apache.org


[6/6] cassandra git commit: Merge branch 'cassandra-3.11' into trunk

Posted by bd...@apache.org.
Merge branch 'cassandra-3.11' into trunk


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/ba5f946e
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/ba5f946e
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/ba5f946e

Branch: refs/heads/trunk
Commit: ba5f946e5f6763549e7235b48357a1edd0d67728
Parents: 77a352b 7d6474b
Author: Blake Eggleston <bd...@gmail.com>
Authored: Wed Nov 8 16:43:50 2017 -0800
Committer: Blake Eggleston <bd...@gmail.com>
Committed: Wed Nov 8 16:58:58 2017 -0800

----------------------------------------------------------------------
 CHANGES.txt                                                   | 1 +
 .../org/apache/cassandra/service/ActiveRepairService.java     | 7 +++++--
 2 files changed, 6 insertions(+), 2 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cassandra/blob/ba5f946e/CHANGES.txt
----------------------------------------------------------------------

http://git-wip-us.apache.org/repos/asf/cassandra/blob/ba5f946e/src/java/org/apache/cassandra/service/ActiveRepairService.java
----------------------------------------------------------------------
diff --cc src/java/org/apache/cassandra/service/ActiveRepairService.java
index ab92822,626aa91..62352ad
--- a/src/java/org/apache/cassandra/service/ActiveRepairService.java
+++ b/src/java/org/apache/cassandra/service/ActiveRepairService.java
@@@ -469,9 -354,8 +469,9 @@@ public class ActiveRepairService implem
          throw new RuntimeException(errorMsg);
      }
  
-     public void registerParentRepairSession(UUID parentRepairSession, InetAddress coordinator, List<ColumnFamilyStore> columnFamilyStores, Collection<Range<Token>> ranges, boolean isIncremental, long repairedAt, boolean isGlobal, PreviewKind previewKind)
 -    public synchronized void registerParentRepairSession(UUID parentRepairSession, InetAddress coordinator, List<ColumnFamilyStore> columnFamilyStores, Collection<Range<Token>> ranges, boolean isIncremental, long timestamp, boolean isGlobal)
++    public synchronized void registerParentRepairSession(UUID parentRepairSession, InetAddress coordinator, List<ColumnFamilyStore> columnFamilyStores, Collection<Range<Token>> ranges, boolean isIncremental, long repairedAt, boolean isGlobal, PreviewKind previewKind)
      {
 +        assert isIncremental || repairedAt == ActiveRepairService.UNREPAIRED_SSTABLE;
          if (!registeredForEndpointChanges)
          {
              Gossiper.instance.register(this);
@@@ -479,9 -363,46 +479,12 @@@
              registeredForEndpointChanges = true;
          }
  
-         parentRepairSessions.put(parentRepairSession, new ParentRepairSession(coordinator, columnFamilyStores, ranges, isIncremental, repairedAt, isGlobal, previewKind));
+         if (!parentRepairSessions.containsKey(parentRepairSession))
+         {
 -            parentRepairSessions.put(parentRepairSession, new ParentRepairSession(coordinator, columnFamilyStores, ranges, isIncremental, timestamp, isGlobal));
++            parentRepairSessions.put(parentRepairSession, new ParentRepairSession(coordinator, columnFamilyStores, ranges, isIncremental, repairedAt, isGlobal, previewKind));
+         }
      }
  
 -    public Set<SSTableReader> currentlyRepairing(UUID cfId, UUID parentRepairSession)
 -    {
 -        Set<SSTableReader> repairing = new HashSet<>();
 -        for (Map.Entry<UUID, ParentRepairSession> entry : parentRepairSessions.entrySet())
 -        {
 -            Collection<SSTableReader> sstables = entry.getValue().getActiveSSTables(cfId);
 -            if (sstables != null && !entry.getKey().equals(parentRepairSession))
 -                repairing.addAll(sstables);
 -        }
 -        return repairing;
 -    }
 -
 -    /**
 -     * Run final process of repair.
 -     * This removes all resources held by parent repair session, after performing anti compaction if necessary.
 -     *
 -     * @param parentSession Parent session ID
 -     * @param neighbors Repair participants (not including self)
 -     * @param successfulRanges Ranges that repaired successfully
 -     */
 -    public synchronized ListenableFuture finishParentSession(UUID parentSession, Set<InetAddress> neighbors, Collection<Range<Token>> successfulRanges)
 -    {
 -        List<ListenableFuture<?>> tasks = new ArrayList<>(neighbors.size() + 1);
 -        for (InetAddress neighbor : neighbors)
 -        {
 -            AnticompactionTask task = new AnticompactionTask(parentSession, neighbor, successfulRanges);
 -            registerOnFdAndGossip(task);
 -            tasks.add(task);
 -            task.run(); // 'run' is just sending message
 -        }
 -        tasks.add(doAntiCompaction(parentSession, successfulRanges));
 -        return Futures.successfulAsList(tasks);
 -    }
 -
      public ParentRepairSession getParentRepairSession(UUID parentSessionId)
      {
          ParentRepairSession session = parentRepairSessions.get(parentSessionId);


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@cassandra.apache.org
For additional commands, e-mail: commits-help@cassandra.apache.org