separate jvm is the only mechanism to 'shutdown' in a test scenario
right now....and its unlikely to change in the short term so designing
around forking is your best bet

cheers,
jesse

--
jesse mcconnell
jesse.mcconn...@gmail.com



On Tue, Jul 20, 2010 at 05:47, Bjorn Borud <bbo...@gmail.com> wrote:
> Jonathan Ellis <jbel...@gmail.com> writes:
>
>> there's some support for this in 0.7 (see
>> http://issues.apache.org/jira/browse/CASSANDRA-1018) but fundamentally
>> it's not really designed to be started and stopped multiple times
>> within the same process.
>
> I am currently struggling with some of the same issues (on 0.6.3).
>
> I think there are very valid reasons for being able to start and stop
> Cassandra within the same JVM. in particular for various testing-related
> scenarios, but also when one wants to experiment with embedding
> Cassandra. (Having a single-node, embedded Cassandra can be great for
> testing Cassandra-based applications without forcing "casual users" to
> go through the ordeal of installing Cassandra).
>
> Right now I have an ungodly mess that attempts to embed Cassandra by
> wrapping the CassandraDaemon, generating a directory hierarchy for it
> and populating the storage-conf.xml by way of a templating system and
> then fires up Cassandra.
> It *sort of* works, except that I haven't found a way to shut Cassandra
> down reliably. the stop() method doesn't really do anything useful in
> this respect. (I'd prefer some way of being able to ask it to shut down
> and then have some way of blocking until it is down). I think some of
> the errors I am seeing (NPE at at
> org.apache.cassandra.db.commitlog.CommitLog.recover(CommitLog.java:166))
> are probably due to some race condition because of this, but I am
> guessing here.
>
> I'll have another stare at the source.
>
> -Bjørn
>
>
>

Reply via email to