This is an automated email from the ASF dual-hosted git repository.

brandonwilliams pushed a commit to branch cassandra-4.0
in repository https://gitbox.apache.org/repos/asf/cassandra.git


The following commit(s) were added to refs/heads/cassandra-4.0 by this push:
     new c3998ef601 Return an empty collection when a node is not a member
c3998ef601 is described below

commit c3998ef6018644ff4d3aebcd0b7e3e1d566663f0
Author: Brandon Williams <[email protected]>
AuthorDate: Mon Jun 13 13:48:27 2022 -0500

    Return an empty collection when a node is not a member
    
    Patch by brandonwilliams; reviewed by adelapena for CASSANDRA-17680
---
 CHANGES.txt                                               | 1 +
 src/java/org/apache/cassandra/service/StorageService.java | 2 ++
 2 files changed, 3 insertions(+)

diff --git a/CHANGES.txt b/CHANGES.txt
index 0d83cad2e8..e9f4526e06 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -1,4 +1,5 @@
 4.0.5
+ * Fix NPE in getLocalPrimaryRangeForEndpoint (CASSANDRA-17680)
  * Remove SSL storage port from sstableloader (CASSANDRA-17602)
  * Allow Java 11 to satisfy RPM/Debian packaging (CASSANDRA-17669)
  * Ensure FileStreamTask cannot compromise shared channel proxy for system 
table when interrupted (CASSANDRA-17663)
diff --git a/src/java/org/apache/cassandra/service/StorageService.java 
b/src/java/org/apache/cassandra/service/StorageService.java
index 421b62697b..2e724e9220 100644
--- a/src/java/org/apache/cassandra/service/StorageService.java
+++ b/src/java/org/apache/cassandra/service/StorageService.java
@@ -4270,6 +4270,8 @@ public class StorageService extends 
NotificationBroadcasterSupport implements IE
     {
         IEndpointSnitch snitch = DatabaseDescriptor.getEndpointSnitch();
         TokenMetadata tokenMetadata = this.tokenMetadata.cloneOnlyTokenMap();
+        if (!tokenMetadata.isMember(referenceEndpoint))
+            return Collections.emptySet();
         String dc = snitch.getDatacenter(referenceEndpoint);
         Set<Token> tokens = new 
HashSet<>(tokenMetadata.getTokens(referenceEndpoint));
 


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

Reply via email to