[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Nodetool cleanup error - cannot run before a node has joined the ring

Thank you Michael.

Well, this was apparently my bad.

1. nodetool connects to the local JMX port 7199, which is indeed running on localhost in my case.

2. I did a few more attempts, the message "Aborted cleaning up atleast one column family in keyspace <mykeyspace1>" only appears in the DC where <mykeyspace1> is not replicated, so it is indeed correct. I guess that the "Cleanup cannot run before a node has joined the ring" message refers to this.

3. I have seen a few log lines from CompactionManager.java showing nodetool cleanup doing work, so that's good. I guess that the "No sstables for <keyspace>.<table>" log lines refer to the fact that there is no sstable *to cleanup* for that table, not that it couldn't find any sstable.

So at the end of the day, just log messages that were not very clear (at least to me).


On Fri, Feb 10, 2017 at 2:42 PM, Michael Shuler <michael@xxxxxxxxxxxxxx> wrote:
By default, yes, nodetool connects to localhost, which your log entries
show. Use `nodetool -h $PRIV_IP cleanup ...` to connect to that private
IP it's listening on. `nodetool help cleanup` for all options.

Kind regards,

On 02/10/2017 02:22 PM, Simone Franzini wrote:
> I am running DSE 4.8.7 / Cassandra 2.1.14.
> When I attempt to run nodetool cleanup on any node / any environment we
> are managing, I get the following output:
> Aborted cleaning up atleast one column family in keyspace <mykeyspace1>,
> check server logs for more information.
>     error: nodetool failed, check server logs
>     -- StackTrace --
>     java.lang.RuntimeException: nodetool failed, check server logs
>         at
> org.apache.cassandra.tools.NodeTool$NodeToolCmd.run(NodeTool.java:294)
>         at org.apache.cassandra.tools.NodeTool.main(NodeTool.java:206)
> The server logs do not have any error or warn message, however I see the
> following log line:
> 2017-02-10 14:06:49,931 INFO  [RMI TCP Connection(34)-]
>  CompactionManager.java:415 - Cleanup cannot run before a node has
> joined the ring
> That is then followed by a line like this, for every single one of our
> keyspaces and tables:
> 2017-02-10 14:06:49,969 INFO  [RMI TCP Connection(34)-]
>  CompactionManager.java:294 - No sstables for <keyspace>.<table>
> I find the message above a bit suspicious. Of course I do not have any
> node in the process of joining the ring. It looks like nodetool is
> having trouble connecting to the Cassandra instance? Is it trying to
> connect to localhost? We have Cassandra listening on a private IP, not
> on localhost. All other nodetool commands are running fine though. Any
> suggestion with what could be the issue here?
> Thanks,
> Simone Franzini, PhD
> http://www.linkedin.com/in/simonefranzini