2011-10-30 15 views
3

私はHectors EmbeddedServerHelperを使用して、組み込みカサンドラをセットアップしています。それはteardown()cleanup()の方法を持っています。unittest後に組み込みのcassandraをクリーンアップする方法は?

問題は、cleanupメソッドが、cassandraによって作成されたコミットログファイルをいくつか削除できないことです。おそらく、teardown()メソッドによって適切にシャットダウンされていないカサンドラデーモンがまだ残っているからです。ここでセットアップとティアダウンのコード:

@BeforeClass 
public static void setUpBeforeClass() throws Exception { 
    EmbeddedServerHelper sh = new EmbeddedServerHelper(); 
    sh.setup(); 
} 

@AfterClass 
public static void tearDownAfterClass() throws Exception { 
    EmbeddedServerHelper.teardown(); 
    EmbeddedServerHelper.cleanup();  
    doDelete(new File("tmp")); 
} 

これらのファイルを削除するにはどうすればよいですか?

答えて

0

データファイルとコミットログは、起動時にチェックされ、削除されます。なぜなら、JUnitのコンテキストからクリーンアップして、cassandraプロセスが完了した時点を知ることはかなり困難でした。

+0

だから、どうやってカサンドラをテストしますか? – Dima

+0

同様の方法で:http://svn.apache.org/repos/asf/cassandra/trunk/test/unit/org/apache/cassandra/CleanupHelper.java – zznate

関連する問題