You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by ja...@apache.org on 2016/06/01 20:11:46 UTC

[1/6] cassandra git commit: fixing Directories instantiations where CFS.initialDirectories should be used

Repository: cassandra
Updated Branches:
  refs/heads/cassandra-3.0 6932bbd90 -> 7eb464734
  refs/heads/cassandra-3.7 c7e086d61 -> dbf03103c
  refs/heads/trunk 49a2da9b7 -> 59949ac38


fixing Directories instantiations where CFS.initialDirectories should be used

Patch by Blake Eggleston; reviewed by tjake for CASSANDRA-11849


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

Branch: refs/heads/cassandra-3.0
Commit: 7eb464734b0732ab3c6cd2a5c3409085c81f95a7
Parents: 6932bbd
Author: Blake Eggleston <bd...@gmail.com>
Authored: Wed May 25 09:09:22 2016 -0700
Committer: T Jake Luciani <ja...@apache.org>
Committed: Wed Jun 1 15:54:07 2016 -0400

----------------------------------------------------------------------
 CHANGES.txt                                                    | 1 +
 src/java/org/apache/cassandra/db/ColumnFamilyStore.java        | 2 +-
 src/java/org/apache/cassandra/db/lifecycle/LogTransaction.java | 3 ++-
 src/java/org/apache/cassandra/tools/StandaloneSSTableUtil.java | 3 ++-
 4 files changed, 6 insertions(+), 3 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cassandra/blob/7eb46473/CHANGES.txt
----------------------------------------------------------------------
diff --git a/CHANGES.txt b/CHANGES.txt
index a59dff1..0cafa83 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -1,4 +1,5 @@
 3.0.7
+ * Fix Directories instantiations where CFS.initialDirectories should be used (CASSANDRA-11849)
  * Avoid referencing DatabaseDescriptor in AbstractType (CASSANDRA-11912)
  * Fix sstables not being protected from removal during index build (CASSANDRA-11905)
  * cqlsh: Suppress stack trace from Read/WriteFailures (CASSANDRA-11032)

http://git-wip-us.apache.org/repos/asf/cassandra/blob/7eb46473/src/java/org/apache/cassandra/db/ColumnFamilyStore.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/db/ColumnFamilyStore.java b/src/java/org/apache/cassandra/db/ColumnFamilyStore.java
index 7ca6d96..3264327 100644
--- a/src/java/org/apache/cassandra/db/ColumnFamilyStore.java
+++ b/src/java/org/apache/cassandra/db/ColumnFamilyStore.java
@@ -580,7 +580,7 @@ public class ColumnFamilyStore implements ColumnFamilyStoreMBean
      */
     public static void scrubDataDirectories(CFMetaData metadata)
     {
-        Directories directories = new Directories(metadata);
+        Directories directories = new Directories(metadata, initialDirectories);
 
          // clear ephemeral snapshots that were not properly cleared last session (CASSANDRA-7357)
         clearEphemeralSnapshots(directories);

http://git-wip-us.apache.org/repos/asf/cassandra/blob/7eb46473/src/java/org/apache/cassandra/db/lifecycle/LogTransaction.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/db/lifecycle/LogTransaction.java b/src/java/org/apache/cassandra/db/lifecycle/LogTransaction.java
index ce76165..b34ca60 100644
--- a/src/java/org/apache/cassandra/db/lifecycle/LogTransaction.java
+++ b/src/java/org/apache/cassandra/db/lifecycle/LogTransaction.java
@@ -32,6 +32,7 @@ import org.slf4j.LoggerFactory;
 
 import org.apache.cassandra.concurrent.ScheduledExecutors;
 import org.apache.cassandra.config.CFMetaData;
+import org.apache.cassandra.db.ColumnFamilyStore;
 import org.apache.cassandra.db.Directories;
 import org.apache.cassandra.db.SystemKeyspace;
 import org.apache.cassandra.db.compaction.OperationType;
@@ -385,7 +386,7 @@ class LogTransaction extends Transactional.AbstractTransactional implements Tran
      */
     static void removeUnfinishedLeftovers(CFMetaData metadata)
     {
-        removeUnfinishedLeftovers(new Directories(metadata).getCFDirectories());
+        removeUnfinishedLeftovers(new Directories(metadata, ColumnFamilyStore.getInitialDirectories()).getCFDirectories());
     }
 
     @VisibleForTesting

http://git-wip-us.apache.org/repos/asf/cassandra/blob/7eb46473/src/java/org/apache/cassandra/tools/StandaloneSSTableUtil.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/tools/StandaloneSSTableUtil.java b/src/java/org/apache/cassandra/tools/StandaloneSSTableUtil.java
index 6e2be1d..7aa07d0 100644
--- a/src/java/org/apache/cassandra/tools/StandaloneSSTableUtil.java
+++ b/src/java/org/apache/cassandra/tools/StandaloneSSTableUtil.java
@@ -20,6 +20,7 @@ package org.apache.cassandra.tools;
 
 import org.apache.cassandra.config.CFMetaData;
 import org.apache.cassandra.config.Schema;
+import org.apache.cassandra.db.ColumnFamilyStore;
 import org.apache.cassandra.db.Directories;
 import org.apache.cassandra.db.lifecycle.LifecycleTransaction;
 import org.apache.cassandra.utils.OutputHandler;
@@ -81,7 +82,7 @@ public class StandaloneSSTableUtil
 
     private static void listFiles(Options options, CFMetaData metadata, OutputHandler handler) throws IOException
     {
-        Directories directories = new Directories(metadata);
+        Directories directories = new Directories(metadata, ColumnFamilyStore.getInitialDirectories());
 
         for (File dir : directories.getCFDirectories())
         {


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

Posted by ja...@apache.org.
Merge branch 'cassandra-3.7' into trunk


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

Branch: refs/heads/trunk
Commit: 59949ac38d1e2b85a66d2b8a4fec9302766f8f90
Parents: 49a2da9 dbf0310
Author: T Jake Luciani <ja...@apache.org>
Authored: Wed Jun 1 16:11:11 2016 -0400
Committer: T Jake Luciani <ja...@apache.org>
Committed: Wed Jun 1 16:11:11 2016 -0400

----------------------------------------------------------------------
 CHANGES.txt                                                    | 1 +
 src/java/org/apache/cassandra/db/ColumnFamilyStore.java        | 2 +-
 src/java/org/apache/cassandra/db/lifecycle/LogTransaction.java | 3 ++-
 src/java/org/apache/cassandra/tools/StandaloneSSTableUtil.java | 3 ++-
 4 files changed, 6 insertions(+), 3 deletions(-)
----------------------------------------------------------------------


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


[3/6] cassandra git commit: fixing Directories instantiations where CFS.initialDirectories should be used

Posted by ja...@apache.org.
fixing Directories instantiations where CFS.initialDirectories should be used

Patch by Blake Eggleston; reviewed by tjake for CASSANDRA-11849


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

Branch: refs/heads/trunk
Commit: 7eb464734b0732ab3c6cd2a5c3409085c81f95a7
Parents: 6932bbd
Author: Blake Eggleston <bd...@gmail.com>
Authored: Wed May 25 09:09:22 2016 -0700
Committer: T Jake Luciani <ja...@apache.org>
Committed: Wed Jun 1 15:54:07 2016 -0400

----------------------------------------------------------------------
 CHANGES.txt                                                    | 1 +
 src/java/org/apache/cassandra/db/ColumnFamilyStore.java        | 2 +-
 src/java/org/apache/cassandra/db/lifecycle/LogTransaction.java | 3 ++-
 src/java/org/apache/cassandra/tools/StandaloneSSTableUtil.java | 3 ++-
 4 files changed, 6 insertions(+), 3 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cassandra/blob/7eb46473/CHANGES.txt
----------------------------------------------------------------------
diff --git a/CHANGES.txt b/CHANGES.txt
index a59dff1..0cafa83 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -1,4 +1,5 @@
 3.0.7
+ * Fix Directories instantiations where CFS.initialDirectories should be used (CASSANDRA-11849)
  * Avoid referencing DatabaseDescriptor in AbstractType (CASSANDRA-11912)
  * Fix sstables not being protected from removal during index build (CASSANDRA-11905)
  * cqlsh: Suppress stack trace from Read/WriteFailures (CASSANDRA-11032)

http://git-wip-us.apache.org/repos/asf/cassandra/blob/7eb46473/src/java/org/apache/cassandra/db/ColumnFamilyStore.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/db/ColumnFamilyStore.java b/src/java/org/apache/cassandra/db/ColumnFamilyStore.java
index 7ca6d96..3264327 100644
--- a/src/java/org/apache/cassandra/db/ColumnFamilyStore.java
+++ b/src/java/org/apache/cassandra/db/ColumnFamilyStore.java
@@ -580,7 +580,7 @@ public class ColumnFamilyStore implements ColumnFamilyStoreMBean
      */
     public static void scrubDataDirectories(CFMetaData metadata)
     {
-        Directories directories = new Directories(metadata);
+        Directories directories = new Directories(metadata, initialDirectories);
 
          // clear ephemeral snapshots that were not properly cleared last session (CASSANDRA-7357)
         clearEphemeralSnapshots(directories);

http://git-wip-us.apache.org/repos/asf/cassandra/blob/7eb46473/src/java/org/apache/cassandra/db/lifecycle/LogTransaction.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/db/lifecycle/LogTransaction.java b/src/java/org/apache/cassandra/db/lifecycle/LogTransaction.java
index ce76165..b34ca60 100644
--- a/src/java/org/apache/cassandra/db/lifecycle/LogTransaction.java
+++ b/src/java/org/apache/cassandra/db/lifecycle/LogTransaction.java
@@ -32,6 +32,7 @@ import org.slf4j.LoggerFactory;
 
 import org.apache.cassandra.concurrent.ScheduledExecutors;
 import org.apache.cassandra.config.CFMetaData;
+import org.apache.cassandra.db.ColumnFamilyStore;
 import org.apache.cassandra.db.Directories;
 import org.apache.cassandra.db.SystemKeyspace;
 import org.apache.cassandra.db.compaction.OperationType;
@@ -385,7 +386,7 @@ class LogTransaction extends Transactional.AbstractTransactional implements Tran
      */
     static void removeUnfinishedLeftovers(CFMetaData metadata)
     {
-        removeUnfinishedLeftovers(new Directories(metadata).getCFDirectories());
+        removeUnfinishedLeftovers(new Directories(metadata, ColumnFamilyStore.getInitialDirectories()).getCFDirectories());
     }
 
     @VisibleForTesting

http://git-wip-us.apache.org/repos/asf/cassandra/blob/7eb46473/src/java/org/apache/cassandra/tools/StandaloneSSTableUtil.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/tools/StandaloneSSTableUtil.java b/src/java/org/apache/cassandra/tools/StandaloneSSTableUtil.java
index 6e2be1d..7aa07d0 100644
--- a/src/java/org/apache/cassandra/tools/StandaloneSSTableUtil.java
+++ b/src/java/org/apache/cassandra/tools/StandaloneSSTableUtil.java
@@ -20,6 +20,7 @@ package org.apache.cassandra.tools;
 
 import org.apache.cassandra.config.CFMetaData;
 import org.apache.cassandra.config.Schema;
+import org.apache.cassandra.db.ColumnFamilyStore;
 import org.apache.cassandra.db.Directories;
 import org.apache.cassandra.db.lifecycle.LifecycleTransaction;
 import org.apache.cassandra.utils.OutputHandler;
@@ -81,7 +82,7 @@ public class StandaloneSSTableUtil
 
     private static void listFiles(Options options, CFMetaData metadata, OutputHandler handler) throws IOException
     {
-        Directories directories = new Directories(metadata);
+        Directories directories = new Directories(metadata, ColumnFamilyStore.getInitialDirectories());
 
         for (File dir : directories.getCFDirectories())
         {


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

Posted by ja...@apache.org.
Merge branch 'cassandra-3.0' into cassandra-3.7


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

Branch: refs/heads/cassandra-3.7
Commit: dbf03103cc72b33b7cc021589255bd492b498907
Parents: c7e086d 7eb4647
Author: T Jake Luciani <ja...@apache.org>
Authored: Wed Jun 1 16:00:11 2016 -0400
Committer: T Jake Luciani <ja...@apache.org>
Committed: Wed Jun 1 16:10:51 2016 -0400

----------------------------------------------------------------------
 CHANGES.txt                                                    | 1 +
 src/java/org/apache/cassandra/db/ColumnFamilyStore.java        | 2 +-
 src/java/org/apache/cassandra/db/lifecycle/LogTransaction.java | 3 ++-
 src/java/org/apache/cassandra/tools/StandaloneSSTableUtil.java | 3 ++-
 4 files changed, 6 insertions(+), 3 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cassandra/blob/dbf03103/CHANGES.txt
----------------------------------------------------------------------
diff --cc CHANGES.txt
index 3ecbdf4,0cafa83..a54f4fd
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@@ -1,8 -1,6 +1,9 @@@
 -3.0.7
 +3.7
 + * Fix race in CompactionStrategyManager's pause/resume (CASSANDRA-11922)
 +Merged from 3.0:
+  * Fix Directories instantiations where CFS.initialDirectories should be used (CASSANDRA-11849)
   * Avoid referencing DatabaseDescriptor in AbstractType (CASSANDRA-11912)
 + * Don't use static dataDirectories field in Directories instances (CASSANDRA-11647)
   * Fix sstables not being protected from removal during index build (CASSANDRA-11905)
   * cqlsh: Suppress stack trace from Read/WriteFailures (CASSANDRA-11032)
   * Remove unneeded code to repair index summaries that have

http://git-wip-us.apache.org/repos/asf/cassandra/blob/dbf03103/src/java/org/apache/cassandra/db/ColumnFamilyStore.java
----------------------------------------------------------------------
diff --cc src/java/org/apache/cassandra/db/ColumnFamilyStore.java
index 4ea883e,3264327..f004ae0
--- a/src/java/org/apache/cassandra/db/ColumnFamilyStore.java
+++ b/src/java/org/apache/cassandra/db/ColumnFamilyStore.java
@@@ -596,9 -578,9 +596,9 @@@ public class ColumnFamilyStore implemen
       * Removes unnecessary files from the cf directory at startup: these include temp files, orphans, zero-length files
       * and compacted sstables. Files that cannot be recognized will be ignored.
       */
 -    public static void scrubDataDirectories(CFMetaData metadata)
 +    public static void scrubDataDirectories(CFMetaData metadata) throws StartupException
      {
-         Directories directories = new Directories(metadata);
+         Directories directories = new Directories(metadata, initialDirectories);
  
           // clear ephemeral snapshots that were not properly cleared last session (CASSANDRA-7357)
          clearEphemeralSnapshots(directories);

http://git-wip-us.apache.org/repos/asf/cassandra/blob/dbf03103/src/java/org/apache/cassandra/db/lifecycle/LogTransaction.java
----------------------------------------------------------------------
diff --cc src/java/org/apache/cassandra/db/lifecycle/LogTransaction.java
index b441454,b34ca60..bfd9739
--- a/src/java/org/apache/cassandra/db/lifecycle/LogTransaction.java
+++ b/src/java/org/apache/cassandra/db/lifecycle/LogTransaction.java
@@@ -380,22 -379,14 +381,22 @@@ class LogTransaction extends Transactio
      protected void doPrepare() { }
  
      /**
 -     * Called on startup to scan existing folders for any unfinished leftovers of
 -     * operations that were ongoing when the process exited. Also called by the standalone
 -     * sstableutil tool when the cleanup option is specified, @see StandaloneSSTableUtil.
 +     * Removes any leftovers from unifinished transactions as indicated by any transaction log files that
 +     * are found in the table directories. This means that any old sstable files for transactions that were committed,
 +     * or any new sstable files for transactions that were aborted or still in progress, should be removed *if
 +     * it is safe to do so*. Refer to the checks in LogFile.verify for further details on the safety checks
 +     * before removing transaction leftovers and refer to the comments at the beginning of this file or in NEWS.txt
 +     * for further details on transaction logs.
 +     *
 +     * This method is called on startup and by the standalone sstableutil tool when the cleanup option is specified,
 +     * @see StandaloneSSTableUtil.
 +     *
 +     * @return true if the leftovers of all transaction logs found were removed, false otherwise.
       *
       */
 -    static void removeUnfinishedLeftovers(CFMetaData metadata)
 +    static boolean removeUnfinishedLeftovers(CFMetaData metadata)
      {
-         return removeUnfinishedLeftovers(new Directories(metadata).getCFDirectories());
 -        removeUnfinishedLeftovers(new Directories(metadata, ColumnFamilyStore.getInitialDirectories()).getCFDirectories());
++        return removeUnfinishedLeftovers(new Directories(metadata, ColumnFamilyStore.getInitialDirectories()).getCFDirectories());
      }
  
      @VisibleForTesting


[2/6] cassandra git commit: fixing Directories instantiations where CFS.initialDirectories should be used

Posted by ja...@apache.org.
fixing Directories instantiations where CFS.initialDirectories should be used

Patch by Blake Eggleston; reviewed by tjake for CASSANDRA-11849


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

Branch: refs/heads/cassandra-3.7
Commit: 7eb464734b0732ab3c6cd2a5c3409085c81f95a7
Parents: 6932bbd
Author: Blake Eggleston <bd...@gmail.com>
Authored: Wed May 25 09:09:22 2016 -0700
Committer: T Jake Luciani <ja...@apache.org>
Committed: Wed Jun 1 15:54:07 2016 -0400

----------------------------------------------------------------------
 CHANGES.txt                                                    | 1 +
 src/java/org/apache/cassandra/db/ColumnFamilyStore.java        | 2 +-
 src/java/org/apache/cassandra/db/lifecycle/LogTransaction.java | 3 ++-
 src/java/org/apache/cassandra/tools/StandaloneSSTableUtil.java | 3 ++-
 4 files changed, 6 insertions(+), 3 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cassandra/blob/7eb46473/CHANGES.txt
----------------------------------------------------------------------
diff --git a/CHANGES.txt b/CHANGES.txt
index a59dff1..0cafa83 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -1,4 +1,5 @@
 3.0.7
+ * Fix Directories instantiations where CFS.initialDirectories should be used (CASSANDRA-11849)
  * Avoid referencing DatabaseDescriptor in AbstractType (CASSANDRA-11912)
  * Fix sstables not being protected from removal during index build (CASSANDRA-11905)
  * cqlsh: Suppress stack trace from Read/WriteFailures (CASSANDRA-11032)

http://git-wip-us.apache.org/repos/asf/cassandra/blob/7eb46473/src/java/org/apache/cassandra/db/ColumnFamilyStore.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/db/ColumnFamilyStore.java b/src/java/org/apache/cassandra/db/ColumnFamilyStore.java
index 7ca6d96..3264327 100644
--- a/src/java/org/apache/cassandra/db/ColumnFamilyStore.java
+++ b/src/java/org/apache/cassandra/db/ColumnFamilyStore.java
@@ -580,7 +580,7 @@ public class ColumnFamilyStore implements ColumnFamilyStoreMBean
      */
     public static void scrubDataDirectories(CFMetaData metadata)
     {
-        Directories directories = new Directories(metadata);
+        Directories directories = new Directories(metadata, initialDirectories);
 
          // clear ephemeral snapshots that were not properly cleared last session (CASSANDRA-7357)
         clearEphemeralSnapshots(directories);

http://git-wip-us.apache.org/repos/asf/cassandra/blob/7eb46473/src/java/org/apache/cassandra/db/lifecycle/LogTransaction.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/db/lifecycle/LogTransaction.java b/src/java/org/apache/cassandra/db/lifecycle/LogTransaction.java
index ce76165..b34ca60 100644
--- a/src/java/org/apache/cassandra/db/lifecycle/LogTransaction.java
+++ b/src/java/org/apache/cassandra/db/lifecycle/LogTransaction.java
@@ -32,6 +32,7 @@ import org.slf4j.LoggerFactory;
 
 import org.apache.cassandra.concurrent.ScheduledExecutors;
 import org.apache.cassandra.config.CFMetaData;
+import org.apache.cassandra.db.ColumnFamilyStore;
 import org.apache.cassandra.db.Directories;
 import org.apache.cassandra.db.SystemKeyspace;
 import org.apache.cassandra.db.compaction.OperationType;
@@ -385,7 +386,7 @@ class LogTransaction extends Transactional.AbstractTransactional implements Tran
      */
     static void removeUnfinishedLeftovers(CFMetaData metadata)
     {
-        removeUnfinishedLeftovers(new Directories(metadata).getCFDirectories());
+        removeUnfinishedLeftovers(new Directories(metadata, ColumnFamilyStore.getInitialDirectories()).getCFDirectories());
     }
 
     @VisibleForTesting

http://git-wip-us.apache.org/repos/asf/cassandra/blob/7eb46473/src/java/org/apache/cassandra/tools/StandaloneSSTableUtil.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/tools/StandaloneSSTableUtil.java b/src/java/org/apache/cassandra/tools/StandaloneSSTableUtil.java
index 6e2be1d..7aa07d0 100644
--- a/src/java/org/apache/cassandra/tools/StandaloneSSTableUtil.java
+++ b/src/java/org/apache/cassandra/tools/StandaloneSSTableUtil.java
@@ -20,6 +20,7 @@ package org.apache.cassandra.tools;
 
 import org.apache.cassandra.config.CFMetaData;
 import org.apache.cassandra.config.Schema;
+import org.apache.cassandra.db.ColumnFamilyStore;
 import org.apache.cassandra.db.Directories;
 import org.apache.cassandra.db.lifecycle.LifecycleTransaction;
 import org.apache.cassandra.utils.OutputHandler;
@@ -81,7 +82,7 @@ public class StandaloneSSTableUtil
 
     private static void listFiles(Options options, CFMetaData metadata, OutputHandler handler) throws IOException
     {
-        Directories directories = new Directories(metadata);
+        Directories directories = new Directories(metadata, ColumnFamilyStore.getInitialDirectories());
 
         for (File dir : directories.getCFDirectories())
         {


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

Posted by ja...@apache.org.
Merge branch 'cassandra-3.0' into cassandra-3.7


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

Branch: refs/heads/trunk
Commit: dbf03103cc72b33b7cc021589255bd492b498907
Parents: c7e086d 7eb4647
Author: T Jake Luciani <ja...@apache.org>
Authored: Wed Jun 1 16:00:11 2016 -0400
Committer: T Jake Luciani <ja...@apache.org>
Committed: Wed Jun 1 16:10:51 2016 -0400

----------------------------------------------------------------------
 CHANGES.txt                                                    | 1 +
 src/java/org/apache/cassandra/db/ColumnFamilyStore.java        | 2 +-
 src/java/org/apache/cassandra/db/lifecycle/LogTransaction.java | 3 ++-
 src/java/org/apache/cassandra/tools/StandaloneSSTableUtil.java | 3 ++-
 4 files changed, 6 insertions(+), 3 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cassandra/blob/dbf03103/CHANGES.txt
----------------------------------------------------------------------
diff --cc CHANGES.txt
index 3ecbdf4,0cafa83..a54f4fd
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@@ -1,8 -1,6 +1,9 @@@
 -3.0.7
 +3.7
 + * Fix race in CompactionStrategyManager's pause/resume (CASSANDRA-11922)
 +Merged from 3.0:
+  * Fix Directories instantiations where CFS.initialDirectories should be used (CASSANDRA-11849)
   * Avoid referencing DatabaseDescriptor in AbstractType (CASSANDRA-11912)
 + * Don't use static dataDirectories field in Directories instances (CASSANDRA-11647)
   * Fix sstables not being protected from removal during index build (CASSANDRA-11905)
   * cqlsh: Suppress stack trace from Read/WriteFailures (CASSANDRA-11032)
   * Remove unneeded code to repair index summaries that have

http://git-wip-us.apache.org/repos/asf/cassandra/blob/dbf03103/src/java/org/apache/cassandra/db/ColumnFamilyStore.java
----------------------------------------------------------------------
diff --cc src/java/org/apache/cassandra/db/ColumnFamilyStore.java
index 4ea883e,3264327..f004ae0
--- a/src/java/org/apache/cassandra/db/ColumnFamilyStore.java
+++ b/src/java/org/apache/cassandra/db/ColumnFamilyStore.java
@@@ -596,9 -578,9 +596,9 @@@ public class ColumnFamilyStore implemen
       * Removes unnecessary files from the cf directory at startup: these include temp files, orphans, zero-length files
       * and compacted sstables. Files that cannot be recognized will be ignored.
       */
 -    public static void scrubDataDirectories(CFMetaData metadata)
 +    public static void scrubDataDirectories(CFMetaData metadata) throws StartupException
      {
-         Directories directories = new Directories(metadata);
+         Directories directories = new Directories(metadata, initialDirectories);
  
           // clear ephemeral snapshots that were not properly cleared last session (CASSANDRA-7357)
          clearEphemeralSnapshots(directories);

http://git-wip-us.apache.org/repos/asf/cassandra/blob/dbf03103/src/java/org/apache/cassandra/db/lifecycle/LogTransaction.java
----------------------------------------------------------------------
diff --cc src/java/org/apache/cassandra/db/lifecycle/LogTransaction.java
index b441454,b34ca60..bfd9739
--- a/src/java/org/apache/cassandra/db/lifecycle/LogTransaction.java
+++ b/src/java/org/apache/cassandra/db/lifecycle/LogTransaction.java
@@@ -380,22 -379,14 +381,22 @@@ class LogTransaction extends Transactio
      protected void doPrepare() { }
  
      /**
 -     * Called on startup to scan existing folders for any unfinished leftovers of
 -     * operations that were ongoing when the process exited. Also called by the standalone
 -     * sstableutil tool when the cleanup option is specified, @see StandaloneSSTableUtil.
 +     * Removes any leftovers from unifinished transactions as indicated by any transaction log files that
 +     * are found in the table directories. This means that any old sstable files for transactions that were committed,
 +     * or any new sstable files for transactions that were aborted or still in progress, should be removed *if
 +     * it is safe to do so*. Refer to the checks in LogFile.verify for further details on the safety checks
 +     * before removing transaction leftovers and refer to the comments at the beginning of this file or in NEWS.txt
 +     * for further details on transaction logs.
 +     *
 +     * This method is called on startup and by the standalone sstableutil tool when the cleanup option is specified,
 +     * @see StandaloneSSTableUtil.
 +     *
 +     * @return true if the leftovers of all transaction logs found were removed, false otherwise.
       *
       */
 -    static void removeUnfinishedLeftovers(CFMetaData metadata)
 +    static boolean removeUnfinishedLeftovers(CFMetaData metadata)
      {
-         return removeUnfinishedLeftovers(new Directories(metadata).getCFDirectories());
 -        removeUnfinishedLeftovers(new Directories(metadata, ColumnFamilyStore.getInitialDirectories()).getCFDirectories());
++        return removeUnfinishedLeftovers(new Directories(metadata, ColumnFamilyStore.getInitialDirectories()).getCFDirectories());
      }
  
      @VisibleForTesting