You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by jb...@apache.org on 2012/06/18 21:18:53 UTC
[2/3] git commit: Raise a meaningful exception instead of NPE when
PFS encounters an unconfigured node patch by jbellis;
reviewed by brandonwilliams for CASSANDRA-4349
Raise a meaningful exception instead of NPE when PFS encounters an unconfigured node
patch by jbellis; reviewed by brandonwilliams for CASSANDRA-4349
Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/45c8f53a
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/45c8f53a
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/45c8f53a
Branch: refs/heads/trunk
Commit: 45c8f53a2c42f48317110908734119a7cb24baf1
Parents: 0ba2631
Author: Jonathan Ellis <jb...@apache.org>
Authored: Mon Jun 18 14:15:27 2012 -0500
Committer: Jonathan Ellis <jb...@apache.org>
Committed: Mon Jun 18 14:15:36 2012 -0500
----------------------------------------------------------------------
CHANGES.txt | 2 ++
.../locator/AbstractNetworkTopologySnitch.java | 2 --
.../cassandra/locator/PropertyFileSnitch.java | 8 ++++++++
3 files changed, 10 insertions(+), 2 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cassandra/blob/45c8f53a/CHANGES.txt
----------------------------------------------------------------------
diff --git a/CHANGES.txt b/CHANGES.txt
index ec03ca6..b6702cb 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -1,4 +1,6 @@
1.1.2
+ * Raise a meaningful exception instead of NPE when PFS encounters
+ an unconfigured node + no default (CASSANDRA-4349)
* fix bug in sstable blacklisting with LCS (CASSANDRA-4343)
* LCS no longer promotes tiny sstables out of L0 (CASSANDRA-4341)
* skip tombstones during hint replay (CASSANDRA-4320)
http://git-wip-us.apache.org/repos/asf/cassandra/blob/45c8f53a/src/java/org/apache/cassandra/locator/AbstractNetworkTopologySnitch.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/locator/AbstractNetworkTopologySnitch.java b/src/java/org/apache/cassandra/locator/AbstractNetworkTopologySnitch.java
index c2df7e4..68404c9 100644
--- a/src/java/org/apache/cassandra/locator/AbstractNetworkTopologySnitch.java
+++ b/src/java/org/apache/cassandra/locator/AbstractNetworkTopologySnitch.java
@@ -34,7 +34,6 @@ public abstract class AbstractNetworkTopologySnitch extends AbstractEndpointSnit
* Return the rack for which an endpoint resides in
* @param endpoint a specified endpoint
* @return string of rack
- * @throws UnknownHostException
*/
abstract public String getRack(InetAddress endpoint);
@@ -42,7 +41,6 @@ public abstract class AbstractNetworkTopologySnitch extends AbstractEndpointSnit
* Return the data center for which an endpoint resides in
* @param endpoint a specified endpoint
* @return string of data center
- * @throws UnknownHostException
*/
abstract public String getDatacenter(InetAddress endpoint);
http://git-wip-us.apache.org/repos/asf/cassandra/blob/45c8f53a/src/java/org/apache/cassandra/locator/PropertyFileSnitch.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/locator/PropertyFileSnitch.java b/src/java/org/apache/cassandra/locator/PropertyFileSnitch.java
index 00adc7e..0bf5850 100644
--- a/src/java/org/apache/cassandra/locator/PropertyFileSnitch.java
+++ b/src/java/org/apache/cassandra/locator/PropertyFileSnitch.java
@@ -84,6 +84,14 @@ public class PropertyFileSnitch extends AbstractNetworkTopologySnitch
*/
public String[] getEndpointInfo(InetAddress endpoint)
{
+ String[] rawEndpointInfo = getRawEndpointInfo(endpoint);
+ if (rawEndpointInfo == null)
+ throw new RuntimeException("Unknown host " + endpoint + " with no default configured");
+ return rawEndpointInfo;
+ }
+
+ private String[] getRawEndpointInfo(InetAddress endpoint)
+ {
String[] value = endpointMap.get(endpoint);
if (value == null)
{