You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by ma...@apache.org on 2013/09/13 09:19:30 UTC
git commit: Make standalone scrubber handle both old and new style
leveled manifest.
Updated Branches:
refs/heads/cassandra-2.0 c7881170b -> fa70e064c
Make standalone scrubber handle both old and new style leveled manifest.
Patch by marcuse, reviewed by jbellis for CASSANDRA-6005
Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/fa70e064
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/fa70e064
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/fa70e064
Branch: refs/heads/cassandra-2.0
Commit: fa70e064c41b13c1528359485c0e2bffcf3b23f6
Parents: c788117
Author: Marcus Eriksson <ma...@spotify.com>
Authored: Fri Sep 13 09:15:24 2013 +0200
Committer: Marcus Eriksson <ma...@spotify.com>
Committed: Fri Sep 13 09:18:21 2013 +0200
----------------------------------------------------------------------
CHANGES.txt | 2 ++
src/java/org/apache/cassandra/tools/StandaloneScrubber.java | 9 +++++++--
2 files changed, 9 insertions(+), 2 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cassandra/blob/fa70e064/CHANGES.txt
----------------------------------------------------------------------
diff --git a/CHANGES.txt b/CHANGES.txt
index 053eb70..814029d 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -13,6 +13,8 @@
* Improve native protocol serialization (CASSANDRA-5664)
* Upgrade Thrift to 0.9.1 (CASSANDRA-5923)
* Require superuser status for adding triggers (CASSANDRA-5963)
+ * Make standalone scrubber handle old and new style leveled manifest
+ (CASSANDRA-6005)
Merged from 1.2:
1.2.10
* Fix possible divide-by-zero in HHOM (CASSANDRA-5990)
http://git-wip-us.apache.org/repos/asf/cassandra/blob/fa70e064/src/java/org/apache/cassandra/tools/StandaloneScrubber.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/tools/StandaloneScrubber.java b/src/java/org/apache/cassandra/tools/StandaloneScrubber.java
index 4971bbd..780ff5b 100644
--- a/src/java/org/apache/cassandra/tools/StandaloneScrubber.java
+++ b/src/java/org/apache/cassandra/tools/StandaloneScrubber.java
@@ -28,6 +28,7 @@ import org.apache.cassandra.config.Schema;
import org.apache.cassandra.db.ColumnFamilyStore;
import org.apache.cassandra.db.Directories;
import org.apache.cassandra.db.Keyspace;
+import org.apache.cassandra.db.compaction.LeveledCompactionStrategy;
import org.apache.cassandra.db.compaction.LeveledManifest;
import org.apache.cassandra.db.compaction.Scrubber;
import org.apache.cassandra.io.sstable.*;
@@ -97,13 +98,17 @@ public class StandaloneScrubber
}
System.out.println(String.format("Pre-scrub sstables snapshotted into snapshot %s", snapshotName));
- // If leveled, load the manifest
- LeveledManifest manifest = null;
+ // if old-style json manifest, snapshot it
if (cfs.directories.tryGetLeveledManifest() != null)
{
cfs.directories.snapshotLeveledManifest(snapshotName);
System.out.println(String.format("Leveled manifest snapshotted into snapshot %s", snapshotName));
+ }
+ LeveledManifest manifest = null;
+ // If leveled, load the manifest
+ if (cfs.getCompactionStrategy() instanceof LeveledCompactionStrategy)
+ {
int maxSizeInMB = (int)((cfs.getCompactionStrategy().getMaxSSTableSize()) / (1024L * 1024L));
manifest = LeveledManifest.create(cfs, maxSizeInMB, sstables);
}