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