cassandra-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Tamar Fraenkel <>
Subject Re: Failing to delete commitlog at startup/shutdown (Windows)
Date Wed, 09 May 2012 05:42:36 GMT
What I do, is that I have VmWare player with VM running Cassandra localy on
my laptop. This is useful when there is no internet connection and works
fine for me.

*Tamar Fraenkel *
Senior Software Engineer, TOK Media

[image: Inline image 1]
Tel:   +972 2 6409736
Mob:  +972 54 8356490
Fax:   +972 2 5612956

On Tue, May 8, 2012 at 7:46 PM, Conan Cook <> wrote:

> Hi Steve,
> Thanks for your reply, sorry for the delay in getting back to you.  We're
> actually doing something very similar already, using Hector's
> EmbeddedServerHelper (it's basically the same, maybe it came from the same
> code).  Unfortunately whilst writing this our internet went down and I
> sometimes need to develop offline anyway, so using an external Cassandra
> instance isn't really an option.
> I've had a try using the maven-cassandra-plugin and don't seem to be
> having the problem any more, plus it's a neater solution anyway.
> Conan
> On 23 April 2012 15:51, Steve Neely <> wrote:
>> We used a modified version of Ran's embedded Cassandra for a while:
>> worked
well for us. You have way more control over that.
>> Recently, we switched to having a single Cassandra installation that runs
>> all the time. Kind of like you'd treat a regular relational DB. Just fire
>> up Cassandra, leave it running and point your tests at that instance. Seems
>> like starting up your data store every time you execute integration tests
>> will slow them down and isn't really helpful.
>> BTW, you may want to scrub the test data out of Cassandra when you're
>> test suite finishes.
>> -- Steve
>> On Mon, Apr 23, 2012 at 8:41 AM, Conan Cook <> wrote:
>>> Hi,
>>> I'm experiencing a problem running a suite of integration tests on
>>> Windows 7, using Cassandra 1.0.9 and Java 1.6.0_31.  A new cassandra
>>> instance is spun up for each test class and shut down afterwards, using the
>>> Maven Failsafe plugin.  The problem is that the Commitlog file seems to be
>>> kept open, and so subsequent test classes fail to delete it.  Here is the
>>> stack trace:
>>> Failed to delete
>>> D:\amee.realtime.api\server\engine\tmp\var\lib\cassandra\commitlog\CommitLog-1335190398587.log
>>> at
>>>  at
>>> at
>>> ...
>>> I've tried to delete the file when shutting down Cassandra and before
>>> firing up a new one.  I've tried setting the failsafe plugin's forkMode to
>>> both "once" and "always", so that it fires up a new JVM for each test or a
>>> single JVM for all tests; the results are similar.  Debugging through the
>>> code takes me right down to the native method call in the windows
>>> filesystem class in the JVM, and an access denied error is returned; I'm
>>> also unable to delete it manually through Windows Explorer or a terminal
>>> window at that point (with the JVM suspended), and running Process Explorer
>>> indicates that a Java process has a handle open to that file.
>>> I've read a number of posts and mails mentioning this problem and there
>>> is a JIRA saying a similar problem is fixed (
>>>  I've tried a
>>> number of things to clean up the Commitlog file after each test is
>>> complete, and have followed the recommendations made here (I'm also using
>>> Hector's EmbeddedServerHelper to start/stop Cassandra):
>>> Does anyone have any ideas on how to avoid this issue?  I don't have any
>>> way of knowing what it is that's holding onto this file other than a Java
>>> process.
>>> Thanks!
>>> Conan

View raw message