Check for the presence of both rack and dc in the system table.
Patch by brandonwilliams, reviewed by jbellis for CASSANDRA-5211


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/85cfd383
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/85cfd383
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/85cfd383

Branch: refs/heads/cassandra-1.2
Commit: 85cfd383b11db2a19109c258159b26d20e7020e5
Parents: aa7c7d9
Author: Brandon Williams <brandonwilli...@apache.org>
Authored: Tue Feb 12 16:55:03 2013 -0600
Committer: Brandon Williams <brandonwilli...@apache.org>
Committed: Tue Feb 12 16:55:03 2013 -0600

----------------------------------------------------------------------
 src/java/org/apache/cassandra/db/SystemTable.java |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cassandra/blob/85cfd383/src/java/org/apache/cassandra/db/SystemTable.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/db/SystemTable.java 
b/src/java/org/apache/cassandra/db/SystemTable.java
index 6a38757..adf08cc 100644
--- a/src/java/org/apache/cassandra/db/SystemTable.java
+++ b/src/java/org/apache/cassandra/db/SystemTable.java
@@ -467,7 +467,7 @@ public class SystemTable
         for (UntypedResultSet.Row row : processInternal("SELECT peer, 
data_center, rack from system." + PEERS_CF))
         {
             InetAddress peer = row.getInetAddress("peer");
-            if (row.has("data_center"))
+            if (row.has("data_center") && row.has("rack"))
             {
                 Map<String, String> dcRack = new HashMap<String, String>();
                 dcRack.put("data_center", row.getString("data_center"));

Reply via email to