Details
-
Bug
-
Status: Open
-
Normal
-
Resolution: Unresolved
-
None
-
Correctness
-
Low
-
Normal
-
Adhoc Test
-
All
-
None
Description
Dear Cassandra developers, I was applying fault-injection to test Cassandra and noticed the following behavior. I think this may be a bug. Please let me know if I'm missing something.
Step to reproduce:
- Start a two node cluster (node1 & node2) using ccm.
- Add another node to the cluster (node3).
- Partition node3 from the other two nodes.
- Try to decommission node3 using nodetool decommission.
- Notice that the decommission failed with the following error log:
ERROR [RMI TCP Connection(4)-127.0.0.1] 2019-11-25 22:45:27,716 StorageService.java:4198 - Error while decommissioning node java.lang.RuntimeException: Unable to stream hints since no live endpoints seen at org.apache.cassandra.service.StorageService.getPreferredHintsStreamTarget(StorageService.java:4281) at org.apache.cassandra.hints.HintsDispatchExecutor$TransferHintsTask.run(HintsDispatchExecutor.java:156) at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) at java.util.concurrent.FutureTask.run(FutureTask.java:266) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30) at java.lang.Thread.run(Thread.java:748)
Since I didn't write any data, there is no hint to be sent. In this case, shouldn't the decommission continue?