Use of System.exit() calls
Hi everybody, I've been trying run Cassandra as a managed service from another java process and stumbled across the use of System.exit() calls in some of the core services (i.e DatabaseDescriptor, StorageService, SSTableReader). This makes the use as an embedded service very difficult and I can imagine that it easily creates other issues as well (i.e. freeing allocated resources). Can somebody explain the rational behind using System.exit() calls opposed to the use of regular exceptions and handling the process shutdown in a well defined place (i.e the CassandraDaemon) ? Regards, Heiko
Re: Use of System.exit() calls
Yeah it is rather annoying. I install a "fake" security manager to get around this. https://github.com/dma-ais/AisStore/blob/master/ais-store-raw/src/main/java/dk/dma/ais/store/old/exporter/CassandraNodeTool.java Cheers Kasper On Fri, Sep 19, 2014 at 10:39 AM, Heiko Braun wrote: > > Hi everybody, > > I've been trying run Cassandra as a managed service from another java > process and stumbled across the use of System.exit() calls in some of the > core services (i.e DatabaseDescriptor, StorageService, SSTableReader). > > This makes the use as an embedded service very difficult and I can imagine > that it easily creates other issues as well (i.e. freeing allocated > resources). > > Can somebody explain the rational behind using System.exit() calls opposed > to the use of regular exceptions and handling the process shutdown in a > well defined place (i.e the CassandraDaemon) ? > > Regards, Heiko
Re: Use of System.exit() calls
There are some places we are unlikely to drop using System.exit(), such as when we detect a dangerous application state (e.g. OOM) However in config (e.g. DatabaseDescriptor) it's just because we haven't considered it worth our time to do anything more involved. Feel free to file a ticket and post a patch. On Fri, Sep 19, 2014 at 9:39 AM, Heiko Braun wrote: > > Hi everybody, > > I've been trying run Cassandra as a managed service from another java > process and stumbled across the use of System.exit() calls in some of the > core services (i.e DatabaseDescriptor, StorageService, SSTableReader). > > This makes the use as an embedded service very difficult and I can imagine > that it easily creates other issues as well (i.e. freeing allocated > resources). > > Can somebody explain the rational behind using System.exit() calls opposed > to the use of regular exceptions and handling the process shutdown in a > well defined place (i.e the CassandraDaemon) ? > > Regards, Heiko
Re: Use of System.exit() calls
ok, good to know. that's what I had in mind. On 19 Sep 2014, at 12:27, Benedict Elliott Smith wrote: > However in config (e.g. DatabaseDescriptor) it's just because we haven't > considered it worth our time to do anything more involved. Feel free to > file a ticket and post a patch.
Trying to implement intersect for OffHeapBitOffset
Hello, I was trying to implement the intersect, union and cardinality functions for OffHeapBitOffset. One way would be to convert the byte array into a long and then use the pop_* functions in BitUtil. Is there any other way? Thanks and Regards, Mainak.