merge from 2.0
Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/f97a981d Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/f97a981d Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/f97a981d Branch: refs/heads/trunk Commit: f97a981d560539565db540263eff3b0c80dbab8e Parents: 3a82adb 45955e6 Author: Jonathan Ellis <jbel...@apache.org> Authored: Thu Feb 6 10:15:04 2014 -0600 Committer: Jonathan Ellis <jbel...@apache.org> Committed: Thu Feb 6 10:15:04 2014 -0600 ---------------------------------------------------------------------- CHANGES.txt | 2 ++ .../cassandra/db/index/SecondaryIndexSearcher.java | 8 ++++++++ .../db/index/composites/CompositesSearcher.java | 1 + .../apache/cassandra/db/index/keys/KeysSearcher.java | 1 + .../org/apache/cassandra/service/StorageService.java | 12 ++++++++---- 5 files changed, 20 insertions(+), 4 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/cassandra/blob/f97a981d/CHANGES.txt ---------------------------------------------------------------------- diff --cc CHANGES.txt index 745e50b,b260b49..ddb6984 --- a/CHANGES.txt +++ b/CHANGES.txt @@@ -1,34 -1,6 +1,36 @@@ +2.1 + * add listsnapshots command to nodetool (CASSANDRA-5742) + * Introduce AtomicBTreeColumns (CASSANDRA-6271) + * 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 usage with ArrayBackedSortedColumns (CASSANDRA-6630) + + 2.0.6 + * Fix upgradesstables NPE for non-CF-based indexes (CASSANDRA-6645) + * Improve nodetool cfhistograms formatting (CASSANDRA-6360) * Expose bulk loading progress over JMX (CASSANDRA-4757) * Correctly handle null with IF conditions and TTL (CASSANDRA-6623) Merged from 1.2: http://git-wip-us.apache.org/repos/asf/cassandra/blob/f97a981d/src/java/org/apache/cassandra/db/index/SecondaryIndexSearcher.java ---------------------------------------------------------------------- diff --cc src/java/org/apache/cassandra/db/index/SecondaryIndexSearcher.java index a508a15,e93efd1..23f259b --- a/src/java/org/apache/cassandra/db/index/SecondaryIndexSearcher.java +++ b/src/java/org/apache/cassandra/db/index/SecondaryIndexSearcher.java @@@ -63,11 -59,11 +63,19 @@@ public abstract class SecondaryIndexSea for (IndexExpression expression : clause) { // skip columns belonging to a different index type - if (!columns.contains(expression.column_name)) + if (!columns.contains(expression.column)) continue; ++<<<<<<< HEAD + SecondaryIndex index = indexManager.getIndexForColumn(expression.column); + if (index == null || !expression.operator.allowsIndexQuery()) ++||||||| merged common ancestors ++ SecondaryIndex index = indexManager.getIndexForColumn(expression.column_name); ++ if (index == null || (expression.op != IndexOperator.EQ)) ++======= + SecondaryIndex index = indexManager.getIndexForColumn(expression.column_name); + if (index == null || index.getIndexCfs() == null || expression.op != IndexOperator.EQ) ++>>>>>>> cassandra-2.0 continue; int columns = index.getIndexCfs().getMeanColumns(); candidates.put(index, columns); http://git-wip-us.apache.org/repos/asf/cassandra/blob/f97a981d/src/java/org/apache/cassandra/db/index/composites/CompositesSearcher.java ---------------------------------------------------------------------- diff --cc src/java/org/apache/cassandra/db/index/composites/CompositesSearcher.java index 7dba9b0,90e7089..b441ff1 --- a/src/java/org/apache/cassandra/db/index/composites/CompositesSearcher.java +++ b/src/java/org/apache/cassandra/db/index/composites/CompositesSearcher.java @@@ -78,8 -78,9 +78,9 @@@ public class CompositesSearcher extend // to each row matching that clause. // TODO: allow merge join instead of just one index + loop final IndexExpression primary = highestSelectivityPredicate(filter.getClause()); - final CompositesIndex index = (CompositesIndex)indexManager.getIndexForColumn(primary.column_name); + final CompositesIndex index = (CompositesIndex)indexManager.getIndexForColumn(primary.column); assert index != null; + assert index.getIndexCfs() != null; final DecoratedKey indexKey = index.getIndexKeyFor(primary.value); if (logger.isDebugEnabled()) http://git-wip-us.apache.org/repos/asf/cassandra/blob/f97a981d/src/java/org/apache/cassandra/db/index/keys/KeysSearcher.java ---------------------------------------------------------------------- diff --cc src/java/org/apache/cassandra/db/index/keys/KeysSearcher.java index 2ed888f,5d82ba0..d491c93 --- a/src/java/org/apache/cassandra/db/index/keys/KeysSearcher.java +++ b/src/java/org/apache/cassandra/db/index/keys/KeysSearcher.java @@@ -65,8 -61,9 +65,9 @@@ public class KeysSearcher extends Secon // to each row matching that clause. // TODO: allow merge join instead of just one index + loop final IndexExpression primary = highestSelectivityPredicate(filter.getClause()); - final SecondaryIndex index = indexManager.getIndexForColumn(primary.column_name); + final SecondaryIndex index = indexManager.getIndexForColumn(primary.column); assert index != null; + assert index.getIndexCfs() != null; final DecoratedKey indexKey = index.getIndexKeyFor(primary.value); if (logger.isDebugEnabled()) http://git-wip-us.apache.org/repos/asf/cassandra/blob/f97a981d/src/java/org/apache/cassandra/service/StorageService.java ----------------------------------------------------------------------