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