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);