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 2015/12/04 14:29:15 UTC
[1/2] cassandra git commit: Fix issue with data dir migration on
upgrade
Repository: cassandra
Updated Branches:
refs/heads/cassandra-3.1 fd5cb43da -> d1a596a4a
Fix issue with data dir migration on upgrade
Patch by Stefania; reviewed by marcuse for CASSANDRA-10788
Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/d0da9e76
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/d0da9e76
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/d0da9e76
Branch: refs/heads/cassandra-3.1
Commit: d0da9e7612e6fb94fea8298a88215783a8125311
Parents: 1e978df
Author: Stefania Alborghetti <st...@datastax.com>
Authored: Wed Dec 2 09:45:34 2015 +0800
Committer: Marcus Eriksson <ma...@apache.org>
Committed: Fri Dec 4 14:22:26 2015 +0100
----------------------------------------------------------------------
CHANGES.txt | 1 +
.../org/apache/cassandra/db/SystemKeyspace.java | 10 +++++---
.../apache/cassandra/db/SystemKeyspaceTest.java | 27 ++++++++++++++++++--
3 files changed, 33 insertions(+), 5 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cassandra/blob/d0da9e76/CHANGES.txt
----------------------------------------------------------------------
diff --git a/CHANGES.txt b/CHANGES.txt
index 2527c43..520afff 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -1,4 +1,5 @@
3.0.1
+ * Fix issue with datadir migration on upgrade (CASSANDRA-10788)
* Fix bug with range tombstones on reverse queries and test coverage for
AbstractBTreePartition (CASSANDRA-10059)
* Remove 64k limit on collection elements (CASSANDRA-10374)
http://git-wip-us.apache.org/repos/asf/cassandra/blob/d0da9e76/src/java/org/apache/cassandra/db/SystemKeyspace.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/db/SystemKeyspace.java b/src/java/org/apache/cassandra/db/SystemKeyspace.java
index 83c8c1c..8a27c9d 100644
--- a/src/java/org/apache/cassandra/db/SystemKeyspace.java
+++ b/src/java/org/apache/cassandra/db/SystemKeyspace.java
@@ -1324,14 +1324,18 @@ public final class SystemKeyspace
Iterable<String> dirs = Arrays.asList(DatabaseDescriptor.getAllDataFileLocations());
for (String dataDir : dirs)
{
- logger.trace("Checking directory {} for old files", dataDir);
+ logger.trace("Checking {} for old files", dataDir);
File dir = new File(dataDir);
assert dir.exists() : dir + " should have been created by startup checks";
- for (File ksdir : dir.listFiles((d, n) -> d.isDirectory()))
+ for (File ksdir : dir.listFiles((d, n) -> new File(d, n).isDirectory()))
{
- for (File cfdir : ksdir.listFiles((d, n) -> d.isDirectory()))
+ logger.trace("Checking {} for old files", ksdir);
+
+ for (File cfdir : ksdir.listFiles((d, n) -> new File(d, n).isDirectory()))
{
+ logger.trace("Checking {} for old files", cfdir);
+
if (Descriptor.isLegacyFile(cfdir))
{
FileUtils.deleteRecursive(cfdir);
http://git-wip-us.apache.org/repos/asf/cassandra/blob/d0da9e76/test/unit/org/apache/cassandra/db/SystemKeyspaceTest.java
----------------------------------------------------------------------
diff --git a/test/unit/org/apache/cassandra/db/SystemKeyspaceTest.java b/test/unit/org/apache/cassandra/db/SystemKeyspaceTest.java
index 9fc3503..d770610 100644
--- a/test/unit/org/apache/cassandra/db/SystemKeyspaceTest.java
+++ b/test/unit/org/apache/cassandra/db/SystemKeyspaceTest.java
@@ -153,6 +153,29 @@ public class SystemKeyspaceTest
}
@Test
+ public void testMigrateEmptyDataDirs() throws IOException
+ {
+ File dataDir = Paths.get(DatabaseDescriptor.getAllDataFileLocations()[0]).toFile();
+ if (new File(dataDir, "Emptykeyspace1").exists())
+ FileUtils.deleteDirectory(new File(dataDir, "Emptykeyspace1"));
+ assertTrue(new File(dataDir, "Emptykeyspace1").mkdirs());
+ assertEquals(0, numLegacyFiles());
+ SystemKeyspace.migrateDataDirs();
+ assertEquals(0, numLegacyFiles());
+
+ assertTrue(new File(dataDir, "Emptykeyspace1/table1").mkdirs());
+ assertEquals(0, numLegacyFiles());
+ SystemKeyspace.migrateDataDirs();
+ assertEquals(0, numLegacyFiles());
+
+ assertTrue(new File(dataDir, "Emptykeyspace1/wrong_file").createNewFile());
+ assertEquals(0, numLegacyFiles());
+ SystemKeyspace.migrateDataDirs();
+ assertEquals(0, numLegacyFiles());
+
+ }
+
+ @Test
public void testMigrateDataDirs_2_1() throws IOException
{
testMigrateDataDirs("2.1");
@@ -185,9 +208,9 @@ public class SystemKeyspaceTest
for (String dataDir : dirs)
{
File dir = new File(dataDir);
- for (File ksdir : dir.listFiles((d, n) -> d.isDirectory()))
+ for (File ksdir : dir.listFiles((d, n) -> new File(d, n).isDirectory()))
{
- for (File cfdir : ksdir.listFiles((d, n) -> d.isDirectory()))
+ for (File cfdir : ksdir.listFiles((d, n) -> new File(d, n).isDirectory()))
{
if (Descriptor.isLegacyFile(cfdir))
{
[2/2] cassandra git commit: Merge branch 'cassandra-3.0' into
cassandra-3.1
Posted by ma...@apache.org.
Merge branch 'cassandra-3.0' into cassandra-3.1
Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/d1a596a4
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/d1a596a4
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/d1a596a4
Branch: refs/heads/cassandra-3.1
Commit: d1a596a4ad6717f03917877fc50714bafa55de97
Parents: fd5cb43 d0da9e7
Author: Marcus Eriksson <ma...@apache.org>
Authored: Fri Dec 4 14:27:14 2015 +0100
Committer: Marcus Eriksson <ma...@apache.org>
Committed: Fri Dec 4 14:27:14 2015 +0100
----------------------------------------------------------------------
CHANGES.txt | 1 +
.../org/apache/cassandra/db/SystemKeyspace.java | 10 +++++---
.../apache/cassandra/db/SystemKeyspaceTest.java | 27 ++++++++++++++++++--
3 files changed, 33 insertions(+), 5 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cassandra/blob/d1a596a4/CHANGES.txt
----------------------------------------------------------------------
diff --cc CHANGES.txt
index 7a6076b,520afff..87d2e82
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@@ -1,5 -1,5 +1,6 @@@
-3.0.1
+3.1
+Merged from 3.0:
+ * Fix issue with datadir migration on upgrade (CASSANDRA-10788)
* Fix bug with range tombstones on reverse queries and test coverage for
AbstractBTreePartition (CASSANDRA-10059)
* Remove 64k limit on collection elements (CASSANDRA-10374)