[jira] [Updated] (CASSANDRA-7466) Unit Test Suite Breaks when Run in a Single JVM

2015-12-03 Thread Caleb William Rackliffe (JIRA)

 [ 
https://issues.apache.org/jira/browse/CASSANDRA-7466?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Caleb William Rackliffe updated CASSANDRA-7466:
---
Attachment: (was: trunk-7466.txt)

> Unit Test Suite Breaks when Run in a Single JVM
> ---
>
> Key: CASSANDRA-7466
> URL: https://issues.apache.org/jira/browse/CASSANDRA-7466
> Project: Cassandra
>  Issue Type: Bug
>  Components: Testing
> Environment: MacOS 10.9.3, IntelliJ IDEA 13.1.3, Java 1.7.0_51
>Reporter: Caleb William Rackliffe
>Assignee: Caleb William Rackliffe
>Priority: Minor
>  Labels: unit-test
>
> Note: Instead of picking a version below, I'll simply note that I'm on 
> {{trunk}} at commit {{c027183ea4e901cf1d44e06704f6d78f84405bb4}}
> I pulled down the source and followed 
> http://wiki.apache.org/cassandra/RunningCassandraInIDEA to import C* as an 
> IDEA project. Everything in the tutorial works as it should, but when I tried 
> to run the unit tests in {{test/unit/org.apache.cassandra}}, the suite failed 
> a couple tests in, complaining that it couldn't find the {{system}} keyspace 
> in {{build/test/cassandra/data}}.
> tl;dr static initialization makes it hard to run the unit tests in the same 
> JVM
> The full story is that...
> 1.) When the first test in the suite is run, the {{system}} keyspace is 
> created on disk and in the in-memory schema.
> 2.) Many subsequent tests, like {{BlacklistingCompactionsTest}}, remove the 
> {{system}} keyspace directory (among other things) in {{defineSchema()}} with 
> a call to {{SchemaLoader.prepareServer()}}.
> 3.) While these tests create the keyspaces they require, they do *not* 
> recreate the system keyspace, and so they fail when they force a compaction 
> or perform any other action that goes looking for it.
> You can run the suite with IDEA's class/method forking, and you get a little 
> bit better results, but it still seems like this shouldn't be necessary.
> I guess there are two ways to fix it:
> 1.) We rebuild the system keyspace before for each test.
> 2.) We leave the system keyspace alone.
> I took a hack at #1 in the attached patch. It looks like it to fixes this 
> specific problem, but I'm not super-believable in this codebase yet...



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (CASSANDRA-7466) Unit Test Suite Breaks when Run in a Single JVM

2015-12-03 Thread Caleb William Rackliffe (JIRA)

 [ 
https://issues.apache.org/jira/browse/CASSANDRA-7466?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Caleb William Rackliffe updated CASSANDRA-7466:
---
  Environment: MacOS 10.9.3, IntelliJ IDEA 14, Java 1.8.0_65  (was: MacOS 
10.9.3, IntelliJ IDEA 13.1.3, Java 1.7.0_51)
Reproduced In: 2.1.11
  Description: 
I pulled down the source and followed 
http://wiki.apache.org/cassandra/RunningCassandraInIDEA to import C* as an IDEA 
project. Everything in the tutorial works as it should, but when I tried to run 
the unit tests in {{test/unit/org.apache.cassandra}}, the suite failed a couple 
tests in, complaining that it couldn't find the {{system}} keyspace in 
{{build/test/cassandra/data}}.

tl;dr static initialization makes it hard to run the unit tests in the same JVM

The full story is that...
1.) When the first test in the suite is run, the {{system}} keyspace is created 
on disk and in the in-memory schema.
2.) Many subsequent tests, like {{BlacklistingCompactionsTest}}, remove the 
{{system}} keyspace directory (among other things) in {{defineSchema()}} with a 
call to {{SchemaLoader.prepareServer()}}.
3.) While these tests create the keyspaces they require, they do *not* recreate 
the system keyspace, and so they fail when they force a compaction or perform 
any other action that goes looking for it.

You can run the suite with IDEA's class/method forking, and you get a little 
bit better results, but it still seems like this shouldn't be necessary.

I guess there are two ways to fix it:
1.) We rebuild the system keyspace before for each test.
2.) We leave the system keyspace alone.

I took a hack at #1 in the attached patch. It looks like it to fixes this 
specific problem, but I'm not super-believable in this codebase yet...

  was:
Note: Instead of picking a version below, I'll simply note that I'm on 
{{trunk}} at commit {{c027183ea4e901cf1d44e06704f6d78f84405bb4}}

I pulled down the source and followed 
http://wiki.apache.org/cassandra/RunningCassandraInIDEA to import C* as an IDEA 
project. Everything in the tutorial works as it should, but when I tried to run 
the unit tests in {{test/unit/org.apache.cassandra}}, the suite failed a couple 
tests in, complaining that it couldn't find the {{system}} keyspace in 
{{build/test/cassandra/data}}.

tl;dr static initialization makes it hard to run the unit tests in the same JVM

The full story is that...
1.) When the first test in the suite is run, the {{system}} keyspace is created 
on disk and in the in-memory schema.
2.) Many subsequent tests, like {{BlacklistingCompactionsTest}}, remove the 
{{system}} keyspace directory (among other things) in {{defineSchema()}} with a 
call to {{SchemaLoader.prepareServer()}}.
3.) While these tests create the keyspaces they require, they do *not* recreate 
the system keyspace, and so they fail when they force a compaction or perform 
any other action that goes looking for it.

You can run the suite with IDEA's class/method forking, and you get a little 
bit better results, but it still seems like this shouldn't be necessary.

I guess there are two ways to fix it:
1.) We rebuild the system keyspace before for each test.
2.) We leave the system keyspace alone.

I took a hack at #1 in the attached patch. It looks like it to fixes this 
specific problem, but I'm not super-believable in this codebase yet...


> Unit Test Suite Breaks when Run in a Single JVM
> ---
>
> Key: CASSANDRA-7466
> URL: https://issues.apache.org/jira/browse/CASSANDRA-7466
> Project: Cassandra
>  Issue Type: Bug
>  Components: Testing
> Environment: MacOS 10.9.3, IntelliJ IDEA 14, Java 1.8.0_65
>Reporter: Caleb William Rackliffe
>Assignee: Caleb William Rackliffe
>Priority: Minor
>  Labels: unit-test
>
> I pulled down the source and followed 
> http://wiki.apache.org/cassandra/RunningCassandraInIDEA to import C* as an 
> IDEA project. Everything in the tutorial works as it should, but when I tried 
> to run the unit tests in {{test/unit/org.apache.cassandra}}, the suite failed 
> a couple tests in, complaining that it couldn't find the {{system}} keyspace 
> in {{build/test/cassandra/data}}.
> tl;dr static initialization makes it hard to run the unit tests in the same 
> JVM
> The full story is that...
> 1.) When the first test in the suite is run, the {{system}} keyspace is 
> created on disk and in the in-memory schema.
> 2.) Many subsequent tests, like {{BlacklistingCompactionsTest}}, remove the 
> {{system}} keyspace directory (among other things) in {{defineSchema()}} with 
> a call to {{SchemaLoader.prepareServer()}}.
> 3.) While these tests create the keyspaces they require, they do *not* 
> recreate the system keyspace, and so they fail when they force a compaction 
> or perform any other action 

[jira] [Updated] (CASSANDRA-7466) Unit Test Suite Breaks when Run in a Single JVM

2015-12-03 Thread Caleb William Rackliffe (JIRA)

 [ 
https://issues.apache.org/jira/browse/CASSANDRA-7466?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Caleb William Rackliffe updated CASSANDRA-7466:
---
Description: 
I pulled down the source and followed 
http://wiki.apache.org/cassandra/RunningCassandraInIDEA to import C* as an IDEA 
project. Everything in the tutorial works as it should, but when I tried to run 
the unit tests in {{test/unit/org.apache.cassandra}}, the suite fails a few 
tests in, complaining variously about a hodgepodge of things like:

{noformat}
FSWriteError in 
build/test/cassandra/data/cql_test_keyspace/table_1-0fd6a7109a1311e586ed079249e818e0/backups/cql_test_keyspace-table_1.some_index-ka-5-Summary.db
at 
org.apache.cassandra.io.util.FileUtils.deleteWithConfirm(FileUtils.java:135)
at 
org.apache.cassandra.io.util.FileUtils.deleteRecursive(FileUtils.java:381)
at 
org.apache.cassandra.io.util.FileUtils.deleteRecursive(FileUtils.java:377)
at 
org.apache.cassandra.io.util.FileUtils.deleteRecursive(FileUtils.java:377)
at 
org.apache.cassandra.io.util.FileUtils.deleteRecursive(FileUtils.java:377)
at 
org.apache.cassandra.io.util.FileUtils.deleteRecursive(FileUtils.java:377)
at org.apache.cassandra.SchemaLoader.cleanup(SchemaLoader.java:454)
at 
org.apache.cassandra.SchemaLoader.cleanupAndLeaveDirs(SchemaLoader.java:429)
at org.apache.cassandra.SchemaLoader.prepareServer(SchemaLoader.java:85)
at org.apache.cassandra.SchemaLoader.loadSchema(SchemaLoader.java:61)
at org.apache.cassandra.SchemaLoader.loadSchema(SchemaLoader.java:56)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at 
org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:44)
at 
org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:15)
at 
org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:41)
at 
org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:27)
at 
org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:31)
at org.junit.runners.ParentRunner.run(ParentRunner.java:220)
at org.junit.runners.Suite.runChild(Suite.java:117)
at org.junit.runners.Suite.runChild(Suite.java:24)
at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:180)
at org.junit.runners.ParentRunner.access$000(ParentRunner.java:41)
at org.junit.runners.ParentRunner$1.evaluate(ParentRunner.java:173)
at 
org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:28)
at 
org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:31)
at org.junit.runners.ParentRunner.run(ParentRunner.java:220)
at org.junit.runner.JUnitCore.run(JUnitCore.java:159)
at 
com.intellij.junit4.JUnit4IdeaTestRunner.startRunnerWithArgs(JUnit4IdeaTestRunner.java:78)
at 
com.intellij.rt.execution.junit.JUnitStarter.prepareStreamsAndStart(JUnitStarter.java:212)
at 
com.intellij.rt.execution.junit.JUnitStarter.main(JUnitStarter.java:68)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at com.intellij.rt.execution.application.AppMain.main(AppMain.java:140)
Caused by: java.nio.file.NoSuchFileException: 
build/test/cassandra/data/cql_test_keyspace/table_1-0fd6a7109a1311e586ed079249e818e0/backups/cql_test_keyspace-table_1.some_index-ka-5-Summary.db
at 
sun.nio.fs.UnixException.translateToIOException(UnixException.java:86)
at sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java:102)
at sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java:107)
at 
sun.nio.fs.UnixFileSystemProvider.implDelete(UnixFileSystemProvider.java:244)
at 
sun.nio.fs.AbstractFileSystemProvider.delete(AbstractFileSystemProvider.java:103)
at java.nio.file.Files.delete(Files.java:1079)
at 
org.apache.cassandra.io.util.FileUtils.deleteWithConfirm(FileUtils.java:131)
{noformat}
...and...
{noformat}
org.apache.cassandra.exceptions.AlreadyExistsException: Cannot add existing 
keyspace "Keyspace1"
at 
org.apache.cassandra.service.MigrationManager.announceNewKeyspace(MigrationManager.java:228)
at 
org.apache.cassandra.service.MigrationManager.announceNewKeyspace(MigrationManager.java:220)
at 
org.apache.cassandra.service.MigrationManager.announceNewKeyspace(MigrationManager.java:215)
at org.apache.cassandra.SchemaLoader.loadSchema(SchemaLoader.java:70)
at 

[jira] [Updated] (CASSANDRA-7466) Unit Test Suite Breaks when Run in a Single JVM

2014-09-18 Thread Aleksey Yeschenko (JIRA)

 [ 
https://issues.apache.org/jira/browse/CASSANDRA-7466?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Aleksey Yeschenko updated CASSANDRA-7466:
-
Reviewer: Branimir Lambov  (was: Aleksey Yeschenko)

 Unit Test Suite Breaks when Run in a Single JVM
 ---

 Key: CASSANDRA-7466
 URL: https://issues.apache.org/jira/browse/CASSANDRA-7466
 Project: Cassandra
  Issue Type: Bug
  Components: Tests
 Environment: MacOS 10.9.3, IntelliJ IDEA 13.1.3, Java 1.7.0_51
Reporter: Caleb William Rackliffe
Assignee: Caleb William Rackliffe
Priority: Minor
  Labels: unit-test
 Attachments: trunk-7466.txt


 Note: Instead of picking a version below, I'll simply note that I'm on 
 {{trunk}} at commit {{c027183ea4e901cf1d44e06704f6d78f84405bb4}}
 I pulled down the source and followed 
 http://wiki.apache.org/cassandra/RunningCassandraInIDEA to import C* as an 
 IDEA project. Everything in the tutorial works as it should, but when I tried 
 to run the unit tests in {{test/unit/org.apache.cassandra}}, the suite failed 
 a couple tests in, complaining that it couldn't find the {{system}} keyspace 
 in {{build/test/cassandra/data}}.
 tl;dr static initialization makes it hard to run the unit tests in the same 
 JVM
 The full story is that...
 1.) When the first test in the suite is run, the {{system}} keyspace is 
 created on disk and in the in-memory schema.
 2.) Many subsequent tests, like {{BlacklistingCompactionsTest}}, remove the 
 {{system}} keyspace directory (among other things) in {{defineSchema()}} with 
 a call to {{SchemaLoader.prepareServer()}}.
 3.) While these tests create the keyspaces they require, they do *not* 
 recreate the system keyspace, and so they fail when they force a compaction 
 or perform any other action that goes looking for it.
 You can run the suite with IDEA's class/method forking, and you get a little 
 bit better results, but it still seems like this shouldn't be necessary.
 I guess there are two ways to fix it:
 1.) We rebuild the system keyspace before for each test.
 2.) We leave the system keyspace alone.
 I took a hack at #1 in the attached patch. It looks like it to fixes this 
 specific problem, but I'm not super-believable in this codebase yet...



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (CASSANDRA-7466) Unit Test Suite Breaks when Run in a Single JVM

2014-08-15 Thread Jonathan Ellis (JIRA)

 [ 
https://issues.apache.org/jira/browse/CASSANDRA-7466?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jonathan Ellis updated CASSANDRA-7466:
--

Reviewer: Aleksey Yeschenko  (was: Joshua McKenzie)

 Unit Test Suite Breaks when Run in a Single JVM
 ---

 Key: CASSANDRA-7466
 URL: https://issues.apache.org/jira/browse/CASSANDRA-7466
 Project: Cassandra
  Issue Type: Bug
  Components: Tests
 Environment: MacOS 10.9.3, IntelliJ IDEA 13.1.3, Java 1.7.0_51
Reporter: Caleb William Rackliffe
Assignee: Caleb William Rackliffe
Priority: Minor
  Labels: unit-test
 Attachments: trunk-7466.txt


 Note: Instead of picking a version below, I'll simply note that I'm on 
 {{trunk}} at commit {{c027183ea4e901cf1d44e06704f6d78f84405bb4}}
 I pulled down the source and followed 
 http://wiki.apache.org/cassandra/RunningCassandraInIDEA to import C* as an 
 IDEA project. Everything in the tutorial works as it should, but when I tried 
 to run the unit tests in {{test/unit/org.apache.cassandra}}, the suite failed 
 a couple tests in, complaining that it couldn't find the {{system}} keyspace 
 in {{build/test/cassandra/data}}.
 tl;dr static initialization makes it hard to run the unit tests in the same 
 JVM
 The full story is that...
 1.) When the first test in the suite is run, the {{system}} keyspace is 
 created on disk and in the in-memory schema.
 2.) Many subsequent tests, like {{BlacklistingCompactionsTest}}, remove the 
 {{system}} keyspace directory (among other things) in {{defineSchema()}} with 
 a call to {{SchemaLoader.prepareServer()}}.
 3.) While these tests create the keyspaces they require, they do *not* 
 recreate the system keyspace, and so they fail when they force a compaction 
 or perform any other action that goes looking for it.
 You can run the suite with IDEA's class/method forking, and you get a little 
 bit better results, but it still seems like this shouldn't be necessary.
 I guess there are two ways to fix it:
 1.) We rebuild the system keyspace before for each test.
 2.) We leave the system keyspace alone.
 I took a hack at #1 in the attached patch. It looks like it to fixes this 
 specific problem, but I'm not super-believable in this codebase yet...



--
This message was sent by Atlassian JIRA
(v6.2#6252)


[jira] [Updated] (CASSANDRA-7466) Unit Test Suite Breaks when Run in a Single JVM

2014-08-06 Thread Jonathan Ellis (JIRA)

 [ 
https://issues.apache.org/jira/browse/CASSANDRA-7466?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jonathan Ellis updated CASSANDRA-7466:
--

Reviewer: Joshua McKenzie
Assignee: Caleb William Rackliffe  (was: Ryan McGuire)

 Unit Test Suite Breaks when Run in a Single JVM
 ---

 Key: CASSANDRA-7466
 URL: https://issues.apache.org/jira/browse/CASSANDRA-7466
 Project: Cassandra
  Issue Type: Bug
  Components: Tests
 Environment: MacOS 10.9.3, IntelliJ IDEA 13.1.3, Java 1.7.0_51
Reporter: Caleb William Rackliffe
Assignee: Caleb William Rackliffe
Priority: Minor
  Labels: unit-test
 Attachments: trunk-7466.txt


 Note: Instead of picking a version below, I'll simply note that I'm on 
 {{trunk}} at commit {{c027183ea4e901cf1d44e06704f6d78f84405bb4}}
 I pulled down the source and followed 
 http://wiki.apache.org/cassandra/RunningCassandraInIDEA to import C* as an 
 IDEA project. Everything in the tutorial works as it should, but when I tried 
 to run the unit tests in {{test/unit/org.apache.cassandra}}, the suite failed 
 a couple tests in, complaining that it couldn't find the {{system}} keyspace 
 in {{build/test/cassandra/data}}.
 tl;dr static initialization makes it hard to run the unit tests in the same 
 JVM
 The full story is that...
 1.) When the first test in the suite is run, the {{system}} keyspace is 
 created on disk and in the in-memory schema.
 2.) Many subsequent tests, like {{BlacklistingCompactionsTest}}, remove the 
 {{system}} keyspace directory (among other things) in {{defineSchema()}} with 
 a call to {{SchemaLoader.prepareServer()}}.
 3.) While these tests create the keyspaces they require, they do *not* 
 recreate the system keyspace, and so they fail when they force a compaction 
 or perform any other action that goes looking for it.
 You can run the suite with IDEA's class/method forking, and you get a little 
 bit better results, but it still seems like this shouldn't be necessary.
 I guess there are two ways to fix it:
 1.) We rebuild the system keyspace before for each test.
 2.) We leave the system keyspace alone.
 I took a hack at #1 in the attached patch. It looks like it to fixes this 
 specific problem, but I'm not super-believable in this codebase yet...



--
This message was sent by Atlassian JIRA
(v6.2#6252)


[jira] [Updated] (CASSANDRA-7466) Unit Test Suite Breaks when Run in a Single JVM

2014-07-24 Thread Michael Shuler (JIRA)

 [ 
https://issues.apache.org/jira/browse/CASSANDRA-7466?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Michael Shuler updated CASSANDRA-7466:
--

Labels: unit-test  (was: test test-fail testcase tests testsuite)

 Unit Test Suite Breaks when Run in a Single JVM
 ---

 Key: CASSANDRA-7466
 URL: https://issues.apache.org/jira/browse/CASSANDRA-7466
 Project: Cassandra
  Issue Type: Bug
  Components: Tests
 Environment: MacOS 10.9.3, IntelliJ IDEA 13.1.3, Java 1.7.0_51
Reporter: Caleb William Rackliffe
Priority: Minor
  Labels: unit-test
 Attachments: trunk-7466.txt


 Note: Instead of picking a version below, I'll simply note that I'm on 
 {{trunk}} at commit {{c027183ea4e901cf1d44e06704f6d78f84405bb4}}
 I pulled down the source and followed 
 http://wiki.apache.org/cassandra/RunningCassandraInIDEA to import C* as an 
 IDEA project. Everything in the tutorial works as it should, but when I tried 
 to run the unit tests in {{test/unit/org.apache.cassandra}}, the suite failed 
 a couple tests in, complaining that it couldn't find the {{system}} keyspace 
 in {{build/test/cassandra/data}}.
 tl;dr static initialization makes it hard to run the unit tests in the same 
 JVM
 The full story is that...
 1.) When the first test in the suite is run, the {{system}} keyspace is 
 created on disk and in the in-memory schema.
 2.) Many subsequent tests, like {{BlacklistingCompactionsTest}}, remove the 
 {{system}} keyspace directory (among other things) in {{defineSchema()}} with 
 a call to {{SchemaLoader.prepareServer()}}.
 3.) While these tests create the keyspaces they require, they do *not* 
 recreate the system keyspace, and so they fail when they force a compaction 
 or perform any other action that goes looking for it.
 You can run the suite with IDEA's class/method forking, and you get a little 
 bit better results, but it still seems like this shouldn't be necessary.
 I guess there are two ways to fix it:
 1.) We rebuild the system keyspace before for each test.
 2.) We leave the system keyspace alone.
 I took a hack at #1 in the attached patch. It looks like it to fixes this 
 specific problem, but I'm not super-believable in this codebase yet...



--
This message was sent by Atlassian JIRA
(v6.2#6252)


[jira] [Updated] (CASSANDRA-7466) Unit Test Suite Breaks when Run in a Single JVM

2014-07-24 Thread Michael Shuler (JIRA)

 [ 
https://issues.apache.org/jira/browse/CASSANDRA-7466?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Michael Shuler updated CASSANDRA-7466:
--

Assignee: Ryan McGuire

 Unit Test Suite Breaks when Run in a Single JVM
 ---

 Key: CASSANDRA-7466
 URL: https://issues.apache.org/jira/browse/CASSANDRA-7466
 Project: Cassandra
  Issue Type: Bug
  Components: Tests
 Environment: MacOS 10.9.3, IntelliJ IDEA 13.1.3, Java 1.7.0_51
Reporter: Caleb William Rackliffe
Assignee: Ryan McGuire
Priority: Minor
  Labels: unit-test
 Attachments: trunk-7466.txt


 Note: Instead of picking a version below, I'll simply note that I'm on 
 {{trunk}} at commit {{c027183ea4e901cf1d44e06704f6d78f84405bb4}}
 I pulled down the source and followed 
 http://wiki.apache.org/cassandra/RunningCassandraInIDEA to import C* as an 
 IDEA project. Everything in the tutorial works as it should, but when I tried 
 to run the unit tests in {{test/unit/org.apache.cassandra}}, the suite failed 
 a couple tests in, complaining that it couldn't find the {{system}} keyspace 
 in {{build/test/cassandra/data}}.
 tl;dr static initialization makes it hard to run the unit tests in the same 
 JVM
 The full story is that...
 1.) When the first test in the suite is run, the {{system}} keyspace is 
 created on disk and in the in-memory schema.
 2.) Many subsequent tests, like {{BlacklistingCompactionsTest}}, remove the 
 {{system}} keyspace directory (among other things) in {{defineSchema()}} with 
 a call to {{SchemaLoader.prepareServer()}}.
 3.) While these tests create the keyspaces they require, they do *not* 
 recreate the system keyspace, and so they fail when they force a compaction 
 or perform any other action that goes looking for it.
 You can run the suite with IDEA's class/method forking, and you get a little 
 bit better results, but it still seems like this shouldn't be necessary.
 I guess there are two ways to fix it:
 1.) We rebuild the system keyspace before for each test.
 2.) We leave the system keyspace alone.
 I took a hack at #1 in the attached patch. It looks like it to fixes this 
 specific problem, but I'm not super-believable in this codebase yet...



--
This message was sent by Atlassian JIRA
(v6.2#6252)


[jira] [Updated] (CASSANDRA-7466) Unit Test Suite Breaks when Run in a Single JVM

2014-06-28 Thread Caleb William Rackliffe (JIRA)

 [ 
https://issues.apache.org/jira/browse/CASSANDRA-7466?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Caleb William Rackliffe updated CASSANDRA-7466:
---

Attachment: trunk-7466.txt

 Unit Test Suite Breaks when Run in a Single JVM
 ---

 Key: CASSANDRA-7466
 URL: https://issues.apache.org/jira/browse/CASSANDRA-7466
 Project: Cassandra
  Issue Type: Bug
  Components: Tests
 Environment: MacOS 10.9.3, IntelliJ IDEA 13.1.3, Java 1.7.0_51
Reporter: Caleb William Rackliffe
Priority: Minor
  Labels: test, test-fail, testcase, tests, testsuite
 Attachments: trunk-7466.txt


 Note: Instead of picking a version below, I'll simply note that I'm on 
 {{trunk}} at commit {{c027183ea4e901cf1d44e06704f6d78f84405bb4}}
 I pulled down the source and followed 
 http://wiki.apache.org/cassandra/RunningCassandraInIDEA to import C* as an 
 IDEA project. Everything in the tutorial works as it should, but when I tried 
 to run the unit tests in {{test/unit/org.apache.cassandra}}, the suite failed 
 a couple tests in, complaining that it couldn't find the {{system}} keyspace 
 in {{build/test/cassandra/data.
 tl;dr static initialization makes it hard to run the unit tests in the same 
 JVM
 The full story is that...
 1.) When the first test in the suite is run, the {{system}} keyspace is 
 created on disk and in the in-memory schema.
 2.) Many subsequent tests, like {{BlacklistingCompactionsTest}}, remove the 
 {{system}} keyspace directory (among other things) in {{defineSchema()}} with 
 a call to {{SchemaLoader.prepareServer()}}.
 3.) While these tests create the keyspaces they require, they do *not* 
 recreate the system keyspace, and so they fail when they force a compaction 
 or perform any other action that goes looking for it.
 I guess there are two ways to fix this:
 1.) We rebuild the system keyspace before for each test.
 2.) We leave the system keyspace alone.
 I took a hack at #1 in the attached patch. It looks like it to fixes this 
 specific problem, but I'm not super-believable in this codebase yet...



--
This message was sent by Atlassian JIRA
(v6.2#6252)


[jira] [Updated] (CASSANDRA-7466) Unit Test Suite Breaks when Run in a Single JVM

2014-06-28 Thread Caleb William Rackliffe (JIRA)

 [ 
https://issues.apache.org/jira/browse/CASSANDRA-7466?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Caleb William Rackliffe updated CASSANDRA-7466:
---

Description: 
Note: Instead of picking a version below, I'll simply note that I'm on 
{{trunk}} at commit {{c027183ea4e901cf1d44e06704f6d78f84405bb4}}

I pulled down the source and followed 
http://wiki.apache.org/cassandra/RunningCassandraInIDEA to import C* as an IDEA 
project. Everything in the tutorial works as it should, but when I tried to run 
the unit tests in {{test/unit/org.apache.cassandra}}, the suite failed a couple 
tests in, complaining that it couldn't find the {{system}} keyspace in 
{{build/test/cassandra/data}}.

tl;dr static initialization makes it hard to run the unit tests in the same JVM

The full story is that...
1.) When the first test in the suite is run, the {{system}} keyspace is created 
on disk and in the in-memory schema.
2.) Many subsequent tests, like {{BlacklistingCompactionsTest}}, remove the 
{{system}} keyspace directory (among other things) in {{defineSchema()}} with a 
call to {{SchemaLoader.prepareServer()}}.
3.) While these tests create the keyspaces they require, they do *not* recreate 
the system keyspace, and so they fail when they force a compaction or perform 
any other action that goes looking for it.

I guess there are two ways to fix this:
1.) We rebuild the system keyspace before for each test.
2.) We leave the system keyspace alone.

I took a hack at #1 in the attached patch. It looks like it to fixes this 
specific problem, but I'm not super-believable in this codebase yet...

  was:
Note: Instead of picking a version below, I'll simply note that I'm on 
{{trunk}} at commit {{c027183ea4e901cf1d44e06704f6d78f84405bb4}}

I pulled down the source and followed 
http://wiki.apache.org/cassandra/RunningCassandraInIDEA to import C* as an IDEA 
project. Everything in the tutorial works as it should, but when I tried to run 
the unit tests in {{test/unit/org.apache.cassandra}}, the suite failed a couple 
tests in, complaining that it couldn't find the {{system}} keyspace in 
{{build/test/cassandra/data.

tl;dr static initialization makes it hard to run the unit tests in the same JVM

The full story is that...
1.) When the first test in the suite is run, the {{system}} keyspace is created 
on disk and in the in-memory schema.
2.) Many subsequent tests, like {{BlacklistingCompactionsTest}}, remove the 
{{system}} keyspace directory (among other things) in {{defineSchema()}} with a 
call to {{SchemaLoader.prepareServer()}}.
3.) While these tests create the keyspaces they require, they do *not* recreate 
the system keyspace, and so they fail when they force a compaction or perform 
any other action that goes looking for it.

I guess there are two ways to fix this:
1.) We rebuild the system keyspace before for each test.
2.) We leave the system keyspace alone.

I took a hack at #1 in the attached patch. It looks like it to fixes this 
specific problem, but I'm not super-believable in this codebase yet...


 Unit Test Suite Breaks when Run in a Single JVM
 ---

 Key: CASSANDRA-7466
 URL: https://issues.apache.org/jira/browse/CASSANDRA-7466
 Project: Cassandra
  Issue Type: Bug
  Components: Tests
 Environment: MacOS 10.9.3, IntelliJ IDEA 13.1.3, Java 1.7.0_51
Reporter: Caleb William Rackliffe
Priority: Minor
  Labels: test, test-fail, testcase, tests, testsuite
 Attachments: trunk-7466.txt


 Note: Instead of picking a version below, I'll simply note that I'm on 
 {{trunk}} at commit {{c027183ea4e901cf1d44e06704f6d78f84405bb4}}
 I pulled down the source and followed 
 http://wiki.apache.org/cassandra/RunningCassandraInIDEA to import C* as an 
 IDEA project. Everything in the tutorial works as it should, but when I tried 
 to run the unit tests in {{test/unit/org.apache.cassandra}}, the suite failed 
 a couple tests in, complaining that it couldn't find the {{system}} keyspace 
 in {{build/test/cassandra/data}}.
 tl;dr static initialization makes it hard to run the unit tests in the same 
 JVM
 The full story is that...
 1.) When the first test in the suite is run, the {{system}} keyspace is 
 created on disk and in the in-memory schema.
 2.) Many subsequent tests, like {{BlacklistingCompactionsTest}}, remove the 
 {{system}} keyspace directory (among other things) in {{defineSchema()}} with 
 a call to {{SchemaLoader.prepareServer()}}.
 3.) While these tests create the keyspaces they require, they do *not* 
 recreate the system keyspace, and so they fail when they force a compaction 
 or perform any other action that goes looking for it.
 I guess there are two ways to fix this:
 1.) We rebuild the system keyspace before for each test.
 2.) We leave the system keyspace alone.
 I took a 

[jira] [Updated] (CASSANDRA-7466) Unit Test Suite Breaks when Run in a Single JVM

2014-06-28 Thread Caleb William Rackliffe (JIRA)

 [ 
https://issues.apache.org/jira/browse/CASSANDRA-7466?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Caleb William Rackliffe updated CASSANDRA-7466:
---

Description: 
Note: Instead of picking a version below, I'll simply note that I'm on 
{{trunk}} at commit {{c027183ea4e901cf1d44e06704f6d78f84405bb4}}

I pulled down the source and followed 
http://wiki.apache.org/cassandra/RunningCassandraInIDEA to import C* as an IDEA 
project. Everything in the tutorial works as it should, but when I tried to run 
the unit tests in {{test/unit/org.apache.cassandra}}, the suite failed a couple 
tests in, complaining that it couldn't find the {{system}} keyspace in 
{{build/test/cassandra/data}}.

tl;dr static initialization makes it hard to run the unit tests in the same JVM

The full story is that...
1.) When the first test in the suite is run, the {{system}} keyspace is created 
on disk and in the in-memory schema.
2.) Many subsequent tests, like {{BlacklistingCompactionsTest}}, remove the 
{{system}} keyspace directory (among other things) in {{defineSchema()}} with a 
call to {{SchemaLoader.prepareServer()}}.
3.) While these tests create the keyspaces they require, they do *not* recreate 
the system keyspace, and so they fail when they force a compaction or perform 
any other action that goes looking for it.

You can run the suite with IDEA's class/method forking, and you get a little 
bit better results, but it still seems like this shouldn't be necessary.

I guess there are two ways to fix it:
1.) We rebuild the system keyspace before for each test.
2.) We leave the system keyspace alone.

I took a hack at #1 in the attached patch. It looks like it to fixes this 
specific problem, but I'm not super-believable in this codebase yet...

  was:
Note: Instead of picking a version below, I'll simply note that I'm on 
{{trunk}} at commit {{c027183ea4e901cf1d44e06704f6d78f84405bb4}}

I pulled down the source and followed 
http://wiki.apache.org/cassandra/RunningCassandraInIDEA to import C* as an IDEA 
project. Everything in the tutorial works as it should, but when I tried to run 
the unit tests in {{test/unit/org.apache.cassandra}}, the suite failed a couple 
tests in, complaining that it couldn't find the {{system}} keyspace in 
{{build/test/cassandra/data}}.

tl;dr static initialization makes it hard to run the unit tests in the same JVM

The full story is that...
1.) When the first test in the suite is run, the {{system}} keyspace is created 
on disk and in the in-memory schema.
2.) Many subsequent tests, like {{BlacklistingCompactionsTest}}, remove the 
{{system}} keyspace directory (among other things) in {{defineSchema()}} with a 
call to {{SchemaLoader.prepareServer()}}.
3.) While these tests create the keyspaces they require, they do *not* recreate 
the system keyspace, and so they fail when they force a compaction or perform 
any other action that goes looking for it.

I guess there are two ways to fix this:
1.) We rebuild the system keyspace before for each test.
2.) We leave the system keyspace alone.

I took a hack at #1 in the attached patch. It looks like it to fixes this 
specific problem, but I'm not super-believable in this codebase yet...


 Unit Test Suite Breaks when Run in a Single JVM
 ---

 Key: CASSANDRA-7466
 URL: https://issues.apache.org/jira/browse/CASSANDRA-7466
 Project: Cassandra
  Issue Type: Bug
  Components: Tests
 Environment: MacOS 10.9.3, IntelliJ IDEA 13.1.3, Java 1.7.0_51
Reporter: Caleb William Rackliffe
Priority: Minor
  Labels: test, test-fail, testcase, tests, testsuite
 Attachments: trunk-7466.txt


 Note: Instead of picking a version below, I'll simply note that I'm on 
 {{trunk}} at commit {{c027183ea4e901cf1d44e06704f6d78f84405bb4}}
 I pulled down the source and followed 
 http://wiki.apache.org/cassandra/RunningCassandraInIDEA to import C* as an 
 IDEA project. Everything in the tutorial works as it should, but when I tried 
 to run the unit tests in {{test/unit/org.apache.cassandra}}, the suite failed 
 a couple tests in, complaining that it couldn't find the {{system}} keyspace 
 in {{build/test/cassandra/data}}.
 tl;dr static initialization makes it hard to run the unit tests in the same 
 JVM
 The full story is that...
 1.) When the first test in the suite is run, the {{system}} keyspace is 
 created on disk and in the in-memory schema.
 2.) Many subsequent tests, like {{BlacklistingCompactionsTest}}, remove the 
 {{system}} keyspace directory (among other things) in {{defineSchema()}} with 
 a call to {{SchemaLoader.prepareServer()}}.
 3.) While these tests create the keyspaces they require, they do *not* 
 recreate the system keyspace, and so they fail when they force a compaction 
 or perform any other action that goes looking for it.