Author: jake
Date: Wed Dec  7 20:54:45 2011
New Revision: 1211628

URL: http://svn.apache.org/viewvc?rev=1211628&view=rev
Log:
Check for 0.0.0.0 is incorrect in CFIF
Patch by jbellis and tjake; reviewed by tjake for CASSANDRA-3584


Modified:
    cassandra/branches/cassandra-1.0/CHANGES.txt
    
cassandra/branches/cassandra-1.0/src/java/org/apache/cassandra/hadoop/ColumnFamilyInputFormat.java

Modified: cassandra/branches/cassandra-1.0/CHANGES.txt
URL: 
http://svn.apache.org/viewvc/cassandra/branches/cassandra-1.0/CHANGES.txt?rev=1211628&r1=1211627&r2=1211628&view=diff
==============================================================================
--- cassandra/branches/cassandra-1.0/CHANGES.txt (original)
+++ cassandra/branches/cassandra-1.0/CHANGES.txt Wed Dec  7 20:54:45 2011
@@ -22,7 +22,7 @@ Merged from 0.8:
  * remove nonlocal DC write optimization since it only worked with
    CL.ONE or CL.LOCAL_QUORUM (CASSANDRA-3577)
  * detect misuses of CounterColumnType (CASSANDRA-3422)
-
+ * Check for 0.0.0.0 is incorrect in CFIF (CASSANDRA-3584)
 
 1.0.5
  * revert CASSANDRA-3407 (see CASSANDRA-3540)

Modified: 
cassandra/branches/cassandra-1.0/src/java/org/apache/cassandra/hadoop/ColumnFamilyInputFormat.java
URL: 
http://svn.apache.org/viewvc/cassandra/branches/cassandra-1.0/src/java/org/apache/cassandra/hadoop/ColumnFamilyInputFormat.java?rev=1211628&r1=1211627&r2=1211628&view=diff
==============================================================================
--- 
cassandra/branches/cassandra-1.0/src/java/org/apache/cassandra/hadoop/ColumnFamilyInputFormat.java
 (original)
+++ 
cassandra/branches/cassandra-1.0/src/java/org/apache/cassandra/hadoop/ColumnFamilyInputFormat.java
 Wed Dec  7 20:54:45 2011
@@ -211,7 +211,7 @@ public class ColumnFamilyInputFormat ext
             for (String endpoint: range.rpc_endpoints)
             {
                 String endpoint_address = endpoint;
-                       if(endpoint_address == null || endpoint_address == 
"0.0.0.0")
+                       if (endpoint_address == null || 
endpoint_address.equals("0.0.0.0"))
                                endpoint_address = 
range.endpoints.get(endpointIndex);
                        endpoints[endpointIndex++] = 
InetAddress.getByName(endpoint_address).getHostName();
             }
@@ -229,8 +229,13 @@ public class ColumnFamilyInputFormat ext
     private List<String> getSubSplits(String keyspace, String cfName, 
TokenRange range, Configuration conf) throws IOException
     {
         int splitsize = ConfigHelper.getInputSplitSize(conf);
-        for (String host : range.rpc_endpoints)
+        for (int i = 0; i < range.rpc_endpoints.size(); i++)
         {
+            String host = range.rpc_endpoints.get(i);
+            
+            if (host == null || host.equals("0.0.0.0"))
+                host = range.endpoints.get(i);
+                        
             try
             {
                 Cassandra.Client client = ConfigHelper.createConnection(host, 
ConfigHelper.getRpcPort(conf), true);


Reply via email to