svn commit: r1565569 - in /cassandra/site: publish/download/index.html src/settings.py

2014-02-07 Thread slebresne
Author: slebresne
Date: Fri Feb  7 08:01:02 2014
New Revision: 1565569

URL: http://svn.apache.org/r1565569
Log:
We're in 2014 now

Modified:
cassandra/site/publish/download/index.html
cassandra/site/src/settings.py

Modified: cassandra/site/publish/download/index.html
URL: 
http://svn.apache.org/viewvc/cassandra/site/publish/download/index.html?rev=1565569r1=1565568r2=1565569view=diff
==
--- cassandra/site/publish/download/index.html (original)
+++ cassandra/site/publish/download/index.html Fri Feb  7 08:01:02 2014
@@ -50,7 +50,7 @@
 
   p
   The latest stable release of Apache Cassandra is 2.0.5
-  (released on 2013-02-07).  iIf you're just
+  (released on 2014-02-07).  iIf you're just
   starting out, download this one./i
   /p
 
@@ -103,7 +103,7 @@
   Previous stable branches of Cassandra continue to see periodic maintenance
   for some time after a new major release is made. The lastest release on the
   1.2 branch is 1.2.15 (released on
-  2013-02-07).
+  2014-02-07).
   /p
 
   ul

Modified: cassandra/site/src/settings.py
URL: 
http://svn.apache.org/viewvc/cassandra/site/src/settings.py?rev=1565569r1=1565568r2=1565569view=diff
==
--- cassandra/site/src/settings.py (original)
+++ cassandra/site/src/settings.py Fri Feb  7 08:01:02 2014
@@ -93,13 +93,13 @@ SITE_POST_PROCESSORS = {
 
 class CassandraDef(object):
 oldstable_version = '1.2.15'
-oldstable_release_date = '2013-02-07'
+oldstable_release_date = '2014-02-07'
 oldstable_exists = True
 veryoldstable_version = '1.1.12'
 veryoldstable_release_date = '2013-05-27'
 veryoldstable_exists = True
 stable_version = '2.0.5'
-stable_release_date = '2013-02-07'
+stable_release_date = '2014-02-07'
 devel_version = '2.0.0-rc2'
 devel_release_date = '2013-08-20'
 devel_exists = False




[jira] [Updated] (CASSANDRA-6667) Mean cells per sstable is calculated incorrectly

2014-02-07 Thread Marcus Eriksson (JIRA)

 [ 
https://issues.apache.org/jira/browse/CASSANDRA-6667?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Marcus Eriksson updated CASSANDRA-6667:
---

Attachment: 6667-v3.txt

looks like we have the same bug in getMeanRowSize()

(seems v2 got committed in trunk with CASSANDRA-6671)

 Mean cells per sstable is calculated incorrectly
 

 Key: CASSANDRA-6667
 URL: https://issues.apache.org/jira/browse/CASSANDRA-6667
 Project: Cassandra
  Issue Type: Bug
Reporter: Jonathan Ellis
Assignee: Jonathan Ellis
Priority: Minor
 Fix For: 1.2.16, 2.0.6

 Attachments: 6667-v2.txt, 6667-v3.txt, 6667.txt


 We currently take the average of the mean for each partition, rather than 
 correctly weighting by cell count.  This affects hint paging as well as index 
 selectivity calculation.



--
This message was sent by Atlassian JIRA
(v6.1.5#6160)


[jira] [Commented] (CASSANDRA-6665) Batching in CqlRecordWriter

2014-02-07 Thread Christian Rolf (JIRA)

[ 
https://issues.apache.org/jira/browse/CASSANDRA-6665?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13894348#comment-13894348
 ] 

Christian Rolf commented on CASSANDRA-6665:
---

Thanks for the quick feedback John! 
The biggest issue we've seen is on larger rings, where the write tasks quickly 
run out of heap (caching is per replica). That's why I left the batching 
disabled by default.

 Batching in CqlRecordWriter
 ---

 Key: CASSANDRA-6665
 URL: https://issues.apache.org/jira/browse/CASSANDRA-6665
 Project: Cassandra
  Issue Type: Improvement
  Components: Hadoop
 Environment: Cluster of 12 nodes, each node with 256-384 vnodes. RPC 
 threads capped at 2048.
Reporter: Christian Rolf
Priority: Minor
 Attachments: batchWrite.txt


 We're writing from Pig map tasks, about 20 million records of one integer 
 each. 
 For the case of 12 nodes, with 256-384 vnodes per node, we get around 4000 
 threads per mapper. This obviously overloads the nodes, since the number of 
 RPC threads are capped, and the write fails. 
 Also, each transfer is only in the order of a few bytes of payload. Clearly 
 batching is a good solution.



--
This message was sent by Atlassian JIRA
(v6.1.5#6160)


[jira] [Commented] (CASSANDRA-6332) Cassandra startup failure: java.util.concurrent.ExecutionException: java.lang.RuntimeException: 706167655f74616773 is not defined as a collection

2014-02-07 Thread Mck SembWever (JIRA)

[ 
https://issues.apache.org/jira/browse/CASSANDRA-6332?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13894382#comment-13894382
 ] 

Mck SembWever commented on CASSANDRA-6332:
--

No recipe  to reproduce.
But on a 1.2.9 non-prod cluster we came across this problem.
The above exception occurs while reading commitlogs. Removing the commitlogs 
was a workaround.

 Cassandra startup failure:  java.util.concurrent.ExecutionException: 
 java.lang.RuntimeException: 706167655f74616773 is not defined as a collection
 --

 Key: CASSANDRA-6332
 URL: https://issues.apache.org/jira/browse/CASSANDRA-6332
 Project: Cassandra
  Issue Type: Bug
 Environment: Ubuntu 12.04
 Cassandra 2.0.1
Reporter: Prateek
Priority: Critical

 The cassandra node fails to startup with the following error message. This is 
 currently impacting availability of our production cluster so your quick 
 response is highly appreciated.
 ERROR 22:58:26,046 Exception encountered during startup
 java.lang.RuntimeException: java.util.concurrent.ExecutionException: 
 java.lang.RuntimeException: 706167655f74616773 is not defined as a collection
 at 
 org.apache.cassandra.utils.FBUtilities.waitOnFuture(FBUtilities.java:411)
 at 
 org.apache.cassandra.utils.FBUtilities.waitOnFutures(FBUtilities.java:400)
 at 
 org.apache.cassandra.db.commitlog.CommitLogReplayer.recover(CommitLogReplayer.java:273)
 at 
 org.apache.cassandra.db.commitlog.CommitLogReplayer.recover(CommitLogReplayer.java:96)
 at 
 org.apache.cassandra.db.commitlog.CommitLog.recover(CommitLog.java:146)
 at 
 org.apache.cassandra.db.commitlog.CommitLog.recover(CommitLog.java:126)
 at 
 org.apache.cassandra.service.CassandraDaemon.setup(CassandraDaemon.java:299)
 at 
 org.apache.cassandra.service.CassandraDaemon.activate(CassandraDaemon.java:442)
 at 
 org.apache.cassandra.service.CassandraDaemon.main(CassandraDaemon.java:485)
 Caused by: java.util.concurrent.ExecutionException: 
 java.lang.RuntimeException: 706167655f74616773 is not defined as a collection
 at java.util.concurrent.FutureTask.report(FutureTask.java:122)
 at java.util.concurrent.FutureTask.get(FutureTask.java:188)
 at 
 org.apache.cassandra.utils.FBUtilities.waitOnFuture(FBUtilities.java:407)
 ... 8 more
 Caused by: java.lang.RuntimeException: 706167655f74616773 is not defined as a 
 collection
 at 
 org.apache.cassandra.db.marshal.ColumnToCollectionType.compareCollectionMembers(ColumnToCollectionType.java:72)
 at 
 org.apache.cassandra.db.marshal.AbstractCompositeType.compare(AbstractCompositeType.java:85)
 at 
 org.apache.cassandra.db.marshal.AbstractCompositeType.compare(AbstractCompositeType.java:35)
 at 
 edu.stanford.ppl.concurrent.SnapTreeMap$1.compareTo(SnapTreeMap.java:538)
 at 
 edu.stanford.ppl.concurrent.SnapTreeMap.attemptUpdate(SnapTreeMap.java:1108)
 at 
 edu.stanford.ppl.concurrent.SnapTreeMap.attemptUpdate(SnapTreeMap.java:1192)
 at 
 edu.stanford.ppl.concurrent.SnapTreeMap.updateUnderRoot(SnapTreeMap.java:1059)
 at 
 edu.stanford.ppl.concurrent.SnapTreeMap.update(SnapTreeMap.java:1023)
 at 
 edu.stanford.ppl.concurrent.SnapTreeMap.putIfAbsent(SnapTreeMap.java:985)
 at 
 org.apache.cassandra.db.AtomicSortedColumns$Holder.addColumn(AtomicSortedColumns.java:323)
 at 
 org.apache.cassandra.db.AtomicSortedColumns.addAllWithSizeDelta(AtomicSortedColumns.java:195)
 at org.apache.cassandra.db.Memtable.resolve(Memtable.java:196)
 at org.apache.cassandra.db.Memtable.put(Memtable.java:160)
 at 
 org.apache.cassandra.db.ColumnFamilyStore.apply(ColumnFamilyStore.java:842)
 at org.apache.cassandra.db.Keyspace.apply(Keyspace.java:373)
 at org.apache.cassandra.db.Keyspace.apply(Keyspace.java:338)
 at 
 org.apache.cassandra.db.commitlog.CommitLogReplayer$1.runMayThrow(CommitLogReplayer.java:265)



--
This message was sent by Atlassian JIRA
(v6.1.5#6160)


[jira] [Created] (CASSANDRA-6673) Compaction assertion error on beforeAppend test due to decommision - add node and/or overlapping sstables

2014-02-07 Thread Ignace Desimpel (JIRA)
Ignace Desimpel created CASSANDRA-6673:
--

 Summary: Compaction assertion error on beforeAppend test due to 
decommision - add node and/or overlapping sstables
 Key: CASSANDRA-6673
 URL: https://issues.apache.org/jira/browse/CASSANDRA-6673
 Project: Cassandra
  Issue Type: Bug
  Components: Core
 Environment: linux, replication factor 1, 4 node, LCS, 3 compaction 
executors
Reporter: Ignace Desimpel
Priority: Minor
 Fix For: 2.0.4


Compaction assertion on test for LastWrittenKey compared to current key to 
write during compaction. This happens after a decommission of a node, and then 
the node is added again immediately (short time after decommssion). This makes 
the node shutdown. Restart of node a couple of time finally finishes the 
bootstrapping. During restarts to finish the bootstrapping there is also a 
warning message about overlapping sstables



--
This message was sent by Atlassian JIRA
(v6.1.5#6160)


[jira] [Updated] (CASSANDRA-6673) Compaction assertion error on beforeAppend test due to decommision - add node and/or overlapping sstables

2014-02-07 Thread Ignace Desimpel (JIRA)

 [ 
https://issues.apache.org/jira/browse/CASSANDRA-6673?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ignace Desimpel updated CASSANDRA-6673:
---

Attachment: beforeAppend.txt

Added more detailed exception info and mail thread

 Compaction assertion error on beforeAppend test due to decommision - add node 
 and/or overlapping sstables
 -

 Key: CASSANDRA-6673
 URL: https://issues.apache.org/jira/browse/CASSANDRA-6673
 Project: Cassandra
  Issue Type: Bug
  Components: Core
 Environment: linux, replication factor 1, 4 node, LCS, 3 compaction 
 executors
Reporter: Ignace Desimpel
Priority: Minor
 Fix For: 2.0.4

 Attachments: beforeAppend.txt


 Compaction assertion on test for LastWrittenKey compared to current key to 
 write during compaction. This happens after a decommission of a node, and 
 then the node is added again immediately (short time after decommssion). This 
 makes the node shutdown. Restart of node a couple of time finally finishes 
 the bootstrapping. During restarts to finish the bootstrapping there is also 
 a warning message about overlapping sstables



--
This message was sent by Atlassian JIRA
(v6.1.5#6160)


[jira] [Updated] (CASSANDRA-6674) TombstoneOverwhelmingException during/after batch insert

2014-02-07 Thread Machiel Groeneveld (JIRA)

 [ 
https://issues.apache.org/jira/browse/CASSANDRA-6674?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Machiel Groeneveld updated CASSANDRA-6674:
--

Summary: TombstoneOverwhelmingException during/after batch insert  (was: 
TombstoneOver)

 TombstoneOverwhelmingException during/after batch insert
 

 Key: CASSANDRA-6674
 URL: https://issues.apache.org/jira/browse/CASSANDRA-6674
 Project: Cassandra
  Issue Type: Bug
 Environment: 2.0.4; 2.0.5 
 Mac OS X
Reporter: Machiel Groeneveld
Priority: Critical

 ERROR [ReadStage:41] 2014-02-07 12:16:42,169 SliceQueryFilter.java (line 200) 
 Scanned over 10 tombstones in visits.visits; query aborted (see 
 tombstone_fail_threshold)
 ERROR [ReadStage:41] 2014-02-07 12:16:42,171 CassandraDaemon.java (line 192) 
 Exception in thread Thread[ReadStage:41,5,main]
 java.lang.RuntimeException: 
 org.apache.cassandra.db.filter.TombstoneOverwhelmingException
 at 
 org.apache.cassandra.service.StorageProxy$DroppableRunnable.run(StorageProxy.java:1935)
 at 
 java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
 at 
 java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
 at java.lang.Thread.run(Thread.java:724)
 Caused by: org.apache.cassandra.db.filter.TombstoneOverwhelmingException
 at 
 org.apache.cassandra.db.filter.SliceQueryFilter.collectReducedColumns(SliceQueryFilter.java:202)
 at 
 org.apache.cassandra.db.filter.QueryFilter.collateColumns(QueryFilter.java:122)
 at 
 org.apache.cassandra.db.filter.QueryFilter.collateOnDiskAtom(QueryFilter.java:80)
 at 
 org.apache.cassandra.db.RowIteratorFactory$2.getReduced(RowIteratorFactory.java:101)
 at 
 org.apache.cassandra.db.RowIteratorFactory$2.getReduced(RowIteratorFactory.java:75)
 at 
 org.apache.cassandra.utils.MergeIterator$ManyToOne.consume(MergeIterator.java:115)
 at 
 org.apache.cassandra.utils.MergeIterator$ManyToOne.computeNext(MergeIterator.java:98)
 at 
 com.google.common.collect.AbstractIterator.tryToComputeNext(AbstractIterator.java:143)
 at 
 com.google.common.collect.AbstractIterator.hasNext(AbstractIterator.java:138)
 at 
 org.apache.cassandra.db.ColumnFamilyStore$9.computeNext(ColumnFamilyStore.java:1607)
 at 
 org.apache.cassandra.db.ColumnFamilyStore$9.computeNext(ColumnFamilyStore.java:1603)
 at 
 com.google.common.collect.AbstractIterator.tryToComputeNext(AbstractIterator.java:143)
 at 
 com.google.common.collect.AbstractIterator.hasNext(AbstractIterator.java:138)
 at 
 org.apache.cassandra.db.ColumnFamilyStore.filter(ColumnFamilyStore.java:1754)
 at 
 org.apache.cassandra.db.ColumnFamilyStore.getRangeSlice(ColumnFamilyStore.java:1718)
 at 
 org.apache.cassandra.db.RangeSliceCommand.executeLocally(RangeSliceCommand.java:137)
 at 
 org.apache.cassandra.service.StorageProxy$LocalRangeSliceRunnable.runMayThrow(StorageProxy.java:1418)
 at 
 org.apache.cassandra.service.StorageProxy$DroppableRunnable.run(StorageProxy.java:1931)
 ... 3 more



--
This message was sent by Atlassian JIRA
(v6.1.5#6160)


[jira] [Issue Comment Deleted] (CASSANDRA-6675) Debian packaging: Recognize oracle java7 packages

2014-02-07 Thread JIRA

 [ 
https://issues.apache.org/jira/browse/CASSANDRA-6675?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Björn Edström updated CASSANDRA-6675:
-

Comment: was deleted

(was: Here's a patch)

 Debian packaging: Recognize oracle java7 packages
 -

 Key: CASSANDRA-6675
 URL: https://issues.apache.org/jira/browse/CASSANDRA-6675
 Project: Cassandra
  Issue Type: Improvement
  Components: Packaging
 Environment: debian
Reporter: Björn Edström
Priority: Minor

 debian/control could be updated to allow building/running with the oracle 
 java7 packages.



--
This message was sent by Atlassian JIRA
(v6.1.5#6160)


[jira] [Created] (CASSANDRA-6675) Debian packaging: Recognize oracle java7 packages

2014-02-07 Thread JIRA
Björn Edström created CASSANDRA-6675:


 Summary: Debian packaging: Recognize oracle java7 packages
 Key: CASSANDRA-6675
 URL: https://issues.apache.org/jira/browse/CASSANDRA-6675
 Project: Cassandra
  Issue Type: Improvement
  Components: Packaging
 Environment: debian
Reporter: Björn Edström
Priority: Minor


debian/control could be updated to allow building/running with the oracle java7 
packages.



--
This message was sent by Atlassian JIRA
(v6.1.5#6160)


[jira] [Created] (CASSANDRA-6674) TombstoneOver

2014-02-07 Thread Machiel Groeneveld (JIRA)
Machiel Groeneveld created CASSANDRA-6674:
-

 Summary: TombstoneOver
 Key: CASSANDRA-6674
 URL: https://issues.apache.org/jira/browse/CASSANDRA-6674
 Project: Cassandra
  Issue Type: Bug
 Environment: 2.0.4; 2.0.5 
Mac OS X
Reporter: Machiel Groeneveld
Priority: Critical


ERROR [ReadStage:41] 2014-02-07 12:16:42,169 SliceQueryFilter.java (line 200) 
Scanned over 10 tombstones in visits.visits; query aborted (see 
tombstone_fail_threshold)
ERROR [ReadStage:41] 2014-02-07 12:16:42,171 CassandraDaemon.java (line 192) 
Exception in thread Thread[ReadStage:41,5,main]
java.lang.RuntimeException: 
org.apache.cassandra.db.filter.TombstoneOverwhelmingException
at 
org.apache.cassandra.service.StorageProxy$DroppableRunnable.run(StorageProxy.java:1935)
at 
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:724)
Caused by: org.apache.cassandra.db.filter.TombstoneOverwhelmingException
at 
org.apache.cassandra.db.filter.SliceQueryFilter.collectReducedColumns(SliceQueryFilter.java:202)
at 
org.apache.cassandra.db.filter.QueryFilter.collateColumns(QueryFilter.java:122)
at 
org.apache.cassandra.db.filter.QueryFilter.collateOnDiskAtom(QueryFilter.java:80)
at 
org.apache.cassandra.db.RowIteratorFactory$2.getReduced(RowIteratorFactory.java:101)
at 
org.apache.cassandra.db.RowIteratorFactory$2.getReduced(RowIteratorFactory.java:75)
at 
org.apache.cassandra.utils.MergeIterator$ManyToOne.consume(MergeIterator.java:115)
at 
org.apache.cassandra.utils.MergeIterator$ManyToOne.computeNext(MergeIterator.java:98)
at 
com.google.common.collect.AbstractIterator.tryToComputeNext(AbstractIterator.java:143)
at 
com.google.common.collect.AbstractIterator.hasNext(AbstractIterator.java:138)
at 
org.apache.cassandra.db.ColumnFamilyStore$9.computeNext(ColumnFamilyStore.java:1607)
at 
org.apache.cassandra.db.ColumnFamilyStore$9.computeNext(ColumnFamilyStore.java:1603)
at 
com.google.common.collect.AbstractIterator.tryToComputeNext(AbstractIterator.java:143)
at 
com.google.common.collect.AbstractIterator.hasNext(AbstractIterator.java:138)
at 
org.apache.cassandra.db.ColumnFamilyStore.filter(ColumnFamilyStore.java:1754)
at 
org.apache.cassandra.db.ColumnFamilyStore.getRangeSlice(ColumnFamilyStore.java:1718)
at 
org.apache.cassandra.db.RangeSliceCommand.executeLocally(RangeSliceCommand.java:137)
at 
org.apache.cassandra.service.StorageProxy$LocalRangeSliceRunnable.runMayThrow(StorageProxy.java:1418)
at 
org.apache.cassandra.service.StorageProxy$DroppableRunnable.run(StorageProxy.java:1931)
... 3 more



--
This message was sent by Atlassian JIRA
(v6.1.5#6160)


[jira] [Updated] (CASSANDRA-6675) Debian packaging: Recognize oracle java7 packages

2014-02-07 Thread JIRA

 [ 
https://issues.apache.org/jira/browse/CASSANDRA-6675?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Björn Edström updated CASSANDRA-6675:
-

Attachment: CASSANDRA-6675.patch

Here's a simple patch.

 Debian packaging: Recognize oracle java7 packages
 -

 Key: CASSANDRA-6675
 URL: https://issues.apache.org/jira/browse/CASSANDRA-6675
 Project: Cassandra
  Issue Type: Improvement
  Components: Packaging
 Environment: debian
Reporter: Björn Edström
Priority: Minor
 Attachments: CASSANDRA-6675.patch


 debian/control could be updated to allow building/running with the oracle 
 java7 packages.



--
This message was sent by Atlassian JIRA
(v6.1.5#6160)


[jira] [Commented] (CASSANDRA-6674) TombstoneOverwhelmingException during/after batch insert

2014-02-07 Thread Machiel Groeneveld (JIRA)

[ 
https://issues.apache.org/jira/browse/CASSANDRA-6674?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13894426#comment-13894426
 ] 

Machiel Groeneveld commented on CASSANDRA-6674:
---

*Table*
create table IF NOT EXISTS visits.visits(
id text,
cookie_uuid text, cookie_uuid text, external_click_id text, session_id text,
visitor_ip text, user_agent text, uuid_hash text,
shop_product_id int, channel_id int, shop_id int, shop_category_id int,
type int, medium_id int, campaign_id int, channel_affiliate_id int,
default_cpc float,
created_at timestamp, updated_at timestamp, time_id int,
disabled int, has_referer boolean, known_visitor boolean, marketing boolean,
primary key(time_id, id));

*Insert statement*
BEGIN BATCH
insert into visits (
id, cookie_uuid, uuid_hash,
default_cpc, cookie_uuid,
external_click_id, session_id, visitor_ip, user_agent,
shop_product_id, channel_id, shop_id, shop_category_id,
type, medium_id, campaign_id, channel_affiliate_id,
disabled, has_referer, known_visitor, marketing,
created_at, updated_at, time_id)
VALUES(?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?) 
USING TTL 7776000
insert into visits_by_cookie (visit_id, time_id, cookie_uuid, shop_id, 
created_at, enabled_visit)
VALUES(?, ?, ?, ?, ?, ?) USING TTL 7776000
insert into visits_by_hash (visit_id, time_id, uuid_hash, shop_id, created_at)
VALUES(?, ?, ?, ?, ?) USING TTL 7776000
APPLY BATCH

*Select query that fails*
SELECT * FROM VISITS WHERE time_id = 

 TombstoneOverwhelmingException during/after batch insert
 

 Key: CASSANDRA-6674
 URL: https://issues.apache.org/jira/browse/CASSANDRA-6674
 Project: Cassandra
  Issue Type: Bug
 Environment: 2.0.4; 2.0.5 
 Mac OS X
Reporter: Machiel Groeneveld
Priority: Critical

 ERROR [ReadStage:41] 2014-02-07 12:16:42,169 SliceQueryFilter.java (line 200) 
 Scanned over 10 tombstones in visits.visits; query aborted (see 
 tombstone_fail_threshold)
 ERROR [ReadStage:41] 2014-02-07 12:16:42,171 CassandraDaemon.java (line 192) 
 Exception in thread Thread[ReadStage:41,5,main]
 java.lang.RuntimeException: 
 org.apache.cassandra.db.filter.TombstoneOverwhelmingException
 at 
 org.apache.cassandra.service.StorageProxy$DroppableRunnable.run(StorageProxy.java:1935)
 at 
 java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
 at 
 java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
 at java.lang.Thread.run(Thread.java:724)
 Caused by: org.apache.cassandra.db.filter.TombstoneOverwhelmingException
 at 
 org.apache.cassandra.db.filter.SliceQueryFilter.collectReducedColumns(SliceQueryFilter.java:202)
 at 
 org.apache.cassandra.db.filter.QueryFilter.collateColumns(QueryFilter.java:122)
 at 
 org.apache.cassandra.db.filter.QueryFilter.collateOnDiskAtom(QueryFilter.java:80)
 at 
 org.apache.cassandra.db.RowIteratorFactory$2.getReduced(RowIteratorFactory.java:101)
 at 
 org.apache.cassandra.db.RowIteratorFactory$2.getReduced(RowIteratorFactory.java:75)
 at 
 org.apache.cassandra.utils.MergeIterator$ManyToOne.consume(MergeIterator.java:115)
 at 
 org.apache.cassandra.utils.MergeIterator$ManyToOne.computeNext(MergeIterator.java:98)
 at 
 com.google.common.collect.AbstractIterator.tryToComputeNext(AbstractIterator.java:143)
 at 
 com.google.common.collect.AbstractIterator.hasNext(AbstractIterator.java:138)
 at 
 org.apache.cassandra.db.ColumnFamilyStore$9.computeNext(ColumnFamilyStore.java:1607)
 at 
 org.apache.cassandra.db.ColumnFamilyStore$9.computeNext(ColumnFamilyStore.java:1603)
 at 
 com.google.common.collect.AbstractIterator.tryToComputeNext(AbstractIterator.java:143)
 at 
 com.google.common.collect.AbstractIterator.hasNext(AbstractIterator.java:138)
 at 
 org.apache.cassandra.db.ColumnFamilyStore.filter(ColumnFamilyStore.java:1754)
 at 
 org.apache.cassandra.db.ColumnFamilyStore.getRangeSlice(ColumnFamilyStore.java:1718)
 at 
 org.apache.cassandra.db.RangeSliceCommand.executeLocally(RangeSliceCommand.java:137)
 at 
 org.apache.cassandra.service.StorageProxy$LocalRangeSliceRunnable.runMayThrow(StorageProxy.java:1418)
 at 
 org.apache.cassandra.service.StorageProxy$DroppableRunnable.run(StorageProxy.java:1931)
 ... 3 more



--
This message was sent by Atlassian JIRA
(v6.1.5#6160)


[jira] [Updated] (CASSANDRA-6674) TombstoneOverwhelmingException during/after batch insert

2014-02-07 Thread Machiel Groeneveld (JIRA)

 [ 
https://issues.apache.org/jira/browse/CASSANDRA-6674?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Machiel Groeneveld updated CASSANDRA-6674:
--

Description: 
Select query on a table where I'm doing insert fails with tombstone exception. 
The database is clean/empty before doing inserts, doing the first query after a 
few thousand records inserted. I don't understand where the tombstones are 
coming from as I'm not doing any deletes.

ERROR [ReadStage:41] 2014-02-07 12:16:42,169 SliceQueryFilter.java (line 200) 
Scanned over 10 tombstones in visits.visits; query aborted (see 
tombstone_fail_threshold)
ERROR [ReadStage:41] 2014-02-07 12:16:42,171 CassandraDaemon.java (line 192) 
Exception in thread Thread[ReadStage:41,5,main]
java.lang.RuntimeException: 
org.apache.cassandra.db.filter.TombstoneOverwhelmingException
at 
org.apache.cassandra.service.StorageProxy$DroppableRunnable.run(StorageProxy.java:1935)
at 
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:724)
Caused by: org.apache.cassandra.db.filter.TombstoneOverwhelmingException
at 
org.apache.cassandra.db.filter.SliceQueryFilter.collectReducedColumns(SliceQueryFilter.java:202)
at 
org.apache.cassandra.db.filter.QueryFilter.collateColumns(QueryFilter.java:122)
at 
org.apache.cassandra.db.filter.QueryFilter.collateOnDiskAtom(QueryFilter.java:80)
at 
org.apache.cassandra.db.RowIteratorFactory$2.getReduced(RowIteratorFactory.java:101)
at 
org.apache.cassandra.db.RowIteratorFactory$2.getReduced(RowIteratorFactory.java:75)
at 
org.apache.cassandra.utils.MergeIterator$ManyToOne.consume(MergeIterator.java:115)
at 
org.apache.cassandra.utils.MergeIterator$ManyToOne.computeNext(MergeIterator.java:98)
at 
com.google.common.collect.AbstractIterator.tryToComputeNext(AbstractIterator.java:143)
at 
com.google.common.collect.AbstractIterator.hasNext(AbstractIterator.java:138)
at 
org.apache.cassandra.db.ColumnFamilyStore$9.computeNext(ColumnFamilyStore.java:1607)
at 
org.apache.cassandra.db.ColumnFamilyStore$9.computeNext(ColumnFamilyStore.java:1603)
at 
com.google.common.collect.AbstractIterator.tryToComputeNext(AbstractIterator.java:143)
at 
com.google.common.collect.AbstractIterator.hasNext(AbstractIterator.java:138)
at 
org.apache.cassandra.db.ColumnFamilyStore.filter(ColumnFamilyStore.java:1754)
at 
org.apache.cassandra.db.ColumnFamilyStore.getRangeSlice(ColumnFamilyStore.java:1718)
at 
org.apache.cassandra.db.RangeSliceCommand.executeLocally(RangeSliceCommand.java:137)
at 
org.apache.cassandra.service.StorageProxy$LocalRangeSliceRunnable.runMayThrow(StorageProxy.java:1418)
at 
org.apache.cassandra.service.StorageProxy$DroppableRunnable.run(StorageProxy.java:1931)
... 3 more

  was:
ERROR [ReadStage:41] 2014-02-07 12:16:42,169 SliceQueryFilter.java (line 200) 
Scanned over 10 tombstones in visits.visits; query aborted (see 
tombstone_fail_threshold)
ERROR [ReadStage:41] 2014-02-07 12:16:42,171 CassandraDaemon.java (line 192) 
Exception in thread Thread[ReadStage:41,5,main]
java.lang.RuntimeException: 
org.apache.cassandra.db.filter.TombstoneOverwhelmingException
at 
org.apache.cassandra.service.StorageProxy$DroppableRunnable.run(StorageProxy.java:1935)
at 
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:724)
Caused by: org.apache.cassandra.db.filter.TombstoneOverwhelmingException
at 
org.apache.cassandra.db.filter.SliceQueryFilter.collectReducedColumns(SliceQueryFilter.java:202)
at 
org.apache.cassandra.db.filter.QueryFilter.collateColumns(QueryFilter.java:122)
at 
org.apache.cassandra.db.filter.QueryFilter.collateOnDiskAtom(QueryFilter.java:80)
at 
org.apache.cassandra.db.RowIteratorFactory$2.getReduced(RowIteratorFactory.java:101)
at 
org.apache.cassandra.db.RowIteratorFactory$2.getReduced(RowIteratorFactory.java:75)
at 
org.apache.cassandra.utils.MergeIterator$ManyToOne.consume(MergeIterator.java:115)
at 
org.apache.cassandra.utils.MergeIterator$ManyToOne.computeNext(MergeIterator.java:98)
at 
com.google.common.collect.AbstractIterator.tryToComputeNext(AbstractIterator.java:143)
at 
com.google.common.collect.AbstractIterator.hasNext(AbstractIterator.java:138)
at 
org.apache.cassandra.db.ColumnFamilyStore$9.computeNext(ColumnFamilyStore.java:1607)
at 
org.apache.cassandra.db.ColumnFamilyStore$9.computeNext(ColumnFamilyStore.java:1603)
at 

[jira] [Comment Edited] (CASSANDRA-6674) TombstoneOverwhelmingException during/after batch insert

2014-02-07 Thread Machiel Groeneveld (JIRA)

[ 
https://issues.apache.org/jira/browse/CASSANDRA-6674?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13894426#comment-13894426
 ] 

Machiel Groeneveld edited comment on CASSANDRA-6674 at 2/7/14 11:25 AM:


*Table*
create table IF NOT EXISTS visits.visits(
id text,
cookie_uuid text, cookie_uuid text, external_click_id text, session_id text,
visitor_ip text, user_agent text, uuid_hash text,
shop_product_id int, channel_id int, shop_id int, shop_category_id int,
type int, medium_id int, campaign_id int, channel_affiliate_id int,
default_cpc float,
created_at timestamp, updated_at timestamp, time_id int,
disabled int, has_referer boolean, known_visitor boolean, marketing boolean,
primary key(time_id, id));

*Insert statement*
BEGIN BATCH
insert into visits (
id, cookie_uuid, uuid_hash,
default_cpc, cookie_uuid,
external_click_id, session_id, visitor_ip, user_agent,
shop_product_id, channel_id, shop_id, shop_category_id,
type, medium_id, campaign_id, channel_affiliate_id,
disabled, has_referer, known_visitor, marketing,
created_at, updated_at, time_id)
VALUES(?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?) 
USING TTL 7776000
insert into visits_by_cookie (visit_id, time_id, cookie_uuid, shop_id, 
created_at, enabled_visit)
VALUES(?, ?, ?, ?, ?, ?) USING TTL 7776000
insert into visits_by_hash (visit_id, time_id, uuid_hash, shop_id, created_at)
VALUES(?, ?, ?, ?, ?) USING TTL 7776000
APPLY BATCH

*Select query that fails*
SELECT * FROM VISITS


was (Author: machielg):
*Table*
create table IF NOT EXISTS visits.visits(
id text,
cookie_uuid text, cookie_uuid text, external_click_id text, session_id text,
visitor_ip text, user_agent text, uuid_hash text,
shop_product_id int, channel_id int, shop_id int, shop_category_id int,
type int, medium_id int, campaign_id int, channel_affiliate_id int,
default_cpc float,
created_at timestamp, updated_at timestamp, time_id int,
disabled int, has_referer boolean, known_visitor boolean, marketing boolean,
primary key(time_id, id));

*Insert statement*
BEGIN BATCH
insert into visits (
id, cookie_uuid, uuid_hash,
default_cpc, cookie_uuid,
external_click_id, session_id, visitor_ip, user_agent,
shop_product_id, channel_id, shop_id, shop_category_id,
type, medium_id, campaign_id, channel_affiliate_id,
disabled, has_referer, known_visitor, marketing,
created_at, updated_at, time_id)
VALUES(?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?) 
USING TTL 7776000
insert into visits_by_cookie (visit_id, time_id, cookie_uuid, shop_id, 
created_at, enabled_visit)
VALUES(?, ?, ?, ?, ?, ?) USING TTL 7776000
insert into visits_by_hash (visit_id, time_id, uuid_hash, shop_id, created_at)
VALUES(?, ?, ?, ?, ?) USING TTL 7776000
APPLY BATCH

*Select query that fails*
SELECT * FROM VISITS WHERE time_id = 

 TombstoneOverwhelmingException during/after batch insert
 

 Key: CASSANDRA-6674
 URL: https://issues.apache.org/jira/browse/CASSANDRA-6674
 Project: Cassandra
  Issue Type: Bug
 Environment: 2.0.4; 2.0.5 
 Mac OS X
Reporter: Machiel Groeneveld
Priority: Critical

 Select query on a table where I'm doing insert fails with tombstone 
 exception. The database is clean/empty before doing inserts, doing the first 
 query after a few thousand records inserted. I don't understand where the 
 tombstones are coming from as I'm not doing any deletes.
 ERROR [ReadStage:41] 2014-02-07 12:16:42,169 SliceQueryFilter.java (line 200) 
 Scanned over 10 tombstones in visits.visits; query aborted (see 
 tombstone_fail_threshold)
 ERROR [ReadStage:41] 2014-02-07 12:16:42,171 CassandraDaemon.java (line 192) 
 Exception in thread Thread[ReadStage:41,5,main]
 java.lang.RuntimeException: 
 org.apache.cassandra.db.filter.TombstoneOverwhelmingException
 at 
 org.apache.cassandra.service.StorageProxy$DroppableRunnable.run(StorageProxy.java:1935)
 at 
 java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
 at 
 java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
 at java.lang.Thread.run(Thread.java:724)
 Caused by: org.apache.cassandra.db.filter.TombstoneOverwhelmingException
 at 
 org.apache.cassandra.db.filter.SliceQueryFilter.collectReducedColumns(SliceQueryFilter.java:202)
 at 
 org.apache.cassandra.db.filter.QueryFilter.collateColumns(QueryFilter.java:122)
 at 
 org.apache.cassandra.db.filter.QueryFilter.collateOnDiskAtom(QueryFilter.java:80)
 at 
 org.apache.cassandra.db.RowIteratorFactory$2.getReduced(RowIteratorFactory.java:101)
 at 
 org.apache.cassandra.db.RowIteratorFactory$2.getReduced(RowIteratorFactory.java:75)
 at 
 

[jira] [Created] (CASSANDRA-6676) Add ability to see layout of storage for CQL tables

2014-02-07 Thread Brian ONeill (JIRA)
Brian ONeill created CASSANDRA-6676:
---

 Summary: Add ability to see layout of storage for CQL tables
 Key: CASSANDRA-6676
 URL: https://issues.apache.org/jira/browse/CASSANDRA-6676
 Project: Cassandra
  Issue Type: Improvement
Reporter: Brian ONeill
Priority: Minor



Many of us use the CLI to see how data gets laid out in storage for tables 
created via CQL.  If we intend to deprecate CLI, it would be nice to have this 
ability in CQL.

See thread:
http://cassandra-user-incubator-apache-org.3065146.n2.nabble.com/CQL-list-command-td7592673.html



--
This message was sent by Atlassian JIRA
(v6.1.5#6160)


[jira] [Commented] (CASSANDRA-6666) Avoid accumulating tombstones after partial hint replay

2014-02-07 Thread Aleksey Yeschenko (JIRA)

[ 
https://issues.apache.org/jira/browse/CASSANDRA-?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13894481#comment-13894481
 ] 

Aleksey Yeschenko commented on CASSANDRA-:
--

LGTM

Nit: 1.2 has DatabaseDescriptor.getTombstoneDebugThreshold(), not 
DatabaseDescriptor.getTombstoneWarnThreshold()


 Avoid accumulating tombstones after partial hint replay
 ---

 Key: CASSANDRA-
 URL: https://issues.apache.org/jira/browse/CASSANDRA-
 Project: Cassandra
  Issue Type: Bug
  Components: Core
Reporter: Jonathan Ellis
Assignee: Jonathan Ellis
Priority: Minor
  Labels: hintedhandoff
 Fix For: 1.2.16, 2.0.6

 Attachments: .txt






--
This message was sent by Atlassian JIRA
(v6.1.5#6160)


[jira] [Commented] (CASSANDRA-6674) TombstoneOverwhelmingException during/after batch insert

2014-02-07 Thread Aleksey Yeschenko (JIRA)

[ 
https://issues.apache.org/jira/browse/CASSANDRA-6674?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13894485#comment-13894485
 ] 

Aleksey Yeschenko commented on CASSANDRA-6674:
--

How many of those inserted values are nulls?

 TombstoneOverwhelmingException during/after batch insert
 

 Key: CASSANDRA-6674
 URL: https://issues.apache.org/jira/browse/CASSANDRA-6674
 Project: Cassandra
  Issue Type: Bug
 Environment: 2.0.4; 2.0.5 
 Mac OS X
Reporter: Machiel Groeneveld
Priority: Critical

 Select query on a table where I'm doing insert fails with tombstone 
 exception. The database is clean/empty before doing inserts, doing the first 
 query after a few thousand records inserted. I don't understand where the 
 tombstones are coming from as I'm not doing any deletes.
 ERROR [ReadStage:41] 2014-02-07 12:16:42,169 SliceQueryFilter.java (line 200) 
 Scanned over 10 tombstones in visits.visits; query aborted (see 
 tombstone_fail_threshold)
 ERROR [ReadStage:41] 2014-02-07 12:16:42,171 CassandraDaemon.java (line 192) 
 Exception in thread Thread[ReadStage:41,5,main]
 java.lang.RuntimeException: 
 org.apache.cassandra.db.filter.TombstoneOverwhelmingException
 at 
 org.apache.cassandra.service.StorageProxy$DroppableRunnable.run(StorageProxy.java:1935)
 at 
 java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
 at 
 java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
 at java.lang.Thread.run(Thread.java:724)
 Caused by: org.apache.cassandra.db.filter.TombstoneOverwhelmingException
 at 
 org.apache.cassandra.db.filter.SliceQueryFilter.collectReducedColumns(SliceQueryFilter.java:202)
 at 
 org.apache.cassandra.db.filter.QueryFilter.collateColumns(QueryFilter.java:122)
 at 
 org.apache.cassandra.db.filter.QueryFilter.collateOnDiskAtom(QueryFilter.java:80)
 at 
 org.apache.cassandra.db.RowIteratorFactory$2.getReduced(RowIteratorFactory.java:101)
 at 
 org.apache.cassandra.db.RowIteratorFactory$2.getReduced(RowIteratorFactory.java:75)
 at 
 org.apache.cassandra.utils.MergeIterator$ManyToOne.consume(MergeIterator.java:115)
 at 
 org.apache.cassandra.utils.MergeIterator$ManyToOne.computeNext(MergeIterator.java:98)
 at 
 com.google.common.collect.AbstractIterator.tryToComputeNext(AbstractIterator.java:143)
 at 
 com.google.common.collect.AbstractIterator.hasNext(AbstractIterator.java:138)
 at 
 org.apache.cassandra.db.ColumnFamilyStore$9.computeNext(ColumnFamilyStore.java:1607)
 at 
 org.apache.cassandra.db.ColumnFamilyStore$9.computeNext(ColumnFamilyStore.java:1603)
 at 
 com.google.common.collect.AbstractIterator.tryToComputeNext(AbstractIterator.java:143)
 at 
 com.google.common.collect.AbstractIterator.hasNext(AbstractIterator.java:138)
 at 
 org.apache.cassandra.db.ColumnFamilyStore.filter(ColumnFamilyStore.java:1754)
 at 
 org.apache.cassandra.db.ColumnFamilyStore.getRangeSlice(ColumnFamilyStore.java:1718)
 at 
 org.apache.cassandra.db.RangeSliceCommand.executeLocally(RangeSliceCommand.java:137)
 at 
 org.apache.cassandra.service.StorageProxy$LocalRangeSliceRunnable.runMayThrow(StorageProxy.java:1418)
 at 
 org.apache.cassandra.service.StorageProxy$DroppableRunnable.run(StorageProxy.java:1931)
 ... 3 more



--
This message was sent by Atlassian JIRA
(v6.1.5#6160)


[jira] [Commented] (CASSANDRA-6676) Add ability to see layout of storage for CQL tables

2014-02-07 Thread Aleksey Yeschenko (JIRA)

[ 
https://issues.apache.org/jira/browse/CASSANDRA-6676?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13894487#comment-13894487
 ] 

Aleksey Yeschenko commented on CASSANDRA-6676:
--

CLI doesn't show you the full layout, because, for one, it hides the tombstones 
from you.

If you want to see how the data is really laid out, use sstable2json.

 Add ability to see layout of storage for CQL tables
 ---

 Key: CASSANDRA-6676
 URL: https://issues.apache.org/jira/browse/CASSANDRA-6676
 Project: Cassandra
  Issue Type: Improvement
Reporter: Brian ONeill
Priority: Minor

 Many of us use the CLI to see how data gets laid out in storage for tables 
 created via CQL.  If we intend to deprecate CLI, it would be nice to have 
 this ability in CQL.
 See thread:
 http://cassandra-user-incubator-apache-org.3065146.n2.nabble.com/CQL-list-command-td7592673.html



--
This message was sent by Atlassian JIRA
(v6.1.5#6160)


[jira] [Created] (CASSANDRA-6677) Commitlog replay makes dropped and recreated keyspace and column family rows reappear

2014-02-07 Thread Ignace Desimpel (JIRA)
Ignace Desimpel created CASSANDRA-6677:
--

 Summary: Commitlog replay makes dropped and recreated keyspace and 
column family rows reappear
 Key: CASSANDRA-6677
 URL: https://issues.apache.org/jira/browse/CASSANDRA-6677
 Project: Cassandra
  Issue Type: Bug
  Components: Core
Reporter: Ignace Desimpel
Priority: Minor
 Fix For: 2.0.4


A row can reappear after reboot of the database if the keyspace was dropped and 
recreated and then rebooted.

Thus before reboot : Create keyspaceX  + Create ColumnFamilyY + Insert row R + 
Drop keyspaceX  + Create keyspaceX  + Create ColumnFamilyY . This will result 
in no rows.

After reboot, the row R reappears !
Guess this will apply to all cassandra versions?
I will attach some sample test code.




--
This message was sent by Atlassian JIRA
(v6.1.5#6160)


[jira] [Commented] (CASSANDRA-6677) Commitlog replay makes dropped and recreated keyspace and column family rows reappear

2014-02-07 Thread Ignace Desimpel (JIRA)

[ 
https://issues.apache.org/jira/browse/CASSANDRA-6677?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13894498#comment-13894498
 ] 

Ignace Desimpel commented on CASSANDRA-6677:


Mail thread
I did the test again to get the log information.

There is a “Drop keyspace” message at the time I drop the keyspace. That 
actually must be working since after the drop, I do not get any records back.

But starting from the time of restart, I do not get any “Drop keyspace” message 
in the log.

I get the following lines (only part of log here ):

……….
2013-12-18 14:30:19.385 Initializing system_traces.sessions
2013-12-18 14:30:19.387 Initializing system_traces.events
2013-12-18 14:30:19.394 Replaying 
../../../../data/cac.cassandra.cac/dbcommitlog/CommitLog-3-1387372026304.log, 
../../../../data/cac.cassandra.cac/dbcommitlog/CommitLog-3-1387372026305.log
2013-12-18 14:30:19.414 Replaying 
../../../../data/cac.cassandra.cac/dbcommitlog/CommitLog-3-1387372026304.log
2013-12-18 14:30:20.291 CFS(Keyspace='CodeStructure', ColumnFamily='Labels') 
liveRatio is 10.79257274718398 (just-counted was 10.79257274718398).  
calculation took 720ms for 6128 columns
2013-12-18 14:30:20.331 CFS(Keyspace='CodeStructure', ColumnFamily='Class') 
liveRatio is 9.787147977470557 (just-counted was 9.574295954941116).  
calculation took 39ms for 1236 columns
2013-12-18 14:30:20.454 CFS(Keyspace='CodeStructure', 
ColumnFamily='ClassMethod') liveRatio is 10.415524860171194 (just-counted was 
10.415524860171194).  calculation took 122ms for 6630 columns
2013-12-18 14:30:21.294 Finished reading 
../../../../data/cac.cassandra.cac/dbcommitlog/CommitLog-3-1387372026304.log
2013-12-18 14:30:21.294 Replaying 
../../../../data/cac.cassandra.cac/dbcommitlog/CommitLog-3-1387372026305.log
2013-12-18 14:30:21.294 Finished reading 
../../../../data/cac.cassandra.cac/dbcommitlog/CommitLog-3-1387372026305.log
2013-12-18 14:30:21.298 Enqueuing flush of 
Memtable-ReverseIntegerFunction@663725448(270/2700 serialized/live bytes, 10 
ops)
2013-12-18 14:30:21.298 Writing 
Memtable-ReverseIntegerFunction@663725448(270/2700 serialized/live bytes, 10 
ops)
……more flushing of my memtables ……...
Log replay complete, 42237 replayed mutations
2013-12-18 14:30:25.428 Cassandra version: 2.0.2-SNAPSHOT
2013-12-18 14:30:25.428 Thrift API version: 19.38.0
……


Regards,

Ignace Desimpel


Do you have the logs from after the restart ? 
Did it include a Drop Keyspace…” INFO level message ? 

Cheers


-
Aaron Morton
New Zealand
@aaronmorton

Co-Founder  Principal Consultant
Apache Cassandra Consulting
http://www.thelastpickle.com



From: Desimpel, Ignace 
Sent: dinsdag 3 december 2013 14:45
To: u...@cassandra.apache.org
Subject: Commitlog replay makes dropped and recreated keyspace and column 
family rows reappear

Hi,

I have the impression that there is an issue with dropping a keyspace and then 
recreating the keyspace (and column families), combined with a restart of the 
database

My test goes as follows:

Create keyspace K and column families C.
Insert rows X0 column family  C0
Query for X0 : found rows : OK
Drop keyspace K
Query for X0 : found no rows : OK

Create keyspace K and column families C.
Insert rows X1 column family  C1
Query for X0 : not found : OK
Query for X1 : found : OK

Stop the Cassandra database
Start the Cassandra database
Query for X1 : found : OK
Query for X0 : found : NOT OK !

Did someone tested this scenario?

Using : CASSANDRA VERSION 2.02, thrift, java 1.7.x, centos

Ignace Desimpel



 Commitlog replay makes dropped and recreated keyspace and column family rows 
 reappear
 -

 Key: CASSANDRA-6677
 URL: https://issues.apache.org/jira/browse/CASSANDRA-6677
 Project: Cassandra
  Issue Type: Bug
  Components: Core
Reporter: Ignace Desimpel
Priority: Minor
 Fix For: 2.0.4


 A row can reappear after reboot of the database if the keyspace was dropped 
 and recreated and then rebooted.
 Thus before reboot : Create keyspaceX  + Create ColumnFamilyY + Insert row R 
 + Drop keyspaceX  + Create keyspaceX  + Create ColumnFamilyY . This will 
 result in no rows.
 After reboot, the row R reappears !
 Guess this will apply to all cassandra versions?
 I will attach some sample test code.



--
This message was sent by Atlassian JIRA
(v6.1.5#6160)


[jira] [Commented] (CASSANDRA-6677) Commitlog replay makes dropped and recreated keyspace and column family rows reappear

2014-02-07 Thread Ignace Desimpel (JIRA)

[ 
https://issues.apache.org/jira/browse/CASSANDRA-6677?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13894499#comment-13894499
 ] 

Ignace Desimpel commented on CASSANDRA-6677:


Sample code (uses cql-thrift). Same result with thrift only.

static void testCreateDropCreateRebootCQLA(String sHostName, int iPort) throws 
Exception{
CqlResult oCqlResult;
Charset UTF8 = Charset.forName(UTF8);
Cassandra.Client oCassClt = makeConnectionNoKs(sHostName, 
iPort);   

//Start from scratch or drop it here again
String sDropColKs = DROP KEYSPACE k1;
try{
oCqlResult = 
oCassClt.execute_cql3_query(ByteBuffer.wrap(sDropColKs.getBytes(UTF8)), 
Compression.NONE, ConsistencyLevel.QUORUM);
}catch(Throwable tt){}

String sCreateKs = CREATE KEYSPACE k1 WITH replication = 
{'class': 'SimpleStrategy', 'replication_factor' : 1} ;  
oCqlResult = 
oCassClt.execute_cql3_query(ByteBuffer.wrap(sCreateKs.getBytes(UTF8)), 
Compression.NONE, ConsistencyLevel.QUORUM);

oCassClt.set_keyspace(k1);
String sCreateColFam = CREATE COLUMNFAMILY c1 ( c1name text 
PRIMARY KEY); 
oCqlResult = 
oCassClt.execute_cql3_query(ByteBuffer.wrap(sCreateColFam.getBytes(UTF8)), 
Compression.NONE, ConsistencyLevel.QUORUM);

String sInsertOne = INSERT INTO c1 ( c1name ) VALUES ( 
'c1value') ; 
oCqlResult = 
oCassClt.execute_cql3_query(ByteBuffer.wrap(sInsertOne.getBytes(UTF8)), 
Compression.NONE, ConsistencyLevel.QUORUM);

String sSelectOne = SELECT c1name FROM c1; 
oCqlResult = 
oCassClt.execute_cql3_query(ByteBuffer.wrap(sSelectOne.getBytes(UTF8)), 
Compression.NONE, ConsistencyLevel.QUORUM);

assert oCqlResult.getRows().size() == 1 : There should be one 
row : count =  + oCqlResult.getRows().size();
assert new 
String(oCqlResult.getRows().get(0).getColumns().get(0).getValue(), 
UTF8).equals(c1value) 
: And the value is  + new 
String(oCqlResult.getRows().get(0).getColumns().get(0).getValue(), UTF8);

//Drop the keyspace 
oCqlResult = 
oCassClt.execute_cql3_query(ByteBuffer.wrap(sDropColKs.getBytes(UTF8)), 
Compression.NONE, ConsistencyLevel.QUORUM);

//Redo the keyspace creation and column family
oCqlResult = 
oCassClt.execute_cql3_query(ByteBuffer.wrap(sCreateKs.getBytes(UTF8)), 
Compression.NONE, ConsistencyLevel.QUORUM);
oCqlResult = 
oCassClt.execute_cql3_query(ByteBuffer.wrap(sCreateColFam.getBytes(UTF8)), 
Compression.NONE, ConsistencyLevel.QUORUM);

//Redo the select : should return ZERO rows since new keyspace 
was dropped
oCqlResult = 
oCassClt.execute_cql3_query(ByteBuffer.wrap(sSelectOne.getBytes(UTF8)), 
Compression.NONE, ConsistencyLevel.QUORUM);
assert oCqlResult.getRows().size() == 0 : There must be NO 
rows. Commitlog replay misses droppping and re-adding keysapce and makes row 
reappear;

//Now restart the cassandra database and execute : 
testCreateDropCreateRebootCQLB 
System.exit(0);
}

static void testCreateDropCreateRebootCQLB(String sHostName, int iPort) 
throws Exception{
CqlResult oCqlResult;
Cassandra.Client oCassClt = makeConnectionNoKs(sHostName, 
iPort);
oCassClt.set_keyspace(k1);

String sSelectOne = SELECT c1name FROM c1; 
oCqlResult = 
oCassClt.execute_cql3_query(ByteBuffer.wrap(sSelectOne.getBytes(Encoding.UTF8)),
 Compression.NONE, ConsistencyLevel.QUORUM);

assert oCqlResult.getRows().size() == 0 : Keyspace was dropped 
after inserting the one row. There shouldn't be a row. Count =  + 
oCqlResult.getRows().size(); 
System.out.println(Alldone);
}

 Commitlog replay makes dropped and recreated keyspace and column family rows 
 reappear
 -

 Key: CASSANDRA-6677
 URL: https://issues.apache.org/jira/browse/CASSANDRA-6677
 Project: Cassandra
  Issue Type: Bug
  Components: Core
Reporter: Ignace Desimpel
Priority: Minor
 Fix For: 2.0.4


 A row can reappear after reboot of the database if the keyspace was dropped 
 and recreated and then rebooted.
 Thus before reboot : Create keyspaceX  + Create ColumnFamilyY + Insert row R 
 + Drop keyspaceX  + 

[jira] [Commented] (CASSANDRA-6674) TombstoneOverwhelmingException during/after batch insert

2014-02-07 Thread Machiel Groeneveld (JIRA)

[ 
https://issues.apache.org/jira/browse/CASSANDRA-6674?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13894501#comment-13894501
 ] 

Machiel Groeneveld commented on CASSANDRA-6674:
---

Just rough estimate, but one value is 99% if the cases null and one other value 
80% of the records.

 TombstoneOverwhelmingException during/after batch insert
 

 Key: CASSANDRA-6674
 URL: https://issues.apache.org/jira/browse/CASSANDRA-6674
 Project: Cassandra
  Issue Type: Bug
 Environment: 2.0.4; 2.0.5 
 Mac OS X
Reporter: Machiel Groeneveld
Priority: Critical

 Select query on a table where I'm doing insert fails with tombstone 
 exception. The database is clean/empty before doing inserts, doing the first 
 query after a few thousand records inserted. I don't understand where the 
 tombstones are coming from as I'm not doing any deletes.
 ERROR [ReadStage:41] 2014-02-07 12:16:42,169 SliceQueryFilter.java (line 200) 
 Scanned over 10 tombstones in visits.visits; query aborted (see 
 tombstone_fail_threshold)
 ERROR [ReadStage:41] 2014-02-07 12:16:42,171 CassandraDaemon.java (line 192) 
 Exception in thread Thread[ReadStage:41,5,main]
 java.lang.RuntimeException: 
 org.apache.cassandra.db.filter.TombstoneOverwhelmingException
 at 
 org.apache.cassandra.service.StorageProxy$DroppableRunnable.run(StorageProxy.java:1935)
 at 
 java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
 at 
 java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
 at java.lang.Thread.run(Thread.java:724)
 Caused by: org.apache.cassandra.db.filter.TombstoneOverwhelmingException
 at 
 org.apache.cassandra.db.filter.SliceQueryFilter.collectReducedColumns(SliceQueryFilter.java:202)
 at 
 org.apache.cassandra.db.filter.QueryFilter.collateColumns(QueryFilter.java:122)
 at 
 org.apache.cassandra.db.filter.QueryFilter.collateOnDiskAtom(QueryFilter.java:80)
 at 
 org.apache.cassandra.db.RowIteratorFactory$2.getReduced(RowIteratorFactory.java:101)
 at 
 org.apache.cassandra.db.RowIteratorFactory$2.getReduced(RowIteratorFactory.java:75)
 at 
 org.apache.cassandra.utils.MergeIterator$ManyToOne.consume(MergeIterator.java:115)
 at 
 org.apache.cassandra.utils.MergeIterator$ManyToOne.computeNext(MergeIterator.java:98)
 at 
 com.google.common.collect.AbstractIterator.tryToComputeNext(AbstractIterator.java:143)
 at 
 com.google.common.collect.AbstractIterator.hasNext(AbstractIterator.java:138)
 at 
 org.apache.cassandra.db.ColumnFamilyStore$9.computeNext(ColumnFamilyStore.java:1607)
 at 
 org.apache.cassandra.db.ColumnFamilyStore$9.computeNext(ColumnFamilyStore.java:1603)
 at 
 com.google.common.collect.AbstractIterator.tryToComputeNext(AbstractIterator.java:143)
 at 
 com.google.common.collect.AbstractIterator.hasNext(AbstractIterator.java:138)
 at 
 org.apache.cassandra.db.ColumnFamilyStore.filter(ColumnFamilyStore.java:1754)
 at 
 org.apache.cassandra.db.ColumnFamilyStore.getRangeSlice(ColumnFamilyStore.java:1718)
 at 
 org.apache.cassandra.db.RangeSliceCommand.executeLocally(RangeSliceCommand.java:137)
 at 
 org.apache.cassandra.service.StorageProxy$LocalRangeSliceRunnable.runMayThrow(StorageProxy.java:1418)
 at 
 org.apache.cassandra.service.StorageProxy$DroppableRunnable.run(StorageProxy.java:1931)
 ... 3 more



--
This message was sent by Atlassian JIRA
(v6.1.5#6160)


[jira] [Commented] (CASSANDRA-6674) TombstoneOverwhelmingException during/after batch insert

2014-02-07 Thread Aleksey Yeschenko (JIRA)

[ 
https://issues.apache.org/jira/browse/CASSANDRA-6674?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13894505#comment-13894505
 ] 

Aleksey Yeschenko commented on CASSANDRA-6674:
--

Well, inserting a null equals to creating a tombstone - equal to doing a 
delete. There is your problem. Raise the tombstone fail threshold, or do more 
targeted SELECT queries.

 TombstoneOverwhelmingException during/after batch insert
 

 Key: CASSANDRA-6674
 URL: https://issues.apache.org/jira/browse/CASSANDRA-6674
 Project: Cassandra
  Issue Type: Bug
 Environment: 2.0.4; 2.0.5 
 Mac OS X
Reporter: Machiel Groeneveld
Priority: Critical

 Select query on a table where I'm doing insert fails with tombstone 
 exception. The database is clean/empty before doing inserts, doing the first 
 query after a few thousand records inserted. I don't understand where the 
 tombstones are coming from as I'm not doing any deletes.
 ERROR [ReadStage:41] 2014-02-07 12:16:42,169 SliceQueryFilter.java (line 200) 
 Scanned over 10 tombstones in visits.visits; query aborted (see 
 tombstone_fail_threshold)
 ERROR [ReadStage:41] 2014-02-07 12:16:42,171 CassandraDaemon.java (line 192) 
 Exception in thread Thread[ReadStage:41,5,main]
 java.lang.RuntimeException: 
 org.apache.cassandra.db.filter.TombstoneOverwhelmingException
 at 
 org.apache.cassandra.service.StorageProxy$DroppableRunnable.run(StorageProxy.java:1935)
 at 
 java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
 at 
 java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
 at java.lang.Thread.run(Thread.java:724)
 Caused by: org.apache.cassandra.db.filter.TombstoneOverwhelmingException
 at 
 org.apache.cassandra.db.filter.SliceQueryFilter.collectReducedColumns(SliceQueryFilter.java:202)
 at 
 org.apache.cassandra.db.filter.QueryFilter.collateColumns(QueryFilter.java:122)
 at 
 org.apache.cassandra.db.filter.QueryFilter.collateOnDiskAtom(QueryFilter.java:80)
 at 
 org.apache.cassandra.db.RowIteratorFactory$2.getReduced(RowIteratorFactory.java:101)
 at 
 org.apache.cassandra.db.RowIteratorFactory$2.getReduced(RowIteratorFactory.java:75)
 at 
 org.apache.cassandra.utils.MergeIterator$ManyToOne.consume(MergeIterator.java:115)
 at 
 org.apache.cassandra.utils.MergeIterator$ManyToOne.computeNext(MergeIterator.java:98)
 at 
 com.google.common.collect.AbstractIterator.tryToComputeNext(AbstractIterator.java:143)
 at 
 com.google.common.collect.AbstractIterator.hasNext(AbstractIterator.java:138)
 at 
 org.apache.cassandra.db.ColumnFamilyStore$9.computeNext(ColumnFamilyStore.java:1607)
 at 
 org.apache.cassandra.db.ColumnFamilyStore$9.computeNext(ColumnFamilyStore.java:1603)
 at 
 com.google.common.collect.AbstractIterator.tryToComputeNext(AbstractIterator.java:143)
 at 
 com.google.common.collect.AbstractIterator.hasNext(AbstractIterator.java:138)
 at 
 org.apache.cassandra.db.ColumnFamilyStore.filter(ColumnFamilyStore.java:1754)
 at 
 org.apache.cassandra.db.ColumnFamilyStore.getRangeSlice(ColumnFamilyStore.java:1718)
 at 
 org.apache.cassandra.db.RangeSliceCommand.executeLocally(RangeSliceCommand.java:137)
 at 
 org.apache.cassandra.service.StorageProxy$LocalRangeSliceRunnable.runMayThrow(StorageProxy.java:1418)
 at 
 org.apache.cassandra.service.StorageProxy$DroppableRunnable.run(StorageProxy.java:1931)
 ... 3 more



--
This message was sent by Atlassian JIRA
(v6.1.5#6160)


[jira] [Resolved] (CASSANDRA-6674) TombstoneOverwhelmingException during/after batch insert

2014-02-07 Thread Aleksey Yeschenko (JIRA)

 [ 
https://issues.apache.org/jira/browse/CASSANDRA-6674?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Aleksey Yeschenko resolved CASSANDRA-6674.
--

Resolution: Not A Problem

 TombstoneOverwhelmingException during/after batch insert
 

 Key: CASSANDRA-6674
 URL: https://issues.apache.org/jira/browse/CASSANDRA-6674
 Project: Cassandra
  Issue Type: Bug
 Environment: 2.0.4; 2.0.5 
 Mac OS X
Reporter: Machiel Groeneveld
Priority: Critical

 Select query on a table where I'm doing insert fails with tombstone 
 exception. The database is clean/empty before doing inserts, doing the first 
 query after a few thousand records inserted. I don't understand where the 
 tombstones are coming from as I'm not doing any deletes.
 ERROR [ReadStage:41] 2014-02-07 12:16:42,169 SliceQueryFilter.java (line 200) 
 Scanned over 10 tombstones in visits.visits; query aborted (see 
 tombstone_fail_threshold)
 ERROR [ReadStage:41] 2014-02-07 12:16:42,171 CassandraDaemon.java (line 192) 
 Exception in thread Thread[ReadStage:41,5,main]
 java.lang.RuntimeException: 
 org.apache.cassandra.db.filter.TombstoneOverwhelmingException
 at 
 org.apache.cassandra.service.StorageProxy$DroppableRunnable.run(StorageProxy.java:1935)
 at 
 java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
 at 
 java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
 at java.lang.Thread.run(Thread.java:724)
 Caused by: org.apache.cassandra.db.filter.TombstoneOverwhelmingException
 at 
 org.apache.cassandra.db.filter.SliceQueryFilter.collectReducedColumns(SliceQueryFilter.java:202)
 at 
 org.apache.cassandra.db.filter.QueryFilter.collateColumns(QueryFilter.java:122)
 at 
 org.apache.cassandra.db.filter.QueryFilter.collateOnDiskAtom(QueryFilter.java:80)
 at 
 org.apache.cassandra.db.RowIteratorFactory$2.getReduced(RowIteratorFactory.java:101)
 at 
 org.apache.cassandra.db.RowIteratorFactory$2.getReduced(RowIteratorFactory.java:75)
 at 
 org.apache.cassandra.utils.MergeIterator$ManyToOne.consume(MergeIterator.java:115)
 at 
 org.apache.cassandra.utils.MergeIterator$ManyToOne.computeNext(MergeIterator.java:98)
 at 
 com.google.common.collect.AbstractIterator.tryToComputeNext(AbstractIterator.java:143)
 at 
 com.google.common.collect.AbstractIterator.hasNext(AbstractIterator.java:138)
 at 
 org.apache.cassandra.db.ColumnFamilyStore$9.computeNext(ColumnFamilyStore.java:1607)
 at 
 org.apache.cassandra.db.ColumnFamilyStore$9.computeNext(ColumnFamilyStore.java:1603)
 at 
 com.google.common.collect.AbstractIterator.tryToComputeNext(AbstractIterator.java:143)
 at 
 com.google.common.collect.AbstractIterator.hasNext(AbstractIterator.java:138)
 at 
 org.apache.cassandra.db.ColumnFamilyStore.filter(ColumnFamilyStore.java:1754)
 at 
 org.apache.cassandra.db.ColumnFamilyStore.getRangeSlice(ColumnFamilyStore.java:1718)
 at 
 org.apache.cassandra.db.RangeSliceCommand.executeLocally(RangeSliceCommand.java:137)
 at 
 org.apache.cassandra.service.StorageProxy$LocalRangeSliceRunnable.runMayThrow(StorageProxy.java:1418)
 at 
 org.apache.cassandra.service.StorageProxy$DroppableRunnable.run(StorageProxy.java:1931)
 ... 3 more



--
This message was sent by Atlassian JIRA
(v6.1.5#6160)


[jira] [Created] (CASSANDRA-6678) Unwanted schema pull while upgrading nodes from 1.2 to 2.0

2014-02-07 Thread Sergio Bossa (JIRA)
Sergio Bossa created CASSANDRA-6678:
---

 Summary: Unwanted schema pull while upgrading nodes from 1.2 to 2.0
 Key: CASSANDRA-6678
 URL: https://issues.apache.org/jira/browse/CASSANDRA-6678
 Project: Cassandra
  Issue Type: Bug
  Components: Core
Reporter: Sergio Bossa


While upgrading from 1.2 to 2.0, the 1.2 nodes are not supposed to pull schemas 
from upgraded 2.0 nodes to avoid conflicts.

This relies on network version checks between the two nodes, but there's a bit 
of a race between the Gossiper, which is activated first, and the 
MessagingService, which is activated after the Gossiper and handles network 
version exchange: if a 1.2 node Gossiper gets a gossip message from a newly 2.0 
node *before* opening connections from the MessagingService, the version will 
still be 1.2, and the schema will be pulled from the new node.

A possible solution may be to have the Gossiper update the network version upon 
receiving the first gossip message of an upgraded node: thoughts?



--
This message was sent by Atlassian JIRA
(v6.1.5#6160)


[jira] [Commented] (CASSANDRA-6675) Debian packaging: Recognize oracle java7 packages

2014-02-07 Thread Brandon Williams (JIRA)

[ 
https://issues.apache.org/jira/browse/CASSANDRA-6675?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13894526#comment-13894526
 ] 

Brandon Williams commented on CASSANDRA-6675:
-

It seems to me your oracle package should be providing java-runtime and already 
work (after all, that's why sun-java6-jre isn't listed either.)  Mine provides 
the following:
{noformat}
Provides: java-runtime, java-runtime-headless, java-virtual-machine, 
java2-runtime, java2-runtime-headless, java5-runtime, java5-runtime-headless, 
java6-runtime, java6-runtime-headless, java7-runtime, java7-runtime-headless
{noformat}

 Debian packaging: Recognize oracle java7 packages
 -

 Key: CASSANDRA-6675
 URL: https://issues.apache.org/jira/browse/CASSANDRA-6675
 Project: Cassandra
  Issue Type: Improvement
  Components: Packaging
 Environment: debian
Reporter: Björn Edström
Priority: Minor
 Attachments: CASSANDRA-6675.patch


 debian/control could be updated to allow building/running with the oracle 
 java7 packages.



--
This message was sent by Atlassian JIRA
(v6.1.5#6160)


[jira] [Commented] (CASSANDRA-6678) Unwanted schema pull while upgrading nodes from 1.2 to 2.0

2014-02-07 Thread Brandon Williams (JIRA)

[ 
https://issues.apache.org/jira/browse/CASSANDRA-6678?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13894532#comment-13894532
 ] 

Brandon Williams commented on CASSANDRA-6678:
-

Perhaps a MessagingService.knowsVersion check is what we need.

 Unwanted schema pull while upgrading nodes from 1.2 to 2.0
 --

 Key: CASSANDRA-6678
 URL: https://issues.apache.org/jira/browse/CASSANDRA-6678
 Project: Cassandra
  Issue Type: Bug
  Components: Core
Reporter: Sergio Bossa

 While upgrading from 1.2 to 2.0, the 1.2 nodes are not supposed to pull 
 schemas from upgraded 2.0 nodes to avoid conflicts.
 This relies on network version checks between the two nodes, but there's a 
 bit of a race between the Gossiper, which is activated first, and the 
 MessagingService, which is activated after the Gossiper and handles network 
 version exchange: if a 1.2 node Gossiper gets a gossip message from a newly 
 2.0 node *before* opening connections from the MessagingService, the version 
 will still be 1.2, and the schema will be pulled from the new node.
 A possible solution may be to have the Gossiper update the network version 
 upon receiving the first gossip message of an upgraded node: thoughts?



--
This message was sent by Atlassian JIRA
(v6.1.5#6160)


[jira] [Commented] (CASSANDRA-6591) un-deprecate cache recentHitRate and expose in o.a.c.metrics

2014-02-07 Thread Chris Burroughs (JIRA)

[ 
https://issues.apache.org/jira/browse/CASSANDRA-6591?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13894537#comment-13894537
 ] 

Chris Burroughs commented on CASSANDRA-6591:


I think the EWMAs are comparable as long as they are using the same time unit 
and the values of each are captured at the same time.

 un-deprecate cache recentHitRate and expose in o.a.c.metrics
 

 Key: CASSANDRA-6591
 URL: https://issues.apache.org/jira/browse/CASSANDRA-6591
 Project: Cassandra
  Issue Type: Improvement
  Components: Core
Reporter: Chris Burroughs
Assignee: Chris Burroughs
Priority: Minor
 Attachments: j6591-1.2-v1.txt, j6591-1.2-v2.txt, j6591-1.2-v3.txt


 recentHitRate metrics were not added as part of CASSANDRA-4009 because there 
 is not an obvious way to do it with the Metrics library.  Instead hitRate was 
 added as an all time measurement since node restart.
 This does allow changes in cache rate (aka production performance problems)  
 to be detected.  Ideally there would be 1/5/15 moving averages for the hit 
 rate, but I'm not sure how to calculate that.  Instead I propose updating 
 recentHitRate on a fixed interval and exposing that as a Gauge.



--
This message was sent by Atlassian JIRA
(v6.1.5#6160)


[jira] [Commented] (CASSANDRA-6568) sstables incorrectly getting marked as not live

2014-02-07 Thread Chris Burroughs (JIRA)

[ 
https://issues.apache.org/jira/browse/CASSANDRA-6568?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13894549#comment-13894549
 ] 

Chris Burroughs commented on CASSANDRA-6568:


Possible related mailing list threads:
 * http://thread.gmane.org/gmane.comp.db.cassandra.user/38121/focus=38144
 * http://thread.gmane.org/gmane.comp.db.cassandra.user/37367/focus=37436
 * http://thread.gmane.org/gmane.comp.db.cassandra.user/32387/focus=32394

 sstables incorrectly getting marked as not live
 -

 Key: CASSANDRA-6568
 URL: https://issues.apache.org/jira/browse/CASSANDRA-6568
 Project: Cassandra
  Issue Type: Bug
  Components: Core
 Environment: 1.2.12 with several 1.2.13 patches
Reporter: Chris Burroughs
Assignee: Marcus Eriksson
 Fix For: 2.0.6

 Attachments: 0001-add-jmx-method-to-get-non-active-sstables.patch


 {noformat}
 -rw-rw-r-- 14 cassandra cassandra 1.4G Nov 25 19:46 
 /data/sstables/data/ks/cf/ks-cf-ic-402383-Data.db
 -rw-rw-r-- 14 cassandra cassandra  13G Nov 26 00:04 
 /data/sstables/data/ks/cf/ks-cf-ic-402430-Data.db
 -rw-rw-r-- 14 cassandra cassandra  13G Nov 26 05:03 
 /data/sstables/data/ks/cf/ks-cf-ic-405231-Data.db
 -rw-rw-r-- 31 cassandra cassandra  21G Nov 26 08:38 
 /data/sstables/data/ks/cf/ks-cf-ic-405232-Data.db
 -rw-rw-r--  2 cassandra cassandra 2.6G Dec  3 13:44 
 /data/sstables/data/ks/cf/ks-cf-ic-434662-Data.db
 -rw-rw-r-- 14 cassandra cassandra 1.5G Dec  5 09:05 
 /data/sstables/data/ks/cf/ks-cf-ic-438698-Data.db
 -rw-rw-r--  2 cassandra cassandra 3.1G Dec  6 12:10 
 /data/sstables/data/ks/cf/ks-cf-ic-440983-Data.db
 -rw-rw-r--  2 cassandra cassandra  96M Dec  8 01:52 
 /data/sstables/data/ks/cf/ks-cf-ic-444041-Data.db
 -rw-rw-r--  2 cassandra cassandra 3.3G Dec  9 16:37 
 /data/sstables/data/ks/cf/ks-cf-ic-451116-Data.db
 -rw-rw-r--  2 cassandra cassandra 876M Dec 10 11:23 
 /data/sstables/data/ks/cf/ks-cf-ic-453552-Data.db
 -rw-rw-r--  2 cassandra cassandra 891M Dec 11 03:21 
 /data/sstables/data/ks/cf/ks-cf-ic-454518-Data.db
 -rw-rw-r--  2 cassandra cassandra 102M Dec 11 12:27 
 /data/sstables/data/ks/cf/ks-cf-ic-455429-Data.db
 -rw-rw-r--  2 cassandra cassandra 906M Dec 11 23:54 
 /data/sstables/data/ks/cf/ks-cf-ic-455533-Data.db
 -rw-rw-r--  1 cassandra cassandra 214M Dec 12 05:02 
 /data/sstables/data/ks/cf/ks-cf-ic-456426-Data.db
 -rw-rw-r--  1 cassandra cassandra 203M Dec 12 10:49 
 /data/sstables/data/ks/cf/ks-cf-ic-456879-Data.db
 -rw-rw-r--  1 cassandra cassandra  49M Dec 12 12:03 
 /data/sstables/data/ks/cf/ks-cf-ic-456963-Data.db
 -rw-rw-r-- 18 cassandra cassandra  20G Dec 25 01:09 
 /data/sstables/data/ks/cf/ks-cf-ic-507770-Data.db
 -rw-rw-r--  3 cassandra cassandra  12G Jan  8 04:22 
 /data/sstables/data/ks/cf/ks-cf-ic-567100-Data.db
 -rw-rw-r--  3 cassandra cassandra 957M Jan  8 22:51 
 /data/sstables/data/ks/cf/ks-cf-ic-569015-Data.db
 -rw-rw-r--  2 cassandra cassandra 923M Jan  9 17:04 
 /data/sstables/data/ks/cf/ks-cf-ic-571303-Data.db
 -rw-rw-r--  1 cassandra cassandra 821M Jan 10 08:20 
 /data/sstables/data/ks/cf/ks-cf-ic-574642-Data.db
 -rw-rw-r--  1 cassandra cassandra  18M Jan 10 08:48 
 /data/sstables/data/ks/cf/ks-cf-ic-574723-Data.db
 {noformat}
 I tried to do a user defined compaction on sstables from November and got it 
 is not an active sstable.  Live sstable count from jmx was about 7 while on 
 disk there were over 20.  Live vs total size showed about a ~50 GiB 
 difference.
 Forcing a gc from jconsole had no effect.  However, restarting the node 
 resulted in live sstables/bytes *increasing* to match what was on disk.  User 
 compaction could now compact the November sstables.  This cluster was last 
 restarted in mid December.
 I'm not sure what affect not live had on other operations of the cluster.  
 From the logs it seems that the files were sent at least at some point as 
 part of repair, but I don't know if they were being being used for read 
 requests or not.  Because the problem that got me looking in the first place 
 was poor performance I suspect they were  used for reads (and the reads were 
 slow because so many sstables were being read).  I presume based on their age 
 at the least they were being excluded from compaction.
 I'm not aware of any isLive() or getRefCount() to problematically confirm 
 which nodes have this problem.  In this cluster almost all columns have a 14 
 day TTL, based on the number of nodes with November sstables it appears to be 
 occurring on a significant fraction of the nodes.



--
This message was sent by Atlassian JIRA
(v6.1.5#6160)


[jira] [Commented] (CASSANDRA-6678) Unwanted schema pull while upgrading nodes from 1.2 to 2.0

2014-02-07 Thread Sergio Bossa (JIRA)

[ 
https://issues.apache.org/jira/browse/CASSANDRA-6678?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13894552#comment-13894552
 ] 

Sergio Bossa commented on CASSANDRA-6678:
-

Good point, way easier :)

 Unwanted schema pull while upgrading nodes from 1.2 to 2.0
 --

 Key: CASSANDRA-6678
 URL: https://issues.apache.org/jira/browse/CASSANDRA-6678
 Project: Cassandra
  Issue Type: Bug
  Components: Core
Reporter: Sergio Bossa

 While upgrading from 1.2 to 2.0, the 1.2 nodes are not supposed to pull 
 schemas from upgraded 2.0 nodes to avoid conflicts.
 This relies on network version checks between the two nodes, but there's a 
 bit of a race between the Gossiper, which is activated first, and the 
 MessagingService, which is activated after the Gossiper and handles network 
 version exchange: if a 1.2 node Gossiper gets a gossip message from a newly 
 2.0 node *before* opening connections from the MessagingService, the version 
 will still be 1.2, and the schema will be pulled from the new node.
 A possible solution may be to have the Gossiper update the network version 
 upon receiving the first gossip message of an upgraded node: thoughts?



--
This message was sent by Atlassian JIRA
(v6.1.5#6160)


[jira] [Comment Edited] (CASSANDRA-6674) TombstoneOverwhelmingException during/after batch insert

2014-02-07 Thread Machiel Groeneveld (JIRA)

[ 
https://issues.apache.org/jira/browse/CASSANDRA-6674?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13894501#comment-13894501
 ] 

Machiel Groeneveld edited comment on CASSANDRA-6674 at 2/7/14 2:19 PM:
---

Just rough estimate, but one value is 99% of the cases null and one other value 
80% of the records.


was (Author: machielg):
Just rough estimate, but one value is 99% if the cases null and one other value 
80% of the records.

 TombstoneOverwhelmingException during/after batch insert
 

 Key: CASSANDRA-6674
 URL: https://issues.apache.org/jira/browse/CASSANDRA-6674
 Project: Cassandra
  Issue Type: Bug
 Environment: 2.0.4; 2.0.5 
 Mac OS X
Reporter: Machiel Groeneveld
Priority: Critical

 Select query on a table where I'm doing insert fails with tombstone 
 exception. The database is clean/empty before doing inserts, doing the first 
 query after a few thousand records inserted. I don't understand where the 
 tombstones are coming from as I'm not doing any deletes.
 ERROR [ReadStage:41] 2014-02-07 12:16:42,169 SliceQueryFilter.java (line 200) 
 Scanned over 10 tombstones in visits.visits; query aborted (see 
 tombstone_fail_threshold)
 ERROR [ReadStage:41] 2014-02-07 12:16:42,171 CassandraDaemon.java (line 192) 
 Exception in thread Thread[ReadStage:41,5,main]
 java.lang.RuntimeException: 
 org.apache.cassandra.db.filter.TombstoneOverwhelmingException
 at 
 org.apache.cassandra.service.StorageProxy$DroppableRunnable.run(StorageProxy.java:1935)
 at 
 java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
 at 
 java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
 at java.lang.Thread.run(Thread.java:724)
 Caused by: org.apache.cassandra.db.filter.TombstoneOverwhelmingException
 at 
 org.apache.cassandra.db.filter.SliceQueryFilter.collectReducedColumns(SliceQueryFilter.java:202)
 at 
 org.apache.cassandra.db.filter.QueryFilter.collateColumns(QueryFilter.java:122)
 at 
 org.apache.cassandra.db.filter.QueryFilter.collateOnDiskAtom(QueryFilter.java:80)
 at 
 org.apache.cassandra.db.RowIteratorFactory$2.getReduced(RowIteratorFactory.java:101)
 at 
 org.apache.cassandra.db.RowIteratorFactory$2.getReduced(RowIteratorFactory.java:75)
 at 
 org.apache.cassandra.utils.MergeIterator$ManyToOne.consume(MergeIterator.java:115)
 at 
 org.apache.cassandra.utils.MergeIterator$ManyToOne.computeNext(MergeIterator.java:98)
 at 
 com.google.common.collect.AbstractIterator.tryToComputeNext(AbstractIterator.java:143)
 at 
 com.google.common.collect.AbstractIterator.hasNext(AbstractIterator.java:138)
 at 
 org.apache.cassandra.db.ColumnFamilyStore$9.computeNext(ColumnFamilyStore.java:1607)
 at 
 org.apache.cassandra.db.ColumnFamilyStore$9.computeNext(ColumnFamilyStore.java:1603)
 at 
 com.google.common.collect.AbstractIterator.tryToComputeNext(AbstractIterator.java:143)
 at 
 com.google.common.collect.AbstractIterator.hasNext(AbstractIterator.java:138)
 at 
 org.apache.cassandra.db.ColumnFamilyStore.filter(ColumnFamilyStore.java:1754)
 at 
 org.apache.cassandra.db.ColumnFamilyStore.getRangeSlice(ColumnFamilyStore.java:1718)
 at 
 org.apache.cassandra.db.RangeSliceCommand.executeLocally(RangeSliceCommand.java:137)
 at 
 org.apache.cassandra.service.StorageProxy$LocalRangeSliceRunnable.runMayThrow(StorageProxy.java:1418)
 at 
 org.apache.cassandra.service.StorageProxy$DroppableRunnable.run(StorageProxy.java:1931)
 ... 3 more



--
This message was sent by Atlassian JIRA
(v6.1.5#6160)


[jira] [Updated] (CASSANDRA-6678) Unwanted schema pull while upgrading nodes from 1.2 to 2.0

2014-02-07 Thread Sergio Bossa (JIRA)

 [ 
https://issues.apache.org/jira/browse/CASSANDRA-6678?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Sergio Bossa updated CASSANDRA-6678:


Attachment: CASSANDRA-6678-2_0.patch
CASSANDRA-6678-1_2.patch

Attached patches for 1.2 and 2.0.

 Unwanted schema pull while upgrading nodes from 1.2 to 2.0
 --

 Key: CASSANDRA-6678
 URL: https://issues.apache.org/jira/browse/CASSANDRA-6678
 Project: Cassandra
  Issue Type: Bug
  Components: Core
Reporter: Sergio Bossa
 Attachments: CASSANDRA-6678-1_2.patch, CASSANDRA-6678-2_0.patch


 While upgrading from 1.2 to 2.0, the 1.2 nodes are not supposed to pull 
 schemas from upgraded 2.0 nodes to avoid conflicts.
 This relies on network version checks between the two nodes, but there's a 
 bit of a race between the Gossiper, which is activated first, and the 
 MessagingService, which is activated after the Gossiper and handles network 
 version exchange: if a 1.2 node Gossiper gets a gossip message from a newly 
 2.0 node *before* opening connections from the MessagingService, the version 
 will still be 1.2, and the schema will be pulled from the new node.
 A possible solution may be to have the Gossiper update the network version 
 upon receiving the first gossip message of an upgraded node: thoughts?



--
This message was sent by Atlassian JIRA
(v6.1.5#6160)


[jira] [Commented] (CASSANDRA-6667) Mean cells per sstable is calculated incorrectly

2014-02-07 Thread Jonathan Ellis (JIRA)

[ 
https://issues.apache.org/jira/browse/CASSANDRA-6667?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13894569#comment-13894569
 ] 

Jonathan Ellis commented on CASSANDRA-6667:
---

Well, they're computing different things, so meanRowSize looks correct to me.

Will fix the CHANGES record.

 Mean cells per sstable is calculated incorrectly
 

 Key: CASSANDRA-6667
 URL: https://issues.apache.org/jira/browse/CASSANDRA-6667
 Project: Cassandra
  Issue Type: Bug
Reporter: Jonathan Ellis
Assignee: Jonathan Ellis
Priority: Minor
 Fix For: 1.2.16, 2.0.6

 Attachments: 6667-v2.txt, 6667-v3.txt, 6667.txt


 We currently take the average of the mean for each partition, rather than 
 correctly weighting by cell count.  This affects hint paging as well as index 
 selectivity calculation.



--
This message was sent by Atlassian JIRA
(v6.1.5#6160)


[4/8] git commit: Merge branch 'cassandra-1.2' into cassandra-2.0

2014-02-07 Thread brandonwilliams
Merge branch 'cassandra-1.2' into cassandra-2.0


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/fe5de338
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/fe5de338
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/fe5de338

Branch: refs/heads/cassandra-2.0
Commit: fe5de33838c5d7ca5ec1000140d9778a9767fe34
Parents: 6e0ce7a 31414fb
Author: Brandon Williams brandonwilli...@apache.org
Authored: Fri Feb 7 08:35:02 2014 -0600
Committer: Brandon Williams brandonwilli...@apache.org
Committed: Fri Feb 7 08:35:02 2014 -0600

--

--




[2/8] git commit: Fix unwanted schema pull while upgrading nodes from 1.2 to 2.0 Patch by Sergio Bossa, reviewed by brandonwilliams for CASSANDRA-6678

2014-02-07 Thread brandonwilliams
Fix unwanted schema pull while upgrading nodes from 1.2 to 2.0
Patch by Sergio Bossa, reviewed by brandonwilliams for CASSANDRA-6678


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/31414fb8
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/31414fb8
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/31414fb8

Branch: refs/heads/cassandra-2.0
Commit: 31414fb871c073a19a02dce5dda70bf3df0e5888
Parents: 8b6d87b
Author: Brandon Williams brandonwilli...@apache.org
Authored: Fri Feb 7 08:34:00 2014 -0600
Committer: Brandon Williams brandonwilli...@apache.org
Committed: Fri Feb 7 08:34:00 2014 -0600

--
 src/java/org/apache/cassandra/service/MigrationManager.java | 7 ---
 1 file changed, 4 insertions(+), 3 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/31414fb8/src/java/org/apache/cassandra/service/MigrationManager.java
--
diff --git a/src/java/org/apache/cassandra/service/MigrationManager.java 
b/src/java/org/apache/cassandra/service/MigrationManager.java
index 37d5f43..fd9eeda 100644
--- a/src/java/org/apache/cassandra/service/MigrationManager.java
+++ b/src/java/org/apache/cassandra/service/MigrationManager.java
@@ -138,9 +138,10 @@ public class MigrationManager
  * Don't request schema from nodes with a higher major (may have 
incompatible schema)
  * Don't request schema from fat clients
  */
-return MessagingService.instance().getVersion(endpoint) = 
MessagingService.VERSION_117
- MessagingService.instance().getVersion(endpoint) = 
MessagingService.current_version
- !Gossiper.instance.isFatClient(endpoint);
+return MessagingService.instance().knowsVersion(endpoint)
+ MessagingService.instance().getVersion(endpoint) = 
MessagingService.VERSION_117
+ MessagingService.instance().getVersion(endpoint) = 
MessagingService.current_version
+ !Gossiper.instance.isFatClient(endpoint);
 }
 
 public static boolean isReadyForBootstrap()



[3/8] git commit: Fix unwanted schema pull while upgrading nodes from 1.2 to 2.0 Patch by Sergio Bossa, reviewed by brandonwilliams for CASSANDRA-6678

2014-02-07 Thread brandonwilliams
Fix unwanted schema pull while upgrading nodes from 1.2 to 2.0
Patch by Sergio Bossa, reviewed by brandonwilliams for CASSANDRA-6678


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/31414fb8
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/31414fb8
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/31414fb8

Branch: refs/heads/trunk
Commit: 31414fb871c073a19a02dce5dda70bf3df0e5888
Parents: 8b6d87b
Author: Brandon Williams brandonwilli...@apache.org
Authored: Fri Feb 7 08:34:00 2014 -0600
Committer: Brandon Williams brandonwilli...@apache.org
Committed: Fri Feb 7 08:34:00 2014 -0600

--
 src/java/org/apache/cassandra/service/MigrationManager.java | 7 ---
 1 file changed, 4 insertions(+), 3 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/31414fb8/src/java/org/apache/cassandra/service/MigrationManager.java
--
diff --git a/src/java/org/apache/cassandra/service/MigrationManager.java 
b/src/java/org/apache/cassandra/service/MigrationManager.java
index 37d5f43..fd9eeda 100644
--- a/src/java/org/apache/cassandra/service/MigrationManager.java
+++ b/src/java/org/apache/cassandra/service/MigrationManager.java
@@ -138,9 +138,10 @@ public class MigrationManager
  * Don't request schema from nodes with a higher major (may have 
incompatible schema)
  * Don't request schema from fat clients
  */
-return MessagingService.instance().getVersion(endpoint) = 
MessagingService.VERSION_117
- MessagingService.instance().getVersion(endpoint) = 
MessagingService.current_version
- !Gossiper.instance.isFatClient(endpoint);
+return MessagingService.instance().knowsVersion(endpoint)
+ MessagingService.instance().getVersion(endpoint) = 
MessagingService.VERSION_117
+ MessagingService.instance().getVersion(endpoint) = 
MessagingService.current_version
+ !Gossiper.instance.isFatClient(endpoint);
 }
 
 public static boolean isReadyForBootstrap()



[1/8] git commit: Fix unwanted schema pull while upgrading nodes from 1.2 to 2.0 Patch by Sergio Bossa, reviewed by brandonwilliams for CASSANDRA-6678

2014-02-07 Thread brandonwilliams
Updated Branches:
  refs/heads/cassandra-1.2 8b6d87b86 - 31414fb87
  refs/heads/cassandra-2.0 6e0ce7a05 - 9e0700c07
  refs/heads/trunk 7a3e697d8 - f8b1a9e15


Fix unwanted schema pull while upgrading nodes from 1.2 to 2.0
Patch by Sergio Bossa, reviewed by brandonwilliams for CASSANDRA-6678


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/31414fb8
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/31414fb8
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/31414fb8

Branch: refs/heads/cassandra-1.2
Commit: 31414fb871c073a19a02dce5dda70bf3df0e5888
Parents: 8b6d87b
Author: Brandon Williams brandonwilli...@apache.org
Authored: Fri Feb 7 08:34:00 2014 -0600
Committer: Brandon Williams brandonwilli...@apache.org
Committed: Fri Feb 7 08:34:00 2014 -0600

--
 src/java/org/apache/cassandra/service/MigrationManager.java | 7 ---
 1 file changed, 4 insertions(+), 3 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/31414fb8/src/java/org/apache/cassandra/service/MigrationManager.java
--
diff --git a/src/java/org/apache/cassandra/service/MigrationManager.java 
b/src/java/org/apache/cassandra/service/MigrationManager.java
index 37d5f43..fd9eeda 100644
--- a/src/java/org/apache/cassandra/service/MigrationManager.java
+++ b/src/java/org/apache/cassandra/service/MigrationManager.java
@@ -138,9 +138,10 @@ public class MigrationManager
  * Don't request schema from nodes with a higher major (may have 
incompatible schema)
  * Don't request schema from fat clients
  */
-return MessagingService.instance().getVersion(endpoint) = 
MessagingService.VERSION_117
- MessagingService.instance().getVersion(endpoint) = 
MessagingService.current_version
- !Gossiper.instance.isFatClient(endpoint);
+return MessagingService.instance().knowsVersion(endpoint)
+ MessagingService.instance().getVersion(endpoint) = 
MessagingService.VERSION_117
+ MessagingService.instance().getVersion(endpoint) = 
MessagingService.current_version
+ !Gossiper.instance.isFatClient(endpoint);
 }
 
 public static boolean isReadyForBootstrap()



[5/8] git commit: Merge branch 'cassandra-1.2' into cassandra-2.0

2014-02-07 Thread brandonwilliams
Merge branch 'cassandra-1.2' into cassandra-2.0


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/fe5de338
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/fe5de338
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/fe5de338

Branch: refs/heads/trunk
Commit: fe5de33838c5d7ca5ec1000140d9778a9767fe34
Parents: 6e0ce7a 31414fb
Author: Brandon Williams brandonwilli...@apache.org
Authored: Fri Feb 7 08:35:02 2014 -0600
Committer: Brandon Williams brandonwilli...@apache.org
Committed: Fri Feb 7 08:35:02 2014 -0600

--

--




[8/8] git commit: Merge branch 'cassandra-2.0' into trunk

2014-02-07 Thread brandonwilliams
Merge branch 'cassandra-2.0' into trunk


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/f8b1a9e1
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/f8b1a9e1
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/f8b1a9e1

Branch: refs/heads/trunk
Commit: f8b1a9e1590dd8b0b2c4a4d698b8d3e2765f0cb3
Parents: 7a3e697 9e0700c
Author: Brandon Williams brandonwilli...@apache.org
Authored: Fri Feb 7 08:36:00 2014 -0600
Committer: Brandon Williams brandonwilli...@apache.org
Committed: Fri Feb 7 08:36:00 2014 -0600

--
 src/java/org/apache/cassandra/service/MigrationManager.java | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/f8b1a9e1/src/java/org/apache/cassandra/service/MigrationManager.java
--



[jira] [Resolved] (CASSANDRA-6676) Add ability to see layout of storage for CQL tables

2014-02-07 Thread Jonathan Ellis (JIRA)

 [ 
https://issues.apache.org/jira/browse/CASSANDRA-6676?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jonathan Ellis resolved CASSANDRA-6676.
---

Resolution: Not A Problem

 Add ability to see layout of storage for CQL tables
 ---

 Key: CASSANDRA-6676
 URL: https://issues.apache.org/jira/browse/CASSANDRA-6676
 Project: Cassandra
  Issue Type: Improvement
Reporter: Brian ONeill
Priority: Minor

 Many of us use the CLI to see how data gets laid out in storage for tables 
 created via CQL.  If we intend to deprecate CLI, it would be nice to have 
 this ability in CQL.
 See thread:
 http://cassandra-user-incubator-apache-org.3065146.n2.nabble.com/CQL-list-command-td7592673.html



--
This message was sent by Atlassian JIRA
(v6.1.5#6160)


[jira] [Resolved] (CASSANDRA-6677) Commitlog replay makes dropped and recreated keyspace and column family rows reappear

2014-02-07 Thread Jonathan Ellis (JIRA)

 [ 
https://issues.apache.org/jira/browse/CASSANDRA-6677?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jonathan Ellis resolved CASSANDRA-6677.
---

   Resolution: Duplicate
Fix Version/s: (was: 2.0.4)

see CASSANDRA-5202

 Commitlog replay makes dropped and recreated keyspace and column family rows 
 reappear
 -

 Key: CASSANDRA-6677
 URL: https://issues.apache.org/jira/browse/CASSANDRA-6677
 Project: Cassandra
  Issue Type: Bug
  Components: Core
Reporter: Ignace Desimpel
Priority: Minor

 A row can reappear after reboot of the database if the keyspace was dropped 
 and recreated and then rebooted.
 Thus before reboot : Create keyspaceX  + Create ColumnFamilyY + Insert row R 
 + Drop keyspaceX  + Create keyspaceX  + Create ColumnFamilyY . This will 
 result in no rows.
 After reboot, the row R reappears !
 Guess this will apply to all cassandra versions?
 I will attach some sample test code.



--
This message was sent by Atlassian JIRA
(v6.1.5#6160)


[3/3] git commit: Merge branch 'cassandra-2.0' into trunk

2014-02-07 Thread brandonwilliams
Merge branch 'cassandra-2.0' into trunk


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/f71ef609
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/f71ef609
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/f71ef609

Branch: refs/heads/trunk
Commit: f71ef609930a9f10691e8febd4bf7c984efe5114
Parents: f8b1a9e 3d5b5c3
Author: Brandon Williams brandonwilli...@apache.org
Authored: Fri Feb 7 08:54:29 2014 -0600
Committer: Brandon Williams brandonwilli...@apache.org
Committed: Fri Feb 7 08:54:29 2014 -0600

--
 src/java/org/apache/cassandra/service/CassandraDaemon.java | 3 +++
 1 file changed, 3 insertions(+)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/f71ef609/src/java/org/apache/cassandra/service/CassandraDaemon.java
--
diff --cc src/java/org/apache/cassandra/service/CassandraDaemon.java
index 0ad47ac,d87f6d8..179e955
--- a/src/java/org/apache/cassandra/service/CassandraDaemon.java
+++ b/src/java/org/apache/cassandra/service/CassandraDaemon.java
@@@ -20,8 -20,10 +20,9 @@@ package org.apache.cassandra.service
  import java.io.File;
  import java.io.IOException;
  import java.lang.management.ManagementFactory;
+ import java.lang.management.MemoryPoolMXBean;
  import java.net.InetAddress;
 -import java.net.MalformedURLException;
 -import java.net.URL;
 +import java.net.UnknownHostException;
  import java.util.Arrays;
  import java.util.Map;
  import java.util.UUID;



[2/3] git commit: Log heap pool sizes at startup. Patch by brandonwilliams, reviewed by Lyuben Todorov for CASSANDRA-6657

2014-02-07 Thread brandonwilliams
Log heap pool sizes at startup.
Patch by brandonwilliams, reviewed by Lyuben Todorov for CASSANDRA-6657


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/3d5b5c3a
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/3d5b5c3a
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/3d5b5c3a

Branch: refs/heads/trunk
Commit: 3d5b5c3a7e37532017e910ffc680e4f42d918c30
Parents: 9e0700c
Author: Brandon Williams brandonwilli...@apache.org
Authored: Fri Feb 7 08:53:49 2014 -0600
Committer: Brandon Williams brandonwilli...@apache.org
Committed: Fri Feb 7 08:53:49 2014 -0600

--
 src/java/org/apache/cassandra/service/CassandraDaemon.java | 3 +++
 1 file changed, 3 insertions(+)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/3d5b5c3a/src/java/org/apache/cassandra/service/CassandraDaemon.java
--
diff --git a/src/java/org/apache/cassandra/service/CassandraDaemon.java 
b/src/java/org/apache/cassandra/service/CassandraDaemon.java
index 1319836..d87f6d8 100644
--- a/src/java/org/apache/cassandra/service/CassandraDaemon.java
+++ b/src/java/org/apache/cassandra/service/CassandraDaemon.java
@@ -20,6 +20,7 @@ package org.apache.cassandra.service;
 import java.io.File;
 import java.io.IOException;
 import java.lang.management.ManagementFactory;
+import java.lang.management.MemoryPoolMXBean;
 import java.net.InetAddress;
 import java.net.MalformedURLException;
 import java.net.URL;
@@ -181,6 +182,8 @@ public class CassandraDaemon
 }
  */
 logger.info(Heap size: {}/{}, Runtime.getRuntime().totalMemory(), 
Runtime.getRuntime().maxMemory());
+for(MemoryPoolMXBean pool: ManagementFactory.getMemoryPoolMXBeans())
+logger.info({} {}: {}, pool.getName(), pool.getType(), 
pool.getPeakUsage());
 logger.info(Classpath: {}, System.getProperty(java.class.path));
 CLibrary.tryMlockall();
 



[1/3] git commit: Log heap pool sizes at startup. Patch by brandonwilliams, reviewed by Lyuben Todorov for CASSANDRA-6657

2014-02-07 Thread brandonwilliams
Updated Branches:
  refs/heads/cassandra-2.0 9e0700c07 - 3d5b5c3a7
  refs/heads/trunk f8b1a9e15 - f71ef6099


Log heap pool sizes at startup.
Patch by brandonwilliams, reviewed by Lyuben Todorov for CASSANDRA-6657


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/3d5b5c3a
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/3d5b5c3a
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/3d5b5c3a

Branch: refs/heads/cassandra-2.0
Commit: 3d5b5c3a7e37532017e910ffc680e4f42d918c30
Parents: 9e0700c
Author: Brandon Williams brandonwilli...@apache.org
Authored: Fri Feb 7 08:53:49 2014 -0600
Committer: Brandon Williams brandonwilli...@apache.org
Committed: Fri Feb 7 08:53:49 2014 -0600

--
 src/java/org/apache/cassandra/service/CassandraDaemon.java | 3 +++
 1 file changed, 3 insertions(+)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/3d5b5c3a/src/java/org/apache/cassandra/service/CassandraDaemon.java
--
diff --git a/src/java/org/apache/cassandra/service/CassandraDaemon.java 
b/src/java/org/apache/cassandra/service/CassandraDaemon.java
index 1319836..d87f6d8 100644
--- a/src/java/org/apache/cassandra/service/CassandraDaemon.java
+++ b/src/java/org/apache/cassandra/service/CassandraDaemon.java
@@ -20,6 +20,7 @@ package org.apache.cassandra.service;
 import java.io.File;
 import java.io.IOException;
 import java.lang.management.ManagementFactory;
+import java.lang.management.MemoryPoolMXBean;
 import java.net.InetAddress;
 import java.net.MalformedURLException;
 import java.net.URL;
@@ -181,6 +182,8 @@ public class CassandraDaemon
 }
  */
 logger.info(Heap size: {}/{}, Runtime.getRuntime().totalMemory(), 
Runtime.getRuntime().maxMemory());
+for(MemoryPoolMXBean pool: ManagementFactory.getMemoryPoolMXBeans())
+logger.info({} {}: {}, pool.getName(), pool.getType(), 
pool.getPeakUsage());
 logger.info(Classpath: {}, System.getProperty(java.class.path));
 CLibrary.tryMlockall();
 



[jira] [Commented] (CASSANDRA-6622) Streaming session failures during node replace of same address

2014-02-07 Thread Brandon Williams (JIRA)

[ 
https://issues.apache.org/jira/browse/CASSANDRA-6622?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13894609#comment-13894609
 ] 

Brandon Williams commented on CASSANDRA-6622:
-

bq. What i'm seeing is, the other nodes in the ring take around 2-3 seconds for 
PHI on the replacing node to drop below convict threshold.

You mean rise above it, so the node is still being convicted?  Can you add new 
logs?  Maybe now it actually is the restart event, so trying that patch with 
6658 might work.

The problem with just sleeping for RING_DELAY is that the reason we do that 
during bootstrap is to announce the range, but with replacement that shouldn't 
be needed.  If we sleep and it works we're papering over the real problem 
without understand what it is.

 Streaming session failures during node replace of same address
 --

 Key: CASSANDRA-6622
 URL: https://issues.apache.org/jira/browse/CASSANDRA-6622
 Project: Cassandra
  Issue Type: Bug
 Environment: RHEL6, cassandra-2.0.4
Reporter: Ravi Prasad
Assignee: Brandon Williams
 Attachments: 0001-don-t-signal-restart-of-dead-states.txt, 
 6622-2.0.txt, logs.tgz


 When using replace_address, Gossiper ApplicationState is set to hibernate, 
 which is a down state. We are seeing that the peer nodes are seeing streaming 
 plan request even before the Gossiper on them marks the replacing node as 
 dead. As a result, streaming on peer nodes convicts the replacing node by 
 closing the stream handler.  
 I think, making the StorageService thread on the replacing node, sleep for 
 BROADCAST_INTERVAL before bootstrapping, would avoid this scenario.
 Relevant logs from peer node (see that the Gossiper on peer node mark the 
 replacing node as down, 2 secs after  the streaming init request):
 {noformat}
  INFO [STREAM-INIT-/x.x.x.x:46436] 2014-01-26 20:42:24,388 
 StreamResultFuture.java (line 116) [Stream 
 #5c6cd940-86ca-11e3-90a0-411b913c0e88] Received streaming plan for Bootstrap
 
  INFO [GossipTasks:1] 2014-01-26 20:42:25,240 StreamResultFuture.java (line 
 181) [Stream #5c6cd940-86ca-11e3-90a0-411b913c0e88] Session with /x.x.x.x is 
 complete
  WARN [GossipTasks:1] 2014-01-26 20:42:25,240 StreamResultFuture.java (line 
 210) [Stream #5c6cd940-86ca-11e3-90a0-411b913c0e88] Stream failed
  INFO [GossipStage:1] 2014-01-26 20:42:25,242 Gossiper.java (line 850) 
 InetAddress /x.x.x.x is now DOWN
 ERROR [STREAM-IN-/x.x.x.x] 2014-01-26 20:42:25,766 StreamSession.java (line 
 410) [Stream #5c6cd940-86ca-11e3-90a0-411b913c0e88] Streaming error occurred
 java.lang.RuntimeException: Outgoing stream handler has been closed
 at 
 org.apache.cassandra.streaming.ConnectionHandler.sendMessage(ConnectionHandler.java:175)
 at 
 org.apache.cassandra.streaming.StreamSession.prepare(StreamSession.java:436)
 at 
 org.apache.cassandra.streaming.StreamSession.messageReceived(StreamSession.java:358)
 at 
 org.apache.cassandra.streaming.ConnectionHandler$IncomingMessageHandler.run(ConnectionHandler.java:293)
 at java.lang.Thread.run(Thread.java:722)
  INFO [STREAM-IN-/x.x.x.x] 2014-01-26 20:42:25,768 StreamResultFuture.java 
 (line 181) [Stream #5c6cd940-86ca-11e3-90a0-411b913c0e88] Session with 
 /x.x.x.x is complete
  WARN [STREAM-IN-/x.x.x.x] 2014-01-26 20:42:25,768 StreamResultFuture.java 
 (line 210) [Stream #5c6cd940-86ca-11e3-90a0-411b913c0e88] Stream failed
 {noformat}



--
This message was sent by Atlassian JIRA
(v6.1.5#6160)


[jira] [Commented] (CASSANDRA-6678) Unwanted schema pull while upgrading nodes from 1.2 to 2.0

2014-02-07 Thread JIRA

[ 
https://issues.apache.org/jira/browse/CASSANDRA-6678?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13894649#comment-13894649
 ] 

Piotr Kołaczkowski commented on CASSANDRA-6678:
---

For upgrade to work, do I need to patch 1.2? Or is it enough to patch 2.0?

 Unwanted schema pull while upgrading nodes from 1.2 to 2.0
 --

 Key: CASSANDRA-6678
 URL: https://issues.apache.org/jira/browse/CASSANDRA-6678
 Project: Cassandra
  Issue Type: Bug
  Components: Core
Reporter: Sergio Bossa
Assignee: Sergio Bossa
 Fix For: 1.2.16, 2.0.6

 Attachments: CASSANDRA-6678-1_2.patch, CASSANDRA-6678-2_0.patch


 While upgrading from 1.2 to 2.0, the 1.2 nodes are not supposed to pull 
 schemas from upgraded 2.0 nodes to avoid conflicts.
 This relies on network version checks between the two nodes, but there's a 
 bit of a race between the Gossiper, which is activated first, and the 
 MessagingService, which is activated after the Gossiper and handles network 
 version exchange: if a 1.2 node Gossiper gets a gossip message from a newly 
 2.0 node *before* opening connections from the MessagingService, the version 
 will still be 1.2, and the schema will be pulled from the new node.
 A possible solution may be to have the Gossiper update the network version 
 upon receiving the first gossip message of an upgraded node: thoughts?



--
This message was sent by Atlassian JIRA
(v6.1.5#6160)


[jira] [Commented] (CASSANDRA-6678) Unwanted schema pull while upgrading nodes from 1.2 to 2.0

2014-02-07 Thread JIRA

[ 
https://issues.apache.org/jira/browse/CASSANDRA-6678?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13894651#comment-13894651
 ] 

Piotr Kołaczkowski commented on CASSANDRA-6678:
---

Is there any workaround that could be applied to version 2.0 *only* so it can 
join a non-patched 1.2 cluster?

 Unwanted schema pull while upgrading nodes from 1.2 to 2.0
 --

 Key: CASSANDRA-6678
 URL: https://issues.apache.org/jira/browse/CASSANDRA-6678
 Project: Cassandra
  Issue Type: Bug
  Components: Core
Reporter: Sergio Bossa
Assignee: Sergio Bossa
 Fix For: 1.2.16, 2.0.6

 Attachments: CASSANDRA-6678-1_2.patch, CASSANDRA-6678-2_0.patch


 While upgrading from 1.2 to 2.0, the 1.2 nodes are not supposed to pull 
 schemas from upgraded 2.0 nodes to avoid conflicts.
 This relies on network version checks between the two nodes, but there's a 
 bit of a race between the Gossiper, which is activated first, and the 
 MessagingService, which is activated after the Gossiper and handles network 
 version exchange: if a 1.2 node Gossiper gets a gossip message from a newly 
 2.0 node *before* opening connections from the MessagingService, the version 
 will still be 1.2, and the schema will be pulled from the new node.
 A possible solution may be to have the Gossiper update the network version 
 upon receiving the first gossip message of an upgraded node: thoughts?



--
This message was sent by Atlassian JIRA
(v6.1.5#6160)


[jira] [Issue Comment Deleted] (CASSANDRA-6678) Unwanted schema pull while upgrading nodes from 1.2 to 2.0

2014-02-07 Thread JIRA

 [ 
https://issues.apache.org/jira/browse/CASSANDRA-6678?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Piotr Kołaczkowski updated CASSANDRA-6678:
--

Comment: was deleted

(was: For upgrade to work, do I need to patch 1.2? Or is it enough to patch 
2.0?)

 Unwanted schema pull while upgrading nodes from 1.2 to 2.0
 --

 Key: CASSANDRA-6678
 URL: https://issues.apache.org/jira/browse/CASSANDRA-6678
 Project: Cassandra
  Issue Type: Bug
  Components: Core
Reporter: Sergio Bossa
Assignee: Sergio Bossa
 Fix For: 1.2.16, 2.0.6

 Attachments: CASSANDRA-6678-1_2.patch, CASSANDRA-6678-2_0.patch


 While upgrading from 1.2 to 2.0, the 1.2 nodes are not supposed to pull 
 schemas from upgraded 2.0 nodes to avoid conflicts.
 This relies on network version checks between the two nodes, but there's a 
 bit of a race between the Gossiper, which is activated first, and the 
 MessagingService, which is activated after the Gossiper and handles network 
 version exchange: if a 1.2 node Gossiper gets a gossip message from a newly 
 2.0 node *before* opening connections from the MessagingService, the version 
 will still be 1.2, and the schema will be pulled from the new node.
 A possible solution may be to have the Gossiper update the network version 
 upon receiving the first gossip message of an upgraded node: thoughts?



--
This message was sent by Atlassian JIRA
(v6.1.5#6160)


[jira] [Assigned] (CASSANDRA-6679) CleanupTest occasional failure in 1.2

2014-02-07 Thread Jonathan Ellis (JIRA)

 [ 
https://issues.apache.org/jira/browse/CASSANDRA-6679?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jonathan Ellis reassigned CASSANDRA-6679:
-

Assignee: Marcus Eriksson

 CleanupTest occasional failure in 1.2
 -

 Key: CASSANDRA-6679
 URL: https://issues.apache.org/jira/browse/CASSANDRA-6679
 Project: Cassandra
  Issue Type: Test
  Components: Tests
 Environment: Debian Stable (Wheezy) amd64
 Oracle JVM 1.7.0_51-b13
Reporter: Michael Shuler
Assignee: Marcus Eriksson
Priority: Minor
 Attachments: system.log


 {noformat}
 test:
  [echo] running unit tests
 [junit] WARNING: multiple versions of ant detected in path for junit
 [junit]  
 jar:file:/usr/share/ant/lib/ant.jar!/org/apache/tools/ant/Project.class
 [junit]  and 
 jar:file:/home/mshuler/git/cassandra/build/lib/jars/ant-1.6.5.jar!/org/apache/tools/ant/Project.class
 [junit] Testsuite: org.apache.cassandra.db.CleanupTest
 [junit] Tests run: 2, Failures: 1, Errors: 0, Time elapsed: 6.508 sec
 [junit]
 [junit] - Standard Error -
 [junit]  WARN 15:27:11,566 No host ID found, created 
 e8a8a37c-56c5-49d5-8260-7a3dfc2174a7 (Note: This should happen exactly once 
 per node).
 [junit]  WARN 15:27:11,655 Generated random token 
 [0850c6b26994617235bec220dd17a6d6]. Random tokens will result in an 
 unbalanced ring; see http://wiki.apache.org/cassandra/Operations
 [junit] -  ---
 [junit] Testcase: testCleanup(org.apache.cassandra.db.CleanupTest): FAILED
 [junit] null
 [junit] junit.framework.AssertionFailedError
 [junit] at 
 org.apache.cassandra.db.CleanupTest.testCleanup(CleanupTest.java:87)
 [junit]
 [junit]
 [junit] Test org.apache.cassandra.db.CleanupTest FAILED
 BUILD FAILED
 {noformat}
 - loop through CleanupTest unit test 
 (https://issues.apache.org/jira/secure/attachment/12627493/test.sh)
 - system.log from failed test attached



--
This message was sent by Atlassian JIRA
(v6.1.5#6160)


git commit: revert unintentionally committed code from #6667

2014-02-07 Thread jbellis
Updated Branches:
  refs/heads/trunk f71ef6099 - d69529c3e


revert unintentionally committed code from #6667


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/d69529c3
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/d69529c3
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/d69529c3

Branch: refs/heads/trunk
Commit: d69529c3e5a3734e97254190d2049124c6f897e4
Parents: f71ef60
Author: Jonathan Ellis jbel...@apache.org
Authored: Fri Feb 7 10:12:38 2014 -0600
Committer: Jonathan Ellis jbel...@apache.org
Committed: Fri Feb 7 10:12:38 2014 -0600

--
 src/java/org/apache/cassandra/db/DataTracker.java | 5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/d69529c3/src/java/org/apache/cassandra/db/DataTracker.java
--
diff --git a/src/java/org/apache/cassandra/db/DataTracker.java 
b/src/java/org/apache/cassandra/db/DataTracker.java
index d90c0ff..e748ffa 100644
--- a/src/java/org/apache/cassandra/db/DataTracker.java
+++ b/src/java/org/apache/cassandra/db/DataTracker.java
@@ -440,9 +440,8 @@ public class DataTracker
 long count = 0;
 for (SSTableReader sstable : getSSTables())
 {
-long n = sstable.getEstimatedColumnCount().count();
-sum += sstable.getEstimatedColumnCount().mean() * n;
-count += n;
+sum += sstable.getEstimatedColumnCount().mean();
+count++;
 }
 return count  0 ? (int) (sum / count) : 0;
 }



[2/6] git commit: Fix mean cells and mean row size per sstable calculations patch by Paulo Gaspar, jbellis, and Marcus Eriksson for CASSANDRA-6667

2014-02-07 Thread jbellis
Fix mean cells and mean row size per sstable calculations
patch by Paulo Gaspar, jbellis, and Marcus Eriksson for CASSANDRA-6667


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/beefd0b8
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/beefd0b8
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/beefd0b8

Branch: refs/heads/cassandra-2.0
Commit: beefd0b8cc91054a559cdecfe5d972dffb20e0e7
Parents: 31414fb
Author: Jonathan Ellis jbel...@apache.org
Authored: Fri Feb 7 10:17:04 2014 -0600
Committer: Jonathan Ellis jbel...@apache.org
Committed: Fri Feb 7 10:18:21 2014 -0600

--
 CHANGES.txt   | 1 +
 src/java/org/apache/cassandra/db/ColumnFamilyStoreMBean.java  | 2 +-
 src/java/org/apache/cassandra/db/DataTracker.java | 7 ---
 .../org/apache/cassandra/metrics/ColumnFamilyMetrics.java | 5 +++--
 4 files changed, 9 insertions(+), 6 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/beefd0b8/CHANGES.txt
--
diff --git a/CHANGES.txt b/CHANGES.txt
index 4be97f1..5511e01 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -1,6 +1,7 @@
 1.2.16
  * Fix upgradesstables NPE for non-CF-based indexes (CASSANDRA-6645)
  * Fix partition and range deletes not triggering flush (CASSANDRA-6655)
+ * Fix mean cells and mean row size per sstable calculations (CASSANDRA-6667)
 
 
 1.2.15

http://git-wip-us.apache.org/repos/asf/cassandra/blob/beefd0b8/src/java/org/apache/cassandra/db/ColumnFamilyStoreMBean.java
--
diff --git a/src/java/org/apache/cassandra/db/ColumnFamilyStoreMBean.java 
b/src/java/org/apache/cassandra/db/ColumnFamilyStoreMBean.java
index 9ee7568..86bd860 100644
--- a/src/java/org/apache/cassandra/db/ColumnFamilyStoreMBean.java
+++ b/src/java/org/apache/cassandra/db/ColumnFamilyStoreMBean.java
@@ -194,7 +194,7 @@ public interface ColumnFamilyStoreMBean
 
 /**
  * @see org.apache.cassandra.metrics.ColumnFamilyMetrics#meanRowSize
- * @return the size of the smallest compacted row
+ * @return the average row size across all the sstables
  */
 @Deprecated
 public long getMeanRowSize();

http://git-wip-us.apache.org/repos/asf/cassandra/blob/beefd0b8/src/java/org/apache/cassandra/db/DataTracker.java
--
diff --git a/src/java/org/apache/cassandra/db/DataTracker.java 
b/src/java/org/apache/cassandra/db/DataTracker.java
index b128abb..3e271d3 100644
--- a/src/java/org/apache/cassandra/db/DataTracker.java
+++ b/src/java/org/apache/cassandra/db/DataTracker.java
@@ -389,11 +389,12 @@ public class DataTracker
 public int getMeanColumns()
 {
 long sum = 0;
-int count = 0;
+long count = 0;
 for (SSTableReader sstable : getSSTables())
 {
-sum += sstable.getEstimatedColumnCount().mean();
-count++;
+long n = sstable.getEstimatedColumnCount().count();
+sum += sstable.getEstimatedColumnCount().mean() * n;
+count += n;
 }
 return count  0 ? (int) (sum / count) : 0;
 }

http://git-wip-us.apache.org/repos/asf/cassandra/blob/beefd0b8/src/java/org/apache/cassandra/metrics/ColumnFamilyMetrics.java
--
diff --git a/src/java/org/apache/cassandra/metrics/ColumnFamilyMetrics.java 
b/src/java/org/apache/cassandra/metrics/ColumnFamilyMetrics.java
index cb13c22..a665365 100644
--- a/src/java/org/apache/cassandra/metrics/ColumnFamilyMetrics.java
+++ b/src/java/org/apache/cassandra/metrics/ColumnFamilyMetrics.java
@@ -213,8 +213,9 @@ public class ColumnFamilyMetrics
 long count = 0;
 for (SSTableReader sstable : cfs.getSSTables())
 {
-sum += sstable.getEstimatedRowSize().mean();
-count++;
+long n = sstable.getEstimatedRowSize().count();
+sum += sstable.getEstimatedRowSize().mean() * n;
+count += n;
 }
 return count  0 ? sum / count : 0;
 }



[6/6] git commit: Merge branch 'cassandra-2.0' into trunk

2014-02-07 Thread jbellis
Merge branch 'cassandra-2.0' into trunk


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/ef6d42cf
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/ef6d42cf
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/ef6d42cf

Branch: refs/heads/trunk
Commit: ef6d42cfc522b555d9b1c20a418e90d83f7a29a3
Parents: d69529c 56a615d
Author: Jonathan Ellis jbel...@apache.org
Authored: Fri Feb 7 10:18:48 2014 -0600
Committer: Jonathan Ellis jbel...@apache.org
Committed: Fri Feb 7 10:18:48 2014 -0600

--
 CHANGES.txt| 1 +
 src/java/org/apache/cassandra/db/ColumnFamilyStoreMBean.java   | 2 +-
 src/java/org/apache/cassandra/db/DataTracker.java  | 5 +++--
 src/java/org/apache/cassandra/metrics/ColumnFamilyMetrics.java | 5 +++--
 4 files changed, 8 insertions(+), 5 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/ef6d42cf/CHANGES.txt
--

http://git-wip-us.apache.org/repos/asf/cassandra/blob/ef6d42cf/src/java/org/apache/cassandra/db/ColumnFamilyStoreMBean.java
--

http://git-wip-us.apache.org/repos/asf/cassandra/blob/ef6d42cf/src/java/org/apache/cassandra/db/DataTracker.java
--

http://git-wip-us.apache.org/repos/asf/cassandra/blob/ef6d42cf/src/java/org/apache/cassandra/metrics/ColumnFamilyMetrics.java
--



[1/6] git commit: Fix mean cells and mean row size per sstable calculations patch by Paulo Gaspar, jbellis, and Marcus Eriksson for CASSANDRA-6667

2014-02-07 Thread jbellis
Updated Branches:
  refs/heads/cassandra-1.2 31414fb87 - beefd0b8c
  refs/heads/cassandra-2.0 3d5b5c3a7 - 56a615d73
  refs/heads/trunk d69529c3e - ef6d42cfc


Fix mean cells and mean row size per sstable calculations
patch by Paulo Gaspar, jbellis, and Marcus Eriksson for CASSANDRA-6667


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/beefd0b8
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/beefd0b8
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/beefd0b8

Branch: refs/heads/cassandra-1.2
Commit: beefd0b8cc91054a559cdecfe5d972dffb20e0e7
Parents: 31414fb
Author: Jonathan Ellis jbel...@apache.org
Authored: Fri Feb 7 10:17:04 2014 -0600
Committer: Jonathan Ellis jbel...@apache.org
Committed: Fri Feb 7 10:18:21 2014 -0600

--
 CHANGES.txt   | 1 +
 src/java/org/apache/cassandra/db/ColumnFamilyStoreMBean.java  | 2 +-
 src/java/org/apache/cassandra/db/DataTracker.java | 7 ---
 .../org/apache/cassandra/metrics/ColumnFamilyMetrics.java | 5 +++--
 4 files changed, 9 insertions(+), 6 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/beefd0b8/CHANGES.txt
--
diff --git a/CHANGES.txt b/CHANGES.txt
index 4be97f1..5511e01 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -1,6 +1,7 @@
 1.2.16
  * Fix upgradesstables NPE for non-CF-based indexes (CASSANDRA-6645)
  * Fix partition and range deletes not triggering flush (CASSANDRA-6655)
+ * Fix mean cells and mean row size per sstable calculations (CASSANDRA-6667)
 
 
 1.2.15

http://git-wip-us.apache.org/repos/asf/cassandra/blob/beefd0b8/src/java/org/apache/cassandra/db/ColumnFamilyStoreMBean.java
--
diff --git a/src/java/org/apache/cassandra/db/ColumnFamilyStoreMBean.java 
b/src/java/org/apache/cassandra/db/ColumnFamilyStoreMBean.java
index 9ee7568..86bd860 100644
--- a/src/java/org/apache/cassandra/db/ColumnFamilyStoreMBean.java
+++ b/src/java/org/apache/cassandra/db/ColumnFamilyStoreMBean.java
@@ -194,7 +194,7 @@ public interface ColumnFamilyStoreMBean
 
 /**
  * @see org.apache.cassandra.metrics.ColumnFamilyMetrics#meanRowSize
- * @return the size of the smallest compacted row
+ * @return the average row size across all the sstables
  */
 @Deprecated
 public long getMeanRowSize();

http://git-wip-us.apache.org/repos/asf/cassandra/blob/beefd0b8/src/java/org/apache/cassandra/db/DataTracker.java
--
diff --git a/src/java/org/apache/cassandra/db/DataTracker.java 
b/src/java/org/apache/cassandra/db/DataTracker.java
index b128abb..3e271d3 100644
--- a/src/java/org/apache/cassandra/db/DataTracker.java
+++ b/src/java/org/apache/cassandra/db/DataTracker.java
@@ -389,11 +389,12 @@ public class DataTracker
 public int getMeanColumns()
 {
 long sum = 0;
-int count = 0;
+long count = 0;
 for (SSTableReader sstable : getSSTables())
 {
-sum += sstable.getEstimatedColumnCount().mean();
-count++;
+long n = sstable.getEstimatedColumnCount().count();
+sum += sstable.getEstimatedColumnCount().mean() * n;
+count += n;
 }
 return count  0 ? (int) (sum / count) : 0;
 }

http://git-wip-us.apache.org/repos/asf/cassandra/blob/beefd0b8/src/java/org/apache/cassandra/metrics/ColumnFamilyMetrics.java
--
diff --git a/src/java/org/apache/cassandra/metrics/ColumnFamilyMetrics.java 
b/src/java/org/apache/cassandra/metrics/ColumnFamilyMetrics.java
index cb13c22..a665365 100644
--- a/src/java/org/apache/cassandra/metrics/ColumnFamilyMetrics.java
+++ b/src/java/org/apache/cassandra/metrics/ColumnFamilyMetrics.java
@@ -213,8 +213,9 @@ public class ColumnFamilyMetrics
 long count = 0;
 for (SSTableReader sstable : cfs.getSSTables())
 {
-sum += sstable.getEstimatedRowSize().mean();
-count++;
+long n = sstable.getEstimatedRowSize().count();
+sum += sstable.getEstimatedRowSize().mean() * n;
+count += n;
 }
 return count  0 ? sum / count : 0;
 }



[4/6] git commit: Merge branch 'cassandra-1.2' into cassandra-2.0

2014-02-07 Thread jbellis
Merge branch 'cassandra-1.2' into cassandra-2.0


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/56a615d7
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/56a615d7
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/56a615d7

Branch: refs/heads/trunk
Commit: 56a615d7397a937b8f6586fe2ecc79cfc2da28f0
Parents: 3d5b5c3 beefd0b
Author: Jonathan Ellis jbel...@apache.org
Authored: Fri Feb 7 10:18:31 2014 -0600
Committer: Jonathan Ellis jbel...@apache.org
Committed: Fri Feb 7 10:18:31 2014 -0600

--
 CHANGES.txt   | 1 +
 src/java/org/apache/cassandra/db/ColumnFamilyStoreMBean.java  | 2 +-
 src/java/org/apache/cassandra/db/DataTracker.java | 7 ---
 .../org/apache/cassandra/metrics/ColumnFamilyMetrics.java | 5 +++--
 4 files changed, 9 insertions(+), 6 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/56a615d7/CHANGES.txt
--
diff --cc CHANGES.txt
index 85c6533,5511e01..94cd19c
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@@ -1,42 -1,24 +1,43 @@@
 -1.2.16
 +2.0.6
 + * Failure detector correctly converts initial value to nanos (CASSANDRA-6658)
 + * Add nodetool taketoken to relocate vnodes (CASSANDRA-4445)
 + * 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)
 + * Account for range/row tombstones in tombstone drop
 +   time histogram (CASSANDRA-6522)
 +Merged from 1.2:
   * Fix upgradesstables NPE for non-CF-based indexes (CASSANDRA-6645)
   * Fix partition and range deletes not triggering flush (CASSANDRA-6655)
+  * Fix mean cells and mean row size per sstable calculations (CASSANDRA-6667)
  
 -
 -1.2.15
 - * Move handling of migration event source to solve bootstrap race 
(CASSANDRA-6648)
 - * Make sure compaction throughput value doesn't overflow with int math 
(CASSANDRA-6647)
 -
 -
 -1.2.14
 - * Reverted code to limit CQL prepared statement cache by size 
(CASSANDRA-6592)
 - * add cassandra.default_messaging_version property to allow easier
 -   upgrading from 1.1 (CASSANDRA-6619)
 - * Allow executing CREATE statements multiple times (CASSANDRA-6471)
 - * Don't send confusing info with timeouts (CASSANDRA-6491)
 - * Don't resubmit counter mutation runnables internally (CASSANDRA-6427)
 - * Don't drop local mutations without a hint (CASSANDRA-6510)
 - * Don't allow null max_hint_window_in_ms (CASSANDRA-6419)
 - * Validate SliceRange start and finish lengths (CASSANDRA-6521)
 +2.0.5
 + * Reduce garbage generated by bloom filter lookups (CASSANDRA-6609)
 + * Add ks.cf names to tombstone logging (CASSANDRA-6597)
 + * Use LOCAL_QUORUM for LWT operations at LOCAL_SERIAL (CASSANDRA-6495)
 + * Wait for gossip to settle before accepting client connections 
(CASSANDRA-4288)
 + * Delete unfinished compaction incrementally (CASSANDRA-6086)
 + * Allow specifying custom secondary index options in CQL3 (CASSANDRA-6480)
 + * Improve replica pinning for cache efficiency in DES (CASSANDRA-6485)
 + * Fix LOCAL_SERIAL from thrift (CASSANDRA-6584)
 + * Don't special case received counts in CAS timeout exceptions 
(CASSANDRA-6595)
 + * Add support for 2.1 global counter shards (CASSANDRA-6505)
 + * Fix NPE when streaming connection is not yet established (CASSANDRA-6210)
 + * Avoid rare duplicate read repair triggering (CASSANDRA-6606)
 + * Fix paging discardFirst (CASSANDRA-6555)
 + * Fix ArrayIndexOutOfBoundsException in 2ndary index query (CASSANDRA-6470)
 + * Release sstables upon rebuilding 2i (CASSANDRA-6635)
 + * Add AbstractCompactionStrategy.startup() method (CASSANDRA-6637)
 + * SSTableScanner may skip rows during cleanup (CASSANDRA-6638)
 + * sstables from stalled repair sessions can resurrect deleted data 
(CASSANDRA-6503)
 + * Switch stress to use ITransportFactory (CASSANDRA-6641)
 + * Fix IllegalArgumentException during prepare (CASSANDRA-6592)
 + * Fix possible loss of 2ndary index entries during compaction 
(CASSANDRA-6517)
 + * Fix direct Memory on architectures that do not support unaligned long 
access
 +   (CASSANDRA-6628)
 + * Let scrub optionally skip broken counter partitions (CASSANDRA-5930)
 +Merged from 1.2:
   * fsync compression metadata (CASSANDRA-6531)
   * Validate CF existence on execution for prepared statement (CASSANDRA-6535)
   * Add ability to throttle batchlog replay (CASSANDRA-6550)

http://git-wip-us.apache.org/repos/asf/cassandra/blob/56a615d7/src/java/org/apache/cassandra/db/ColumnFamilyStoreMBean.java
--


[3/6] git commit: Fix mean cells and mean row size per sstable calculations patch by Paulo Gaspar, jbellis, and Marcus Eriksson for CASSANDRA-6667

2014-02-07 Thread jbellis
Fix mean cells and mean row size per sstable calculations
patch by Paulo Gaspar, jbellis, and Marcus Eriksson for CASSANDRA-6667


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/beefd0b8
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/beefd0b8
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/beefd0b8

Branch: refs/heads/trunk
Commit: beefd0b8cc91054a559cdecfe5d972dffb20e0e7
Parents: 31414fb
Author: Jonathan Ellis jbel...@apache.org
Authored: Fri Feb 7 10:17:04 2014 -0600
Committer: Jonathan Ellis jbel...@apache.org
Committed: Fri Feb 7 10:18:21 2014 -0600

--
 CHANGES.txt   | 1 +
 src/java/org/apache/cassandra/db/ColumnFamilyStoreMBean.java  | 2 +-
 src/java/org/apache/cassandra/db/DataTracker.java | 7 ---
 .../org/apache/cassandra/metrics/ColumnFamilyMetrics.java | 5 +++--
 4 files changed, 9 insertions(+), 6 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/beefd0b8/CHANGES.txt
--
diff --git a/CHANGES.txt b/CHANGES.txt
index 4be97f1..5511e01 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -1,6 +1,7 @@
 1.2.16
  * Fix upgradesstables NPE for non-CF-based indexes (CASSANDRA-6645)
  * Fix partition and range deletes not triggering flush (CASSANDRA-6655)
+ * Fix mean cells and mean row size per sstable calculations (CASSANDRA-6667)
 
 
 1.2.15

http://git-wip-us.apache.org/repos/asf/cassandra/blob/beefd0b8/src/java/org/apache/cassandra/db/ColumnFamilyStoreMBean.java
--
diff --git a/src/java/org/apache/cassandra/db/ColumnFamilyStoreMBean.java 
b/src/java/org/apache/cassandra/db/ColumnFamilyStoreMBean.java
index 9ee7568..86bd860 100644
--- a/src/java/org/apache/cassandra/db/ColumnFamilyStoreMBean.java
+++ b/src/java/org/apache/cassandra/db/ColumnFamilyStoreMBean.java
@@ -194,7 +194,7 @@ public interface ColumnFamilyStoreMBean
 
 /**
  * @see org.apache.cassandra.metrics.ColumnFamilyMetrics#meanRowSize
- * @return the size of the smallest compacted row
+ * @return the average row size across all the sstables
  */
 @Deprecated
 public long getMeanRowSize();

http://git-wip-us.apache.org/repos/asf/cassandra/blob/beefd0b8/src/java/org/apache/cassandra/db/DataTracker.java
--
diff --git a/src/java/org/apache/cassandra/db/DataTracker.java 
b/src/java/org/apache/cassandra/db/DataTracker.java
index b128abb..3e271d3 100644
--- a/src/java/org/apache/cassandra/db/DataTracker.java
+++ b/src/java/org/apache/cassandra/db/DataTracker.java
@@ -389,11 +389,12 @@ public class DataTracker
 public int getMeanColumns()
 {
 long sum = 0;
-int count = 0;
+long count = 0;
 for (SSTableReader sstable : getSSTables())
 {
-sum += sstable.getEstimatedColumnCount().mean();
-count++;
+long n = sstable.getEstimatedColumnCount().count();
+sum += sstable.getEstimatedColumnCount().mean() * n;
+count += n;
 }
 return count  0 ? (int) (sum / count) : 0;
 }

http://git-wip-us.apache.org/repos/asf/cassandra/blob/beefd0b8/src/java/org/apache/cassandra/metrics/ColumnFamilyMetrics.java
--
diff --git a/src/java/org/apache/cassandra/metrics/ColumnFamilyMetrics.java 
b/src/java/org/apache/cassandra/metrics/ColumnFamilyMetrics.java
index cb13c22..a665365 100644
--- a/src/java/org/apache/cassandra/metrics/ColumnFamilyMetrics.java
+++ b/src/java/org/apache/cassandra/metrics/ColumnFamilyMetrics.java
@@ -213,8 +213,9 @@ public class ColumnFamilyMetrics
 long count = 0;
 for (SSTableReader sstable : cfs.getSSTables())
 {
-sum += sstable.getEstimatedRowSize().mean();
-count++;
+long n = sstable.getEstimatedRowSize().count();
+sum += sstable.getEstimatedRowSize().mean() * n;
+count += n;
 }
 return count  0 ? sum / count : 0;
 }



[2/6] git commit: Compact hints after partial replay to clean out tombstones patch by jbellis; reviewed by ayeschenko for CASSANDRA-6666

2014-02-07 Thread jbellis
Compact hints after partial replay to clean out tombstones
patch by jbellis; reviewed by ayeschenko for CASSANDRA-


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/ab5372f0
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/ab5372f0
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/ab5372f0

Branch: refs/heads/cassandra-2.0
Commit: ab5372f0f3b3650556242a21a9d463b4f1e93efd
Parents: beefd0b
Author: Jonathan Ellis jbel...@apache.org
Authored: Fri Feb 7 10:30:20 2014 -0600
Committer: Jonathan Ellis jbel...@apache.org
Committed: Fri Feb 7 10:30:20 2014 -0600

--
 CHANGES.txt |  1 +
 .../cassandra/db/HintedHandOffManager.java  | 26 
 2 files changed, 17 insertions(+), 10 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/ab5372f0/CHANGES.txt
--
diff --git a/CHANGES.txt b/CHANGES.txt
index 5511e01..82783f8 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -2,6 +2,7 @@
  * Fix upgradesstables NPE for non-CF-based indexes (CASSANDRA-6645)
  * Fix partition and range deletes not triggering flush (CASSANDRA-6655)
  * Fix mean cells and mean row size per sstable calculations (CASSANDRA-6667)
+ * Compact hints after partial replay to clean out tombstones (CASSANDRA-)
 
 
 1.2.15

http://git-wip-us.apache.org/repos/asf/cassandra/blob/ab5372f0/src/java/org/apache/cassandra/db/HintedHandOffManager.java
--
diff --git a/src/java/org/apache/cassandra/db/HintedHandOffManager.java 
b/src/java/org/apache/cassandra/db/HintedHandOffManager.java
index ede49e4..b1ccbc3 100644
--- a/src/java/org/apache/cassandra/db/HintedHandOffManager.java
+++ b/src/java/org/apache/cassandra/db/HintedHandOffManager.java
@@ -309,6 +309,7 @@ public class HintedHandOffManager implements 
HintedHandOffManagerMBean
/ 
(StorageService.instance.getTokenMetadata().getAllEndpoints().size() - 1);
 RateLimiter rateLimiter = RateLimiter.create(throttleInKB == 0 ? 
Double.MAX_VALUE : throttleInKB * 1024);
 
+boolean finished = false;
 delivery:
 while (true)
 {
@@ -323,13 +324,17 @@ public class HintedHandOffManager implements 
HintedHandOffManagerMBean
  (int) 
(System.currentTimeMillis() / 1000));
 
 if (pagingFinished(hintsPage, startColumn))
+{
+logger.info(Finished hinted handoff of {} rows to endpoint 
{}, rowsReplayed, endpoint);
+finished = true;
 break;
+}
 
 // check if node is still alive and we should continue delivery 
process
 if (!FailureDetector.instance.isAlive(endpoint))
 {
 logger.info(Endpoint {} died during hint delivery; aborting 
({} delivered), endpoint, rowsReplayed);
-return;
+break;
 }
 
 ListWriteResponseHandler responseHandlers = Lists.newArrayList();
@@ -420,20 +425,21 @@ public class HintedHandOffManager implements 
HintedHandOffManagerMBean
 catch (WriteTimeoutException e)
 {
 logger.info(Timed out replaying hints to {}; aborting ({} 
delivered), endpoint, rowsReplayed);
-return;
+break delivery;
 }
 }
 }
 
-logger.info(Finished hinted handoff of {} rows to endpoint {}, 
rowsReplayed, endpoint);
-
-try
+if (finished || rowsReplayed.get() = 
DatabaseDescriptor.getTombstoneDebugThreshold())
 {
-compact().get();
-}
-catch (Exception e)
-{
-throw new RuntimeException(e);
+try
+{
+compact().get();
+}
+catch (Exception e)
+{
+throw new RuntimeException(e);
+}
 }
 }
 



[5/6] git commit: Merge branch 'cassandra-1.2' into cassandra-2.0

2014-02-07 Thread jbellis
Merge branch 'cassandra-1.2' into cassandra-2.0


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/fe571421
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/fe571421
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/fe571421

Branch: refs/heads/cassandra-2.0
Commit: fe571421dadea7e8a904a7b5b3127cd6b71263a8
Parents: 56a615d ab5372f
Author: Jonathan Ellis jbel...@apache.org
Authored: Fri Feb 7 10:30:30 2014 -0600
Committer: Jonathan Ellis jbel...@apache.org
Committed: Fri Feb 7 10:30:50 2014 -0600

--
 CHANGES.txt |  1 +
 .../cassandra/db/HintedHandOffManager.java  | 26 
 2 files changed, 17 insertions(+), 10 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/fe571421/CHANGES.txt
--
diff --cc CHANGES.txt
index 94cd19c,82783f8..d32490e
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@@ -11,33 -2,24 +11,34 @@@ Merged from 1.2
   * Fix upgradesstables NPE for non-CF-based indexes (CASSANDRA-6645)
   * Fix partition and range deletes not triggering flush (CASSANDRA-6655)
   * Fix mean cells and mean row size per sstable calculations (CASSANDRA-6667)
+  * Compact hints after partial replay to clean out tombstones (CASSANDRA-)
  
 -
 -1.2.15
 - * Move handling of migration event source to solve bootstrap race 
(CASSANDRA-6648)
 - * Make sure compaction throughput value doesn't overflow with int math 
(CASSANDRA-6647)
 -
 -
 -1.2.14
 - * Reverted code to limit CQL prepared statement cache by size 
(CASSANDRA-6592)
 - * add cassandra.default_messaging_version property to allow easier
 -   upgrading from 1.1 (CASSANDRA-6619)
 - * Allow executing CREATE statements multiple times (CASSANDRA-6471)
 - * Don't send confusing info with timeouts (CASSANDRA-6491)
 - * Don't resubmit counter mutation runnables internally (CASSANDRA-6427)
 - * Don't drop local mutations without a hint (CASSANDRA-6510)
 - * Don't allow null max_hint_window_in_ms (CASSANDRA-6419)
 - * Validate SliceRange start and finish lengths (CASSANDRA-6521)
 +2.0.5
 + * Reduce garbage generated by bloom filter lookups (CASSANDRA-6609)
 + * Add ks.cf names to tombstone logging (CASSANDRA-6597)
 + * Use LOCAL_QUORUM for LWT operations at LOCAL_SERIAL (CASSANDRA-6495)
 + * Wait for gossip to settle before accepting client connections 
(CASSANDRA-4288)
 + * Delete unfinished compaction incrementally (CASSANDRA-6086)
 + * Allow specifying custom secondary index options in CQL3 (CASSANDRA-6480)
 + * Improve replica pinning for cache efficiency in DES (CASSANDRA-6485)
 + * Fix LOCAL_SERIAL from thrift (CASSANDRA-6584)
 + * Don't special case received counts in CAS timeout exceptions 
(CASSANDRA-6595)
 + * Add support for 2.1 global counter shards (CASSANDRA-6505)
 + * Fix NPE when streaming connection is not yet established (CASSANDRA-6210)
 + * Avoid rare duplicate read repair triggering (CASSANDRA-6606)
 + * Fix paging discardFirst (CASSANDRA-6555)
 + * Fix ArrayIndexOutOfBoundsException in 2ndary index query (CASSANDRA-6470)
 + * Release sstables upon rebuilding 2i (CASSANDRA-6635)
 + * Add AbstractCompactionStrategy.startup() method (CASSANDRA-6637)
 + * SSTableScanner may skip rows during cleanup (CASSANDRA-6638)
 + * sstables from stalled repair sessions can resurrect deleted data 
(CASSANDRA-6503)
 + * Switch stress to use ITransportFactory (CASSANDRA-6641)
 + * Fix IllegalArgumentException during prepare (CASSANDRA-6592)
 + * Fix possible loss of 2ndary index entries during compaction 
(CASSANDRA-6517)
 + * Fix direct Memory on architectures that do not support unaligned long 
access
 +   (CASSANDRA-6628)
 + * Let scrub optionally skip broken counter partitions (CASSANDRA-5930)
 +Merged from 1.2:
   * fsync compression metadata (CASSANDRA-6531)
   * Validate CF existence on execution for prepared statement (CASSANDRA-6535)
   * Add ability to throttle batchlog replay (CASSANDRA-6550)

http://git-wip-us.apache.org/repos/asf/cassandra/blob/fe571421/src/java/org/apache/cassandra/db/HintedHandOffManager.java
--
diff --cc src/java/org/apache/cassandra/db/HintedHandOffManager.java
index 40d5aaa,b1ccbc3..b9914a6
--- a/src/java/org/apache/cassandra/db/HintedHandOffManager.java
+++ b/src/java/org/apache/cassandra/db/HintedHandOffManager.java
@@@ -367,13 -318,17 +368,17 @@@ public class HintedHandOffManager imple
  startColumn,
  
ByteBufferUtil.EMPTY_BYTE_BUFFER,
  false,
 -pageSize);
 +  

[4/6] git commit: Merge branch 'cassandra-1.2' into cassandra-2.0

2014-02-07 Thread jbellis
Merge branch 'cassandra-1.2' into cassandra-2.0


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/fe571421
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/fe571421
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/fe571421

Branch: refs/heads/trunk
Commit: fe571421dadea7e8a904a7b5b3127cd6b71263a8
Parents: 56a615d ab5372f
Author: Jonathan Ellis jbel...@apache.org
Authored: Fri Feb 7 10:30:30 2014 -0600
Committer: Jonathan Ellis jbel...@apache.org
Committed: Fri Feb 7 10:30:50 2014 -0600

--
 CHANGES.txt |  1 +
 .../cassandra/db/HintedHandOffManager.java  | 26 
 2 files changed, 17 insertions(+), 10 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/fe571421/CHANGES.txt
--
diff --cc CHANGES.txt
index 94cd19c,82783f8..d32490e
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@@ -11,33 -2,24 +11,34 @@@ Merged from 1.2
   * Fix upgradesstables NPE for non-CF-based indexes (CASSANDRA-6645)
   * Fix partition and range deletes not triggering flush (CASSANDRA-6655)
   * Fix mean cells and mean row size per sstable calculations (CASSANDRA-6667)
+  * Compact hints after partial replay to clean out tombstones (CASSANDRA-)
  
 -
 -1.2.15
 - * Move handling of migration event source to solve bootstrap race 
(CASSANDRA-6648)
 - * Make sure compaction throughput value doesn't overflow with int math 
(CASSANDRA-6647)
 -
 -
 -1.2.14
 - * Reverted code to limit CQL prepared statement cache by size 
(CASSANDRA-6592)
 - * add cassandra.default_messaging_version property to allow easier
 -   upgrading from 1.1 (CASSANDRA-6619)
 - * Allow executing CREATE statements multiple times (CASSANDRA-6471)
 - * Don't send confusing info with timeouts (CASSANDRA-6491)
 - * Don't resubmit counter mutation runnables internally (CASSANDRA-6427)
 - * Don't drop local mutations without a hint (CASSANDRA-6510)
 - * Don't allow null max_hint_window_in_ms (CASSANDRA-6419)
 - * Validate SliceRange start and finish lengths (CASSANDRA-6521)
 +2.0.5
 + * Reduce garbage generated by bloom filter lookups (CASSANDRA-6609)
 + * Add ks.cf names to tombstone logging (CASSANDRA-6597)
 + * Use LOCAL_QUORUM for LWT operations at LOCAL_SERIAL (CASSANDRA-6495)
 + * Wait for gossip to settle before accepting client connections 
(CASSANDRA-4288)
 + * Delete unfinished compaction incrementally (CASSANDRA-6086)
 + * Allow specifying custom secondary index options in CQL3 (CASSANDRA-6480)
 + * Improve replica pinning for cache efficiency in DES (CASSANDRA-6485)
 + * Fix LOCAL_SERIAL from thrift (CASSANDRA-6584)
 + * Don't special case received counts in CAS timeout exceptions 
(CASSANDRA-6595)
 + * Add support for 2.1 global counter shards (CASSANDRA-6505)
 + * Fix NPE when streaming connection is not yet established (CASSANDRA-6210)
 + * Avoid rare duplicate read repair triggering (CASSANDRA-6606)
 + * Fix paging discardFirst (CASSANDRA-6555)
 + * Fix ArrayIndexOutOfBoundsException in 2ndary index query (CASSANDRA-6470)
 + * Release sstables upon rebuilding 2i (CASSANDRA-6635)
 + * Add AbstractCompactionStrategy.startup() method (CASSANDRA-6637)
 + * SSTableScanner may skip rows during cleanup (CASSANDRA-6638)
 + * sstables from stalled repair sessions can resurrect deleted data 
(CASSANDRA-6503)
 + * Switch stress to use ITransportFactory (CASSANDRA-6641)
 + * Fix IllegalArgumentException during prepare (CASSANDRA-6592)
 + * Fix possible loss of 2ndary index entries during compaction 
(CASSANDRA-6517)
 + * Fix direct Memory on architectures that do not support unaligned long 
access
 +   (CASSANDRA-6628)
 + * Let scrub optionally skip broken counter partitions (CASSANDRA-5930)
 +Merged from 1.2:
   * fsync compression metadata (CASSANDRA-6531)
   * Validate CF existence on execution for prepared statement (CASSANDRA-6535)
   * Add ability to throttle batchlog replay (CASSANDRA-6550)

http://git-wip-us.apache.org/repos/asf/cassandra/blob/fe571421/src/java/org/apache/cassandra/db/HintedHandOffManager.java
--
diff --cc src/java/org/apache/cassandra/db/HintedHandOffManager.java
index 40d5aaa,b1ccbc3..b9914a6
--- a/src/java/org/apache/cassandra/db/HintedHandOffManager.java
+++ b/src/java/org/apache/cassandra/db/HintedHandOffManager.java
@@@ -367,13 -318,17 +368,17 @@@ public class HintedHandOffManager imple
  startColumn,
  
ByteBufferUtil.EMPTY_BYTE_BUFFER,
  false,
 -pageSize);
 +  

[1/6] git commit: Compact hints after partial replay to clean out tombstones patch by jbellis; reviewed by ayeschenko for CASSANDRA-6666

2014-02-07 Thread jbellis
Updated Branches:
  refs/heads/cassandra-1.2 beefd0b8c - ab5372f0f
  refs/heads/cassandra-2.0 56a615d73 - fe571421d
  refs/heads/trunk ef6d42cfc - 65e09fa5b


Compact hints after partial replay to clean out tombstones
patch by jbellis; reviewed by ayeschenko for CASSANDRA-


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/ab5372f0
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/ab5372f0
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/ab5372f0

Branch: refs/heads/cassandra-1.2
Commit: ab5372f0f3b3650556242a21a9d463b4f1e93efd
Parents: beefd0b
Author: Jonathan Ellis jbel...@apache.org
Authored: Fri Feb 7 10:30:20 2014 -0600
Committer: Jonathan Ellis jbel...@apache.org
Committed: Fri Feb 7 10:30:20 2014 -0600

--
 CHANGES.txt |  1 +
 .../cassandra/db/HintedHandOffManager.java  | 26 
 2 files changed, 17 insertions(+), 10 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/ab5372f0/CHANGES.txt
--
diff --git a/CHANGES.txt b/CHANGES.txt
index 5511e01..82783f8 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -2,6 +2,7 @@
  * Fix upgradesstables NPE for non-CF-based indexes (CASSANDRA-6645)
  * Fix partition and range deletes not triggering flush (CASSANDRA-6655)
  * Fix mean cells and mean row size per sstable calculations (CASSANDRA-6667)
+ * Compact hints after partial replay to clean out tombstones (CASSANDRA-)
 
 
 1.2.15

http://git-wip-us.apache.org/repos/asf/cassandra/blob/ab5372f0/src/java/org/apache/cassandra/db/HintedHandOffManager.java
--
diff --git a/src/java/org/apache/cassandra/db/HintedHandOffManager.java 
b/src/java/org/apache/cassandra/db/HintedHandOffManager.java
index ede49e4..b1ccbc3 100644
--- a/src/java/org/apache/cassandra/db/HintedHandOffManager.java
+++ b/src/java/org/apache/cassandra/db/HintedHandOffManager.java
@@ -309,6 +309,7 @@ public class HintedHandOffManager implements 
HintedHandOffManagerMBean
/ 
(StorageService.instance.getTokenMetadata().getAllEndpoints().size() - 1);
 RateLimiter rateLimiter = RateLimiter.create(throttleInKB == 0 ? 
Double.MAX_VALUE : throttleInKB * 1024);
 
+boolean finished = false;
 delivery:
 while (true)
 {
@@ -323,13 +324,17 @@ public class HintedHandOffManager implements 
HintedHandOffManagerMBean
  (int) 
(System.currentTimeMillis() / 1000));
 
 if (pagingFinished(hintsPage, startColumn))
+{
+logger.info(Finished hinted handoff of {} rows to endpoint 
{}, rowsReplayed, endpoint);
+finished = true;
 break;
+}
 
 // check if node is still alive and we should continue delivery 
process
 if (!FailureDetector.instance.isAlive(endpoint))
 {
 logger.info(Endpoint {} died during hint delivery; aborting 
({} delivered), endpoint, rowsReplayed);
-return;
+break;
 }
 
 ListWriteResponseHandler responseHandlers = Lists.newArrayList();
@@ -420,20 +425,21 @@ public class HintedHandOffManager implements 
HintedHandOffManagerMBean
 catch (WriteTimeoutException e)
 {
 logger.info(Timed out replaying hints to {}; aborting ({} 
delivered), endpoint, rowsReplayed);
-return;
+break delivery;
 }
 }
 }
 
-logger.info(Finished hinted handoff of {} rows to endpoint {}, 
rowsReplayed, endpoint);
-
-try
+if (finished || rowsReplayed.get() = 
DatabaseDescriptor.getTombstoneDebugThreshold())
 {
-compact().get();
-}
-catch (Exception e)
-{
-throw new RuntimeException(e);
+try
+{
+compact().get();
+}
+catch (Exception e)
+{
+throw new RuntimeException(e);
+}
 }
 }
 



[6/6] git commit: Merge branch 'cassandra-2.0' into trunk

2014-02-07 Thread jbellis
Merge branch 'cassandra-2.0' into trunk


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/65e09fa5
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/65e09fa5
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/65e09fa5

Branch: refs/heads/trunk
Commit: 65e09fa5ba071f6e72987a4967b2470c9337
Parents: ef6d42c fe57142
Author: Jonathan Ellis jbel...@apache.org
Authored: Fri Feb 7 10:30:56 2014 -0600
Committer: Jonathan Ellis jbel...@apache.org
Committed: Fri Feb 7 10:30:56 2014 -0600

--
 CHANGES.txt |  1 +
 .../cassandra/db/HintedHandOffManager.java  | 26 
 2 files changed, 17 insertions(+), 10 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/65e09fa5/CHANGES.txt
--

http://git-wip-us.apache.org/repos/asf/cassandra/blob/65e09fa5/src/java/org/apache/cassandra/db/HintedHandOffManager.java
--



[2/6] git commit: fix race in LeaveAndBootstrapTest

2014-02-07 Thread brandonwilliams
fix race in LeaveAndBootstrapTest


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/2dd55c7d
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/2dd55c7d
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/2dd55c7d

Branch: refs/heads/cassandra-2.0
Commit: 2dd55c7d31829b7746201fd86b647296b0c8ae58
Parents: ab5372f
Author: Brandon Williams brandonwilli...@apache.org
Authored: Fri Feb 7 10:37:36 2014 -0600
Committer: Brandon Williams brandonwilli...@apache.org
Committed: Fri Feb 7 10:37:53 2014 -0600

--
 test/unit/org/apache/cassandra/service/LeaveAndBootstrapTest.java | 1 +
 1 file changed, 1 insertion(+)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/2dd55c7d/test/unit/org/apache/cassandra/service/LeaveAndBootstrapTest.java
--
diff --git a/test/unit/org/apache/cassandra/service/LeaveAndBootstrapTest.java 
b/test/unit/org/apache/cassandra/service/LeaveAndBootstrapTest.java
index de7958f..c8a634a 100644
--- a/test/unit/org/apache/cassandra/service/LeaveAndBootstrapTest.java
+++ b/test/unit/org/apache/cassandra/service/LeaveAndBootstrapTest.java
@@ -108,6 +108,7 @@ public class LeaveAndBootstrapTest
 
valueFactory.leaving(Collections.singleton(endpointTokens.get(LEAVING_NODE;
 assertTrue(tmd.isLeaving(hosts.get(LEAVING_NODE)));
 
+Thread.sleep(100); // because there is a tight race between submit and 
blockUntilFinished
 PendingRangeCalculatorService.instance.blockUntilFinished();
 
 AbstractReplicationStrategy strategy;



[1/6] git commit: fix race in LeaveAndBootstrapTest

2014-02-07 Thread brandonwilliams
Updated Branches:
  refs/heads/cassandra-1.2 ab5372f0f - 2dd55c7d3
  refs/heads/cassandra-2.0 fe571421d - 7407cf981
  refs/heads/trunk 65e09fa5b - 4c0b4fa2e


fix race in LeaveAndBootstrapTest


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/2dd55c7d
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/2dd55c7d
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/2dd55c7d

Branch: refs/heads/cassandra-1.2
Commit: 2dd55c7d31829b7746201fd86b647296b0c8ae58
Parents: ab5372f
Author: Brandon Williams brandonwilli...@apache.org
Authored: Fri Feb 7 10:37:36 2014 -0600
Committer: Brandon Williams brandonwilli...@apache.org
Committed: Fri Feb 7 10:37:53 2014 -0600

--
 test/unit/org/apache/cassandra/service/LeaveAndBootstrapTest.java | 1 +
 1 file changed, 1 insertion(+)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/2dd55c7d/test/unit/org/apache/cassandra/service/LeaveAndBootstrapTest.java
--
diff --git a/test/unit/org/apache/cassandra/service/LeaveAndBootstrapTest.java 
b/test/unit/org/apache/cassandra/service/LeaveAndBootstrapTest.java
index de7958f..c8a634a 100644
--- a/test/unit/org/apache/cassandra/service/LeaveAndBootstrapTest.java
+++ b/test/unit/org/apache/cassandra/service/LeaveAndBootstrapTest.java
@@ -108,6 +108,7 @@ public class LeaveAndBootstrapTest
 
valueFactory.leaving(Collections.singleton(endpointTokens.get(LEAVING_NODE;
 assertTrue(tmd.isLeaving(hosts.get(LEAVING_NODE)));
 
+Thread.sleep(100); // because there is a tight race between submit and 
blockUntilFinished
 PendingRangeCalculatorService.instance.blockUntilFinished();
 
 AbstractReplicationStrategy strategy;



[3/6] git commit: fix race in LeaveAndBootstrapTest

2014-02-07 Thread brandonwilliams
fix race in LeaveAndBootstrapTest


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/2dd55c7d
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/2dd55c7d
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/2dd55c7d

Branch: refs/heads/trunk
Commit: 2dd55c7d31829b7746201fd86b647296b0c8ae58
Parents: ab5372f
Author: Brandon Williams brandonwilli...@apache.org
Authored: Fri Feb 7 10:37:36 2014 -0600
Committer: Brandon Williams brandonwilli...@apache.org
Committed: Fri Feb 7 10:37:53 2014 -0600

--
 test/unit/org/apache/cassandra/service/LeaveAndBootstrapTest.java | 1 +
 1 file changed, 1 insertion(+)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/2dd55c7d/test/unit/org/apache/cassandra/service/LeaveAndBootstrapTest.java
--
diff --git a/test/unit/org/apache/cassandra/service/LeaveAndBootstrapTest.java 
b/test/unit/org/apache/cassandra/service/LeaveAndBootstrapTest.java
index de7958f..c8a634a 100644
--- a/test/unit/org/apache/cassandra/service/LeaveAndBootstrapTest.java
+++ b/test/unit/org/apache/cassandra/service/LeaveAndBootstrapTest.java
@@ -108,6 +108,7 @@ public class LeaveAndBootstrapTest
 
valueFactory.leaving(Collections.singleton(endpointTokens.get(LEAVING_NODE;
 assertTrue(tmd.isLeaving(hosts.get(LEAVING_NODE)));
 
+Thread.sleep(100); // because there is a tight race between submit and 
blockUntilFinished
 PendingRangeCalculatorService.instance.blockUntilFinished();
 
 AbstractReplicationStrategy strategy;



[6/8] git commit: Fix unwanted schema pull while upgrading nodes from 1.2 to 2.0 Patch by Sergio Bossa, reviewed by brandonwilliams for CASSANDRA-6678

2014-02-07 Thread brandonwilliams
Fix unwanted schema pull while upgrading nodes from 1.2 to 2.0
Patch by Sergio Bossa, reviewed by brandonwilliams for CASSANDRA-6678


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/9e0700c0
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/9e0700c0
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/9e0700c0

Branch: refs/heads/trunk
Commit: 9e0700c07e643c3eaf0a7687aab92f02a32d1899
Parents: fe5de33
Author: Brandon Williams brandonwilli...@apache.org
Authored: Fri Feb 7 08:35:20 2014 -0600
Committer: Brandon Williams brandonwilli...@apache.org
Committed: Fri Feb 7 08:35:20 2014 -0600

--
 src/java/org/apache/cassandra/service/MigrationManager.java | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/9e0700c0/src/java/org/apache/cassandra/service/MigrationManager.java
--
diff --git a/src/java/org/apache/cassandra/service/MigrationManager.java 
b/src/java/org/apache/cassandra/service/MigrationManager.java
index b463116..fdcefe4 100644
--- a/src/java/org/apache/cassandra/service/MigrationManager.java
+++ b/src/java/org/apache/cassandra/service/MigrationManager.java
@@ -137,8 +137,9 @@ public class MigrationManager
  * Don't request schema from nodes with a higher major (may have 
incompatible schema)
  * Don't request schema from fat clients
  */
-return MessagingService.instance().getVersion(endpoint) = 
MessagingService.current_version
- !Gossiper.instance.isFatClient(endpoint);
+return MessagingService.instance().knowsVersion(endpoint)
+ MessagingService.instance().getVersion(endpoint) = 
MessagingService.current_version
+ !Gossiper.instance.isFatClient(endpoint);
 }
 
 public static boolean isReadyForBootstrap()



[6/6] git commit: Merge branch 'cassandra-2.0' into trunk

2014-02-07 Thread brandonwilliams
Merge branch 'cassandra-2.0' into trunk


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/4c0b4fa2
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/4c0b4fa2
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/4c0b4fa2

Branch: refs/heads/trunk
Commit: 4c0b4fa2e5a65be804d8179c376d672a42f4882b
Parents: 65e09fa 7407cf9
Author: Brandon Williams brandonwilli...@apache.org
Authored: Fri Feb 7 10:38:10 2014 -0600
Committer: Brandon Williams brandonwilli...@apache.org
Committed: Fri Feb 7 10:38:10 2014 -0600

--
 test/unit/org/apache/cassandra/service/LeaveAndBootstrapTest.java | 1 +
 1 file changed, 1 insertion(+)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/4c0b4fa2/test/unit/org/apache/cassandra/service/LeaveAndBootstrapTest.java
--



[4/6] git commit: Merge branch 'cassandra-1.2' into cassandra-2.0

2014-02-07 Thread brandonwilliams
Merge branch 'cassandra-1.2' into cassandra-2.0


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/7407cf98
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/7407cf98
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/7407cf98

Branch: refs/heads/trunk
Commit: 7407cf981b928886a868cb82f899a99dd03fe612
Parents: fe57142 2dd55c7
Author: Brandon Williams brandonwilli...@apache.org
Authored: Fri Feb 7 10:38:00 2014 -0600
Committer: Brandon Williams brandonwilli...@apache.org
Committed: Fri Feb 7 10:38:00 2014 -0600

--
 test/unit/org/apache/cassandra/service/LeaveAndBootstrapTest.java | 1 +
 1 file changed, 1 insertion(+)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/7407cf98/test/unit/org/apache/cassandra/service/LeaveAndBootstrapTest.java
--



[5/6] git commit: Merge branch 'cassandra-1.2' into cassandra-2.0

2014-02-07 Thread brandonwilliams
Merge branch 'cassandra-1.2' into cassandra-2.0


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/7407cf98
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/7407cf98
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/7407cf98

Branch: refs/heads/cassandra-2.0
Commit: 7407cf981b928886a868cb82f899a99dd03fe612
Parents: fe57142 2dd55c7
Author: Brandon Williams brandonwilli...@apache.org
Authored: Fri Feb 7 10:38:00 2014 -0600
Committer: Brandon Williams brandonwilli...@apache.org
Committed: Fri Feb 7 10:38:00 2014 -0600

--
 test/unit/org/apache/cassandra/service/LeaveAndBootstrapTest.java | 1 +
 1 file changed, 1 insertion(+)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/7407cf98/test/unit/org/apache/cassandra/service/LeaveAndBootstrapTest.java
--



[jira] [Resolved] (CASSANDRA-6670) LeaveAndBootstrapTest occasional failure reproduced in 2.0

2014-02-07 Thread Brandon Williams (JIRA)

 [ 
https://issues.apache.org/jira/browse/CASSANDRA-6670?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Brandon Williams resolved CASSANDRA-6670.
-

Resolution: Fixed

 LeaveAndBootstrapTest occasional failure reproduced in 2.0
 --

 Key: CASSANDRA-6670
 URL: https://issues.apache.org/jira/browse/CASSANDRA-6670
 Project: Cassandra
  Issue Type: Test
  Components: Tests
 Environment: Debian Stable (Wheezy) amd64
 Oracle JVM 1.7.0_51-b13 (and 1.7.0_45-b18)
Reporter: Michael Shuler
Assignee: Brandon Williams
Priority: Minor
 Attachments: system.log, test.sh


 {noformat}
  Run #122 
 Buildfile: /home/mshuler/git/cassandra/build.xml
 init:
 maven-ant-tasks-localrepo:
 maven-ant-tasks-download:
 maven-ant-tasks-init:
 maven-declare-dependencies:
 maven-ant-tasks-retrieve-build:
 init-dependencies:
  [echo] Loading dependency paths from file: 
 /home/mshuler/git/cassandra/build/build-dependencies.xml
 check-gen-cli-grammar:
 gen-cli-grammar:
 check-gen-cql2-grammar:
 gen-cql2-grammar:
 check-gen-cql3-grammar:
 gen-cql3-grammar:
 build-project:
  [echo] apache-cassandra: /home/mshuler/git/cassandra/build.xml
 createVersionPropFile:
 [propertyfile] Updating property file: 
 /home/mshuler/git/cassandra/src/resources/org/apache/cassandra/config/version.properties
  [copy] Copying 1 file to /home/mshuler/git/cassandra/build/classes/main
 build:
 build-test:
 test:
  [echo] running unit tests
 [junit] WARNING: multiple versions of ant detected in path for junit 
 [junit]  
 jar:file:/usr/share/ant/lib/ant.jar!/org/apache/tools/ant/Project.class
 [junit]  and 
 jar:file:/home/mshuler/git/cassandra/build/lib/jars/ant-1.6.5.jar!/org/apache/tools/ant/Project.class
 [junit] Testsuite: org.apache.cassandra.service.LeaveAndBootstrapTest
 [junit] Tests run: 8, Failures: 1, Errors: 0, Time elapsed: 7.054 sec
 [junit] 
 [junit] - Standard Error -
 [junit]  WARN 22:14:26,870 Node /127.0.0.3 'leaving' token mismatch. Long 
 network partition?
 [junit] -  ---
 [junit] Testcase: 
 newTestWriteEndpointsDuringLeave(org.apache.cassandra.service.LeaveAndBootstrapTest):
   FAILED
 [junit] mismatched endpoint sets expected:[/127.0.0.4, /127.0.0.5] but 
 was:[/127.0.0.4]
 [junit] junit.framework.AssertionFailedError: mismatched endpoint sets 
 expected:[/127.0.0.4, /127.0.0.5] but was:[/127.0.0.4]
 [junit] at 
 org.apache.cassandra.service.LeaveAndBootstrapTest.newTestWriteEndpointsDuringLeave(LeaveAndBootstrapTest.java:134)
 [junit] 
 [junit] 
 [junit] Test org.apache.cassandra.service.LeaveAndBootstrapTest FAILED
 BUILD FAILED
 /home/mshuler/git/cassandra/build.xml:1079: The following error occurred 
 while executing this line:
 /home/mshuler/git/cassandra/build.xml:1038: Some unit test(s) failed.
 Total time: 10 seconds
 {noformat}
 - test.sh attached
 - system.log from failed test attached



--
This message was sent by Atlassian JIRA
(v6.1.5#6160)


[jira] [Commented] (CASSANDRA-6670) LeaveAndBootstrapTest occasional failure reproduced in 2.0

2014-02-07 Thread Brandon Williams (JIRA)

[ 
https://issues.apache.org/jira/browse/CASSANDRA-6670?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13894703#comment-13894703
 ] 

Brandon Williams commented on CASSANDRA-6670:
-

I added some extra debug logging in PRCS.submit and PRCS.blockUntilFinished, 
and we can see that there is a occasionally very small window where the block 
instantly returns after submission before PRC is done:

{noformat}
DEBUG [main] 2014-02-07 03:44:31,503 PendingRangeCalculatorService.java (line 
75) submitting update
DEBUG [main] 2014-02-07 03:44:31,503 PendingRangeCalculatorService.java (line 
85) calc done, breaking
{noformat}

This is going to be impossible in actual practice, but it's a problem for the 
test (and this does fail the same way on 1.2, as it should, since PRCS is the 
same there.)  I think our best options come down to either a small sleep before 
calling blockUntilFinished or doing another submit/block, and between the two 
the sleep actually seems the least evil.  I added a 100ms sleep before the 
block in 2dd55c7d3

 LeaveAndBootstrapTest occasional failure reproduced in 2.0
 --

 Key: CASSANDRA-6670
 URL: https://issues.apache.org/jira/browse/CASSANDRA-6670
 Project: Cassandra
  Issue Type: Test
  Components: Tests
 Environment: Debian Stable (Wheezy) amd64
 Oracle JVM 1.7.0_51-b13 (and 1.7.0_45-b18)
Reporter: Michael Shuler
Assignee: Brandon Williams
Priority: Minor
 Attachments: system.log, test.sh


 {noformat}
  Run #122 
 Buildfile: /home/mshuler/git/cassandra/build.xml
 init:
 maven-ant-tasks-localrepo:
 maven-ant-tasks-download:
 maven-ant-tasks-init:
 maven-declare-dependencies:
 maven-ant-tasks-retrieve-build:
 init-dependencies:
  [echo] Loading dependency paths from file: 
 /home/mshuler/git/cassandra/build/build-dependencies.xml
 check-gen-cli-grammar:
 gen-cli-grammar:
 check-gen-cql2-grammar:
 gen-cql2-grammar:
 check-gen-cql3-grammar:
 gen-cql3-grammar:
 build-project:
  [echo] apache-cassandra: /home/mshuler/git/cassandra/build.xml
 createVersionPropFile:
 [propertyfile] Updating property file: 
 /home/mshuler/git/cassandra/src/resources/org/apache/cassandra/config/version.properties
  [copy] Copying 1 file to /home/mshuler/git/cassandra/build/classes/main
 build:
 build-test:
 test:
  [echo] running unit tests
 [junit] WARNING: multiple versions of ant detected in path for junit 
 [junit]  
 jar:file:/usr/share/ant/lib/ant.jar!/org/apache/tools/ant/Project.class
 [junit]  and 
 jar:file:/home/mshuler/git/cassandra/build/lib/jars/ant-1.6.5.jar!/org/apache/tools/ant/Project.class
 [junit] Testsuite: org.apache.cassandra.service.LeaveAndBootstrapTest
 [junit] Tests run: 8, Failures: 1, Errors: 0, Time elapsed: 7.054 sec
 [junit] 
 [junit] - Standard Error -
 [junit]  WARN 22:14:26,870 Node /127.0.0.3 'leaving' token mismatch. Long 
 network partition?
 [junit] -  ---
 [junit] Testcase: 
 newTestWriteEndpointsDuringLeave(org.apache.cassandra.service.LeaveAndBootstrapTest):
   FAILED
 [junit] mismatched endpoint sets expected:[/127.0.0.4, /127.0.0.5] but 
 was:[/127.0.0.4]
 [junit] junit.framework.AssertionFailedError: mismatched endpoint sets 
 expected:[/127.0.0.4, /127.0.0.5] but was:[/127.0.0.4]
 [junit] at 
 org.apache.cassandra.service.LeaveAndBootstrapTest.newTestWriteEndpointsDuringLeave(LeaveAndBootstrapTest.java:134)
 [junit] 
 [junit] 
 [junit] Test org.apache.cassandra.service.LeaveAndBootstrapTest FAILED
 BUILD FAILED
 /home/mshuler/git/cassandra/build.xml:1079: The following error occurred 
 while executing this line:
 /home/mshuler/git/cassandra/build.xml:1038: Some unit test(s) failed.
 Total time: 10 seconds
 {noformat}
 - test.sh attached
 - system.log from failed test attached



--
This message was sent by Atlassian JIRA
(v6.1.5#6160)


[jira] [Commented] (CASSANDRA-6332) Cassandra startup failure: java.util.concurrent.ExecutionException: java.lang.RuntimeException: 706167655f74616773 is not defined as a collection

2014-02-07 Thread Jonathan Ellis (JIRA)

[ 
https://issues.apache.org/jira/browse/CASSANDRA-6332?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13894571#comment-13894571
 ] 

Jonathan Ellis commented on CASSANDRA-6332:
---

Did you drop and recreate a table with a different definition?

 Cassandra startup failure:  java.util.concurrent.ExecutionException: 
 java.lang.RuntimeException: 706167655f74616773 is not defined as a collection
 --

 Key: CASSANDRA-6332
 URL: https://issues.apache.org/jira/browse/CASSANDRA-6332
 Project: Cassandra
  Issue Type: Bug
 Environment: Ubuntu 12.04
 Cassandra 2.0.1
Reporter: Prateek
Priority: Critical

 The cassandra node fails to startup with the following error message. This is 
 currently impacting availability of our production cluster so your quick 
 response is highly appreciated.
 ERROR 22:58:26,046 Exception encountered during startup
 java.lang.RuntimeException: java.util.concurrent.ExecutionException: 
 java.lang.RuntimeException: 706167655f74616773 is not defined as a collection
 at 
 org.apache.cassandra.utils.FBUtilities.waitOnFuture(FBUtilities.java:411)
 at 
 org.apache.cassandra.utils.FBUtilities.waitOnFutures(FBUtilities.java:400)
 at 
 org.apache.cassandra.db.commitlog.CommitLogReplayer.recover(CommitLogReplayer.java:273)
 at 
 org.apache.cassandra.db.commitlog.CommitLogReplayer.recover(CommitLogReplayer.java:96)
 at 
 org.apache.cassandra.db.commitlog.CommitLog.recover(CommitLog.java:146)
 at 
 org.apache.cassandra.db.commitlog.CommitLog.recover(CommitLog.java:126)
 at 
 org.apache.cassandra.service.CassandraDaemon.setup(CassandraDaemon.java:299)
 at 
 org.apache.cassandra.service.CassandraDaemon.activate(CassandraDaemon.java:442)
 at 
 org.apache.cassandra.service.CassandraDaemon.main(CassandraDaemon.java:485)
 Caused by: java.util.concurrent.ExecutionException: 
 java.lang.RuntimeException: 706167655f74616773 is not defined as a collection
 at java.util.concurrent.FutureTask.report(FutureTask.java:122)
 at java.util.concurrent.FutureTask.get(FutureTask.java:188)
 at 
 org.apache.cassandra.utils.FBUtilities.waitOnFuture(FBUtilities.java:407)
 ... 8 more
 Caused by: java.lang.RuntimeException: 706167655f74616773 is not defined as a 
 collection
 at 
 org.apache.cassandra.db.marshal.ColumnToCollectionType.compareCollectionMembers(ColumnToCollectionType.java:72)
 at 
 org.apache.cassandra.db.marshal.AbstractCompositeType.compare(AbstractCompositeType.java:85)
 at 
 org.apache.cassandra.db.marshal.AbstractCompositeType.compare(AbstractCompositeType.java:35)
 at 
 edu.stanford.ppl.concurrent.SnapTreeMap$1.compareTo(SnapTreeMap.java:538)
 at 
 edu.stanford.ppl.concurrent.SnapTreeMap.attemptUpdate(SnapTreeMap.java:1108)
 at 
 edu.stanford.ppl.concurrent.SnapTreeMap.attemptUpdate(SnapTreeMap.java:1192)
 at 
 edu.stanford.ppl.concurrent.SnapTreeMap.updateUnderRoot(SnapTreeMap.java:1059)
 at 
 edu.stanford.ppl.concurrent.SnapTreeMap.update(SnapTreeMap.java:1023)
 at 
 edu.stanford.ppl.concurrent.SnapTreeMap.putIfAbsent(SnapTreeMap.java:985)
 at 
 org.apache.cassandra.db.AtomicSortedColumns$Holder.addColumn(AtomicSortedColumns.java:323)
 at 
 org.apache.cassandra.db.AtomicSortedColumns.addAllWithSizeDelta(AtomicSortedColumns.java:195)
 at org.apache.cassandra.db.Memtable.resolve(Memtable.java:196)
 at org.apache.cassandra.db.Memtable.put(Memtable.java:160)
 at 
 org.apache.cassandra.db.ColumnFamilyStore.apply(ColumnFamilyStore.java:842)
 at org.apache.cassandra.db.Keyspace.apply(Keyspace.java:373)
 at org.apache.cassandra.db.Keyspace.apply(Keyspace.java:338)
 at 
 org.apache.cassandra.db.commitlog.CommitLogReplayer$1.runMayThrow(CommitLogReplayer.java:265)



--
This message was sent by Atlassian JIRA
(v6.1.5#6160)


[jira] [Updated] (CASSANDRA-6648) Race condition during node bootstrapping

2014-02-07 Thread Robert Coli (JIRA)

 [ 
https://issues.apache.org/jira/browse/CASSANDRA-6648?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Robert Coli updated CASSANDRA-6648:
---

Since Version: 1.2.14

 Race condition during node bootstrapping
 

 Key: CASSANDRA-6648
 URL: https://issues.apache.org/jira/browse/CASSANDRA-6648
 Project: Cassandra
  Issue Type: Bug
  Components: Core
Reporter: Sergio Bossa
Assignee: Sergio Bossa
Priority: Critical
 Fix For: 1.2.15, 2.0.5

 Attachments: 6648-v2.txt, 6648-v3-1.2.txt, 6648-v3.txt, 
 CASSANDRA-6648.patch


 When bootstrapping a new node, data is missing as if the new node didn't 
 actually bootstrap, which I tracked down to the following scenario:
 1) New node joins token ring and waits for schema to be settled before 
 actually bootstrapping.
 2) The schema scheck somewhat passes and it starts bootstrapping.
 3) Bootstrapping doesn't find the ks/cf that should have received from the 
 other node.
 4) Queries at this point cause NPEs, until when later they recover but data 
 is missed.
 The problem seems to be caused by a race condition between the migration 
 manager and the bootstrapper, with the former running after the latter.
 I think this is supposed to protect against such scenarios:
 {noformat}
 while (!MigrationManager.isReadyForBootstrap())
 {
 setMode(Mode.JOINING, waiting for schema information to 
 complete, true);
 Uninterruptibles.sleepUninterruptibly(1, TimeUnit.SECONDS);
 }
 {noformat}
 But MigrationManager.isReadyForBootstrap() implementation is quite fragile 
 and doesn't take into account slow schema propagation.



--
This message was sent by Atlassian JIRA
(v6.1.5#6160)


[jira] [Created] (CASSANDRA-6679) CleanupTest occasional failure in 1.2

2014-02-07 Thread Michael Shuler (JIRA)
Michael Shuler created CASSANDRA-6679:
-

 Summary: CleanupTest occasional failure in 1.2
 Key: CASSANDRA-6679
 URL: https://issues.apache.org/jira/browse/CASSANDRA-6679
 Project: Cassandra
  Issue Type: Test
  Components: Tests
 Environment: Debian Stable (Wheezy) amd64
Oracle JVM 1.7.0_51-b13
Reporter: Michael Shuler
Priority: Minor


{noformat}
test:
 [echo] running unit tests
[junit] WARNING: multiple versions of ant detected in path for junit
[junit]  
jar:file:/usr/share/ant/lib/ant.jar!/org/apache/tools/ant/Project.class
[junit]  and 
jar:file:/home/mshuler/git/cassandra/build/lib/jars/ant-1.6.5.jar!/org/apache/tools/ant/Project.class
[junit] Testsuite: org.apache.cassandra.db.CleanupTest
[junit] Tests run: 2, Failures: 1, Errors: 0, Time elapsed: 6.508 sec
[junit]
[junit] - Standard Error -
[junit]  WARN 15:27:11,566 No host ID found, created 
e8a8a37c-56c5-49d5-8260-7a3dfc2174a7 (Note: This should happen exactly once per 
node).
[junit]  WARN 15:27:11,655 Generated random token 
[0850c6b26994617235bec220dd17a6d6]. Random tokens will result in an unbalanced 
ring; see http://wiki.apache.org/cassandra/Operations
[junit] -  ---
[junit] Testcase: testCleanup(org.apache.cassandra.db.CleanupTest): FAILED
[junit] null
[junit] junit.framework.AssertionFailedError
[junit] at 
org.apache.cassandra.db.CleanupTest.testCleanup(CleanupTest.java:87)
[junit]
[junit]
[junit] Test org.apache.cassandra.db.CleanupTest FAILED

BUILD FAILED
{noformat}

- loop through CleanupTest unit test 
(https://issues.apache.org/jira/secure/attachment/12627493/test.sh)
- system.log from failed test attached



--
This message was sent by Atlassian JIRA
(v6.1.5#6160)


[6/6] git commit: Merge branch 'cassandra-2.0' into trunk

2014-02-07 Thread brandonwilliams
Merge branch 'cassandra-2.0' into trunk


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/01cf29c3
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/01cf29c3
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/01cf29c3

Branch: refs/heads/trunk
Commit: 01cf29c3e9dac62495d360905323dd0dc4f9b47a
Parents: 4c0b4fa 130d135
Author: Brandon Williams brandonwilli...@apache.org
Authored: Fri Feb 7 13:19:50 2014 -0600
Committer: Brandon Williams brandonwilli...@apache.org
Committed: Fri Feb 7 13:19:50 2014 -0600

--
 build.xml | 12 
 1 file changed, 12 insertions(+)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/01cf29c3/build.xml
--
diff --cc build.xml
index d36b39e,bfbd8b2..d91e0e0
--- a/build.xml
+++ b/build.xml
@@@ -1116,10 -1084,18 +1117,21 @@@
jvmarg value=-Dcassandra.ring_delay_ms=1000/
jvmarg value=-Dcassandra.tolerate_sstable_size=true/
  /testmacro
 +fileset dir=${test.unit.src}
 +exclude name=**/pig/*.java /
 +/fileset
/target
+ 
+   target name=testsome depends=build-test description=Execute specific 
unit tests 
+ testmacro suitename=unit inputdir=${test.unit.src} 
exclude=**/pig/*.java timeout=${test.timeout}
+   test name=${test.name} methods=${test.methods}/
+   jvmarg value=-Dlegacy-sstable-root=${test.data}/legacy-sstables/
+   jvmarg value=-Dcorrupt-sstable-root=${test.data}/corrupt-sstables/
+   jvmarg 
value=-Dmigration-sstable-root=${test.data}/migration-sstables/
+   jvmarg value=-Dcassandra.ring_delay_ms=1000/
+   jvmarg value=-Dcassandra.tolerate_sstable_size=true/
+ /testmacro
+   /target
  
target name=test-compression depends=build-test description=Execute 
unit tests with sstable compression enabled
testmacro suitename=unit inputdir=${test.unit.src} 
exclude=**/pig/*.java timeout=${test.timeout}



[3/6] git commit: add target to run specific test methods

2014-02-07 Thread brandonwilliams
add target to run specific test methods


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/c70f6d80
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/c70f6d80
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/c70f6d80

Branch: refs/heads/trunk
Commit: c70f6d80bd26904e0ff34136bf598d701f1ed69d
Parents: 2dd55c7
Author: Brandon Williams brandonwilli...@apache.org
Authored: Fri Feb 7 13:19:26 2014 -0600
Committer: Brandon Williams brandonwilli...@apache.org
Committed: Fri Feb 7 13:19:26 2014 -0600

--
 build.xml | 12 
 1 file changed, 12 insertions(+)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/c70f6d80/build.xml
--
diff --git a/build.xml b/build.xml
index ce87a2a..eaf35b5 100644
--- a/build.xml
+++ b/build.xml
@@ -56,6 +56,7 @@
 property name=test.conf value=${test.dir}/conf/
 property name=test.data value=${test.dir}/data/
 property name=test.name value=*Test/
+property name=test.methods value=/
 property name=test.unit.src value=${test.dir}/unit/
 property name=test.long.src value=${test.dir}/long/
 property name=dist.dir value=${build.dir}/dist/
@@ -1118,6 +1119,17 @@
   jvmarg value=-Dcassandra.tolerate_sstable_size=true/
 /testmacro
   /target
+
+  target name=testsome depends=build-test description=Execute specific 
unit tests 
+testmacro suitename=unit inputdir=${test.unit.src} 
exclude=**/pig/*.java timeout=${test.timeout}
+  test name=${test.name} methods=${test.methods}/
+  jvmarg value=-Dlegacy-sstable-root=${test.data}/legacy-sstables/
+  jvmarg value=-Dcorrupt-sstable-root=${test.data}/corrupt-sstables/
+  jvmarg 
value=-Dmigration-sstable-root=${test.data}/migration-sstables/
+  jvmarg value=-Dcassandra.ring_delay_ms=1000/
+  jvmarg value=-Dcassandra.tolerate_sstable_size=true/
+/testmacro
+  /target
 
   target name=test-compression depends=build-test description=Execute 
unit tests with sstable compression enabled
   testmacro suitename=unit inputdir=${test.unit.src} 
exclude=**/pig/*.java timeout=${test.timeout}



[4/6] git commit: Merge branch 'cassandra-1.2' into cassandra-2.0

2014-02-07 Thread brandonwilliams
Merge branch 'cassandra-1.2' into cassandra-2.0


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/130d135a
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/130d135a
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/130d135a

Branch: refs/heads/trunk
Commit: 130d135a63b213844270e3f94e5b07658ac897dd
Parents: 7407cf9 c70f6d8
Author: Brandon Williams brandonwilli...@apache.org
Authored: Fri Feb 7 13:19:38 2014 -0600
Committer: Brandon Williams brandonwilli...@apache.org
Committed: Fri Feb 7 13:19:38 2014 -0600

--
 build.xml | 12 
 1 file changed, 12 insertions(+)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/130d135a/build.xml
--
diff --cc build.xml
index 6804a1b,eaf35b5..bfbd8b2
--- a/build.xml
+++ b/build.xml
@@@ -55,13 -56,13 +55,14 @@@
  property name=test.conf value=${test.dir}/conf/
  property name=test.data value=${test.dir}/data/
  property name=test.name value=*Test/
+ property name=test.methods value=/
  property name=test.unit.src value=${test.dir}/unit/
  property name=test.long.src value=${test.dir}/long/
 +property name=test.pig.src value=${test.dir}/pig/
  property name=dist.dir value=${build.dir}/dist/

 -  property name=source.version value=1.6/
 -  property name=target.version value=1.6/
 +  property name=source.version value=1.7/
 +  property name=target.version value=1.7/

  condition property=version value=${base.version}
isset property=release/



[5/6] git commit: Merge branch 'cassandra-1.2' into cassandra-2.0

2014-02-07 Thread brandonwilliams
Merge branch 'cassandra-1.2' into cassandra-2.0


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/130d135a
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/130d135a
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/130d135a

Branch: refs/heads/cassandra-2.0
Commit: 130d135a63b213844270e3f94e5b07658ac897dd
Parents: 7407cf9 c70f6d8
Author: Brandon Williams brandonwilli...@apache.org
Authored: Fri Feb 7 13:19:38 2014 -0600
Committer: Brandon Williams brandonwilli...@apache.org
Committed: Fri Feb 7 13:19:38 2014 -0600

--
 build.xml | 12 
 1 file changed, 12 insertions(+)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/130d135a/build.xml
--
diff --cc build.xml
index 6804a1b,eaf35b5..bfbd8b2
--- a/build.xml
+++ b/build.xml
@@@ -55,13 -56,13 +55,14 @@@
  property name=test.conf value=${test.dir}/conf/
  property name=test.data value=${test.dir}/data/
  property name=test.name value=*Test/
+ property name=test.methods value=/
  property name=test.unit.src value=${test.dir}/unit/
  property name=test.long.src value=${test.dir}/long/
 +property name=test.pig.src value=${test.dir}/pig/
  property name=dist.dir value=${build.dir}/dist/

 -  property name=source.version value=1.6/
 -  property name=target.version value=1.6/
 +  property name=source.version value=1.7/
 +  property name=target.version value=1.7/

  condition property=version value=${base.version}
isset property=release/



[jira] [Commented] (CASSANDRA-6676) Add ability to see layout of storage for CQL tables

2014-02-07 Thread Andy Cobley (JIRA)

[ 
https://issues.apache.org/jira/browse/CASSANDRA-6676?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13894931#comment-13894931
 ] 

Andy Cobley commented on CASSANDRA-6676:


+1  for the addition to CQL.  I do like the suggestion 

select * from x show storage

@alexsey  perhaps then we need :

select * from x show storage, tombstones.  

Going to sstable2jason is a step too far for simple debugging I suggest.


 Add ability to see layout of storage for CQL tables
 ---

 Key: CASSANDRA-6676
 URL: https://issues.apache.org/jira/browse/CASSANDRA-6676
 Project: Cassandra
  Issue Type: Improvement
Reporter: Brian ONeill
Priority: Minor

 Many of us use the CLI to see how data gets laid out in storage for tables 
 created via CQL.  If we intend to deprecate CLI, it would be nice to have 
 this ability in CQL.
 See thread:
 http://cassandra-user-incubator-apache-org.3065146.n2.nabble.com/CQL-list-command-td7592673.html



--
This message was sent by Atlassian JIRA
(v6.1.5#6160)


[jira] [Commented] (CASSANDRA-6676) Add ability to see layout of storage for CQL tables

2014-02-07 Thread Jonathan Ellis (JIRA)

[ 
https://issues.apache.org/jira/browse/CASSANDRA-6676?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13894939#comment-13894939
 ] 

Jonathan Ellis commented on CASSANDRA-6676:
---

If you're trying to see the storage layout, you're beyond simple debugging.

 Add ability to see layout of storage for CQL tables
 ---

 Key: CASSANDRA-6676
 URL: https://issues.apache.org/jira/browse/CASSANDRA-6676
 Project: Cassandra
  Issue Type: Improvement
Reporter: Brian ONeill
Priority: Minor

 Many of us use the CLI to see how data gets laid out in storage for tables 
 created via CQL.  If we intend to deprecate CLI, it would be nice to have 
 this ability in CQL.
 See thread:
 http://cassandra-user-incubator-apache-org.3065146.n2.nabble.com/CQL-list-command-td7592673.html



--
This message was sent by Atlassian JIRA
(v6.1.5#6160)


[2/6] git commit: add target to run specific test methods

2014-02-07 Thread brandonwilliams
add target to run specific test methods


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/c70f6d80
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/c70f6d80
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/c70f6d80

Branch: refs/heads/cassandra-2.0
Commit: c70f6d80bd26904e0ff34136bf598d701f1ed69d
Parents: 2dd55c7
Author: Brandon Williams brandonwilli...@apache.org
Authored: Fri Feb 7 13:19:26 2014 -0600
Committer: Brandon Williams brandonwilli...@apache.org
Committed: Fri Feb 7 13:19:26 2014 -0600

--
 build.xml | 12 
 1 file changed, 12 insertions(+)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/c70f6d80/build.xml
--
diff --git a/build.xml b/build.xml
index ce87a2a..eaf35b5 100644
--- a/build.xml
+++ b/build.xml
@@ -56,6 +56,7 @@
 property name=test.conf value=${test.dir}/conf/
 property name=test.data value=${test.dir}/data/
 property name=test.name value=*Test/
+property name=test.methods value=/
 property name=test.unit.src value=${test.dir}/unit/
 property name=test.long.src value=${test.dir}/long/
 property name=dist.dir value=${build.dir}/dist/
@@ -1118,6 +1119,17 @@
   jvmarg value=-Dcassandra.tolerate_sstable_size=true/
 /testmacro
   /target
+
+  target name=testsome depends=build-test description=Execute specific 
unit tests 
+testmacro suitename=unit inputdir=${test.unit.src} 
exclude=**/pig/*.java timeout=${test.timeout}
+  test name=${test.name} methods=${test.methods}/
+  jvmarg value=-Dlegacy-sstable-root=${test.data}/legacy-sstables/
+  jvmarg value=-Dcorrupt-sstable-root=${test.data}/corrupt-sstables/
+  jvmarg 
value=-Dmigration-sstable-root=${test.data}/migration-sstables/
+  jvmarg value=-Dcassandra.ring_delay_ms=1000/
+  jvmarg value=-Dcassandra.tolerate_sstable_size=true/
+/testmacro
+  /target
 
   target name=test-compression depends=build-test description=Execute 
unit tests with sstable compression enabled
   testmacro suitename=unit inputdir=${test.unit.src} 
exclude=**/pig/*.java timeout=${test.timeout}



[3/6] git commit: Compact hints after partial replay to clean out tombstones patch by jbellis; reviewed by ayeschenko for CASSANDRA-6666

2014-02-07 Thread jbellis
Compact hints after partial replay to clean out tombstones
patch by jbellis; reviewed by ayeschenko for CASSANDRA-


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/ab5372f0
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/ab5372f0
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/ab5372f0

Branch: refs/heads/trunk
Commit: ab5372f0f3b3650556242a21a9d463b4f1e93efd
Parents: beefd0b
Author: Jonathan Ellis jbel...@apache.org
Authored: Fri Feb 7 10:30:20 2014 -0600
Committer: Jonathan Ellis jbel...@apache.org
Committed: Fri Feb 7 10:30:20 2014 -0600

--
 CHANGES.txt |  1 +
 .../cassandra/db/HintedHandOffManager.java  | 26 
 2 files changed, 17 insertions(+), 10 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/ab5372f0/CHANGES.txt
--
diff --git a/CHANGES.txt b/CHANGES.txt
index 5511e01..82783f8 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -2,6 +2,7 @@
  * Fix upgradesstables NPE for non-CF-based indexes (CASSANDRA-6645)
  * Fix partition and range deletes not triggering flush (CASSANDRA-6655)
  * Fix mean cells and mean row size per sstable calculations (CASSANDRA-6667)
+ * Compact hints after partial replay to clean out tombstones (CASSANDRA-)
 
 
 1.2.15

http://git-wip-us.apache.org/repos/asf/cassandra/blob/ab5372f0/src/java/org/apache/cassandra/db/HintedHandOffManager.java
--
diff --git a/src/java/org/apache/cassandra/db/HintedHandOffManager.java 
b/src/java/org/apache/cassandra/db/HintedHandOffManager.java
index ede49e4..b1ccbc3 100644
--- a/src/java/org/apache/cassandra/db/HintedHandOffManager.java
+++ b/src/java/org/apache/cassandra/db/HintedHandOffManager.java
@@ -309,6 +309,7 @@ public class HintedHandOffManager implements 
HintedHandOffManagerMBean
/ 
(StorageService.instance.getTokenMetadata().getAllEndpoints().size() - 1);
 RateLimiter rateLimiter = RateLimiter.create(throttleInKB == 0 ? 
Double.MAX_VALUE : throttleInKB * 1024);
 
+boolean finished = false;
 delivery:
 while (true)
 {
@@ -323,13 +324,17 @@ public class HintedHandOffManager implements 
HintedHandOffManagerMBean
  (int) 
(System.currentTimeMillis() / 1000));
 
 if (pagingFinished(hintsPage, startColumn))
+{
+logger.info(Finished hinted handoff of {} rows to endpoint 
{}, rowsReplayed, endpoint);
+finished = true;
 break;
+}
 
 // check if node is still alive and we should continue delivery 
process
 if (!FailureDetector.instance.isAlive(endpoint))
 {
 logger.info(Endpoint {} died during hint delivery; aborting 
({} delivered), endpoint, rowsReplayed);
-return;
+break;
 }
 
 ListWriteResponseHandler responseHandlers = Lists.newArrayList();
@@ -420,20 +425,21 @@ public class HintedHandOffManager implements 
HintedHandOffManagerMBean
 catch (WriteTimeoutException e)
 {
 logger.info(Timed out replaying hints to {}; aborting ({} 
delivered), endpoint, rowsReplayed);
-return;
+break delivery;
 }
 }
 }
 
-logger.info(Finished hinted handoff of {} rows to endpoint {}, 
rowsReplayed, endpoint);
-
-try
+if (finished || rowsReplayed.get() = 
DatabaseDescriptor.getTombstoneDebugThreshold())
 {
-compact().get();
-}
-catch (Exception e)
-{
-throw new RuntimeException(e);
+try
+{
+compact().get();
+}
+catch (Exception e)
+{
+throw new RuntimeException(e);
+}
 }
 }
 



[jira] [Commented] (CASSANDRA-6674) TombstoneOverwhelmingException during/after batch insert

2014-02-07 Thread Machiel Groeneveld (JIRA)

[ 
https://issues.apache.org/jira/browse/CASSANDRA-6674?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13894561#comment-13894561
 ] 

Machiel Groeneveld commented on CASSANDRA-6674:
---

Is there a way to make the tombstones go away, can I force a cleanup for 
instance?

 TombstoneOverwhelmingException during/after batch insert
 

 Key: CASSANDRA-6674
 URL: https://issues.apache.org/jira/browse/CASSANDRA-6674
 Project: Cassandra
  Issue Type: Bug
 Environment: 2.0.4; 2.0.5 
 Mac OS X
Reporter: Machiel Groeneveld
Priority: Critical

 Select query on a table where I'm doing insert fails with tombstone 
 exception. The database is clean/empty before doing inserts, doing the first 
 query after a few thousand records inserted. I don't understand where the 
 tombstones are coming from as I'm not doing any deletes.
 ERROR [ReadStage:41] 2014-02-07 12:16:42,169 SliceQueryFilter.java (line 200) 
 Scanned over 10 tombstones in visits.visits; query aborted (see 
 tombstone_fail_threshold)
 ERROR [ReadStage:41] 2014-02-07 12:16:42,171 CassandraDaemon.java (line 192) 
 Exception in thread Thread[ReadStage:41,5,main]
 java.lang.RuntimeException: 
 org.apache.cassandra.db.filter.TombstoneOverwhelmingException
 at 
 org.apache.cassandra.service.StorageProxy$DroppableRunnable.run(StorageProxy.java:1935)
 at 
 java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
 at 
 java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
 at java.lang.Thread.run(Thread.java:724)
 Caused by: org.apache.cassandra.db.filter.TombstoneOverwhelmingException
 at 
 org.apache.cassandra.db.filter.SliceQueryFilter.collectReducedColumns(SliceQueryFilter.java:202)
 at 
 org.apache.cassandra.db.filter.QueryFilter.collateColumns(QueryFilter.java:122)
 at 
 org.apache.cassandra.db.filter.QueryFilter.collateOnDiskAtom(QueryFilter.java:80)
 at 
 org.apache.cassandra.db.RowIteratorFactory$2.getReduced(RowIteratorFactory.java:101)
 at 
 org.apache.cassandra.db.RowIteratorFactory$2.getReduced(RowIteratorFactory.java:75)
 at 
 org.apache.cassandra.utils.MergeIterator$ManyToOne.consume(MergeIterator.java:115)
 at 
 org.apache.cassandra.utils.MergeIterator$ManyToOne.computeNext(MergeIterator.java:98)
 at 
 com.google.common.collect.AbstractIterator.tryToComputeNext(AbstractIterator.java:143)
 at 
 com.google.common.collect.AbstractIterator.hasNext(AbstractIterator.java:138)
 at 
 org.apache.cassandra.db.ColumnFamilyStore$9.computeNext(ColumnFamilyStore.java:1607)
 at 
 org.apache.cassandra.db.ColumnFamilyStore$9.computeNext(ColumnFamilyStore.java:1603)
 at 
 com.google.common.collect.AbstractIterator.tryToComputeNext(AbstractIterator.java:143)
 at 
 com.google.common.collect.AbstractIterator.hasNext(AbstractIterator.java:138)
 at 
 org.apache.cassandra.db.ColumnFamilyStore.filter(ColumnFamilyStore.java:1754)
 at 
 org.apache.cassandra.db.ColumnFamilyStore.getRangeSlice(ColumnFamilyStore.java:1718)
 at 
 org.apache.cassandra.db.RangeSliceCommand.executeLocally(RangeSliceCommand.java:137)
 at 
 org.apache.cassandra.service.StorageProxy$LocalRangeSliceRunnable.runMayThrow(StorageProxy.java:1418)
 at 
 org.apache.cassandra.service.StorageProxy$DroppableRunnable.run(StorageProxy.java:1931)
 ... 3 more



--
This message was sent by Atlassian JIRA
(v6.1.5#6160)


[7/8] git commit: Fix unwanted schema pull while upgrading nodes from 1.2 to 2.0 Patch by Sergio Bossa, reviewed by brandonwilliams for CASSANDRA-6678

2014-02-07 Thread brandonwilliams
Fix unwanted schema pull while upgrading nodes from 1.2 to 2.0
Patch by Sergio Bossa, reviewed by brandonwilliams for CASSANDRA-6678


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/9e0700c0
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/9e0700c0
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/9e0700c0

Branch: refs/heads/cassandra-2.0
Commit: 9e0700c07e643c3eaf0a7687aab92f02a32d1899
Parents: fe5de33
Author: Brandon Williams brandonwilli...@apache.org
Authored: Fri Feb 7 08:35:20 2014 -0600
Committer: Brandon Williams brandonwilli...@apache.org
Committed: Fri Feb 7 08:35:20 2014 -0600

--
 src/java/org/apache/cassandra/service/MigrationManager.java | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/9e0700c0/src/java/org/apache/cassandra/service/MigrationManager.java
--
diff --git a/src/java/org/apache/cassandra/service/MigrationManager.java 
b/src/java/org/apache/cassandra/service/MigrationManager.java
index b463116..fdcefe4 100644
--- a/src/java/org/apache/cassandra/service/MigrationManager.java
+++ b/src/java/org/apache/cassandra/service/MigrationManager.java
@@ -137,8 +137,9 @@ public class MigrationManager
  * Don't request schema from nodes with a higher major (may have 
incompatible schema)
  * Don't request schema from fat clients
  */
-return MessagingService.instance().getVersion(endpoint) = 
MessagingService.current_version
- !Gossiper.instance.isFatClient(endpoint);
+return MessagingService.instance().knowsVersion(endpoint)
+ MessagingService.instance().getVersion(endpoint) = 
MessagingService.current_version
+ !Gossiper.instance.isFatClient(endpoint);
 }
 
 public static boolean isReadyForBootstrap()



[5/6] git commit: Merge branch 'cassandra-1.2' into cassandra-2.0

2014-02-07 Thread jbellis
Merge branch 'cassandra-1.2' into cassandra-2.0


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/56a615d7
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/56a615d7
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/56a615d7

Branch: refs/heads/cassandra-2.0
Commit: 56a615d7397a937b8f6586fe2ecc79cfc2da28f0
Parents: 3d5b5c3 beefd0b
Author: Jonathan Ellis jbel...@apache.org
Authored: Fri Feb 7 10:18:31 2014 -0600
Committer: Jonathan Ellis jbel...@apache.org
Committed: Fri Feb 7 10:18:31 2014 -0600

--
 CHANGES.txt   | 1 +
 src/java/org/apache/cassandra/db/ColumnFamilyStoreMBean.java  | 2 +-
 src/java/org/apache/cassandra/db/DataTracker.java | 7 ---
 .../org/apache/cassandra/metrics/ColumnFamilyMetrics.java | 5 +++--
 4 files changed, 9 insertions(+), 6 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/56a615d7/CHANGES.txt
--
diff --cc CHANGES.txt
index 85c6533,5511e01..94cd19c
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@@ -1,42 -1,24 +1,43 @@@
 -1.2.16
 +2.0.6
 + * Failure detector correctly converts initial value to nanos (CASSANDRA-6658)
 + * Add nodetool taketoken to relocate vnodes (CASSANDRA-4445)
 + * 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)
 + * Account for range/row tombstones in tombstone drop
 +   time histogram (CASSANDRA-6522)
 +Merged from 1.2:
   * Fix upgradesstables NPE for non-CF-based indexes (CASSANDRA-6645)
   * Fix partition and range deletes not triggering flush (CASSANDRA-6655)
+  * Fix mean cells and mean row size per sstable calculations (CASSANDRA-6667)
  
 -
 -1.2.15
 - * Move handling of migration event source to solve bootstrap race 
(CASSANDRA-6648)
 - * Make sure compaction throughput value doesn't overflow with int math 
(CASSANDRA-6647)
 -
 -
 -1.2.14
 - * Reverted code to limit CQL prepared statement cache by size 
(CASSANDRA-6592)
 - * add cassandra.default_messaging_version property to allow easier
 -   upgrading from 1.1 (CASSANDRA-6619)
 - * Allow executing CREATE statements multiple times (CASSANDRA-6471)
 - * Don't send confusing info with timeouts (CASSANDRA-6491)
 - * Don't resubmit counter mutation runnables internally (CASSANDRA-6427)
 - * Don't drop local mutations without a hint (CASSANDRA-6510)
 - * Don't allow null max_hint_window_in_ms (CASSANDRA-6419)
 - * Validate SliceRange start and finish lengths (CASSANDRA-6521)
 +2.0.5
 + * Reduce garbage generated by bloom filter lookups (CASSANDRA-6609)
 + * Add ks.cf names to tombstone logging (CASSANDRA-6597)
 + * Use LOCAL_QUORUM for LWT operations at LOCAL_SERIAL (CASSANDRA-6495)
 + * Wait for gossip to settle before accepting client connections 
(CASSANDRA-4288)
 + * Delete unfinished compaction incrementally (CASSANDRA-6086)
 + * Allow specifying custom secondary index options in CQL3 (CASSANDRA-6480)
 + * Improve replica pinning for cache efficiency in DES (CASSANDRA-6485)
 + * Fix LOCAL_SERIAL from thrift (CASSANDRA-6584)
 + * Don't special case received counts in CAS timeout exceptions 
(CASSANDRA-6595)
 + * Add support for 2.1 global counter shards (CASSANDRA-6505)
 + * Fix NPE when streaming connection is not yet established (CASSANDRA-6210)
 + * Avoid rare duplicate read repair triggering (CASSANDRA-6606)
 + * Fix paging discardFirst (CASSANDRA-6555)
 + * Fix ArrayIndexOutOfBoundsException in 2ndary index query (CASSANDRA-6470)
 + * Release sstables upon rebuilding 2i (CASSANDRA-6635)
 + * Add AbstractCompactionStrategy.startup() method (CASSANDRA-6637)
 + * SSTableScanner may skip rows during cleanup (CASSANDRA-6638)
 + * sstables from stalled repair sessions can resurrect deleted data 
(CASSANDRA-6503)
 + * Switch stress to use ITransportFactory (CASSANDRA-6641)
 + * Fix IllegalArgumentException during prepare (CASSANDRA-6592)
 + * Fix possible loss of 2ndary index entries during compaction 
(CASSANDRA-6517)
 + * Fix direct Memory on architectures that do not support unaligned long 
access
 +   (CASSANDRA-6628)
 + * Let scrub optionally skip broken counter partitions (CASSANDRA-5930)
 +Merged from 1.2:
   * fsync compression metadata (CASSANDRA-6531)
   * Validate CF existence on execution for prepared statement (CASSANDRA-6535)
   * Add ability to throttle batchlog replay (CASSANDRA-6550)

http://git-wip-us.apache.org/repos/asf/cassandra/blob/56a615d7/src/java/org/apache/cassandra/db/ColumnFamilyStoreMBean.java
--


[1/6] git commit: add target to run specific test methods

2014-02-07 Thread brandonwilliams
Updated Branches:
  refs/heads/cassandra-1.2 2dd55c7d3 - c70f6d80b
  refs/heads/cassandra-2.0 7407cf981 - 130d135a6
  refs/heads/trunk 4c0b4fa2e - 01cf29c3e


add target to run specific test methods


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/c70f6d80
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/c70f6d80
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/c70f6d80

Branch: refs/heads/cassandra-1.2
Commit: c70f6d80bd26904e0ff34136bf598d701f1ed69d
Parents: 2dd55c7
Author: Brandon Williams brandonwilli...@apache.org
Authored: Fri Feb 7 13:19:26 2014 -0600
Committer: Brandon Williams brandonwilli...@apache.org
Committed: Fri Feb 7 13:19:26 2014 -0600

--
 build.xml | 12 
 1 file changed, 12 insertions(+)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/c70f6d80/build.xml
--
diff --git a/build.xml b/build.xml
index ce87a2a..eaf35b5 100644
--- a/build.xml
+++ b/build.xml
@@ -56,6 +56,7 @@
 property name=test.conf value=${test.dir}/conf/
 property name=test.data value=${test.dir}/data/
 property name=test.name value=*Test/
+property name=test.methods value=/
 property name=test.unit.src value=${test.dir}/unit/
 property name=test.long.src value=${test.dir}/long/
 property name=dist.dir value=${build.dir}/dist/
@@ -1118,6 +1119,17 @@
   jvmarg value=-Dcassandra.tolerate_sstable_size=true/
 /testmacro
   /target
+
+  target name=testsome depends=build-test description=Execute specific 
unit tests 
+testmacro suitename=unit inputdir=${test.unit.src} 
exclude=**/pig/*.java timeout=${test.timeout}
+  test name=${test.name} methods=${test.methods}/
+  jvmarg value=-Dlegacy-sstable-root=${test.data}/legacy-sstables/
+  jvmarg value=-Dcorrupt-sstable-root=${test.data}/corrupt-sstables/
+  jvmarg 
value=-Dmigration-sstable-root=${test.data}/migration-sstables/
+  jvmarg value=-Dcassandra.ring_delay_ms=1000/
+  jvmarg value=-Dcassandra.tolerate_sstable_size=true/
+/testmacro
+  /target
 
   target name=test-compression depends=build-test description=Execute 
unit tests with sstable compression enabled
   testmacro suitename=unit inputdir=${test.unit.src} 
exclude=**/pig/*.java timeout=${test.timeout}



[jira] [Commented] (CASSANDRA-6590) Gossip does not heal after a temporary partition at startup

2014-02-07 Thread Brandon Williams (JIRA)

[ 
https://issues.apache.org/jira/browse/CASSANDRA-6590?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13894980#comment-13894980
 ] 

Brandon Williams commented on CASSANDRA-6590:
-

bq. the if (!localState.isAlive()) check is problematic, because while it got 
rid of the repeated UP messages, it also seemed to introduce a race situation

Nevermind that part, it was something else.

I'm still seeing repeated messages when healing the partition though:

{noformat}
 INFO 20:16:56,176 Handshaking version with /10.208.8.63
 INFO 20:16:56,186 InetAddress /10.208.8.63 is now UP
 INFO 20:16:56,187 InetAddress /10.208.8.63 is now UP
 INFO 20:16:56,187 InetAddress /10.208.8.63 is now UP
 INFO 20:16:56,190 InetAddress /10.208.8.63 is now UP
 INFO 20:16:56,190 InetAddress /10.208.8.63 is now UP
 INFO 20:16:56,190 InetAddress /10.208.8.63 is now UP
 INFO 20:16:56,191 InetAddress /10.208.8.63 is now UP
 INFO 20:16:56,191 InetAddress /10.208.8.63 is now UP
 INFO 20:16:56,191 InetAddress /10.208.8.63 is now UP
 INFO 20:16:56,193 InetAddress /10.208.8.63 is now UP
{noformat}

What I mentioned before about the block in handleMajorStateChange and the yaml 
option still applies.

 Gossip does not heal after a temporary partition at startup
 ---

 Key: CASSANDRA-6590
 URL: https://issues.apache.org/jira/browse/CASSANDRA-6590
 Project: Cassandra
  Issue Type: Bug
  Components: Core
Reporter: Brandon Williams
Assignee: Vijay
 Fix For: 2.0.6

 Attachments: 0001-CASSANDRA-6590.patch, 0001-logging-for-6590.patch, 
 6590_disable_echo.txt


 See CASSANDRA-6571 for background.  If a node is partitioned on startup when 
 the echo command is sent, but then the partition heals, the halves of the 
 partition will never mark each other up despite being able to communicate.  
 This stems from CASSANDRA-3533.



--
This message was sent by Atlassian JIRA
(v6.1.5#6160)


[jira] [Commented] (CASSANDRA-6676) Add ability to see layout of storage for CQL tables

2014-02-07 Thread Andy Cobley (JIRA)

[ 
https://issues.apache.org/jira/browse/CASSANDRA-6676?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13894994#comment-13894994
 ] 

Andy Cobley commented on CASSANDRA-6676:


Sorry guys, perhaps storage layout is a bit far, but this:

[default@keyspace2] list tweets;
Using default limit of 100
Using default cell limit of 100
---
RowKey: Andy
= (name=940634b0-3b1a-11e3-aa6e-0800200c9a66:, value=, 
timestamp=1391351360676000, ttl=2592000)
= (name=940634b0-3b1a-11e3-aa6e-0800200c9a66:tweet, value=737465702033, 
timestamp=1391351360676000, ttl=2592000)
= (name=8118c700-3b1a-11e3-aa6e-0800200c9a66:, value=, 
timestamp=139135136063, ttl=2592000)
= (name=8118c700-3b1a-11e3-aa6e-0800200c9a66:tweet, value=737465702032, 
timestamp=139135136063, ttl=2592000)
= (name=61647990-3b1a-11e3-aa6e-0800200c9a66:, value=, 
timestamp=1391351360729000, ttl=2592000)
= (name=61647990-3b1a-11e3-aa6e-0800200c9a66:tweet, value=737465702031, 
timestamp=1391351360729000, ttl=2592000)

1 Row Returned.
Elapsed time: 1123 msec(s).
[default@keyspace2] exit


Tells me a lot about whats going on form this:

CREATE TABLE Tweets (
user varchar,
 interaction_time timeuuid,
 tweet varchar,
 PRIMARY KEY (user,interaction_time)
) WITH CLUSTERING ORDER BY (interaction_time DESC);

INSERT INTO Tweets (user,interaction_time,tweet)
VALUES ('Andy',3b3250c0-8f6c-11e3-baa8-0800200c9a66,'step 4');
INSERT INTO Tweets (user,interaction_time,tweet)
VALUES ('Bill',e878d600-8f6c-11e3-baa8-0800200c9a66,'Bill step a');

 Add ability to see layout of storage for CQL tables
 ---

 Key: CASSANDRA-6676
 URL: https://issues.apache.org/jira/browse/CASSANDRA-6676
 Project: Cassandra
  Issue Type: Improvement
Reporter: Brian ONeill
Priority: Minor

 Many of us use the CLI to see how data gets laid out in storage for tables 
 created via CQL.  If we intend to deprecate CLI, it would be nice to have 
 this ability in CQL.
 See thread:
 http://cassandra-user-incubator-apache-org.3065146.n2.nabble.com/CQL-list-command-td7592673.html



--
This message was sent by Atlassian JIRA
(v6.1.5#6160)


[jira] [Created] (CASSANDRA-6680) Clock skew detection via gossip

2014-02-07 Thread Brandon Williams (JIRA)
Brandon Williams created CASSANDRA-6680:
---

 Summary: Clock skew detection via gossip
 Key: CASSANDRA-6680
 URL: https://issues.apache.org/jira/browse/CASSANDRA-6680
 Project: Cassandra
  Issue Type: New Feature
  Components: Core
Reporter: Brandon Williams
Assignee: Brandon Williams
Priority: Minor
 Fix For: 3.0


Gossip's HeartbeatState keeps the generation (local timestamp the node was 
started) and version (monotonically increasing per gossip interval) which could 
be used to roughly calculate the node's current time, enabling detection of 
gossip messages too far in the future for the clocks to be synced.



--
This message was sent by Atlassian JIRA
(v6.1.5#6160)


[jira] [Commented] (CASSANDRA-6676) Add ability to see layout of storage for CQL tables

2014-02-07 Thread Aleksey Yeschenko (JIRA)

[ 
https://issues.apache.org/jira/browse/CASSANDRA-6676?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13895076#comment-13895076
 ] 

Aleksey Yeschenko commented on CASSANDRA-6676:
--

It's not going to be added to CQL3. The only thing it could be added to would 
be a cqlsh-only internal cmd, but you could just as well write a separate tool 
for it.

 Add ability to see layout of storage for CQL tables
 ---

 Key: CASSANDRA-6676
 URL: https://issues.apache.org/jira/browse/CASSANDRA-6676
 Project: Cassandra
  Issue Type: Improvement
Reporter: Brian ONeill
Priority: Minor

 Many of us use the CLI to see how data gets laid out in storage for tables 
 created via CQL.  If we intend to deprecate CLI, it would be nice to have 
 this ability in CQL.
 See thread:
 http://cassandra-user-incubator-apache-org.3065146.n2.nabble.com/CQL-list-command-td7592673.html



--
This message was sent by Atlassian JIRA
(v6.1.5#6160)


git commit: Fix CFMetaData.equals()

2014-02-07 Thread aleksey
Updated Branches:
  refs/heads/trunk 01cf29c3e - 0ced33c6e


Fix CFMetaData.equals()


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/0ced33c6
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/0ced33c6
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/0ced33c6

Branch: refs/heads/trunk
Commit: 0ced33c6ee2469c68862a90cae7be477274f3be0
Parents: 01cf29c
Author: Aleksey Yeschenko alek...@apache.org
Authored: Sat Feb 8 01:05:47 2014 +0300
Committer: Aleksey Yeschenko alek...@apache.org
Committed: Sat Feb 8 01:05:47 2014 +0300

--
 src/java/org/apache/cassandra/config/CFMetaData.java | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/0ced33c6/src/java/org/apache/cassandra/config/CFMetaData.java
--
diff --git a/src/java/org/apache/cassandra/config/CFMetaData.java 
b/src/java/org/apache/cassandra/config/CFMetaData.java
index f600b83..9579f99 100644
--- a/src/java/org/apache/cassandra/config/CFMetaData.java
+++ b/src/java/org/apache/cassandra/config/CFMetaData.java
@@ -926,8 +926,8 @@ public final class CFMetaData
 if (indexInterval != rhs.indexInterval) return false;
 if (!Objects.equal(speculativeRetry, rhs.speculativeRetry)) return 
false;
 if (populateIoCacheOnFlush != rhs.populateIoCacheOnFlush) return false;
-if (Objects.equal(droppedColumns, rhs.droppedColumns)) return false;
-if (Objects.equal(triggers, rhs.triggers)) return false;
+if (!Objects.equal(droppedColumns, rhs.droppedColumns)) return false;
+if (!Objects.equal(triggers, rhs.triggers)) return false;
 if (!Objects.equal(rowsPerPartitionToCache, 
rhs.rowsPerPartitionToCache)) return false;
 return true;
 }



git commit: Consistencify CFMetadata equals/hashCode/toString

2014-02-07 Thread aleksey
Updated Branches:
  refs/heads/trunk 0ced33c6e - 4336a1917


Consistencify CFMetadata equals/hashCode/toString


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/4336a191
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/4336a191
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/4336a191

Branch: refs/heads/trunk
Commit: 4336a1917c32737bac9e5ef87b31926784065cdc
Parents: 0ced33c
Author: Aleksey Yeschenko alek...@apache.org
Authored: Sat Feb 8 01:30:14 2014 +0300
Committer: Aleksey Yeschenko alek...@apache.org
Committed: Sat Feb 8 01:30:14 2014 +0300

--
 .../org/apache/cassandra/config/CFMetaData.java | 81 ++--
 1 file changed, 40 insertions(+), 41 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/4336a191/src/java/org/apache/cassandra/config/CFMetaData.java
--
diff --git a/src/java/org/apache/cassandra/config/CFMetaData.java 
b/src/java/org/apache/cassandra/config/CFMetaData.java
index 9579f99..5c09961 100644
--- a/src/java/org/apache/cassandra/config/CFMetaData.java
+++ b/src/java/org/apache/cassandra/config/CFMetaData.java
@@ -890,51 +890,51 @@ public final class CFMetaData
 return droppedColumns;
 }
 
-public boolean equals(Object obj)
+@Override
+public boolean equals(Object o)
 {
-if (obj == this)
-{
+if (this == o)
 return true;
-}
-else if (obj == null || obj.getClass() != getClass())
-{
+
+if (!(o instanceof CFMetaData))
 return false;
-}
 
-CFMetaData rhs = (CFMetaData) obj;
-if (!ksName.equals(rhs.ksName)) return false;
-if (!cfName.equals(rhs.cfName)) return false;
-if (!cfType.equals(rhs.cfType)) return false;
-if (!comparator.equals(rhs.comparator)) return false;
-if (!Objects.equal(comment, rhs.comment)) return false;
-if (readRepairChance != rhs.readRepairChance) return false;
-if (dcLocalReadRepairChance != rhs.dcLocalReadRepairChance) return 
false;
-if (gcGraceSeconds != rhs.gcGraceSeconds) return false;
-if (!Objects.equal(defaultValidator, rhs.defaultValidator)) return 
false;
-if (!Objects.equal(keyValidator, rhs.keyValidator)) return false;
-if (minCompactionThreshold != rhs.minCompactionThreshold) return false;
-if (maxCompactionThreshold != rhs.maxCompactionThreshold) return false;
-if (!Objects.equal(cfId, rhs.cfId)) return false;
-if (!Objects.equal(columnMetadata, rhs.columnMetadata)) return false;
-if (!Objects.equal(compactionStrategyClass, 
rhs.compactionStrategyClass)) return false;
-if (!Objects.equal(compactionStrategyOptions, 
rhs.compactionStrategyOptions)) return false;
-if (!Objects.equal(compressionParameters, rhs.compressionParameters)) 
return false;
-if (!Objects.equal(bloomFilterFpChance, rhs.bloomFilterFpChance)) 
return false;
-if (memtableFlushPeriod != rhs.memtableFlushPeriod) return false;
-if (!Objects.equal(caching, rhs.caching)) return false;
-if (defaultTimeToLive != rhs.defaultTimeToLive) return false;
-if (indexInterval != rhs.indexInterval) return false;
-if (!Objects.equal(speculativeRetry, rhs.speculativeRetry)) return 
false;
-if (populateIoCacheOnFlush != rhs.populateIoCacheOnFlush) return false;
-if (!Objects.equal(droppedColumns, rhs.droppedColumns)) return false;
-if (!Objects.equal(triggers, rhs.triggers)) return false;
-if (!Objects.equal(rowsPerPartitionToCache, 
rhs.rowsPerPartitionToCache)) return false;
-return true;
+CFMetaData other = (CFMetaData) o;
+
+return Objects.equal(cfId, other.cfId)
+ Objects.equal(ksName, other.ksName)
+ Objects.equal(cfName, other.cfName)
+ Objects.equal(cfType, other.cfType)
+ Objects.equal(comparator, other.comparator)
+ Objects.equal(comment, other.comment)
+ Objects.equal(readRepairChance, other.readRepairChance)
+ Objects.equal(dcLocalReadRepairChance, 
other.dcLocalReadRepairChance)
+ Objects.equal(gcGraceSeconds, other.gcGraceSeconds)
+ Objects.equal(defaultValidator, other.defaultValidator)
+ Objects.equal(keyValidator, other.keyValidator)
+ Objects.equal(minCompactionThreshold, 
other.minCompactionThreshold)
+ Objects.equal(maxCompactionThreshold, 
other.maxCompactionThreshold)
+ Objects.equal(columnMetadata, other.columnMetadata)
+ Objects.equal(compactionStrategyClass, 
other.compactionStrategyClass)
+ 

[jira] [Commented] (CASSANDRA-5351) Avoid repairing already-repaired data by default

2014-02-07 Thread Yuki Morishita (JIRA)

[ 
https://issues.apache.org/jira/browse/CASSANDRA-5351?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13895220#comment-13895220
 ] 

Yuki Morishita commented on CASSANDRA-5351:
---

Alright, +1 with nit: I see many  Performing anticompaction on 0 sstables so 
better skip on 0 sstable.
And we need NEWS.txt entry for this.

 Avoid repairing already-repaired data by default
 

 Key: CASSANDRA-5351
 URL: https://issues.apache.org/jira/browse/CASSANDRA-5351
 Project: Cassandra
  Issue Type: Task
  Components: Core
Reporter: Jonathan Ellis
Assignee: Lyuben Todorov
  Labels: repair
 Fix For: 2.1

 Attachments: 0001-Incremental-repair-wip.patch, 5351_node1.log, 
 5351_node2.log, 5351_node3.log, 5351_nodetool.log


 Repair has always built its merkle tree from all the data in a columnfamily, 
 which is guaranteed to work but is inefficient.
 We can improve this by remembering which sstables have already been 
 successfully repaired, and only repairing sstables new since the last repair. 
  (This automatically makes CASSANDRA-3362 much less of a problem too.)
 The tricky part is, compaction will (if not taught otherwise) mix repaired 
 data together with non-repaired.  So we should segregate unrepaired sstables 
 from the repaired ones.



--
This message was sent by Atlassian JIRA
(v6.1.5#6160)


git commit: Clean up KSMetaData

2014-02-07 Thread aleksey
Updated Branches:
  refs/heads/trunk 4336a1917 - a4ed367ea


Clean up KSMetaData


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/a4ed367e
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/a4ed367e
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/a4ed367e

Branch: refs/heads/trunk
Commit: a4ed367eadb35b5b6df373db80b22898ebc0751b
Parents: 4336a19
Author: Aleksey Yeschenko alek...@apache.org
Authored: Sat Feb 8 02:50:39 2014 +0300
Committer: Aleksey Yeschenko alek...@apache.org
Committed: Sat Feb 8 02:50:39 2014 +0300

--
 .../org/apache/cassandra/config/KSMetaData.java | 68 +---
 1 file changed, 30 insertions(+), 38 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/a4ed367e/src/java/org/apache/cassandra/config/KSMetaData.java
--
diff --git a/src/java/org/apache/cassandra/config/KSMetaData.java 
b/src/java/org/apache/cassandra/config/KSMetaData.java
index 9be1e2b..3d1edb6 100644
--- a/src/java/org/apache/cassandra/config/KSMetaData.java
+++ b/src/java/org/apache/cassandra/config/KSMetaData.java
@@ -19,9 +19,8 @@ package org.apache.cassandra.config;
 
 import java.util.*;
 
+import com.google.common.base.Objects;
 import com.google.common.collect.ImmutableMap;
-import org.apache.commons.lang3.ObjectUtils;
-import org.apache.commons.lang3.StringUtils;
 
 import org.apache.cassandra.cql3.QueryProcessor;
 import org.apache.cassandra.cql3.UntypedResultSet;
@@ -60,7 +59,7 @@ public final class KSMetaData
 this.name = name;
 this.strategyClass = strategyClass == null ? 
NetworkTopologyStrategy.class : strategyClass;
 this.strategyOptions = strategyOptions;
-MapString, CFMetaData cfmap = new HashMapString, CFMetaData();
+MapString, CFMetaData cfmap = new HashMap();
 for (CFMetaData cfm : cfDefs)
 cfmap.put(cfm.cfName, cfm);
 this.cfMetaData = Collections.unmodifiableMap(cfmap);
@@ -126,23 +125,29 @@ public final class KSMetaData
 return new KSMetaData(name, strategyClass, strategyOptions, false, 
Arrays.asList(cfDefs));
 }
 
+@Override
 public int hashCode()
 {
-return name.hashCode();
+return Objects.hashCode(name, strategyClass, strategyOptions, 
cfMetaData, durableWrites, userTypes);
 }
 
-public boolean equals(Object obj)
+@Override
+public boolean equals(Object o)
 {
-if (!(obj instanceof KSMetaData))
+if (this == o)
+return true;
+
+if (!(o instanceof KSMetaData))
 return false;
-KSMetaData other = (KSMetaData)obj;
-if (!other.name.equals(name)) return false;
-if (!ObjectUtils.equals(other.strategyClass, strategyClass)) return 
false;
-if (!ObjectUtils.equals(other.strategyOptions, strategyOptions)) 
return false;
-if (!other.cfMetaData.equals(cfMetaData)) return false;
-if (other.durableWrites != durableWrites) return false;
-if (!ObjectUtils.equals(other.userTypes, userTypes)) return false;
-return true;
+
+KSMetaData other = (KSMetaData) o;
+
+return Objects.equal(name, other.name)
+ Objects.equal(strategyClass, other.strategyClass)
+ Objects.equal(strategyOptions, other.strategyOptions)
+ Objects.equal(cfMetaData, other.cfMetaData)
+ Objects.equal(durableWrites, other.durableWrites)
+ Objects.equal(userTypes, other.userTypes);
 }
 
 public MapString, CFMetaData cfMetaData()
@@ -153,31 +158,19 @@ public final class KSMetaData
 @Override
 public String toString()
 {
-StringBuilder sb = new StringBuilder();
-sb.append(name)
-  .append(, rep strategy:)
-  .append(strategyClass.getSimpleName())
-  .append({)
-  .append(StringUtils.join(cfMetaData.values(), , ))
-  .append(})
-  .append(, strategy_options: )
-  .append(strategyOptions.toString())
-  .append(, durable_writes: )
-  .append(durableWrites);
-return sb.toString();
-}
-
-public static String convertOldStrategyName(String name)
-{
-return name.replace(RackUnawareStrategy, SimpleStrategy)
-   .replace(RackAwareStrategy, OldNetworkTopologyStrategy);
+return Objects.toStringHelper(this)
+  .add(name, name)
+  .add(strategyClass, strategyClass.getSimpleName())
+  .add(strategyOptions, strategyOptions)
+  .add(cfMetaData, cfMetaData)
+  .add(durableWrites, durableWrites)
+  .add(userTypes, userTypes)
+  .toString();

git commit: Clean up Memtable.resolve()

2014-02-07 Thread aleksey
Updated Branches:
  refs/heads/cassandra-1.2 c70f6d80b - 887558f7a


Clean up Memtable.resolve()


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/887558f7
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/887558f7
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/887558f7

Branch: refs/heads/cassandra-1.2
Commit: 887558f7a3c6a5bbb38a1cf0bacad90f8baa4f0e
Parents: c70f6d8
Author: Aleksey Yeschenko alek...@apache.org
Authored: Sat Feb 8 04:11:32 2014 +0300
Committer: Aleksey Yeschenko alek...@apache.org
Committed: Sat Feb 8 04:11:32 2014 +0300

--
 src/java/org/apache/cassandra/db/Memtable.java | 6 +-
 1 file changed, 1 insertion(+), 5 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/887558f7/src/java/org/apache/cassandra/db/Memtable.java
--
diff --git a/src/java/org/apache/cassandra/db/Memtable.java 
b/src/java/org/apache/cassandra/db/Memtable.java
index b229060..b6fceda 100644
--- a/src/java/org/apache/cassandra/db/Memtable.java
+++ b/src/java/org/apache/cassandra/db/Memtable.java
@@ -192,7 +192,6 @@ public class Memtable
 {
 ColumnFamily previous = columnFamilies.get(key);
 
-long sizeDelta = 0;
 if (previous == null)
 {
 // AtomicSortedColumns doesn't work for super columns (see #3821)
@@ -200,13 +199,10 @@ public class Memtable
 // We'll add the columns later. This avoids wasting works if we 
get beaten in the putIfAbsent
 previous = columnFamilies.putIfAbsent(new DecoratedKey(key.token, 
allocator.clone(key.key)), empty);
 if (previous == null)
-{
 previous = empty;
-sizeDelta += empty.deletionInfo().dataSize();
-}
 }
 
-sizeDelta = previous.addAllWithSizeDelta(cf, allocator, 
localCopyFunction, indexer);
+long sizeDelta = previous.addAllWithSizeDelta(cf, allocator, 
localCopyFunction, indexer);
 currentSize.addAndGet(sizeDelta);
 currentOperations.addAndGet(cf.getColumnCount() + 
(cf.isMarkedForDelete() ? 1 : 0) + cf.deletionInfo().rangeCount());
 }



[1/2] git commit: Clean up Memtable.resolve()

2014-02-07 Thread aleksey
Updated Branches:
  refs/heads/cassandra-2.0 130d135a6 - 800e45f48


Clean up Memtable.resolve()


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/887558f7
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/887558f7
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/887558f7

Branch: refs/heads/cassandra-2.0
Commit: 887558f7a3c6a5bbb38a1cf0bacad90f8baa4f0e
Parents: c70f6d8
Author: Aleksey Yeschenko alek...@apache.org
Authored: Sat Feb 8 04:11:32 2014 +0300
Committer: Aleksey Yeschenko alek...@apache.org
Committed: Sat Feb 8 04:11:32 2014 +0300

--
 src/java/org/apache/cassandra/db/Memtable.java | 6 +-
 1 file changed, 1 insertion(+), 5 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/887558f7/src/java/org/apache/cassandra/db/Memtable.java
--
diff --git a/src/java/org/apache/cassandra/db/Memtable.java 
b/src/java/org/apache/cassandra/db/Memtable.java
index b229060..b6fceda 100644
--- a/src/java/org/apache/cassandra/db/Memtable.java
+++ b/src/java/org/apache/cassandra/db/Memtable.java
@@ -192,7 +192,6 @@ public class Memtable
 {
 ColumnFamily previous = columnFamilies.get(key);
 
-long sizeDelta = 0;
 if (previous == null)
 {
 // AtomicSortedColumns doesn't work for super columns (see #3821)
@@ -200,13 +199,10 @@ public class Memtable
 // We'll add the columns later. This avoids wasting works if we 
get beaten in the putIfAbsent
 previous = columnFamilies.putIfAbsent(new DecoratedKey(key.token, 
allocator.clone(key.key)), empty);
 if (previous == null)
-{
 previous = empty;
-sizeDelta += empty.deletionInfo().dataSize();
-}
 }
 
-sizeDelta = previous.addAllWithSizeDelta(cf, allocator, 
localCopyFunction, indexer);
+long sizeDelta = previous.addAllWithSizeDelta(cf, allocator, 
localCopyFunction, indexer);
 currentSize.addAndGet(sizeDelta);
 currentOperations.addAndGet(cf.getColumnCount() + 
(cf.isMarkedForDelete() ? 1 : 0) + cf.deletionInfo().rangeCount());
 }



[2/2] git commit: Merge branch 'cassandra-1.2' into cassandra-2.0

2014-02-07 Thread aleksey
Merge branch 'cassandra-1.2' into cassandra-2.0


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/800e45f4
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/800e45f4
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/800e45f4

Branch: refs/heads/cassandra-2.0
Commit: 800e45f48c8860696559d896f28be1f3bd2ca86f
Parents: 130d135 887558f
Author: Aleksey Yeschenko alek...@apache.org
Authored: Sat Feb 8 04:12:04 2014 +0300
Committer: Aleksey Yeschenko alek...@apache.org
Committed: Sat Feb 8 04:12:04 2014 +0300

--
 src/java/org/apache/cassandra/db/Memtable.java | 6 +-
 1 file changed, 1 insertion(+), 5 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/800e45f4/src/java/org/apache/cassandra/db/Memtable.java
--
diff --cc src/java/org/apache/cassandra/db/Memtable.java
index 01170d6,b6fceda..1d26779
--- a/src/java/org/apache/cassandra/db/Memtable.java
+++ b/src/java/org/apache/cassandra/db/Memtable.java
@@@ -180,22 -190,19 +180,18 @@@ public class Memtabl
  
  private void resolve(DecoratedKey key, ColumnFamily cf, 
SecondaryIndexManager.Updater indexer)
  {
 -ColumnFamily previous = columnFamilies.get(key);
 +AtomicSortedColumns previous = rows.get(key);
  
- long sizeDelta = 0;
  if (previous == null)
  {
 -// AtomicSortedColumns doesn't work for super columns (see #3821)
 -ColumnFamily empty = cf.cloneMeShallow(cf.isSuper() ? 
ThreadSafeSortedColumns.factory() : AtomicSortedColumns.factory(), false);
 +AtomicSortedColumns empty = 
cf.cloneMeShallow(AtomicSortedColumns.factory, false);
  // We'll add the columns later. This avoids wasting works if we 
get beaten in the putIfAbsent
 -previous = columnFamilies.putIfAbsent(new DecoratedKey(key.token, 
allocator.clone(key.key)), empty);
 +previous = rows.putIfAbsent(new DecoratedKey(key.token, 
allocator.clone(key.key)), empty);
  if (previous == null)
- {
  previous = empty;
- sizeDelta += empty.deletionInfo().dataSize();
- }
  }
  
- sizeDelta = previous.addAllWithSizeDelta(cf, allocator, 
localCopyFunction, indexer);
+ long sizeDelta = previous.addAllWithSizeDelta(cf, allocator, 
localCopyFunction, indexer);
  currentSize.addAndGet(sizeDelta);
  currentOperations.addAndGet(cf.getColumnCount() + 
(cf.isMarkedForDelete() ? 1 : 0) + cf.deletionInfo().rangeCount());
  }



[2/3] git commit: Merge branch 'cassandra-1.2' into cassandra-2.0

2014-02-07 Thread aleksey
Merge branch 'cassandra-1.2' into cassandra-2.0


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/800e45f4
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/800e45f4
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/800e45f4

Branch: refs/heads/trunk
Commit: 800e45f48c8860696559d896f28be1f3bd2ca86f
Parents: 130d135 887558f
Author: Aleksey Yeschenko alek...@apache.org
Authored: Sat Feb 8 04:12:04 2014 +0300
Committer: Aleksey Yeschenko alek...@apache.org
Committed: Sat Feb 8 04:12:04 2014 +0300

--
 src/java/org/apache/cassandra/db/Memtable.java | 6 +-
 1 file changed, 1 insertion(+), 5 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/800e45f4/src/java/org/apache/cassandra/db/Memtable.java
--
diff --cc src/java/org/apache/cassandra/db/Memtable.java
index 01170d6,b6fceda..1d26779
--- a/src/java/org/apache/cassandra/db/Memtable.java
+++ b/src/java/org/apache/cassandra/db/Memtable.java
@@@ -180,22 -190,19 +180,18 @@@ public class Memtabl
  
  private void resolve(DecoratedKey key, ColumnFamily cf, 
SecondaryIndexManager.Updater indexer)
  {
 -ColumnFamily previous = columnFamilies.get(key);
 +AtomicSortedColumns previous = rows.get(key);
  
- long sizeDelta = 0;
  if (previous == null)
  {
 -// AtomicSortedColumns doesn't work for super columns (see #3821)
 -ColumnFamily empty = cf.cloneMeShallow(cf.isSuper() ? 
ThreadSafeSortedColumns.factory() : AtomicSortedColumns.factory(), false);
 +AtomicSortedColumns empty = 
cf.cloneMeShallow(AtomicSortedColumns.factory, false);
  // We'll add the columns later. This avoids wasting works if we 
get beaten in the putIfAbsent
 -previous = columnFamilies.putIfAbsent(new DecoratedKey(key.token, 
allocator.clone(key.key)), empty);
 +previous = rows.putIfAbsent(new DecoratedKey(key.token, 
allocator.clone(key.key)), empty);
  if (previous == null)
- {
  previous = empty;
- sizeDelta += empty.deletionInfo().dataSize();
- }
  }
  
- sizeDelta = previous.addAllWithSizeDelta(cf, allocator, 
localCopyFunction, indexer);
+ long sizeDelta = previous.addAllWithSizeDelta(cf, allocator, 
localCopyFunction, indexer);
  currentSize.addAndGet(sizeDelta);
  currentOperations.addAndGet(cf.getColumnCount() + 
(cf.isMarkedForDelete() ? 1 : 0) + cf.deletionInfo().rangeCount());
  }



[1/3] git commit: Clean up Memtable.resolve()

2014-02-07 Thread aleksey
Updated Branches:
  refs/heads/trunk a4ed367ea - 813da911b


Clean up Memtable.resolve()


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/887558f7
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/887558f7
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/887558f7

Branch: refs/heads/trunk
Commit: 887558f7a3c6a5bbb38a1cf0bacad90f8baa4f0e
Parents: c70f6d8
Author: Aleksey Yeschenko alek...@apache.org
Authored: Sat Feb 8 04:11:32 2014 +0300
Committer: Aleksey Yeschenko alek...@apache.org
Committed: Sat Feb 8 04:11:32 2014 +0300

--
 src/java/org/apache/cassandra/db/Memtable.java | 6 +-
 1 file changed, 1 insertion(+), 5 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/887558f7/src/java/org/apache/cassandra/db/Memtable.java
--
diff --git a/src/java/org/apache/cassandra/db/Memtable.java 
b/src/java/org/apache/cassandra/db/Memtable.java
index b229060..b6fceda 100644
--- a/src/java/org/apache/cassandra/db/Memtable.java
+++ b/src/java/org/apache/cassandra/db/Memtable.java
@@ -192,7 +192,6 @@ public class Memtable
 {
 ColumnFamily previous = columnFamilies.get(key);
 
-long sizeDelta = 0;
 if (previous == null)
 {
 // AtomicSortedColumns doesn't work for super columns (see #3821)
@@ -200,13 +199,10 @@ public class Memtable
 // We'll add the columns later. This avoids wasting works if we 
get beaten in the putIfAbsent
 previous = columnFamilies.putIfAbsent(new DecoratedKey(key.token, 
allocator.clone(key.key)), empty);
 if (previous == null)
-{
 previous = empty;
-sizeDelta += empty.deletionInfo().dataSize();
-}
 }
 
-sizeDelta = previous.addAllWithSizeDelta(cf, allocator, 
localCopyFunction, indexer);
+long sizeDelta = previous.addAllWithSizeDelta(cf, allocator, 
localCopyFunction, indexer);
 currentSize.addAndGet(sizeDelta);
 currentOperations.addAndGet(cf.getColumnCount() + 
(cf.isMarkedForDelete() ? 1 : 0) + cf.deletionInfo().rangeCount());
 }



[3/3] git commit: Merge branch 'cassandra-2.0' into trunk

2014-02-07 Thread aleksey
Merge branch 'cassandra-2.0' into trunk

Conflicts:
src/java/org/apache/cassandra/db/Memtable.java


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/813da911
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/813da911
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/813da911

Branch: refs/heads/trunk
Commit: 813da911b9b4ba53b4da9714f3b37e76687d2904
Parents: a4ed367 800e45f
Author: Aleksey Yeschenko alek...@apache.org
Authored: Sat Feb 8 04:13:41 2014 +0300
Committer: Aleksey Yeschenko alek...@apache.org
Committed: Sat Feb 8 04:13:41 2014 +0300

--

--




git commit: remove dead code

2014-02-07 Thread dbrosius
Updated Branches:
  refs/heads/trunk 813da911b - bcfaeaa9c


remove dead code


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/bcfaeaa9
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/bcfaeaa9
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/bcfaeaa9

Branch: refs/heads/trunk
Commit: bcfaeaa9c88c056cc36b47ae2df49062316cac83
Parents: 813da91
Author: Dave Brosius dbros...@mebigfatguy.com
Authored: Fri Feb 7 23:05:41 2014 -0500
Committer: Dave Brosius dbros...@mebigfatguy.com
Committed: Fri Feb 7 23:05:41 2014 -0500

--
 .../org/apache/cassandra/db/commitlog/CommitLogReplayer.java| 4 ++--
 src/java/org/apache/cassandra/service/StorageProxy.java | 5 ++---
 2 files changed, 4 insertions(+), 5 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/bcfaeaa9/src/java/org/apache/cassandra/db/commitlog/CommitLogReplayer.java
--
diff --git a/src/java/org/apache/cassandra/db/commitlog/CommitLogReplayer.java 
b/src/java/org/apache/cassandra/db/commitlog/CommitLogReplayer.java
index 00c8bb4..df28b8e 100644
--- a/src/java/org/apache/cassandra/db/commitlog/CommitLogReplayer.java
+++ b/src/java/org/apache/cassandra/db/commitlog/CommitLogReplayer.java
@@ -147,7 +147,7 @@ public class CommitLogReplayer
 return end;
 }
 
-private int getStartOffset(long segmentId, int version, File file)
+private int getStartOffset(long segmentId, int version)
 {
 if (globalPosition.segment  segmentId)
 {
@@ -236,7 +236,7 @@ public class CommitLogReplayer
 try
 {
 assert reader.length() = Integer.MAX_VALUE;
-int offset = getStartOffset(segmentId, version, file);
+int offset = getStartOffset(segmentId, version);
 if (offset  0)
 {
 logger.debug(skipping replay of fully-flushed {}, file);

http://git-wip-us.apache.org/repos/asf/cassandra/blob/bcfaeaa9/src/java/org/apache/cassandra/service/StorageProxy.java
--
diff --git a/src/java/org/apache/cassandra/service/StorageProxy.java 
b/src/java/org/apache/cassandra/service/StorageProxy.java
index 69d7123..8c31192 100644
--- a/src/java/org/apache/cassandra/service/StorageProxy.java
+++ b/src/java/org/apache/cassandra/service/StorageProxy.java
@@ -563,7 +563,7 @@ public class StorageProxy implements StorageProxyMBean
 syncWriteToBatchlog(mutations, batchlogEndpoints, batchUUID);
 
 // now actually perform the writes and wait for them to complete
-syncWriteBatchedMutations(wrappers, localDataCenter, 
consistency_level);
+syncWriteBatchedMutations(wrappers, localDataCenter);
 
 // remove the batchlog entries asynchronously
 asyncRemoveFromBatchlog(batchlogEndpoints, batchUUID);
@@ -630,8 +630,7 @@ public class StorageProxy implements StorageProxyMBean
 }
 
 private static void 
syncWriteBatchedMutations(ListWriteResponseHandlerWrapper wrappers,
-  String localDataCenter,
-  ConsistencyLevel 
consistencyLevel)
+  String localDataCenter)
 throws WriteTimeoutException, OverloadedException
 {
 for (WriteResponseHandlerWrapper wrapper : wrappers)



[jira] [Commented] (CASSANDRA-6679) CleanupTest occasional failure in 1.2

2014-02-07 Thread Brandon Williams (JIRA)

[ 
https://issues.apache.org/jira/browse/CASSANDRA-6679?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13895424#comment-13895424
 ] 

Brandon Williams commented on CASSANDRA-6679:
-

When this fails this way it's because cfs.getSSTables() returned an empty list. 
 But it can fail another way, too:

{noformat}
[junit] Testcase: testCleanup(org.apache.cassandra.db.CleanupTest): FAILED
[junit] expected:200 but was:145
[junit] junit.framework.AssertionFailedError: expected:200 but was:145
[junit] at 
org.apache.cassandra.db.CleanupTest.testCleanup(CleanupTest.java:95)
{noformat}

Line number is off by a few there because of extra debug logging I added.

 CleanupTest occasional failure in 1.2
 -

 Key: CASSANDRA-6679
 URL: https://issues.apache.org/jira/browse/CASSANDRA-6679
 Project: Cassandra
  Issue Type: Test
  Components: Tests
 Environment: Debian Stable (Wheezy) amd64
 Oracle JVM 1.7.0_51-b13
Reporter: Michael Shuler
Assignee: Marcus Eriksson
Priority: Minor
 Attachments: system.log


 {noformat}
 test:
  [echo] running unit tests
 [junit] WARNING: multiple versions of ant detected in path for junit
 [junit]  
 jar:file:/usr/share/ant/lib/ant.jar!/org/apache/tools/ant/Project.class
 [junit]  and 
 jar:file:/home/mshuler/git/cassandra/build/lib/jars/ant-1.6.5.jar!/org/apache/tools/ant/Project.class
 [junit] Testsuite: org.apache.cassandra.db.CleanupTest
 [junit] Tests run: 2, Failures: 1, Errors: 0, Time elapsed: 6.508 sec
 [junit]
 [junit] - Standard Error -
 [junit]  WARN 15:27:11,566 No host ID found, created 
 e8a8a37c-56c5-49d5-8260-7a3dfc2174a7 (Note: This should happen exactly once 
 per node).
 [junit]  WARN 15:27:11,655 Generated random token 
 [0850c6b26994617235bec220dd17a6d6]. Random tokens will result in an 
 unbalanced ring; see http://wiki.apache.org/cassandra/Operations
 [junit] -  ---
 [junit] Testcase: testCleanup(org.apache.cassandra.db.CleanupTest): FAILED
 [junit] null
 [junit] junit.framework.AssertionFailedError
 [junit] at 
 org.apache.cassandra.db.CleanupTest.testCleanup(CleanupTest.java:87)
 [junit]
 [junit]
 [junit] Test org.apache.cassandra.db.CleanupTest FAILED
 BUILD FAILED
 {noformat}
 - loop through CleanupTest unit test 
 (https://issues.apache.org/jira/secure/attachment/12627493/test.sh)
 - system.log from failed test attached



--
This message was sent by Atlassian JIRA
(v6.1.5#6160)


  1   2   >