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:50 UTC
[5/6] cassandra git commit: Merge branch 'cassandra-3.0' into
cassandra-3.7
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