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 2014/02/18 18:22:51 UTC
[5/8] git commit: Merge branch 'cassandra-2.0' into cassandra-2.1
Merge branch 'cassandra-2.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/f628bd8a
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/f628bd8a
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/f628bd8a
Branch: refs/heads/trunk
Commit: f628bd8a4d705c79883da2bb400b08a460fdcc01
Parents: 5f82aa3 500c62d
Author: Jonathan Ellis <jb...@apache.org>
Authored: Tue Feb 18 11:21:29 2014 -0600
Committer: Jonathan Ellis <jb...@apache.org>
Committed: Tue Feb 18 11:22:24 2014 -0600
----------------------------------------------------------------------
CHANGES.txt | 1 +
build.xml | 2 +
conf/cassandra.yaml | 3 +
lib/licenses/super-csv-2.1.0.txt | 202 +++++++++++++++++++
lib/super-csv-2.1.0.jar | Bin 0 -> 91473 bytes
.../org/apache/cassandra/config/Config.java | 49 ++++-
.../cassandra/config/DatabaseDescriptor.java | 40 +++-
.../config/YamlConfigurationLoader.java | 1 +
.../apache/cassandra/service/StorageProxy.java | 22 +-
.../cassandra/service/StorageProxyMBean.java | 3 +
.../org/apache/cassandra/tools/NodeProbe.java | 5 +
.../org/apache/cassandra/tools/NodeTool.java | 9 +-
12 files changed, 332 insertions(+), 5 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cassandra/blob/f628bd8a/CHANGES.txt
----------------------------------------------------------------------
diff --cc CHANGES.txt
index ea74c62,f0c116f..ee98f5d
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@@ -1,42 -1,5 +1,43 @@@
+2.1.0-beta1
+ * Add flush directory distinct from compaction directories (CASSANDRA-6357)
+ * Require JNA by default (CASSANDRA-6575)
+ * add listsnapshots command to nodetool (CASSANDRA-5742)
+ * Introduce AtomicBTreeColumns (CASSANDRA-6271, 6692)
+ * Multithreaded commitlog (CASSANDRA-3578)
+ * allocate fixed index summary memory pool and resample cold index summaries
+ to use less memory (CASSANDRA-5519)
+ * Removed multithreaded compaction (CASSANDRA-6142)
+ * Parallelize fetching rows for low-cardinality indexes (CASSANDRA-1337)
+ * change logging from log4j to logback (CASSANDRA-5883)
+ * switch to LZ4 compression for internode communication (CASSANDRA-5887)
+ * Stop using Thrift-generated Index* classes internally (CASSANDRA-5971)
+ * Remove 1.2 network compatibility code (CASSANDRA-5960)
+ * Remove leveled json manifest migration code (CASSANDRA-5996)
+ * Remove CFDefinition (CASSANDRA-6253)
+ * Use AtomicIntegerFieldUpdater in RefCountedMemory (CASSANDRA-6278)
+ * User-defined types for CQL3 (CASSANDRA-5590)
+ * Use of o.a.c.metrics in nodetool (CASSANDRA-5871, 6406)
+ * Batch read from OTC's queue and cleanup (CASSANDRA-1632)
+ * Secondary index support for collections (CASSANDRA-4511, 6383)
+ * SSTable metadata(Stats.db) format change (CASSANDRA-6356)
+ * Push composites support in the storage engine
+ (CASSANDRA-5417, CASSANDRA-6520)
+ * Add snapshot space used to cfstats (CASSANDRA-6231)
+ * Add cardinality estimator for key count estimation (CASSANDRA-5906)
+ * CF id is changed to be non-deterministic. Data dir/key cache are created
+ uniquely for CF id (CASSANDRA-5202)
+ * New counters implementation (CASSANDRA-6504)
+ * Replace UnsortedColumns, EmptyColumns, TreeMapBackedSortedColumns with new
+ ArrayBackedSortedColumns (CASSANDRA-6630, CASSANDRA-6662, CASSANDRA-6690)
+ * Add option to use row cache with a given amount of rows (CASSANDRA-5357)
+ * Avoid repairing already repaired data (CASSANDRA-5351)
+ * Reject counter updates with USING TTL/TIMESTAMP (CASSANDRA-6649)
+ * Replace index_interval with min/max_index_interval (CASSANDRA-6379)
+ * Lift limitation that order by columns must be selected for IN queries (CASSANDRA-4911)
+
+
2.0.6
+ * Allow per-dc enabling of hints (CASSANDRA-6157)
* Add compatibility for Hadoop 0.2.x (CASSANDRA-5201)
* Fix EstimatedHistogram races (CASSANDRA-6682)
* Failure detector correctly converts initial value to nanos (CASSANDRA-6658)
http://git-wip-us.apache.org/repos/asf/cassandra/blob/f628bd8a/build.xml
----------------------------------------------------------------------
diff --cc build.xml
index 1a8de44,77b2639..7afe3bf
--- a/build.xml
+++ b/build.xml
@@@ -384,11 -378,10 +384,12 @@@
<dependency groupId="org.apache.cassandra" artifactId="cassandra-thrift" version="${version}" />
<dependency groupId="com.yammer.metrics" artifactId="metrics-core" version="2.2.0" />
<dependency groupId="com.addthis.metrics" artifactId="reporter-config" version="2.1.0" />
- <dependency groupId="edu.stanford.ppl" artifactId="snaptree" version="0.1" />
<dependency groupId="org.mindrot" artifactId="jbcrypt" version="0.3m" />
+ <dependency groupId="io.airlift" artifactId="airline" version="0.6" />
<dependency groupId="io.netty" artifactId="netty" version="3.6.6.Final" />
+ <dependency groupId="com.google.code.findbugs" artifactId="jsr305" version="2.0.2" />
+ <dependency groupId="com.clearspring.analytics" artifactId="stream" version="2.5.2" />
+ <dependency groupId="net.sf.supercsv" artifactId="super-csv" version="2.1.0" />
</dependencyManagement>
<developer id="alakshman" name="Avinash Lakshman"/>
<developer id="antelder" name="Anthony Elder"/>
@@@ -472,10 -462,11 +473,11 @@@
<dependency groupId="com.yammer.metrics" artifactId="metrics-core"/>
<dependency groupId="com.addthis.metrics" artifactId="reporter-config"/>
<dependency groupId="com.thinkaurelius.thrift" artifactId="thrift-server" version="0.3.3"/>
+ <dependency groupId="com.clearspring.analytics" artifactId="stream" version="2.5.2" />
+ <dependency groupId="net.sf.supercsv" artifactId="super-csv" version="2.1.0" />
- <dependency groupId="log4j" artifactId="log4j"/>
- <!-- cassandra has a hard dependency on log4j, so force slf4j's log4j provider at runtime -->
- <dependency groupId="org.slf4j" artifactId="slf4j-log4j12" scope="runtime"/>
+ <dependency groupId="ch.qos.logback" artifactId="logback-core"/>
+ <dependency groupId="ch.qos.logback" artifactId="logback-classic"/>
<dependency groupId="org.apache.thrift" artifactId="libthrift"/>
<dependency groupId="org.apache.cassandra" artifactId="cassandra-thrift"/>
http://git-wip-us.apache.org/repos/asf/cassandra/blob/f628bd8a/conf/cassandra.yaml
----------------------------------------------------------------------
diff --cc conf/cassandra.yaml
index 2666316,4c9ad67..41bc038
--- a/conf/cassandra.yaml
+++ b/conf/cassandra.yaml
@@@ -29,7 -29,10 +29,10 @@@ num_tokens: 25
# that do not have vnodes enabled.
# initial_token:
+# See http://wiki.apache.org/cassandra/HintedHandoff
+ # May either be "true" or "false" to enable globally, or contain a list
+ # of data centers to enable per-datacenter.
+ # hinted_handoff_enabled: DC1,DC2
-# See http://wiki.apache.org/cassandra/HintedHandoff
hinted_handoff_enabled: true
# this defines the maximum amount of time a dead host will have hints
# generated. After it has been dead this long, new hints for it will not be
http://git-wip-us.apache.org/repos/asf/cassandra/blob/f628bd8a/src/java/org/apache/cassandra/config/Config.java
----------------------------------------------------------------------
diff --cc src/java/org/apache/cassandra/config/Config.java
index d5108e3,ceb8df0..ee55c92
--- a/src/java/org/apache/cassandra/config/Config.java
+++ b/src/java/org/apache/cassandra/config/Config.java
@@@ -199,9 -197,9 +211,12 @@@ public class Confi
public volatile int tombstone_warn_threshold = 1000;
public volatile int tombstone_failure_threshold = 100000;
+ public volatile Long index_summary_capacity_in_mb;
+ public volatile int index_summary_resize_interval_in_minutes = 60;
+
+ private static final CsvPreference STANDARD_SURROUNDING_SPACES_NEED_QUOTES = new CsvPreference.Builder(CsvPreference.STANDARD_PREFERENCE)
+ .surroundingSpacesNeedQuotes(true).build();
+
public static boolean getOutboundBindAny()
{
return outboundBindAny;
http://git-wip-us.apache.org/repos/asf/cassandra/blob/f628bd8a/src/java/org/apache/cassandra/config/DatabaseDescriptor.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cassandra/blob/f628bd8a/src/java/org/apache/cassandra/config/YamlConfigurationLoader.java
----------------------------------------------------------------------
diff --cc src/java/org/apache/cassandra/config/YamlConfigurationLoader.java
index aefc431,6b5a152..4a1280c
--- a/src/java/org/apache/cassandra/config/YamlConfigurationLoader.java
+++ b/src/java/org/apache/cassandra/config/YamlConfigurationLoader.java
@@@ -98,7 -90,8 +98,8 @@@ public class YamlConfigurationLoader im
MissingPropertiesChecker propertiesChecker = new MissingPropertiesChecker();
constructor.setPropertyUtils(propertiesChecker);
Yaml yaml = new Yaml(constructor);
- Config result = yaml.loadAs(input, Config.class);
+ Config result = yaml.loadAs(new ByteArrayInputStream(configBytes), Config.class);
+ result.configHintedHandoff();
propertiesChecker.check();
return result;
}
http://git-wip-us.apache.org/repos/asf/cassandra/blob/f628bd8a/src/java/org/apache/cassandra/service/StorageProxy.java
----------------------------------------------------------------------
diff --cc src/java/org/apache/cassandra/service/StorageProxy.java
index 05fdd61,14c1ce3..5a51838
--- a/src/java/org/apache/cassandra/service/StorageProxy.java
+++ b/src/java/org/apache/cassandra/service/StorageProxy.java
@@@ -1860,7 -1785,17 +1870,17 @@@ public class StorageProxy implements St
public static boolean shouldHint(InetAddress ep)
{
- if (!DatabaseDescriptor.hintedHandoffEnabled())
+ if (DatabaseDescriptor.shouldHintByDC())
+ {
+ final String dc = DatabaseDescriptor.getEndpointSnitch().getDatacenter(ep);
- // Disable DC specific hints
++ //Disable DC specific hints
+ if(!DatabaseDescriptor.hintedHandoffEnabled(dc))
+ {
+ HintedHandOffManager.instance.metrics.incrPastWindow(ep);
+ return false;
+ }
+ }
+ else if (!DatabaseDescriptor.hintedHandoffEnabled())
{
HintedHandOffManager.instance.metrics.incrPastWindow(ep);
return false;
http://git-wip-us.apache.org/repos/asf/cassandra/blob/f628bd8a/src/java/org/apache/cassandra/service/StorageProxyMBean.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cassandra/blob/f628bd8a/src/java/org/apache/cassandra/tools/NodeProbe.java
----------------------------------------------------------------------