You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by al...@apache.org on 2014/08/17 19:50:49 UTC
[1/5] git commit: (Hadoop) allow ACFRW to limit nodes to local DC
Repository: cassandra
Updated Branches:
refs/heads/trunk fe0572778 -> 4e334ab82
(Hadoop) allow ACFRW to limit nodes to local DC
patch by Robbie Strickland; reviewed by Aleksey Yeschenko for
CASSANDRA-7252
Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/b87741c0
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/b87741c0
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/b87741c0
Branch: refs/heads/trunk
Commit: b87741c077e74b2ae3fda3da2417dc1965c0c4ed
Parents: 115bbe4
Author: Robbie Strickland <ro...@gmail.com>
Authored: Sun Aug 17 20:40:39 2014 +0300
Committer: Aleksey Yeschenko <al...@apache.org>
Committed: Sun Aug 17 20:40:39 2014 +0300
----------------------------------------------------------------------
CHANGES.txt | 1 +
.../org/apache/cassandra/client/RingCache.java | 63 ++++++++++----------
.../apache/cassandra/hadoop/ConfigHelper.java | 11 ++++
3 files changed, 45 insertions(+), 30 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cassandra/blob/b87741c0/CHANGES.txt
----------------------------------------------------------------------
diff --git a/CHANGES.txt b/CHANGES.txt
index 987c227..94169c1 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -1,4 +1,5 @@
2.0.10
+ * (Hadoop) allow ACFRW to limit nodes to local DC (CASSANDRA-7252)
* (cqlsh) Wait up to 10 sec for a tracing session (CASSANDRA-7222)
* Fix NPE in FileCacheService.sizeInBytes (CASSANDRA-7756)
* (cqlsh) cqlsh should automatically disable tracing when selecting
http://git-wip-us.apache.org/repos/asf/cassandra/blob/b87741c0/src/java/org/apache/cassandra/client/RingCache.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/client/RingCache.java b/src/java/org/apache/cassandra/client/RingCache.java
index 3308471..cc9b1b2 100644
--- a/src/java/org/apache/cassandra/client/RingCache.java
+++ b/src/java/org/apache/cassandra/client/RingCache.java
@@ -61,44 +61,47 @@ public class RingCache
public void refreshEndpointMap()
{
- try {
+ try
+ {
+ Cassandra.Client client = ConfigHelper.getClientFromOutputAddressList(conf);
- Cassandra.Client client = ConfigHelper.getClientFromOutputAddressList(conf);
+ String keyspace = ConfigHelper.getOutputKeyspace(conf);
+ List<TokenRange> ring = ConfigHelper.getOutputLocalDCOnly(conf)
+ ? client.describe_local_ring(keyspace)
+ : client.describe_ring(keyspace);
+ rangeMap = ArrayListMultimap.create();
- List<TokenRange> ring = client.describe_ring(ConfigHelper.getOutputKeyspace(conf));
- rangeMap = ArrayListMultimap.create();
-
- for (TokenRange range : ring)
+ for (TokenRange range : ring)
+ {
+ Token<?> left = partitioner.getTokenFactory().fromString(range.start_token);
+ Token<?> right = partitioner.getTokenFactory().fromString(range.end_token);
+ Range<Token> r = new Range<Token>(left, right, partitioner);
+ for (String host : range.endpoints)
{
- Token<?> left = partitioner.getTokenFactory().fromString(range.start_token);
- Token<?> right = partitioner.getTokenFactory().fromString(range.end_token);
- Range<Token> r = new Range<Token>(left, right, partitioner);
- for (String host : range.endpoints)
+ try
+ {
+ rangeMap.put(r, InetAddress.getByName(host));
+ }
+ catch (UnknownHostException e)
{
- try
- {
- rangeMap.put(r, InetAddress.getByName(host));
- }
- catch (UnknownHostException e)
- {
- throw new AssertionError(e); // host strings are IPs
- }
+ throw new AssertionError(e); // host strings are IPs
}
}
}
- catch (InvalidRequestException e)
- {
- throw new RuntimeException(e);
- }
- catch (IOException e)
- {
- throw new RuntimeException(e);
- }
- catch (TException e)
- {
- logger.debug("Error contacting seed list" + ConfigHelper.getOutputInitialAddress(conf) + " " + e.getMessage());
- }
}
+ catch (InvalidRequestException e)
+ {
+ throw new RuntimeException(e);
+ }
+ catch (IOException e)
+ {
+ throw new RuntimeException(e);
+ }
+ catch (TException e)
+ {
+ logger.debug("Error contacting seed list" + ConfigHelper.getOutputInitialAddress(conf) + " " + e.getMessage());
+ }
+ }
/** ListMultimap promises to return a List for get(K) */
public List<InetAddress> getEndpoint(Range<Token> range)
http://git-wip-us.apache.org/repos/asf/cassandra/blob/b87741c0/src/java/org/apache/cassandra/hadoop/ConfigHelper.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/hadoop/ConfigHelper.java b/src/java/org/apache/cassandra/hadoop/ConfigHelper.java
index f062bfc..10cfe8e 100644
--- a/src/java/org/apache/cassandra/hadoop/ConfigHelper.java
+++ b/src/java/org/apache/cassandra/hadoop/ConfigHelper.java
@@ -67,6 +67,7 @@ public class ConfigHelper
private static final String WRITE_CONSISTENCY_LEVEL = "cassandra.consistencylevel.write";
private static final String OUTPUT_COMPRESSION_CLASS = "cassandra.output.compression.class";
private static final String OUTPUT_COMPRESSION_CHUNK_LENGTH = "cassandra.output.compression.length";
+ private static final String OUTPUT_LOCAL_DC_ONLY = "cassandra.output.local.dc.only";
private static final String THRIFT_FRAMED_TRANSPORT_SIZE_IN_MB = "cassandra.thrift.framed.size_mb";
private static final Logger logger = LoggerFactory.getLogger(ConfigHelper.class);
@@ -513,6 +514,16 @@ public class ConfigHelper
}
}
+ public static boolean getOutputLocalDCOnly(Configuration conf)
+ {
+ return Boolean.parseBoolean(conf.get(OUTPUT_LOCAL_DC_ONLY, "false"));
+ }
+
+ public static void setOutputLocalDCOnly(Configuration conf, boolean localDCOnly)
+ {
+ conf.set(OUTPUT_LOCAL_DC_ONLY, Boolean.toString(localDCOnly));
+ }
+
public static Cassandra.Client getClientFromInputAddressList(Configuration conf) throws IOException
{
return getClientFromAddressList(conf, ConfigHelper.getInputInitialAddress(conf).split(","), ConfigHelper.getInputRpcPort(conf));
[2/5] git commit: Merge branch 'cassandra-2.0' into cassandra-2.1
Posted by al...@apache.org.
Merge branch 'cassandra-2.0' into cassandra-2.1
Conflicts:
CHANGES.txt
src/java/org/apache/cassandra/client/RingCache.java
Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/35999b3c
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/35999b3c
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/35999b3c
Branch: refs/heads/trunk
Commit: 35999b3c835f4eb36180595593d0def7c7dae084
Parents: ff9c631 b87741c
Author: Aleksey Yeschenko <al...@apache.org>
Authored: Sun Aug 17 20:47:58 2014 +0300
Committer: Aleksey Yeschenko <al...@apache.org>
Committed: Sun Aug 17 20:47:58 2014 +0300
----------------------------------------------------------------------
CHANGES.txt | 1 +
.../org/apache/cassandra/client/RingCache.java | 58 ++++++++++----------
.../apache/cassandra/hadoop/ConfigHelper.java | 11 ++++
3 files changed, 40 insertions(+), 30 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cassandra/blob/35999b3c/CHANGES.txt
----------------------------------------------------------------------
diff --cc CHANGES.txt
index 113de3e,94169c1..b8132ba
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@@ -1,20 -1,7 +1,21 @@@
-2.0.10
+2.1.1
+ * Add max live/tombstoned cells to nodetool cfstats output (CASSANDRA-7731)
+ * Validate IPv6 wildcard addresses properly (CASSANDRA-7680)
+ * (cqlsh) Error when tracing query (CASSANDRA-7613)
+ * Avoid IOOBE when building SyntaxError message snippet (CASSANDRA-7569)
+ * SSTableExport uses correct validator to create string representation of partition
+ keys (CASSANDRA-7498)
+ * Avoid NPEs when receiving type changes for an unknown keyspace (CASSANDRA-7689)
+ * Add support for custom 2i validation (CASSANDRA-7575)
+ * Pig support for hadoop CqlInputFormat (CASSANDRA-6454)
+ * Add listen_interface and rpc_interface options (CASSANDRA-7417)
+ * Improve schema merge performance (CASSANDRA-7444)
+ * Adjust MT depth based on # of partition validating (CASSANDRA-5263)
+ * Optimise NativeCell comparisons (CASSANDRA-6755)
+ * Configurable client timeout for cqlsh (CASSANDRA-7516)
+ * Include snippet of CQL query near syntax error in messages (CASSANDRA-7111)
+Merged from 2.0:
+ * (Hadoop) allow ACFRW to limit nodes to local DC (CASSANDRA-7252)
- * (cqlsh) Wait up to 10 sec for a tracing session (CASSANDRA-7222)
- * Fix NPE in FileCacheService.sizeInBytes (CASSANDRA-7756)
* (cqlsh) cqlsh should automatically disable tracing when selecting
from system_traces (CASSANDRA-7641)
* (Hadoop) Add CqlOutputFormat (CASSANDRA-6927)
http://git-wip-us.apache.org/repos/asf/cassandra/blob/35999b3c/src/java/org/apache/cassandra/client/RingCache.java
----------------------------------------------------------------------
diff --cc src/java/org/apache/cassandra/client/RingCache.java
index 9b04518,cc9b1b2..c3dbda5
--- a/src/java/org/apache/cassandra/client/RingCache.java
+++ b/src/java/org/apache/cassandra/client/RingCache.java
@@@ -61,44 -61,47 +61,42 @@@ public class RingCach
public void refreshEndpointMap()
{
- try {
+ try
+ {
+ Cassandra.Client client = ConfigHelper.getClientFromOutputAddressList(conf);
- Cassandra.Client client = ConfigHelper.getClientFromOutputAddressList(conf);
+ String keyspace = ConfigHelper.getOutputKeyspace(conf);
+ List<TokenRange> ring = ConfigHelper.getOutputLocalDCOnly(conf)
+ ? client.describe_local_ring(keyspace)
+ : client.describe_ring(keyspace);
+ rangeMap = ArrayListMultimap.create();
- List<TokenRange> ring = client.describe_ring(ConfigHelper.getOutputKeyspace(conf));
- rangeMap = ArrayListMultimap.create();
-
- for (TokenRange range : ring)
+ for (TokenRange range : ring)
+ {
+ Token<?> left = partitioner.getTokenFactory().fromString(range.start_token);
+ Token<?> right = partitioner.getTokenFactory().fromString(range.end_token);
+ Range<Token> r = new Range<Token>(left, right, partitioner);
+ for (String host : range.endpoints)
{
- Token<?> left = partitioner.getTokenFactory().fromString(range.start_token);
- Token<?> right = partitioner.getTokenFactory().fromString(range.end_token);
- Range<Token> r = new Range<Token>(left, right, partitioner);
- for (String host : range.endpoints)
+ try
+ {
+ rangeMap.put(r, InetAddress.getByName(host));
- }
- catch (UnknownHostException e)
++ } catch (UnknownHostException e)
{
- try
- {
- rangeMap.put(r, InetAddress.getByName(host));
- }
- catch (UnknownHostException e)
- {
- throw new AssertionError(e); // host strings are IPs
- }
+ throw new AssertionError(e); // host strings are IPs
}
}
}
- catch (InvalidRequestException e)
- {
- throw new RuntimeException(e);
- }
- catch (IOException e)
- {
- throw new RuntimeException(e);
- }
- catch (TException e)
- {
- logger.debug("Error contacting seed list {} {}", ConfigHelper.getOutputInitialAddress(conf), e.getMessage());
- }
}
- catch (InvalidRequestException e)
- {
- throw new RuntimeException(e);
- }
- catch (IOException e)
++ catch (InvalidRequestException | IOException e)
+ {
+ throw new RuntimeException(e);
+ }
+ catch (TException e)
+ {
- logger.debug("Error contacting seed list" + ConfigHelper.getOutputInitialAddress(conf) + " " + e.getMessage());
++ logger.debug("Error contacting seed list {} {}", ConfigHelper.getOutputInitialAddress(conf), e.getMessage());
+ }
+ }
/** ListMultimap promises to return a List for get(K) */
public List<InetAddress> getEndpoint(Range<Token> range)
[5/5] git commit: Merge branch 'cassandra-2.1' into trunk
Posted by al...@apache.org.
Merge branch 'cassandra-2.1' into trunk
Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/4e334ab8
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/4e334ab8
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/4e334ab8
Branch: refs/heads/trunk
Commit: 4e334ab82858972b768920dc2f752ea1f283ec2c
Parents: fe05727 7035cfc
Author: Aleksey Yeschenko <al...@apache.org>
Authored: Sun Aug 17 20:50:42 2014 +0300
Committer: Aleksey Yeschenko <al...@apache.org>
Committed: Sun Aug 17 20:50:42 2014 +0300
----------------------------------------------------------------------
CHANGES.txt | 1 +
.../org/apache/cassandra/client/RingCache.java | 58 ++++++++++----------
.../apache/cassandra/hadoop/ConfigHelper.java | 11 ++++
3 files changed, 40 insertions(+), 30 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cassandra/blob/4e334ab8/CHANGES.txt
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cassandra/blob/4e334ab8/src/java/org/apache/cassandra/hadoop/ConfigHelper.java
----------------------------------------------------------------------
[3/5] git commit: Merge branch 'cassandra-2.0' into cassandra-2.1.0
Posted by al...@apache.org.
Merge branch 'cassandra-2.0' into cassandra-2.1.0
Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/cb772e54
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/cb772e54
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/cb772e54
Branch: refs/heads/trunk
Commit: cb772e54461e79146e79d677b8721941a936f954
Parents: d087317 b87741c
Author: Aleksey Yeschenko <al...@apache.org>
Authored: Sun Aug 17 20:49:00 2014 +0300
Committer: Aleksey Yeschenko <al...@apache.org>
Committed: Sun Aug 17 20:49:00 2014 +0300
----------------------------------------------------------------------
----------------------------------------------------------------------
[4/5] git commit: Merge branch 'cassandra-2.1.0' into cassandra-2.1
Posted by al...@apache.org.
Merge branch 'cassandra-2.1.0' into cassandra-2.1
Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/7035cfcc
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/7035cfcc
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/7035cfcc
Branch: refs/heads/trunk
Commit: 7035cfccfcaf48ff64722942430ca8036e2e1e02
Parents: 35999b3 cb772e5
Author: Aleksey Yeschenko <al...@apache.org>
Authored: Sun Aug 17 20:49:58 2014 +0300
Committer: Aleksey Yeschenko <al...@apache.org>
Committed: Sun Aug 17 20:49:58 2014 +0300
----------------------------------------------------------------------
----------------------------------------------------------------------