[ 
https://issues.apache.org/jira/browse/CASSANDRA-17752?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17566712#comment-17566712
 ] 

Stefan Miklosovic edited comment on CASSANDRA-17752 at 7/14/22 8:35 AM:
------------------------------------------------------------------------

https://github.com/apache/cassandra/pull/1732

I have renamed this ticket to describe this problem in broader sense. In the 
description of the ticket, I am dealing with native transport only.

There was also an idea to get rid of this check completely but I would rather 
leave it there for now, preserving the previous solution, I would just fix the 
restarting.

The problematic method is also called on these occasions:

1) start of gossip - this is interesting corner case, but I think it should be 
possible to stop and start gossipping on a gossipping only member
2) start of thrift - I do not see any reason why restarting of thrift on 
gossipping only member should fail
3) start of native transport
4) start of auto compaction - again, this is fairly innocent operation as that 
node does not hold any data anyway.

Fixing this will obviously fix respective enable/disable nodetool command 
combos.

I will provide all other branches & build once we agree on the approach.


was (Author: smiklosovic):
https://github.com/apache/cassandra/pull/1732

I have renamed this ticket to describe this problem in broader sense. In the 
description of the ticket, I am dealing with native transport only.

There was also an idea to get rid of this check completely but I would rather 
leave it there for now, preserving the previous solution, I would just fix the 
restarting.

The problematic method is also called on these occasions:

1) start of gossip - this is interesting corner case, but I think it should be 
possible to stop and start gossipping on a gossipping only member
2) start of thrift - I do not see any reason why restarting of thift on 
gossipping only member should fail
3) start of native transport
4) start of auto compaction - again, this is fairly innocent operation as that 
node does not hold any data anyway.

Fixing this will obviously fix respective enable/disable nodetool command 
combos.

I will provide all other branches & build once we agree on the approach.

> fix restarting of services on gossipping-only members
> -----------------------------------------------------
>
>                 Key: CASSANDRA-17752
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-17752
>             Project: Cassandra
>          Issue Type: Bug
>          Components: Legacy/Core, Tool/nodetool
>            Reporter: Stefan Miklosovic
>            Assignee: Stefan Miklosovic
>            Priority: Normal
>             Fix For: 3.0.x, 4.0.x, 4.1.x, 4.x
>
>
> When a node is started with -Dcassandra.join_ring=false, it is possible to 
> talk to it via CQL. If we disable it via "nodetool disablebinary", it is not 
> possible to enable it back with "nodetool enablebinary".
> The reason why is that enablebinary command eventually calls 
> "StorageService#checkServiceAllowedToStart" and it throws when:
> 1) the node is draining (which does not happen)
> 2) it is shutting down (which does not happen)
> 3) is not in NORMAL state - which happens.
> The state of the gossipping-only member is STARTING for ever.
> The check should make an exception here, like if it is in STARTING but 
> -Dcassandra.join_ring=false, start it anyway.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to