Are there any data loss concerns if you have the commit log sync set to
periodic and are writing with CL One or Any?

 

From: Matthew Dennis [mailto:mden...@riptano.com] 
Sent: Wednesday, October 06, 2010 8:53 PM
To: user@cassandra.apache.org
Subject: Re: Newbie Question about restarting Cassandra

 

Rob is correct.

drain is really on there for when you need the commit log to be empty (some
upgrades or a complete backup of a shutdown cluster).

There really is no point to using to shutdown C* normally, just kill it...

On Wed, Oct 6, 2010 at 4:18 PM, Rob Coli <rc...@digg.com> wrote:

On 10/6/10 1:13 PM, Aaron Morton wrote:

To shutdown cleanly, say in a production system, use nodetool drain
first. This will flush the memtables and put the node into a read only
mode, AFAIK this also gives the other nodes a faster way of detecting
the node is down via the drained node gossiping it's new status. Then kill.

 

FWIW, the gossiper related code for "drain" (trunk) looks like it just stops
the gossip service, which is almost certainly the same thing that happens if
you kill Cassandra.

./src/java/org/apache/cassandra/service/StorageService.java
"
   public synchronized void drain() throws IOException,
InterruptedException, ExecutionException
...
 setMode("Starting drain process", true);
       Gossiper.instance.stop();
"

./src/java/org/apache/cassandra/gms/Gossiper.java
"
 public void stop()
   {
       scheduledGossipTask.cancel(false);
   }
"

=Rob




-- 
Riptano
Software and Support for Apache Cassandra
http://www.riptano.com/
mden...@riptano.com
m: 512.587.0900 f: 866.583.2068

Reply via email to