[jira] [Commented] (CASSANDRA-9754) Make index info heap friendly for large CQL partitions

2016-10-17 Thread Pavel Yaskevich (JIRA)

[ 
https://issues.apache.org/jira/browse/CASSANDRA-9754?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15583373#comment-15583373
 ] 

Pavel Yaskevich commented on CASSANDRA-9754:


I'm planning to take a closer look at the code etc. soon, so if I see something 
or have any ideas I'll let you know!

> Make index info heap friendly for large CQL partitions
> --
>
> Key: CASSANDRA-9754
> URL: https://issues.apache.org/jira/browse/CASSANDRA-9754
> Project: Cassandra
>  Issue Type: Improvement
>Reporter: sankalp kohli
>Assignee: Michael Kjellman
>Priority: Minor
> Fix For: 4.x
>
> Attachments: gc_collection_times_with_birch.png, 
> gc_collection_times_without_birch.png, gc_counts_with_birch.png, 
> gc_counts_without_birch.png, 
> perf_cluster_1_with_birch_read_latency_and_counts.png, 
> perf_cluster_1_with_birch_write_latency_and_counts.png, 
> perf_cluster_2_with_birch_read_latency_and_counts.png, 
> perf_cluster_2_with_birch_write_latency_and_counts.png, 
> perf_cluster_3_without_birch_read_latency_and_counts.png, 
> perf_cluster_3_without_birch_write_latency_and_counts.png
>
>
>  Looking at a heap dump of 2.0 cluster, I found that majority of the objects 
> are IndexInfo and its ByteBuffers. This is specially bad in endpoints with 
> large CQL partitions. If a CQL partition is say 6,4GB, it will have 100K 
> IndexInfo objects and 200K ByteBuffers. This will create a lot of churn for 
> GC. Can this be improved by not creating so many objects?



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (CASSANDRA-9754) Make index info heap friendly for large CQL partitions

2016-10-17 Thread Michael Kjellman (JIRA)

[ 
https://issues.apache.org/jira/browse/CASSANDRA-9754?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15583396#comment-15583396
 ] 

Michael Kjellman commented on CASSANDRA-9754:
-

Great. I'm working on a trunk based version now. 8099 is really fun! :)

> Make index info heap friendly for large CQL partitions
> --
>
> Key: CASSANDRA-9754
> URL: https://issues.apache.org/jira/browse/CASSANDRA-9754
> Project: Cassandra
>  Issue Type: Improvement
>Reporter: sankalp kohli
>Assignee: Michael Kjellman
>Priority: Minor
> Fix For: 4.x
>
> Attachments: gc_collection_times_with_birch.png, 
> gc_collection_times_without_birch.png, gc_counts_with_birch.png, 
> gc_counts_without_birch.png, 
> perf_cluster_1_with_birch_read_latency_and_counts.png, 
> perf_cluster_1_with_birch_write_latency_and_counts.png, 
> perf_cluster_2_with_birch_read_latency_and_counts.png, 
> perf_cluster_2_with_birch_write_latency_and_counts.png, 
> perf_cluster_3_without_birch_read_latency_and_counts.png, 
> perf_cluster_3_without_birch_write_latency_and_counts.png
>
>
>  Looking at a heap dump of 2.0 cluster, I found that majority of the objects 
> are IndexInfo and its ByteBuffers. This is specially bad in endpoints with 
> large CQL partitions. If a CQL partition is say 6,4GB, it will have 100K 
> IndexInfo objects and 200K ByteBuffers. This will create a lot of churn for 
> GC. Can this be improved by not creating so many objects?



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (CASSANDRA-8457) nio MessagingService

2016-10-17 Thread Jason Brown (JIRA)

[ 
https://issues.apache.org/jira/browse/CASSANDRA-8457?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15583503#comment-15583503
 ] 

Jason Brown commented on CASSANDRA-8457:


Addressed a few problems due to failing dtests. The currently failing utests 
and dtests are almost *all* related to streaming; I'm working on the few 
remaining dtests.

* correctly handle canceled futures in 
{{OutboundMessagingConnection#handleMessageFuture}}
* Fixed NPE in {{OutboundMessagingConnection#reconnectWithNewIp}}
* refactored some code wrt outbound connection creation
* added package-level documentation, primarily describing the handshake and 
messaging format

Also, I have a patched version of netty 4.1.6 in this branch that fixes a flush 
problem in {{LZ4FrameEncoder}}. Netty folks are reviewing now, and will 
hopefully get an updated netty lib soon.

[~slebresne] ready for your next round of comments when you have time :)

> nio MessagingService
> 
>
> Key: CASSANDRA-8457
> URL: https://issues.apache.org/jira/browse/CASSANDRA-8457
> Project: Cassandra
>  Issue Type: New Feature
>Reporter: Jonathan Ellis
>Assignee: Jason Brown
>Priority: Minor
>  Labels: netty, performance
> Fix For: 4.x
>
>
> Thread-per-peer (actually two each incoming and outbound) is a big 
> contributor to context switching, especially for larger clusters.  Let's look 
> at switching to nio, possibly via Netty.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[2/3] cassandra git commit: Fix broken clean target in doc/Makefile

2016-10-17 Thread mshuler
Fix broken clean target in doc/Makefile


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

Branch: refs/heads/trunk
Commit: 7a5118c7de664d8bd5b18cc2e32d7d4c8b04313e
Parents: f5bc378
Author: Michael Shuler 
Authored: Mon Oct 17 16:19:52 2016 -0500
Committer: Michael Shuler 
Committed: Mon Oct 17 16:19:52 2016 -0500

--
 doc/Makefile | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/7a5118c7/doc/Makefile
--
diff --git a/doc/Makefile b/doc/Makefile
index 81d7707..c6632a5 100644
--- a/doc/Makefile
+++ b/doc/Makefile
@@ -55,7 +55,7 @@ help:
 .PHONY: clean
 clean:
rm -rf $(BUILDDIR)/*
-   rm $(YAML_DOC_OUTPUT)
+   rm -f $(YAML_DOC_OUTPUT)
 
 .PHONY: html
 html:



[1/3] cassandra git commit: Fix broken clean target in doc/Makefile

2016-10-17 Thread mshuler
Repository: cassandra
Updated Branches:
  refs/heads/cassandra-3.X f5bc3784f -> 7a5118c7d
  refs/heads/trunk b51f7e259 -> d478f45d1


Fix broken clean target in doc/Makefile


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

Branch: refs/heads/cassandra-3.X
Commit: 7a5118c7de664d8bd5b18cc2e32d7d4c8b04313e
Parents: f5bc378
Author: Michael Shuler 
Authored: Mon Oct 17 16:19:52 2016 -0500
Committer: Michael Shuler 
Committed: Mon Oct 17 16:19:52 2016 -0500

--
 doc/Makefile | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/7a5118c7/doc/Makefile
--
diff --git a/doc/Makefile b/doc/Makefile
index 81d7707..c6632a5 100644
--- a/doc/Makefile
+++ b/doc/Makefile
@@ -55,7 +55,7 @@ help:
 .PHONY: clean
 clean:
rm -rf $(BUILDDIR)/*
-   rm $(YAML_DOC_OUTPUT)
+   rm -f $(YAML_DOC_OUTPUT)
 
 .PHONY: html
 html:



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

2016-10-17 Thread mshuler
Merge branch 'cassandra-3.X' into trunk


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

Branch: refs/heads/trunk
Commit: d478f45d1061c9ee6605193cf4a5dfda4348e0aa
Parents: b51f7e2 7a5118c
Author: Michael Shuler 
Authored: Mon Oct 17 16:20:15 2016 -0500
Committer: Michael Shuler 
Committed: Mon Oct 17 16:20:15 2016 -0500

--
 doc/Makefile | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/d478f45d/doc/Makefile
--



[jira] [Updated] (CASSANDRA-12781) dtest failure in pushed_notifications_test.TestPushedNotifications.restart_node_test

2016-10-17 Thread Joshua McKenzie (JIRA)

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

Joshua McKenzie updated CASSANDRA-12781:

Assignee: Stefania

> dtest failure in 
> pushed_notifications_test.TestPushedNotifications.restart_node_test
> 
>
> Key: CASSANDRA-12781
> URL: https://issues.apache.org/jira/browse/CASSANDRA-12781
> Project: Cassandra
>  Issue Type: Bug
>Reporter: Sean McCarthy
>Assignee: Stefania
>  Labels: dtest
> Fix For: 3.x
>
> Attachments: node1.log, node1_debug.log, node1_gc.log, node2.log, 
> node2_debug.log, node2_gc.log
>
>
> example failure:
> http://cassci.datastax.com/job/cassandra-3.X_dtest/4/testReport/pushed_notifications_test/TestPushedNotifications/restart_node_test
> {code}
> Error Message
> [{'change_type': u'DOWN', 'address': ('127.0.0.2', 9042)}, {'change_type': 
> u'UP', 'address': ('127.0.0.2', 9042)}, {'change_type': u'DOWN', 'address': 
> ('127.0.0.2', 9042)}]
> {code}
> {code}
> Stacktrace
>   File "/usr/lib/python2.7/unittest/case.py", line 329, in run
> testMethod()
>   File "/home/automaton/cassandra-dtest/pushed_notifications_test.py", line 
> 181, in restart_node_test
> self.assertEquals(expected_notifications, len(notifications), 
> notifications)
>   File "/usr/lib/python2.7/unittest/case.py", line 513, in assertEqual
> assertion_func(first, second, msg=msg)
>   File "/usr/lib/python2.7/unittest/case.py", line 506, in _baseAssertEqual
> raise self.failureException(msg)
> {code}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (CASSANDRA-12768) CQL often queries static columns unnecessarily

2016-10-17 Thread Joshua McKenzie (JIRA)

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

Joshua McKenzie updated CASSANDRA-12768:

Reviewer: Tyler Hobbs

> CQL often queries static columns unnecessarily
> --
>
> Key: CASSANDRA-12768
> URL: https://issues.apache.org/jira/browse/CASSANDRA-12768
> Project: Cassandra
>  Issue Type: Bug
>Reporter: Sylvain Lebresne
>Assignee: Sylvain Lebresne
> Fix For: 3.0.x, 3.x
>
>
> While looking at CASSANDRA-12694 (which isn't directly related, but some of 
> the results in this ticket are explained by this), I realized that CQL was 
> always querying static columns even in cases where this is unnecessary.
> More precisely, for reasons long described elsewhere, we have to query all 
> the columns for a row (we have optimizations, see CASSANDRA-10657, but they 
> don't change that general fact) to be able to distinguish between the case 
> where a row doesn't exist from when it exists but has no values for the 
> columns selected by the query. *However*, this really only extend to 
> "regular" columns (static columns play no role in deciding whether a 
> particular row exists or not) but the implementation in 3.x, which is in 
> {{ColumnFilter}}, still always query all static columns.
> We shouldn't do that and it's arguably a performance regression from 2.x. 
> Which is why I'm tentatively marking this a bug and for the 3.0 line. It's a 
> tiny bit scary for 3.0 though so really more asking for other opinions and 
> I'd be happy to stick to 3.x.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (CASSANDRA-12653) In-flight shadow round requests

2016-10-17 Thread Joshua McKenzie (JIRA)

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

Joshua McKenzie updated CASSANDRA-12653:

Reviewer: Joel Knighton

> In-flight shadow round requests
> ---
>
> Key: CASSANDRA-12653
> URL: https://issues.apache.org/jira/browse/CASSANDRA-12653
> Project: Cassandra
>  Issue Type: Bug
>  Components: Distributed Metadata
>Reporter: Stefan Podkowinski
>Assignee: Stefan Podkowinski
>Priority: Minor
> Attachments: 12653-2.2.patch, 12653-3.0.patch, 12653-trunk.patch
>
>
> Bootstrapping or replacing a node in the cluster requires to gather and check 
> some host IDs or tokens by doing a gossip "shadow round" once before joining 
> the cluster. This is done by sending a gossip SYN to all seeds until we 
> receive a response with the cluster state, from where we can move on in the 
> bootstrap process. Receiving a response will call the shadow round done and 
> calls {{Gossiper.resetEndpointStateMap}} for cleaning up the received state 
> again.
> The issue here is that at this point there might be other in-flight requests 
> and it's very likely that shadow round responses from other seeds will be 
> received afterwards, while the current state of the bootstrap process doesn't 
> expect this to happen (e.g. gossiper may or may not be enabled). 
> One side effect will be that MigrationTasks are spawned for each shadow round 
> reply except the first. Tasks might or might not execute based on whether at 
> execution time {{Gossiper.resetEndpointStateMap}} had been called, which 
> effects the outcome of {{FailureDetector.instance.isAlive(endpoint))}} at 
> start of the task. You'll see error log messages such as follows when this 
> happend:
> {noformat}
> INFO  [SharedPool-Worker-1] 2016-09-08 08:36:39,255 Gossiper.java:993 - 
> InetAddress /xx.xx.xx.xx is now UP
> ERROR [MigrationStage:1]2016-09-08 08:36:39,255 FailureDetector.java:223 
> - unknown endpoint /xx.xx.xx.xx
> {noformat}
> Although is isn't pretty, I currently don't see any serious harm from this, 
> but it would be good to get a second opinion (feel free to close as "wont 
> fix").
> /cc [~Stefania] [~thobbs]



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (CASSANDRA-12660) NIODataInputStreamTest - Function with an infinite loop

2016-10-17 Thread Joel Knighton (JIRA)

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

Joel Knighton updated CASSANDRA-12660:
--
Fix Version/s: 4.x
   3.0.x
   2.2.x
   Status: Open  (was: Patch Available)

Thanks for the patch [~arunkumar]. The fix looks good to me.

It looks like the bug has been present for a while, so we should target this 
patch at 2.2. It should merge forward cleanly from there.

Can you also add a CHANGES.txt entry and a "patch by...; reviewed by... for 
CASSANDRA-12660" line to the commit message, as described at 
[http://cassandra.apache.org/doc/latest/development/patches.html]?

> NIODataInputStreamTest - Function with an infinite loop
> ---
>
> Key: CASSANDRA-12660
> URL: https://issues.apache.org/jira/browse/CASSANDRA-12660
> Project: Cassandra
>  Issue Type: Bug
>  Components: Core
>Reporter: Marianne Linhares Monteiro
>Assignee: Arunkumar M
>Priority: Trivial
>  Labels: easyfix, low-hanging-fruit
> Fix For: 2.2.x, 3.0.x, 3.x, 4.x
>
> Attachments: 12660-3.9.txt
>
>   Original Estimate: 5m
>  Remaining Estimate: 5m
>
> Function with an infinite loop and not needed.
> https://github.com/apache/cassandra/blob/trunk/test/unit/org/apache/cassandra/io/util/NIODataInputStreamTest.java
>  - lines 97-101
> isOpen()



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (CASSANDRA-12765) SSTable ignored incorrectly with row level tombstone

2016-10-17 Thread Joshua McKenzie (JIRA)

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

Joshua McKenzie updated CASSANDRA-12765:

Reproduced In: 2.1.15, 2.0.17, 3.x  (was: 2.0.17, 2.1.15, 3.x)
 Reviewer: Marcus Eriksson

> SSTable ignored incorrectly with row level tombstone
> 
>
> Key: CASSANDRA-12765
> URL: https://issues.apache.org/jira/browse/CASSANDRA-12765
> Project: Cassandra
>  Issue Type: Bug
>  Components: Local Write-Read Paths
>Reporter: Cameron Zemek
> Attachments: 12765.patch
>
>
> {noformat}
> CREATE TABLE test.payload(
>   bucket_id TEXT,
>   name TEXT,
>   data TEXT,
>   PRIMARY KEY (bucket_id, name)
> );
> insert into test.payload (bucket_id, name, data) values 
> ('8772618c9009cf8f5a5e0c18', 'test', 'hello');
> {noformat}
> Flush nodes (nodetool flush)
> {noformat}
> insert into test.payload (bucket_id, name, data) values 
> ('8772618c9009cf8f5a5e0c19', 'test2', 'hello');
> delete from test.payload where bucket_id = '8772618c9009cf8f5a5e0c18';
> {noformat}
> Flush nodes (nodetool flush)
> {noformat}
> select * from test.payload where bucket_id = '8772618c9009cf8f5a5e0c18' and 
> name = 'test';
> {noformat}
> Expected 0 rows but get 1 row back.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (CASSANDRA-12660) NIODataInputStreamTest - Function with an infinite loop

2016-10-17 Thread Joel Knighton (JIRA)

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

Joel Knighton updated CASSANDRA-12660:
--
Status: Awaiting Feedback  (was: Open)

> NIODataInputStreamTest - Function with an infinite loop
> ---
>
> Key: CASSANDRA-12660
> URL: https://issues.apache.org/jira/browse/CASSANDRA-12660
> Project: Cassandra
>  Issue Type: Bug
>  Components: Core
>Reporter: Marianne Linhares Monteiro
>Assignee: Arunkumar M
>Priority: Trivial
>  Labels: easyfix, low-hanging-fruit
> Fix For: 2.2.x, 3.0.x, 3.x, 4.x
>
> Attachments: 12660-3.9.txt
>
>   Original Estimate: 5m
>  Remaining Estimate: 5m
>
> Function with an infinite loop and not needed.
> https://github.com/apache/cassandra/blob/trunk/test/unit/org/apache/cassandra/io/util/NIODataInputStreamTest.java
>  - lines 97-101
> isOpen()



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (CASSANDRA-12765) SSTable ignored incorrectly with row level tombstone

2016-10-17 Thread Joshua McKenzie (JIRA)

[ 
https://issues.apache.org/jira/browse/CASSANDRA-12765?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15583616#comment-15583616
 ] 

Joshua McKenzie commented on CASSANDRA-12765:
-

[~krummas] to review

> SSTable ignored incorrectly with row level tombstone
> 
>
> Key: CASSANDRA-12765
> URL: https://issues.apache.org/jira/browse/CASSANDRA-12765
> Project: Cassandra
>  Issue Type: Bug
>  Components: Local Write-Read Paths
>Reporter: Cameron Zemek
> Attachments: 12765.patch
>
>
> {noformat}
> CREATE TABLE test.payload(
>   bucket_id TEXT,
>   name TEXT,
>   data TEXT,
>   PRIMARY KEY (bucket_id, name)
> );
> insert into test.payload (bucket_id, name, data) values 
> ('8772618c9009cf8f5a5e0c18', 'test', 'hello');
> {noformat}
> Flush nodes (nodetool flush)
> {noformat}
> insert into test.payload (bucket_id, name, data) values 
> ('8772618c9009cf8f5a5e0c19', 'test2', 'hello');
> delete from test.payload where bucket_id = '8772618c9009cf8f5a5e0c18';
> {noformat}
> Flush nodes (nodetool flush)
> {noformat}
> select * from test.payload where bucket_id = '8772618c9009cf8f5a5e0c18' and 
> name = 'test';
> {noformat}
> Expected 0 rows but get 1 row back.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (CASSANDRA-11324) Make SSTABLESCRUB and related jobs multi-threaded / parallelize somehow

2016-10-17 Thread Kurt Greaves (JIRA)

[ 
https://issues.apache.org/jira/browse/CASSANDRA-11324?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15583755#comment-15583755
 ] 

Kurt Greaves commented on CASSANDRA-11324:
--

[~iamaleksey] There was another question on mailing list regarding this. just 
wondering what you mean by multiple scrub processes processing one sstable 
each? is this possible on a single CF? I know it's possible to run one offline 
scrub for each CF however as Thom mentioned I couldn't run multiple scrubs 
across one CF.

> Make SSTABLESCRUB and related jobs multi-threaded  / parallelize somehow
> 
>
> Key: CASSANDRA-11324
> URL: https://issues.apache.org/jira/browse/CASSANDRA-11324
> Project: Cassandra
>  Issue Type: Improvement
>  Components: Tools
>Reporter: Thom Valley
>Priority: Minor
>
> SSTABLE scrub right now appears to be single threaded in offline mode (unsure 
> about online).  When scrubbing a node, especially a well provisioned one, the 
> node sits mostly idle for potentially hours while scrubbing.
> Making better use of available resources through parallelization / 
> multi-threading of the scrub process seems like a good idea.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (CASSANDRA-12422) Clean up the SSTableReader#getScanner API

2016-10-17 Thread Dave Brosius (JIRA)

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

Dave Brosius updated CASSANDRA-12422:
-
Resolution: Fixed
Status: Resolved  (was: Ready to Commit)

committed to trunk as f2a354763877cfeaf1dd017b84a7c8ee9eafd885

> Clean up the SSTableReader#getScanner API
> -
>
> Key: CASSANDRA-12422
> URL: https://issues.apache.org/jira/browse/CASSANDRA-12422
> Project: Cassandra
>  Issue Type: Improvement
>Reporter: Marcus Eriksson
>Assignee: Anthony Grasso
>Priority: Minor
>  Labels: lhf
> Fix For: 4.0
>
> Attachments: CASSANDRA-12422-Removed-rate-limiter-parameter.patch
>
>
> After CASSANDRA-12366 we only call the various getScanner methods in 
> SSTableReader with null as a rate limiter - we should remove this parameter.
> Targeting 4.0 as we probably shouldn't change the API in 3.x



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


cassandra git commit: Clean up the SSTableReader#getScanner API wrt removal of RateLimiter

2016-10-17 Thread dbrosius
Repository: cassandra
Updated Branches:
  refs/heads/trunk d478f45d1 -> f2a354763


Clean up the SSTableReader#getScanner API wrt removal of RateLimiter

patch by agrasso reviewed by dbrosius for cassandra-12422


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

Branch: refs/heads/trunk
Commit: f2a354763877cfeaf1dd017b84a7c8ee9eafd885
Parents: d478f45
Author: Anthony Grasso 
Authored: Mon Oct 17 19:25:58 2016 -0400
Committer: Dave Brosius 
Committed: Mon Oct 17 19:25:58 2016 -0400

--
 CHANGES.txt |  2 +-
 .../compaction/AbstractCompactionStrategy.java  |  2 +-
 .../db/compaction/CompactionManager.java| 12 +++---
 .../compaction/LeveledCompactionStrategy.java   |  6 +--
 .../io/sstable/format/SSTableReader.java| 32 +++-
 .../io/sstable/format/big/BigTableReader.java   | 16 
 .../io/sstable/format/big/BigTableScanner.java  | 19 +-
 .../db/compaction/AntiCompactionTest.java   |  4 +-
 .../cassandra/io/sstable/SSTableReaderTest.java |  2 +-
 .../io/sstable/SSTableScannerTest.java  | 40 
 10 files changed, 51 insertions(+), 84 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/f2a35476/CHANGES.txt
--
diff --git a/CHANGES.txt b/CHANGES.txt
index 97bdd3b..c7b3206 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -3,7 +3,7 @@
  * Add (automate) Nodetool Documentation (CASSANDRA-12672)
  * Update bundled cqlsh python driver to 3.7.0 (CASSANDRA-12736)
  * Reject invalid replication settings when creating or altering a keyspace 
(CASSANDRA-12681)
-
+ * Clean up the SSTableReader#getScanner API wrt removal of RateLimiter 
(CASSANDRA-12422)
 
 3.10
  * Improve sum aggregate functions (CASSANDRA-12417)

http://git-wip-us.apache.org/repos/asf/cassandra/blob/f2a35476/src/java/org/apache/cassandra/db/compaction/AbstractCompactionStrategy.java
--
diff --git 
a/src/java/org/apache/cassandra/db/compaction/AbstractCompactionStrategy.java 
b/src/java/org/apache/cassandra/db/compaction/AbstractCompactionStrategy.java
index 8454147..fccad19 100644
--- 
a/src/java/org/apache/cassandra/db/compaction/AbstractCompactionStrategy.java
+++ 
b/src/java/org/apache/cassandra/db/compaction/AbstractCompactionStrategy.java
@@ -286,7 +286,7 @@ public abstract class AbstractCompactionStrategy
 try
 {
 for (SSTableReader sstable : sstables)
-scanners.add(sstable.getScanner(ranges, null));
+scanners.add(sstable.getScanner(ranges));
 }
 catch (Throwable t)
 {

http://git-wip-us.apache.org/repos/asf/cassandra/blob/f2a35476/src/java/org/apache/cassandra/db/compaction/CompactionManager.java
--
diff --git a/src/java/org/apache/cassandra/db/compaction/CompactionManager.java 
b/src/java/org/apache/cassandra/db/compaction/CompactionManager.java
index a0dc8c9..2099a66 100644
--- a/src/java/org/apache/cassandra/db/compaction/CompactionManager.java
+++ b/src/java/org/apache/cassandra/db/compaction/CompactionManager.java
@@ -1084,7 +1084,7 @@ public class CompactionManager implements 
CompactionManagerMBean
 
 int nowInSec = FBUtilities.nowInSeconds();
 try (SSTableRewriter writer = SSTableRewriter.construct(cfs, txn, 
false, sstable.maxDataAge);
- ISSTableScanner scanner = cleanupStrategy.getScanner(sstable, 
null);
+ ISSTableScanner scanner = cleanupStrategy.getScanner(sstable);
  CompactionController controller = new CompactionController(cfs, 
txn.originals(), getDefaultGcBefore(cfs, nowInSec));
  CompactionIterator ci = new 
CompactionIterator(OperationType.CLEANUP, Collections.singletonList(scanner), 
controller, nowInSec, UUIDGen.getTimeUUID(), metrics))
 {
@@ -1167,7 +1167,7 @@ public class CompactionManager implements 
CompactionManagerMBean
  : new Bounded(cfs, ranges, nowInSec);
 }
 
-public abstract ISSTableScanner getScanner(SSTableReader sstable, 
RateLimiter limiter);
+public abstract ISSTableScanner getScanner(SSTableReader sstable);
 public abstract UnfilteredRowIterator cleanup(UnfilteredRowIterator 
partition);
 
 private static final class Bounded extends CleanupStrategy
@@ -1186,9 +1186,9 @@ public class CompactionManager implements 
CompactionManagerMBean
 }
 
 @Override
-public ISSTableScanner getScanner(SSTabl

svn commit: r1765381 - in /cassandra/site: publish/doc/3.9/ publish/doc/3.9/_images/ publish/doc/3.9/architecture/ publish/doc/3.9/configuration/ publish/doc/3.9/cql/ publish/doc/3.9/data_modeling/ pu

2016-10-17 Thread mshuler
Author: mshuler
Date: Mon Oct 17 23:53:08 2016
New Revision: 1765381

URL: http://svn.apache.org/viewvc?rev=1765381&view=rev
Log:
Add Apache Cassandra 3.9 docs and correct src/README `make serve` target


[This commit notification would consist of 52 parts, 
which exceeds the limit of 50 ones, so it was shortened to the summary.]


svn commit: r1765382 - in /cassandra/site: publish/ publish/community/ publish/doc/4.0/ publish/doc/4.0/_images/ publish/doc/4.0/architecture/ publish/doc/4.0/configuration/ publish/doc/4.0/cql/ publi

2016-10-17 Thread mshuler
Author: mshuler
Date: Tue Oct 18 00:02:26 2016
New Revision: 1765382

URL: http://svn.apache.org/viewvc?rev=1765382&view=rev
Log:
Add Apache Cassandra latest trunk (4.0) documentation


[This commit notification would consist of 109 parts, 
which exceeds the limit of 50 ones, so it was shortened to the summary.]


[jira] [Commented] (CASSANDRA-12672) Automate Nodetool Documentation

2016-10-17 Thread Michael Shuler (JIRA)

[ 
https://issues.apache.org/jira/browse/CASSANDRA-12672?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15583980#comment-15583980
 ] 

Michael Shuler commented on CASSANDRA-12672:


I updated the website docs with the latest from trunk, so this nodetool help 
page set is on the site now. Thanks!

> Automate Nodetool Documentation
> ---
>
> Key: CASSANDRA-12672
> URL: https://issues.apache.org/jira/browse/CASSANDRA-12672
> Project: Cassandra
>  Issue Type: Improvement
>  Components: Documentation and Website
>Reporter: Andrew Baker
>Assignee: mck
>Priority: Minor
>  Labels: documentaion, lhf, nodetool
> Fix For: 4.0
>
>
> nodetool.rst has this:
> todo:: Try to autogenerate this from Nodetool’s help.
> creating a ticket to submit this work against



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (CASSANDRA-12776) when memtable flush Statistics thisOffHeap error

2016-10-17 Thread Kurt Greaves (JIRA)

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

Kurt Greaves updated CASSANDRA-12776:
-
Attachment: 12776.patch

Looks like this was just a typo in the patch for #9681. It only affects the 
debug log message so only a minor issue. Attached a patch (against 3.0) with 
the suggested change. [~benedict] seeing as you made the change can you 
confirm/deny? Thanks.

> when memtable flush Statistics thisOffHeap error
> 
>
> Key: CASSANDRA-12776
> URL: https://issues.apache.org/jira/browse/CASSANDRA-12776
> Project: Cassandra
>  Issue Type: Bug
>Reporter: 翟玉勇
>Priority: Trivial
>  Labels: lhf
> Attachments: 12776.patch
>
>
> {code}
> if (largest != null)
> {
> float usedOnHeap = Memtable.MEMORY_POOL.onHeap.usedRatio();
> float usedOffHeap = Memtable.MEMORY_POOL.offHeap.usedRatio();
> float flushingOnHeap = 
> Memtable.MEMORY_POOL.onHeap.reclaimingRatio();
> float flushingOffHeap = 
> Memtable.MEMORY_POOL.offHeap.reclaimingRatio();
> float thisOnHeap = 
> largest.getAllocator().onHeap().ownershipRatio();
> float thisOffHeap = 
> largest.getAllocator().onHeap().ownershipRatio();
> logger.info("Flushing largest {} to free up room. Used total: 
> {}, live: {}, flushing: {}, this: {}",
> largest.cfs, ratio(usedOnHeap, usedOffHeap), 
> ratio(liveOnHeap, liveOffHeap),
> ratio(flushingOnHeap, flushingOffHeap), 
> ratio(thisOnHeap, thisOffHeap));
> largest.cfs.switchMemtableIfCurrent(largest);
> }
> {code}
> Should:
> {code}
> float thisOffHeap = largest.getAllocator().onHeap().ownershipRatio();
> {code}
> Be:
> {{offHeap().ownershipRatio();}}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Comment Edited] (CASSANDRA-12776) when memtable flush Statistics thisOffHeap error

2016-10-17 Thread Kurt Greaves (JIRA)

[ 
https://issues.apache.org/jira/browse/CASSANDRA-12776?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15583991#comment-15583991
 ] 

Kurt Greaves edited comment on CASSANDRA-12776 at 10/18/16 12:46 AM:
-

Looks like this was just a typo in the patch for CASSANDRA-9681. It only 
affects the debug log message so only a minor issue. Attached a patch (against 
3.0) with the suggested change. [~benedict] seeing as you made the change can 
you confirm/deny? Thanks.


was (Author: kurtg):
Looks like this was just a typo in the patch for #9681. It only affects the 
debug log message so only a minor issue. Attached a patch (against 3.0) with 
the suggested change. [~benedict] seeing as you made the change can you 
confirm/deny? Thanks.

> when memtable flush Statistics thisOffHeap error
> 
>
> Key: CASSANDRA-12776
> URL: https://issues.apache.org/jira/browse/CASSANDRA-12776
> Project: Cassandra
>  Issue Type: Bug
>Reporter: 翟玉勇
>Priority: Trivial
>  Labels: lhf
> Attachments: 12776.patch
>
>
> {code}
> if (largest != null)
> {
> float usedOnHeap = Memtable.MEMORY_POOL.onHeap.usedRatio();
> float usedOffHeap = Memtable.MEMORY_POOL.offHeap.usedRatio();
> float flushingOnHeap = 
> Memtable.MEMORY_POOL.onHeap.reclaimingRatio();
> float flushingOffHeap = 
> Memtable.MEMORY_POOL.offHeap.reclaimingRatio();
> float thisOnHeap = 
> largest.getAllocator().onHeap().ownershipRatio();
> float thisOffHeap = 
> largest.getAllocator().onHeap().ownershipRatio();
> logger.info("Flushing largest {} to free up room. Used total: 
> {}, live: {}, flushing: {}, this: {}",
> largest.cfs, ratio(usedOnHeap, usedOffHeap), 
> ratio(liveOnHeap, liveOffHeap),
> ratio(flushingOnHeap, flushingOffHeap), 
> ratio(thisOnHeap, thisOffHeap));
> largest.cfs.switchMemtableIfCurrent(largest);
> }
> {code}
> Should:
> {code}
> float thisOffHeap = largest.getAllocator().onHeap().ownershipRatio();
> {code}
> Be:
> {{offHeap().ownershipRatio();}}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (CASSANDRA-12776) when memtable flush Statistics thisOffHeap error

2016-10-17 Thread Kurt Greaves (JIRA)

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

Kurt Greaves updated CASSANDRA-12776:
-
Status: Awaiting Feedback  (was: Open)

> when memtable flush Statistics thisOffHeap error
> 
>
> Key: CASSANDRA-12776
> URL: https://issues.apache.org/jira/browse/CASSANDRA-12776
> Project: Cassandra
>  Issue Type: Bug
>Reporter: 翟玉勇
>Priority: Trivial
>  Labels: lhf
> Attachments: 12776.patch
>
>
> {code}
> if (largest != null)
> {
> float usedOnHeap = Memtable.MEMORY_POOL.onHeap.usedRatio();
> float usedOffHeap = Memtable.MEMORY_POOL.offHeap.usedRatio();
> float flushingOnHeap = 
> Memtable.MEMORY_POOL.onHeap.reclaimingRatio();
> float flushingOffHeap = 
> Memtable.MEMORY_POOL.offHeap.reclaimingRatio();
> float thisOnHeap = 
> largest.getAllocator().onHeap().ownershipRatio();
> float thisOffHeap = 
> largest.getAllocator().onHeap().ownershipRatio();
> logger.info("Flushing largest {} to free up room. Used total: 
> {}, live: {}, flushing: {}, this: {}",
> largest.cfs, ratio(usedOnHeap, usedOffHeap), 
> ratio(liveOnHeap, liveOffHeap),
> ratio(flushingOnHeap, flushingOffHeap), 
> ratio(thisOnHeap, thisOffHeap));
> largest.cfs.switchMemtableIfCurrent(largest);
> }
> {code}
> Should:
> {code}
> float thisOffHeap = largest.getAllocator().onHeap().ownershipRatio();
> {code}
> Be:
> {{offHeap().ownershipRatio();}}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


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

2016-10-17 Thread stefania
Merge branch 'cassandra-3.X' into trunk


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

Branch: refs/heads/trunk
Commit: a4705c28b70a3959ef1dd241501f9c0fe2d8f906
Parents: f2a3547 c6ec31b
Author: Stefania Alborghetti 
Authored: Tue Oct 18 09:10:05 2016 +0800
Committer: Stefania Alborghetti 
Committed: Tue Oct 18 09:10:05 2016 +0800

--
 CHANGES.txt |   1 +
 .../apache/cassandra/dht/RandomPartitioner.java |   2 +-
 .../apache/cassandra/utils/GuidGenerator.java   |   5 +-
 ...tractReplicationAwareTokenAllocatorTest.java | 716 ++
 ...rmur3ReplicationAwareTokenAllocatorTest.java |  48 ++
 ...andomReplicationAwareTokenAllocatorTest.java |  54 ++
 .../ReplicationAwareTokenAllocatorTest.java | 755 ---
 test/unit/org/apache/cassandra/Util.java|  20 +-
 8 files changed, 835 insertions(+), 766 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/a4705c28/CHANGES.txt
--
diff --cc CHANGES.txt
index c7b3206,32a2dfd..8f112ed
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@@ -1,11 -1,5 +1,12 @@@
 +4.0
 + * Add column definition kind to dropped columns in schema (CASSANDRA-12705)
 + * Add (automate) Nodetool Documentation (CASSANDRA-12672)
 + * Update bundled cqlsh python driver to 3.7.0 (CASSANDRA-12736)
 + * Reject invalid replication settings when creating or altering a keyspace 
(CASSANDRA-12681)
 + * Clean up the SSTableReader#getScanner API wrt removal of RateLimiter 
(CASSANDRA-12422)
 +
  3.10
+  * Fix timeout in ReplicationAwareTokenAllocatorTest (CASSANDRA-12784)
   * Improve sum aggregate functions (CASSANDRA-12417)
   * Make cassandra.yaml docs for batch_size_*_threshold_in_kb reflect changes 
in CASSANDRA-10876 (CASSANDRA-12761)
   * cqlsh fails to format collections when using aliases (CASSANDRA-11534)



[1/3] cassandra git commit: Fix timeout in ReplicationAwareTokenAllocatorTest

2016-10-17 Thread stefania
Repository: cassandra
Updated Branches:
  refs/heads/cassandra-3.X 7a5118c7d -> c6ec31bad
  refs/heads/trunk f2a354763 -> a4705c28b


Fix timeout in ReplicationAwareTokenAllocatorTest

patch by Stefania Alborghetti; reviewed by Branimir Lambov for CASSANDRA-12784


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

Branch: refs/heads/cassandra-3.X
Commit: c6ec31bada33b9b803d09a863414ea9cad72752e
Parents: 7a5118c
Author: Stefania Alborghetti 
Authored: Thu Oct 13 16:32:58 2016 +0800
Committer: Stefania Alborghetti 
Committed: Tue Oct 18 09:08:56 2016 +0800

--
 CHANGES.txt |   1 +
 .../apache/cassandra/dht/RandomPartitioner.java |   2 +-
 .../apache/cassandra/utils/GuidGenerator.java   |   5 +-
 ...tractReplicationAwareTokenAllocatorTest.java | 716 ++
 ...rmur3ReplicationAwareTokenAllocatorTest.java |  48 ++
 ...andomReplicationAwareTokenAllocatorTest.java |  54 ++
 .../ReplicationAwareTokenAllocatorTest.java | 755 ---
 test/unit/org/apache/cassandra/Util.java|  20 +-
 8 files changed, 835 insertions(+), 766 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/c6ec31ba/CHANGES.txt
--
diff --git a/CHANGES.txt b/CHANGES.txt
index d230462..32a2dfd 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -1,4 +1,5 @@
 3.10
+ * Fix timeout in ReplicationAwareTokenAllocatorTest (CASSANDRA-12784)
  * Improve sum aggregate functions (CASSANDRA-12417)
  * Make cassandra.yaml docs for batch_size_*_threshold_in_kb reflect changes 
in CASSANDRA-10876 (CASSANDRA-12761)
  * cqlsh fails to format collections when using aliases (CASSANDRA-11534)

http://git-wip-us.apache.org/repos/asf/cassandra/blob/c6ec31ba/src/java/org/apache/cassandra/dht/RandomPartitioner.java
--
diff --git a/src/java/org/apache/cassandra/dht/RandomPartitioner.java 
b/src/java/org/apache/cassandra/dht/RandomPartitioner.java
index 7c8f6ac..ee3b862 100644
--- a/src/java/org/apache/cassandra/dht/RandomPartitioner.java
+++ b/src/java/org/apache/cassandra/dht/RandomPartitioner.java
@@ -93,7 +93,7 @@ public class RandomPartitioner implements IPartitioner
 
 public BigIntegerToken getRandomToken(Random random)
 {
-BigInteger token = 
FBUtilities.hashToBigInteger(GuidGenerator.guidAsBytes(random));
+BigInteger token = 
FBUtilities.hashToBigInteger(GuidGenerator.guidAsBytes(random, 0));
 if ( token.signum() == -1 )
 token = token.multiply(BigInteger.valueOf(-1L));
 return new BigIntegerToken(token);

http://git-wip-us.apache.org/repos/asf/cassandra/blob/c6ec31ba/src/java/org/apache/cassandra/utils/GuidGenerator.java
--
diff --git a/src/java/org/apache/cassandra/utils/GuidGenerator.java 
b/src/java/org/apache/cassandra/utils/GuidGenerator.java
index 0843344..c5ed7a7 100644
--- a/src/java/org/apache/cassandra/utils/GuidGenerator.java
+++ b/src/java/org/apache/cassandra/utils/GuidGenerator.java
@@ -76,10 +76,9 @@ public class GuidGenerator
 return convertToStandardFormat( sb.toString() );
 }
 
-public static ByteBuffer guidAsBytes(Random random)
+public static ByteBuffer guidAsBytes(Random random, long time)
 {
 StringBuilder sbValueBeforeMD5 = new StringBuilder();
-long time = System.currentTimeMillis();
 long rand = 0;
 rand = random.nextLong();
 sbValueBeforeMD5.append(s_id)
@@ -94,7 +93,7 @@ public class GuidGenerator
 
 public static ByteBuffer guidAsBytes()
 {
-return guidAsBytes(myRand);
+return guidAsBytes(myRand, System.currentTimeMillis());
 }
 
 /*

http://git-wip-us.apache.org/repos/asf/cassandra/blob/c6ec31ba/test/long/org/apache/cassandra/dht/tokenallocator/AbstractReplicationAwareTokenAllocatorTest.java
--
diff --git 
a/test/long/org/apache/cassandra/dht/tokenallocator/AbstractReplicationAwareTokenAllocatorTest.java
 
b/test/long/org/apache/cassandra/dht/tokenallocator/AbstractReplicationAwareTokenAllocatorTest.java
new file mode 100644
index 000..80e980a
--- /dev/null
+++ 
b/test/long/org/apache/cassandra/dht/tokenallocator/AbstractReplicationAwareTokenAllocatorTest.java
@@ -0,0 +1,716 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copy

[2/3] cassandra git commit: Fix timeout in ReplicationAwareTokenAllocatorTest

2016-10-17 Thread stefania
Fix timeout in ReplicationAwareTokenAllocatorTest

patch by Stefania Alborghetti; reviewed by Branimir Lambov for CASSANDRA-12784


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

Branch: refs/heads/trunk
Commit: c6ec31bada33b9b803d09a863414ea9cad72752e
Parents: 7a5118c
Author: Stefania Alborghetti 
Authored: Thu Oct 13 16:32:58 2016 +0800
Committer: Stefania Alborghetti 
Committed: Tue Oct 18 09:08:56 2016 +0800

--
 CHANGES.txt |   1 +
 .../apache/cassandra/dht/RandomPartitioner.java |   2 +-
 .../apache/cassandra/utils/GuidGenerator.java   |   5 +-
 ...tractReplicationAwareTokenAllocatorTest.java | 716 ++
 ...rmur3ReplicationAwareTokenAllocatorTest.java |  48 ++
 ...andomReplicationAwareTokenAllocatorTest.java |  54 ++
 .../ReplicationAwareTokenAllocatorTest.java | 755 ---
 test/unit/org/apache/cassandra/Util.java|  20 +-
 8 files changed, 835 insertions(+), 766 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/c6ec31ba/CHANGES.txt
--
diff --git a/CHANGES.txt b/CHANGES.txt
index d230462..32a2dfd 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -1,4 +1,5 @@
 3.10
+ * Fix timeout in ReplicationAwareTokenAllocatorTest (CASSANDRA-12784)
  * Improve sum aggregate functions (CASSANDRA-12417)
  * Make cassandra.yaml docs for batch_size_*_threshold_in_kb reflect changes 
in CASSANDRA-10876 (CASSANDRA-12761)
  * cqlsh fails to format collections when using aliases (CASSANDRA-11534)

http://git-wip-us.apache.org/repos/asf/cassandra/blob/c6ec31ba/src/java/org/apache/cassandra/dht/RandomPartitioner.java
--
diff --git a/src/java/org/apache/cassandra/dht/RandomPartitioner.java 
b/src/java/org/apache/cassandra/dht/RandomPartitioner.java
index 7c8f6ac..ee3b862 100644
--- a/src/java/org/apache/cassandra/dht/RandomPartitioner.java
+++ b/src/java/org/apache/cassandra/dht/RandomPartitioner.java
@@ -93,7 +93,7 @@ public class RandomPartitioner implements IPartitioner
 
 public BigIntegerToken getRandomToken(Random random)
 {
-BigInteger token = 
FBUtilities.hashToBigInteger(GuidGenerator.guidAsBytes(random));
+BigInteger token = 
FBUtilities.hashToBigInteger(GuidGenerator.guidAsBytes(random, 0));
 if ( token.signum() == -1 )
 token = token.multiply(BigInteger.valueOf(-1L));
 return new BigIntegerToken(token);

http://git-wip-us.apache.org/repos/asf/cassandra/blob/c6ec31ba/src/java/org/apache/cassandra/utils/GuidGenerator.java
--
diff --git a/src/java/org/apache/cassandra/utils/GuidGenerator.java 
b/src/java/org/apache/cassandra/utils/GuidGenerator.java
index 0843344..c5ed7a7 100644
--- a/src/java/org/apache/cassandra/utils/GuidGenerator.java
+++ b/src/java/org/apache/cassandra/utils/GuidGenerator.java
@@ -76,10 +76,9 @@ public class GuidGenerator
 return convertToStandardFormat( sb.toString() );
 }
 
-public static ByteBuffer guidAsBytes(Random random)
+public static ByteBuffer guidAsBytes(Random random, long time)
 {
 StringBuilder sbValueBeforeMD5 = new StringBuilder();
-long time = System.currentTimeMillis();
 long rand = 0;
 rand = random.nextLong();
 sbValueBeforeMD5.append(s_id)
@@ -94,7 +93,7 @@ public class GuidGenerator
 
 public static ByteBuffer guidAsBytes()
 {
-return guidAsBytes(myRand);
+return guidAsBytes(myRand, System.currentTimeMillis());
 }
 
 /*

http://git-wip-us.apache.org/repos/asf/cassandra/blob/c6ec31ba/test/long/org/apache/cassandra/dht/tokenallocator/AbstractReplicationAwareTokenAllocatorTest.java
--
diff --git 
a/test/long/org/apache/cassandra/dht/tokenallocator/AbstractReplicationAwareTokenAllocatorTest.java
 
b/test/long/org/apache/cassandra/dht/tokenallocator/AbstractReplicationAwareTokenAllocatorTest.java
new file mode 100644
index 000..80e980a
--- /dev/null
+++ 
b/test/long/org/apache/cassandra/dht/tokenallocator/AbstractReplicationAwareTokenAllocatorTest.java
@@ -0,0 +1,716 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file e

[jira] [Updated] (CASSANDRA-12784) ReplicationAwareTokenAllocatorTest times out almost every time for 3.X and trunk

2016-10-17 Thread Stefania (JIRA)

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

Stefania updated CASSANDRA-12784:
-
Component/s: Testing

> ReplicationAwareTokenAllocatorTest times out almost every time for 3.X and 
> trunk
> 
>
> Key: CASSANDRA-12784
> URL: https://issues.apache.org/jira/browse/CASSANDRA-12784
> Project: Cassandra
>  Issue Type: Bug
>  Components: Testing
>Reporter: Stefania
>Assignee: Stefania
> Fix For: 3.10
>
> Attachments: ReplicationAwareTokenAllocatorTest.jfr.gz
>
>
> Example failure: 
> http://cassci.datastax.com/view/cassandra-3.X/job/cassandra-3.X_testall/lastCompletedBuild/testReport/org.apache.cassandra.dht.tokenallocator/ReplicationAwareTokenAllocatorTest/testNewClusterWithMurmur3Partitioner/



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (CASSANDRA-12784) ReplicationAwareTokenAllocatorTest times out almost every time for 3.X and trunk

2016-10-17 Thread Stefania (JIRA)

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

Stefania updated CASSANDRA-12784:
-
   Resolution: Fixed
Fix Version/s: (was: 3.x)
   3.10
   Status: Resolved  (was: Ready to Commit)

Committed to 3.X as c6ec31bada33b9b803d09a863414ea9cad72752e and merged into 
trunk.

> ReplicationAwareTokenAllocatorTest times out almost every time for 3.X and 
> trunk
> 
>
> Key: CASSANDRA-12784
> URL: https://issues.apache.org/jira/browse/CASSANDRA-12784
> Project: Cassandra
>  Issue Type: Bug
>  Components: Testing
>Reporter: Stefania
>Assignee: Stefania
> Fix For: 3.10
>
> Attachments: ReplicationAwareTokenAllocatorTest.jfr.gz
>
>
> Example failure: 
> http://cassci.datastax.com/view/cassandra-3.X/job/cassandra-3.X_testall/lastCompletedBuild/testReport/org.apache.cassandra.dht.tokenallocator/ReplicationAwareTokenAllocatorTest/testNewClusterWithMurmur3Partitioner/



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Created] (CASSANDRA-12801) KeyCacheCqlTest fails on 3.0, 3.X and trunk

2016-10-17 Thread Stefania (JIRA)
Stefania created CASSANDRA-12801:


 Summary: KeyCacheCqlTest fails on 3.0, 3.X and trunk
 Key: CASSANDRA-12801
 URL: https://issues.apache.org/jira/browse/CASSANDRA-12801
 Project: Cassandra
  Issue Type: Bug
Reporter: Stefania
Assignee: Stefania
 Fix For: 3.0.x, 3.x


Sample failures:

http://cassci.datastax.com/view/trunk/job/trunk_testall/1213/testReport/junit/org.apache.cassandra.cql3/KeyCacheCqlTest/testKeyCacheClusteredShallowIndexEntry/

http://cassci.datastax.com/view/cassandra-3.X/job/cassandra-3.X_testall/31/testReport/junit/org.apache.cassandra.cql3/KeyCacheCqlTest/test2iKeyCachePathsIndexInfoOnHeap/

https://cassci.datastax.com/view/cassandra-3.0/job/cassandra-3.0_testall/704/testReport/org.apache.cassandra.cql3/KeyCacheCqlTest/test2iKeyCachePaths_compression/



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Created] (CASSANDRA-12800) KeyCacheCqlTest fails on 3.0, 3.X and trunk

2016-10-17 Thread Stefania (JIRA)
Stefania created CASSANDRA-12800:


 Summary: KeyCacheCqlTest fails on 3.0, 3.X and trunk
 Key: CASSANDRA-12800
 URL: https://issues.apache.org/jira/browse/CASSANDRA-12800
 Project: Cassandra
  Issue Type: Bug
Reporter: Stefania
Assignee: Stefania
 Fix For: 3.0.x, 3.x


Sample failures:

http://cassci.datastax.com/view/trunk/job/trunk_testall/1213/testReport/junit/org.apache.cassandra.cql3/KeyCacheCqlTest/testKeyCacheClusteredShallowIndexEntry/

http://cassci.datastax.com/view/cassandra-3.X/job/cassandra-3.X_testall/31/testReport/junit/org.apache.cassandra.cql3/KeyCacheCqlTest/test2iKeyCachePathsIndexInfoOnHeap/

https://cassci.datastax.com/view/cassandra-3.0/job/cassandra-3.0_testall/704/testReport/org.apache.cassandra.cql3/KeyCacheCqlTest/test2iKeyCachePaths_compression/



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (CASSANDRA-12789) ViewTest.testCompaction releases reference twice

2016-10-17 Thread Stefania (JIRA)

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

Stefania updated CASSANDRA-12789:
-
Status: Patch Available  (was: In Progress)

> ViewTest.testCompaction releases reference twice
> 
>
> Key: CASSANDRA-12789
> URL: https://issues.apache.org/jira/browse/CASSANDRA-12789
> Project: Cassandra
>  Issue Type: Bug
>Reporter: Stefania
>Assignee: Stefania
> Fix For: 3.0.x, 3.x
>
>
> Sample failures:
> http://cassci.datastax.com/view/trunk/job/trunk_testall/1233/testReport/junit/org.apache.cassandra.db.lifecycle/ViewTest/testCompaction/
> http://cassci.datastax.com/view/cassandra-3.0/job/cassandra-3.0_testall/684/testReport/junit/org.apache.cassandra.db.lifecycle/ViewTest/testCompaction/



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Resolved] (CASSANDRA-12800) KeyCacheCqlTest fails on 3.0, 3.X and trunk

2016-10-17 Thread Stefania (JIRA)

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

Stefania resolved CASSANDRA-12800.
--
Resolution: Duplicate

> KeyCacheCqlTest fails on 3.0, 3.X and trunk
> ---
>
> Key: CASSANDRA-12800
> URL: https://issues.apache.org/jira/browse/CASSANDRA-12800
> Project: Cassandra
>  Issue Type: Bug
>Reporter: Stefania
>Assignee: Stefania
> Fix For: 3.0.x, 3.x
>
>
> Sample failures:
> http://cassci.datastax.com/view/trunk/job/trunk_testall/1213/testReport/junit/org.apache.cassandra.cql3/KeyCacheCqlTest/testKeyCacheClusteredShallowIndexEntry/
> http://cassci.datastax.com/view/cassandra-3.X/job/cassandra-3.X_testall/31/testReport/junit/org.apache.cassandra.cql3/KeyCacheCqlTest/test2iKeyCachePathsIndexInfoOnHeap/
> https://cassci.datastax.com/view/cassandra-3.0/job/cassandra-3.0_testall/704/testReport/org.apache.cassandra.cql3/KeyCacheCqlTest/test2iKeyCachePaths_compression/



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (CASSANDRA-12789) ViewTest.testCompaction releases reference twice

2016-10-17 Thread Stefania (JIRA)

[ 
https://issues.apache.org/jira/browse/CASSANDRA-12789?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15584250#comment-15584250
 ] 

Stefania commented on CASSANDRA-12789:
--

Multiplexed results are available 
[here|http://cassci.datastax.com/job/stef1927-testall-multiplex/33/testReport/org.apache.cassandra.db.lifecycle/],
 the previous runs had problems retrieving the results.

[~krummas] would you mind reviewing the 
[patch|https://github.com/stef1927/cassandra/commits/12789-3.0] for 3.0? It 
shouldn't take you long, it's just a matter of keeping the references to 
prevent the sstables from being released and picked up again after a release. 
An alternative approach would be to wait for the deletion tasks before 
reacquiring the references but I think the test aim is to check different 
instances of the same sstables, so it seems more logical to keep the references 
to me. 

Apart from a change in the initialization, the test is identical on 3.X and 
trunk, so I did not multiplex it on those branches.

> ViewTest.testCompaction releases reference twice
> 
>
> Key: CASSANDRA-12789
> URL: https://issues.apache.org/jira/browse/CASSANDRA-12789
> Project: Cassandra
>  Issue Type: Bug
>Reporter: Stefania
>Assignee: Stefania
> Fix For: 3.0.x, 3.x
>
>
> Sample failures:
> http://cassci.datastax.com/view/trunk/job/trunk_testall/1233/testReport/junit/org.apache.cassandra.db.lifecycle/ViewTest/testCompaction/
> http://cassci.datastax.com/view/cassandra-3.0/job/cassandra-3.0_testall/684/testReport/junit/org.apache.cassandra.db.lifecycle/ViewTest/testCompaction/



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (CASSANDRA-12774) Expose dc in Unavailable exception errors

2016-10-17 Thread Kurt Greaves (JIRA)

[ 
https://issues.apache.org/jira/browse/CASSANDRA-12774?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15584338#comment-15584338
 ] 

Kurt Greaves commented on CASSANDRA-12774:
--

It looks like at least EACH_QUORUM does pass through the DC to UE? 
https://github.com/apache/cassandra/blob/cassandra-3.0/src/java/org/apache/cassandra/db/ConsistencyLevel.java#L324
It doesn't for LOCAL_QUORUM however, which may be an issue I suppose.

> Expose dc in Unavailable exception errors
> -
>
> Key: CASSANDRA-12774
> URL: https://issues.apache.org/jira/browse/CASSANDRA-12774
> Project: Cassandra
>  Issue Type: Bug
>Reporter: Andy Tolbert
>Priority: Minor
>
> For protocol v5 or later, it could be useful if Unavailable optionally 
> included the DC that could not meet the CL.  
> For example. if a user has a keyspace with RF of { dc1: 3, dc2: 3 } and they 
> make a query at {{EACH_QUORUM}} and not enough replicas are available in dc2, 
> an {{UnavailableException}} will be sent to the client with X available and 2 
> required, but we don't know which DC failed.  It looks like 
> {{UnavailableException}} already has a constructor that takes in the DC (see 
> [here|https://github.com/apache/cassandra/blob/cassandra-3.0/src/java/org/apache/cassandra/exceptions/UnavailableException.java#L33])
>  so this could be feasible.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (CASSANDRA-12778) Tombstones not being deleted when only_purge_repaired_tombstones is enabled

2016-10-17 Thread Marcus Eriksson (JIRA)

[ 
https://issues.apache.org/jira/browse/CASSANDRA-12778?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15584636#comment-15584636
 ] 

Marcus Eriksson commented on CASSANDRA-12778:
-

Yes, if you keep getting old data in the memtable we can't drop tombstones. We 
can only drop tombstones if we can guarantee that the tombstone we are 
compacting is not covering any older data on the node, so if you have older 
data in the unrepaired sstables we can't drop it.

> Tombstones not being deleted when only_purge_repaired_tombstones is enabled
> ---
>
> Key: CASSANDRA-12778
> URL: https://issues.apache.org/jira/browse/CASSANDRA-12778
> Project: Cassandra
>  Issue Type: Bug
>Reporter: Arvind Nithrakashyap
>Assignee: Marcus Eriksson
>Priority: Critical
>
> When we use only_purge_repaired_tombstones for compaction, we noticed that 
> tombstones are no longer being deleted.
> {noformat}compaction = {'class': 
> 'org.apache.cassandra.db.compaction.LeveledCompactionStrategy', 
> 'only_purge_repaired_tombstones': 'true'}{noformat}
> The root cause for this seems to be caused by the fact that repair itself 
> issues a flush which in turn leads to a new sstable being created (which is 
> not in the repair set). It looks like we do have some old data in this 
> sstable because of this, only tombstones older than that timestamp are 
> getting deleted even though many more keys have been repaired. 
> Fundamentally it looks like flush and repair can race with each other and 
> with leveled compaction, the flush creates a new sstable at level 0 and 
> removes the older sstable (the one that is picked for repair). Since repair 
> itself seems to issue multiple flushes, the level 0 sstable never gets 
> repaired and hence tombstones never get deleted. 
> We have already included the fix for CASSANDRA-12703 while testing. 



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


<    1   2