Dear Wiki user, You have subscribed to a wiki page or wiki category on "Cassandra Wiki" for change notification.
The "Operations" page has been changed by GabrieleRenzi. http://wiki.apache.org/cassandra/Operations?action=diff&rev1=38&rev2=39 -------------------------------------------------- Cassandra is smart enough to transfer data from the nearest source node(s), if your !EndpointSnitch is configured correctly. So, the new node doesn't need to be in the same datacenter as the primary replica for the Range it is bootstrapping into, as long as another replica is in the datacenter with the new one. Bootstrap progress can be monitored using `nodetool` with the `streams` argument. + + During bootstrap `nodetool` may report that the new node is not receiving nor sending any streams, this is because the sending node will copy out locally the data they will send to the receiving one, which can be seen in the sending node through the the "AntiCompacting... AntiCompacted" log messages. == Moving or Removing nodes == === Removing nodes entirely === @@ -180, +182 @@ The `Status` attribute gives an easy indication of what a node is doing with respect to streaming. During the bulk of a transfer the sending node will report a status of `"Waiting for transfer to $some_node to complete."` The receiving node will report `"Receiving stream"` while receiving stream data. The `StreamDestinations` and `StreamSources` attributes each contain a list of hosts that the current node is either sending stream data to or receiving it from. - The operations `getOutgoingFiles(host)` and `getIncomingFiles(host)` each return a list of strings describing the status of individual files being streamed to and from a given host. Each string follows this format: `[path to file] [bytes sent/received]/[file size]` - If you think that streaming is taking too long on your cluster, the first thing you should do is check `StreamSources` or `StreamDestinations` to figure out which hosts are streaming files. Use those hosts as inputs to `getOutgoingFiles()` or `getIncomingFiles()` to check on the status of individual files from the problematic source and destination nodes. Streaming is conducted in 32MB chunks, so you should refresh the file status after a few seconds to see if the sent/received values change. If they do not change, or change more slowly than you'd like, something is wrong. Keep in mind that a source node can only stream a single file at a time, but a destination node can simultaneously receive several files. + The operations `getOutgoingFiles(host)` and `getIncomingFiles(host)` each return a list of strings describing the status of individual files being streamed to and from a given host. Each string follows this format: `[path to file] [bytes sent/received]/[file size]` If you think that streaming is taking too long on your cluster, the first thing you should do is check `StreamSources` or `StreamDestinations` to figure out which hosts are streaming files. Use those hosts as inputs to `getOutgoingFiles()` or `getIncomingFiles()` to check on the status of individual files from the problematic source and destination nodes. Streaming is conducted in 32MB chunks, so you should refresh the file status after a few seconds to see if the sent/received values change. If they do not change, or change more slowly than you'd like, something is wrong. Keep in mind that a source node can only stream a single file at a time, but a destination node can simultaneously receive several files.
