[jira] [Commented] (CASSANDRA-13994) Remove COMPACT STORAGE internals before 4.0 release

2020-03-11 Thread Ekaterina Dimitrova (Jira)


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

Ekaterina Dimitrova commented on CASSANDRA-13994:
-

Thanks, I put it on my list!

> Remove COMPACT STORAGE internals before 4.0 release
> ---
>
> Key: CASSANDRA-13994
> URL: https://issues.apache.org/jira/browse/CASSANDRA-13994
> Project: Cassandra
>  Issue Type: Improvement
>  Components: Legacy/Local Write-Read Paths
>Reporter: Alex Petrov
>Assignee: Alex Petrov
>Priority: Low
> Fix For: 4.0, 4.0-rc
>
>
> 4.0 comes without thrift (after [CASSANDRA-5]) and COMPACT STORAGE (after 
> [CASSANDRA-10857]), and since Compact Storage flags are now disabled, all of 
> the related functionality is useless.
> There are still some things to consider:
> 1. One of the system tables (built indexes) was compact. For now, we just 
> added {{value}} column to it to make sure it's backwards-compatible, but we 
> might want to make sure it's just a "normal" table and doesn't have redundant 
> columns.
> 2. Compact Tables were building indexes in {{KEYS}} mode. Removing it is 
> trivial, but this would mean that all built indexes will be defunct. We could 
> log a warning for now and ask users to migrate off those for now and 
> completely remove it from future releases. It's just a couple of classes 
> though.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

-
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org



[jira] [Updated] (CASSANDRA-15637) CqlInputFormat regression going from 2.1 to 3.x caused by semantic difference between thrift and the new system.size_estimates table when dealing with multiple dc de

2020-03-11 Thread David Capwell (Jira)


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

David Capwell updated CASSANDRA-15637:
--
Description: 
In 3.0 CqlInputFormat switched away from thrift in favor of a new 
system.size_estimates table, but the semantics changed when dealing with 
multiple DCs or when Cassandra is not collocated with Hadoop.

The core issues are:

* system.size_estimates uses the primary range, in a multi-dc setup this could 
lead to uneven ranges
example:

{code}
DC1: [0, 10, 20, 30]
DC2: [1, 11, 21, 31]
DC3: [2, 12, 22, 32]
{code}

Using NetworkTopologyStrategy the primary ranges are: [0, 1), [1, 2), [2, 10), 
[10, 11), [11, 12), [12, 20), [20, 21), [21, 22), [22, 30), [30, 31), [31, 32), 
[32, 0).
Given this the only ranges that are more than one token are: [2, 10), [12, 20), 
[22, 30).

* system.size_estimates is not replicated so need to hit every node in the 
cluster to get estimates, if nodes are down in the DC with non-size-1 ranges 
there is no way to get a estimate.
* CqlInputFormat used to call describe_local_ring so all interactions were with 
a single DC, the java driver doesn't filter the DC so looks to allow cross DC 
traffic and includes nodes from other DCs in the replica set; in the example 
above, the amount of splits went from 4 to 12.
* CqlInputFormat used to call describe_splits_ex to dynamically calculate the 
estimates, this was on the "local primary range" and was able to hit replicas 
to create estimates if the primary was down. With system.size_estimates we no 
longer have backup and no longer expose the "local primary range" in multi-dc.
* CqlInputFormat had a config cassandra.input.keyRange which let you define 
your own range.  If the range doesn't perfectly match the local range then the 
intersectWith calls will produce ranges with no estimates.  Example: [0, 10, 
20], cassandra.input.keyRange=5,15.  This won't find any estimates so will 
produce 2 splits with 128 estimate (default when not found).
* CqlInputFormat special cases Cassandra being collocated with Hadoop and 
assumes this when querying system.size_estimates as it doesn't filter to the 
specific host, this means that non-collocated deployments randomly select the 
nodes and create splits with ranges the hosts do not have locally.

The problems are deterministic to replicate, the following test will show it

1) deploy a 3 DC cluster with 3 nodes each
2) create DC2 tokens are +1 of DC1 and DC3 are +1 of DC2
3) CREATE KEYSPACE simpleuniform0 WITH replication = {‘class’: 
‘NetworkTopologyStrategy’, ‘DC1’: 3, ‘DC2’: 3, ‘DC3’: 3};
4) CREATE TABLE simpletable0 (pk bigint, ck bigint, value blob, PRIMARY KEY 
(pk, ck))
5) insert 500k partitions uniformly: [0, 500,000)
6) wait until estimates catch up to writes
7) for all nodes, SELECT * FROM system.size_estimates

You will get the following

{code}
 keyspace_name  | table_name   | range_start  | range_end| 
mean_partition_size | partitions_count
+--+--+--+-+--
 simpleuniform0 | simpletable0 | -9223372036854775808 | -6148914691236517206 |  
87 |   122240
 simpleuniform0 | simpletable0 |  6148914691236517207 | -9223372036854775808 |  
87 |   121472

(2 rows)

 keyspace_name  | table_name   | range_start | range_end   | 
mean_partition_size | partitions_count
+--+-+-+-+--
 simpleuniform0 | simpletable0 |   2 | 6148914691236517205 |
  87 |   243072

(1 rows)

 keyspace_name  | table_name   | range_start  | range_end| 
mean_partition_size | partitions_count
+--+--+--+-+--
 simpleuniform0 | simpletable0 | -6148914691236517206 | -6148914691236517205 |  
87 |1

(1 rows)

 keyspace_name  | table_name   | range_start | range_end | mean_partition_size 
| partitions_count
+--+-+---+-+--
 simpleuniform0 | simpletable0 |   0 | 1 |  87 
|1

(1 rows)

 keyspace_name  | table_name   | range_start | range_end   | 
mean_partition_size | partitions_count
+--+-+-+-+--
 simpleuniform0 | simpletable0 | 6148914691236517205 | 6148914691236517206 |
  87 |1

(1 rows)

 keyspace_name  | table_name   | range_start  | range_end| 
mean_partition_size | partitions_count

[jira] [Updated] (CASSANDRA-15313) Fix flaky - ChecksummingTransformerTest - org.apache.cassandra.transport.frame.checksum.ChecksummingTransformerTest

2020-03-11 Thread Adam Holmberg (Jira)


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

Adam Holmberg updated CASSANDRA-15313:
--
Fix Version/s: (was: 4.0-alpha)
   4.0-beta

> Fix flaky - ChecksummingTransformerTest - 
> org.apache.cassandra.transport.frame.checksum.ChecksummingTransformerTest
> ---
>
> Key: CASSANDRA-15313
> URL: https://issues.apache.org/jira/browse/CASSANDRA-15313
> Project: Cassandra
>  Issue Type: Bug
>  Components: Test/dtest
>Reporter: Vinay Chella
>Assignee: Brandon Williams
>Priority: Normal
> Fix For: 4.0-beta
>
> Attachments: CASSANDRA-15313-hack.patch
>
>
> During the recent runs, this test appears to be flaky.
> Example failure: 
> [https://circleci.com/gh/vinaykumarchella/cassandra/459#tests/containers/94]
> corruptionCausesFailure-compression - 
> org.apache.cassandra.transport.frame.checksum.ChecksummingTransformerTest
> {code:java}
> java.lang.OutOfMemoryError: GC overhead limit exceeded
>   at java.nio.HeapByteBuffer.(HeapByteBuffer.java:57)
>   at java.nio.ByteBuffer.allocate(ByteBuffer.java:335)
>   at org.quicktheories.impl.Precursor.(Precursor.java:17)
>   at 
> org.quicktheories.impl.ConcreteDetachedSource.(ConcreteDetachedSource.java:8)
>   at 
> org.quicktheories.impl.ConcreteDetachedSource.detach(ConcreteDetachedSource.java:23)
>   at org.quicktheories.generators.Retry.generate(CodePoints.java:51)
>   at 
> org.quicktheories.generators.Generate.lambda$intArrays$10(Generate.java:190)
>   at 
> org.quicktheories.generators.Generate$$Lambda$17/1847008471.generate(Unknown 
> Source)
>   at org.quicktheories.core.DescribingGenerator.generate(Gen.java:255)
>   at org.quicktheories.core.Gen.lambda$map$0(Gen.java:36)
>   at org.quicktheories.core.Gen$$Lambda$20/71399214.generate(Unknown 
> Source)
>   at org.quicktheories.core.Gen.lambda$map$0(Gen.java:36)
>   at org.quicktheories.core.Gen$$Lambda$20/71399214.generate(Unknown 
> Source)
>   at org.quicktheories.core.Gen.lambda$mix$10(Gen.java:184)
>   at org.quicktheories.core.Gen$$Lambda$45/802243390.generate(Unknown 
> Source)
>   at org.quicktheories.core.Gen.lambda$flatMap$5(Gen.java:93)
>   at org.quicktheories.core.Gen$$Lambda$48/363509958.generate(Unknown 
> Source)
>   at 
> org.quicktheories.dsl.TheoryBuilder4.lambda$prgnToTuple$12(TheoryBuilder4.java:188)
>   at 
> org.quicktheories.dsl.TheoryBuilder4$$Lambda$40/2003496028.generate(Unknown 
> Source)
>   at org.quicktheories.core.DescribingGenerator.generate(Gen.java:255)
>   at org.quicktheories.core.FilteredGenerator.generate(Gen.java:225)
>   at org.quicktheories.core.Gen.lambda$map$0(Gen.java:36)
>   at org.quicktheories.core.Gen$$Lambda$20/71399214.generate(Unknown 
> Source)
>   at org.quicktheories.impl.Core.generate(Core.java:150)
>   at org.quicktheories.impl.Core.shrink(Core.java:103)
>   at org.quicktheories.impl.Core.run(Core.java:39)
>   at org.quicktheories.impl.TheoryRunner.check(TheoryRunner.java:35)
>   at org.quicktheories.dsl.TheoryBuilder4.check(TheoryBuilder4.java:150)
>   at 
> org.quicktheories.dsl.TheoryBuilder4.checkAssert(TheoryBuilder4.java:162)
>   at 
> org.apache.cassandra.transport.frame.checksum.ChecksummingTransformerTest.corruptionCausesFailure(ChecksummingTransformerTest.java:87)
> {code}



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

-
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org



[jira] [Updated] (CASSANDRA-15313) Fix flaky - ChecksummingTransformerTest - org.apache.cassandra.transport.frame.checksum.ChecksummingTransformerTest

2020-03-11 Thread Josh McKenzie (Jira)


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

Josh McKenzie updated CASSANDRA-15313:
--
Status: Open  (was: Patch Available)

> Fix flaky - ChecksummingTransformerTest - 
> org.apache.cassandra.transport.frame.checksum.ChecksummingTransformerTest
> ---
>
> Key: CASSANDRA-15313
> URL: https://issues.apache.org/jira/browse/CASSANDRA-15313
> Project: Cassandra
>  Issue Type: Bug
>  Components: Test/dtest
>Reporter: Vinay Chella
>Assignee: Brandon Williams
>Priority: Normal
> Fix For: 4.0-alpha
>
> Attachments: CASSANDRA-15313-hack.patch
>
>
> During the recent runs, this test appears to be flaky.
> Example failure: 
> [https://circleci.com/gh/vinaykumarchella/cassandra/459#tests/containers/94]
> corruptionCausesFailure-compression - 
> org.apache.cassandra.transport.frame.checksum.ChecksummingTransformerTest
> {code:java}
> java.lang.OutOfMemoryError: GC overhead limit exceeded
>   at java.nio.HeapByteBuffer.(HeapByteBuffer.java:57)
>   at java.nio.ByteBuffer.allocate(ByteBuffer.java:335)
>   at org.quicktheories.impl.Precursor.(Precursor.java:17)
>   at 
> org.quicktheories.impl.ConcreteDetachedSource.(ConcreteDetachedSource.java:8)
>   at 
> org.quicktheories.impl.ConcreteDetachedSource.detach(ConcreteDetachedSource.java:23)
>   at org.quicktheories.generators.Retry.generate(CodePoints.java:51)
>   at 
> org.quicktheories.generators.Generate.lambda$intArrays$10(Generate.java:190)
>   at 
> org.quicktheories.generators.Generate$$Lambda$17/1847008471.generate(Unknown 
> Source)
>   at org.quicktheories.core.DescribingGenerator.generate(Gen.java:255)
>   at org.quicktheories.core.Gen.lambda$map$0(Gen.java:36)
>   at org.quicktheories.core.Gen$$Lambda$20/71399214.generate(Unknown 
> Source)
>   at org.quicktheories.core.Gen.lambda$map$0(Gen.java:36)
>   at org.quicktheories.core.Gen$$Lambda$20/71399214.generate(Unknown 
> Source)
>   at org.quicktheories.core.Gen.lambda$mix$10(Gen.java:184)
>   at org.quicktheories.core.Gen$$Lambda$45/802243390.generate(Unknown 
> Source)
>   at org.quicktheories.core.Gen.lambda$flatMap$5(Gen.java:93)
>   at org.quicktheories.core.Gen$$Lambda$48/363509958.generate(Unknown 
> Source)
>   at 
> org.quicktheories.dsl.TheoryBuilder4.lambda$prgnToTuple$12(TheoryBuilder4.java:188)
>   at 
> org.quicktheories.dsl.TheoryBuilder4$$Lambda$40/2003496028.generate(Unknown 
> Source)
>   at org.quicktheories.core.DescribingGenerator.generate(Gen.java:255)
>   at org.quicktheories.core.FilteredGenerator.generate(Gen.java:225)
>   at org.quicktheories.core.Gen.lambda$map$0(Gen.java:36)
>   at org.quicktheories.core.Gen$$Lambda$20/71399214.generate(Unknown 
> Source)
>   at org.quicktheories.impl.Core.generate(Core.java:150)
>   at org.quicktheories.impl.Core.shrink(Core.java:103)
>   at org.quicktheories.impl.Core.run(Core.java:39)
>   at org.quicktheories.impl.TheoryRunner.check(TheoryRunner.java:35)
>   at org.quicktheories.dsl.TheoryBuilder4.check(TheoryBuilder4.java:150)
>   at 
> org.quicktheories.dsl.TheoryBuilder4.checkAssert(TheoryBuilder4.java:162)
>   at 
> org.apache.cassandra.transport.frame.checksum.ChecksummingTransformerTest.corruptionCausesFailure(ChecksummingTransformerTest.java:87)
> {code}



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

-
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org



[jira] [Updated] (CASSANDRA-15313) Fix flaky - ChecksummingTransformerTest - org.apache.cassandra.transport.frame.checksum.ChecksummingTransformerTest

2020-03-11 Thread Josh McKenzie (Jira)


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

Josh McKenzie updated CASSANDRA-15313:
--
Test and Documentation Plan: Trying to get this thing to Blocked. That's 
the plan.
 Status: Patch Available  (was: In Progress)

> Fix flaky - ChecksummingTransformerTest - 
> org.apache.cassandra.transport.frame.checksum.ChecksummingTransformerTest
> ---
>
> Key: CASSANDRA-15313
> URL: https://issues.apache.org/jira/browse/CASSANDRA-15313
> Project: Cassandra
>  Issue Type: Bug
>  Components: Test/dtest
>Reporter: Vinay Chella
>Assignee: Brandon Williams
>Priority: Normal
> Fix For: 4.0-alpha
>
> Attachments: CASSANDRA-15313-hack.patch
>
>
> During the recent runs, this test appears to be flaky.
> Example failure: 
> [https://circleci.com/gh/vinaykumarchella/cassandra/459#tests/containers/94]
> corruptionCausesFailure-compression - 
> org.apache.cassandra.transport.frame.checksum.ChecksummingTransformerTest
> {code:java}
> java.lang.OutOfMemoryError: GC overhead limit exceeded
>   at java.nio.HeapByteBuffer.(HeapByteBuffer.java:57)
>   at java.nio.ByteBuffer.allocate(ByteBuffer.java:335)
>   at org.quicktheories.impl.Precursor.(Precursor.java:17)
>   at 
> org.quicktheories.impl.ConcreteDetachedSource.(ConcreteDetachedSource.java:8)
>   at 
> org.quicktheories.impl.ConcreteDetachedSource.detach(ConcreteDetachedSource.java:23)
>   at org.quicktheories.generators.Retry.generate(CodePoints.java:51)
>   at 
> org.quicktheories.generators.Generate.lambda$intArrays$10(Generate.java:190)
>   at 
> org.quicktheories.generators.Generate$$Lambda$17/1847008471.generate(Unknown 
> Source)
>   at org.quicktheories.core.DescribingGenerator.generate(Gen.java:255)
>   at org.quicktheories.core.Gen.lambda$map$0(Gen.java:36)
>   at org.quicktheories.core.Gen$$Lambda$20/71399214.generate(Unknown 
> Source)
>   at org.quicktheories.core.Gen.lambda$map$0(Gen.java:36)
>   at org.quicktheories.core.Gen$$Lambda$20/71399214.generate(Unknown 
> Source)
>   at org.quicktheories.core.Gen.lambda$mix$10(Gen.java:184)
>   at org.quicktheories.core.Gen$$Lambda$45/802243390.generate(Unknown 
> Source)
>   at org.quicktheories.core.Gen.lambda$flatMap$5(Gen.java:93)
>   at org.quicktheories.core.Gen$$Lambda$48/363509958.generate(Unknown 
> Source)
>   at 
> org.quicktheories.dsl.TheoryBuilder4.lambda$prgnToTuple$12(TheoryBuilder4.java:188)
>   at 
> org.quicktheories.dsl.TheoryBuilder4$$Lambda$40/2003496028.generate(Unknown 
> Source)
>   at org.quicktheories.core.DescribingGenerator.generate(Gen.java:255)
>   at org.quicktheories.core.FilteredGenerator.generate(Gen.java:225)
>   at org.quicktheories.core.Gen.lambda$map$0(Gen.java:36)
>   at org.quicktheories.core.Gen$$Lambda$20/71399214.generate(Unknown 
> Source)
>   at org.quicktheories.impl.Core.generate(Core.java:150)
>   at org.quicktheories.impl.Core.shrink(Core.java:103)
>   at org.quicktheories.impl.Core.run(Core.java:39)
>   at org.quicktheories.impl.TheoryRunner.check(TheoryRunner.java:35)
>   at org.quicktheories.dsl.TheoryBuilder4.check(TheoryBuilder4.java:150)
>   at 
> org.quicktheories.dsl.TheoryBuilder4.checkAssert(TheoryBuilder4.java:162)
>   at 
> org.apache.cassandra.transport.frame.checksum.ChecksummingTransformerTest.corruptionCausesFailure(ChecksummingTransformerTest.java:87)
> {code}



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

-
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org



[jira] [Updated] (CASSANDRA-15637) CqlInputFormat regression going from 2.1 to 3.x caused by semantic difference between thrift and the new system.size_estimates table when dealing with multiple dc de

2020-03-11 Thread David Capwell (Jira)


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

David Capwell updated CASSANDRA-15637:
--
Description: 
In 3.0 CqlInputFormat switched away from thrift in favor of a new 
system.size_estimates table, but the semantics changed when dealing with 
multiple DCs or when Cassandra is not collocated with Hadoop.

The core issues are:

* system.size_estimates uses the primary range, in a multi-dc setup this could 
lead to uneven ranges
example:

{code}
DC1: [0, 10, 20, 30]
DC2: [1, 11, 21, 31]
DC3: [2, 12, 22, 32]
{code}

Using NetworkTopologyStrategy the primary ranges are: [0, 1), [1, 2), [2, 10), 
[10, 11), [11, 12), [12, 20), [20, 21), [21, 22), [22, 30), [30, 31), [31, 32), 
[32, 0).
Given this the only ranges that are more than one token are: [2, 10), [12, 20), 
[22, 30).

* system.size_estimates is not replicated so need to hit every node in the 
cluster to get estimates, if nodes are down in the DC with non-size-1 ranges 
there is no way to get a estimate.
* CqlInputFormat used to call describe_local_ring so all interactions were with 
a single DC, the java driver doesn't filter the DC so looks to allow cross DC 
traffic and includes nodes from other DCs in the replica set; in the example 
above, the amount of splits went from 4 to 12.
* CqlInputFormat used to call describe_splits_ex to dynamically calculate the 
estimates, this was on the "local primary range" and was able to hit replicas 
to create estimates if the primary was down. With system.size_estimates we no 
longer have backup and no longer expose the "local primary range" in multi-dc.
* CqlInputFormat special cases Cassandra being collocated with Hadoop and 
assumes this when querying system.size_estimates as it doesn't filter to the 
specific host, this means that non-collocated deployments randomly select the 
nodes and create splits with ranges the hosts do not have locally.

The problems are deterministic to replicate, the following test will show it

1) deploy a 3 DC cluster with 3 nodes each
2) create DC2 tokens are +1 of DC1 and DC3 are +1 of DC2
3) CREATE KEYSPACE simpleuniform0 WITH replication = {‘class’: 
‘NetworkTopologyStrategy’, ‘DC1’: 3, ‘DC2’: 3, ‘DC3’: 3};
4) CREATE TABLE simpletable0 (pk bigint, ck bigint, value blob, PRIMARY KEY 
(pk, ck))
5) insert 500k partitions uniformly: [0, 500,000)
6) wait until estimates catch up to writes
7) for all nodes, SELECT * FROM system.size_estimates

You will get the following

{code}
 keyspace_name  | table_name   | range_start  | range_end| 
mean_partition_size | partitions_count
+--+--+--+-+--
 simpleuniform0 | simpletable0 | -9223372036854775808 | -6148914691236517206 |  
87 |   122240
 simpleuniform0 | simpletable0 |  6148914691236517207 | -9223372036854775808 |  
87 |   121472

(2 rows)

 keyspace_name  | table_name   | range_start | range_end   | 
mean_partition_size | partitions_count
+--+-+-+-+--
 simpleuniform0 | simpletable0 |   2 | 6148914691236517205 |
  87 |   243072

(1 rows)

 keyspace_name  | table_name   | range_start  | range_end| 
mean_partition_size | partitions_count
+--+--+--+-+--
 simpleuniform0 | simpletable0 | -6148914691236517206 | -6148914691236517205 |  
87 |1

(1 rows)

 keyspace_name  | table_name   | range_start | range_end | mean_partition_size 
| partitions_count
+--+-+---+-+--
 simpleuniform0 | simpletable0 |   0 | 1 |  87 
|1

(1 rows)

 keyspace_name  | table_name   | range_start | range_end   | 
mean_partition_size | partitions_count
+--+-+-+-+--
 simpleuniform0 | simpletable0 | 6148914691236517205 | 6148914691236517206 |
  87 |1

(1 rows)

 keyspace_name  | table_name   | range_start  | range_end| 
mean_partition_size | partitions_count
+--+--+--+-+--
 simpleuniform0 | simpletable0 | -6148914691236517205 | -6148914691236517204 |  
87 |1

(1 rows)

 keyspace_name  | table_name   | range_start | range_end | mean_partition_size 
| partitions_count
+--+-+---+-+--
 

[jira] [Commented] (CASSANDRA-15637) CqlInputFormat regression going from 2.1 to 3.x caused by semantic difference between thrift and the new system.size_estimates table when dealing with multiple dc

2020-03-11 Thread David Capwell (Jira)


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

David Capwell commented on CASSANDRA-15637:
---

I have a patch which switches the estimate to the "local primary range" and 
updated the client to work with this.  The patch passes my test above but there 
is concern that this may regress others, so not sure if the patch is 
appropriate or not.

> CqlInputFormat regression going from 2.1 to 3.x caused by semantic difference 
> between thrift and the new system.size_estimates table when dealing with 
> multiple dc deployments
> --
>
> Key: CASSANDRA-15637
> URL: https://issues.apache.org/jira/browse/CASSANDRA-15637
> Project: Cassandra
>  Issue Type: Bug
>  Components: Legacy/Tools
>Reporter: David Capwell
>Assignee: David Capwell
>Priority: Normal
>
> In 3.0 CqlInputFormat switched away from thrift in favor of a new 
> system.size_estimates table, but the semantics changed when dealing with 
> multiple DCs or when Cassandra is not collocated with Hadoop.
> The core issues are:
> * system.size_estimates uses the primary range, in a multi-dc setup this 
> could lead to uneven ranges
> example:
> DC1: [0, 10, 20, 30]
> DC2: [1, 11, 21, 31]
> DC3: [2, 12, 22, 32]
> Using NetworkTopologyStrategy the primary ranges are: [0, 1), [1, 2), [2, 
> 10), [10, 11), [11, 12), [12, 20), [20, 21), [21, 22), [22, 30), [30, 31), 
> [31, 32), [32, 0).
> Given this the only ranges that are more than one token are: [2, 10), [12, 
> 20), [22, 30).
> * system.size_estimates is not replicated so need to hit every node in the 
> cluster to get estimates, if nodes are down in the DC with non-size-1 ranges 
> there is no way to get a estimate.
> * CqlInputFormat used to call describe_local_ring so all interactions were 
> with a single DC, the java driver doesn't filter the DC so looks to allow 
> cross DC traffic and includes nodes from other DCs in the replica set; in the 
> example above, the amount of splits went from 4 to 12.
> * CqlInputFormat used to call describe_splits_ex to dynamically calculate the 
> estimates, this was on the "local primary range" and was able to hit replicas 
> to create estimates if the primary was down. With system.size_estimates we no 
> longer have backup and no longer expose the "local primary range" in multi-dc.
> * CqlInputFormat special cases Cassandra being collocated with Hadoop and 
> assumes this when querying system.size_estimates as it doesn't filter to the 
> specific host, this means that non-collocated deployments randomly select the 
> nodes and create splits with ranges the hosts do not have locally.
> The problems are deterministic to replicate, the following test will show it
> 1) deploy a 3 DC cluster with 3 nodes each
> 2) create DC2 tokens are +1 of DC1 and DC3 are +1 of DC2
> 3) CREATE KEYSPACE simpleuniform0 WITH replication = {‘class’: 
> ‘NetworkTopologyStrategy’, ‘DC1’: 3, ‘DC2’: 3, ‘DC3’: 3};
> 4) CREATE TABLE simpletable0 (pk bigint, ck bigint, value blob, PRIMARY KEY 
> (pk, ck))
> 5) insert 500k partitions uniformly: [0, 500,000)
> 6) wait until estimates catch up to writes
> 7) for all nodes, SELECT * FROM system.size_estimates
> You will get the following
>  keyspace_name  | table_name   | range_start  | range_end
> | mean_partition_size | partitions_count
> +--+--+--+-+--
>  simpleuniform0 | simpletable0 | -9223372036854775808 | -6148914691236517206 
> |  87 |   122240
>  simpleuniform0 | simpletable0 |  6148914691236517207 | -9223372036854775808 
> |  87 |   121472
> (2 rows)
>  keyspace_name  | table_name   | range_start | range_end   | 
> mean_partition_size | partitions_count
> +--+-+-+-+--
>  simpleuniform0 | simpletable0 |   2 | 6148914691236517205 |  
> 87 |   243072
> (1 rows)
>  keyspace_name  | table_name   | range_start  | range_end
> | mean_partition_size | partitions_count
> +--+--+--+-+--
>  simpleuniform0 | simpletable0 | -6148914691236517206 | -6148914691236517205 
> |  87 |1
> (1 rows)
>  keyspace_name  | table_name   | range_start | range_end | 
> mean_partition_size | partitions_count
> 

[jira] [Updated] (CASSANDRA-15637) CqlInputFormat regression going from 2.1 to 3.x caused by semantic difference between thrift and the new system.size_estimates table when dealing with multiple dc de

2020-03-11 Thread David Capwell (Jira)


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

David Capwell updated CASSANDRA-15637:
--
 Bug Category: Parent values: Correctness(12982)Level 1 values: API / 
Semantic Implementation(12988)
   Complexity: Challenging
Discovered By: User Report
 Severity: Critical
   Status: Open  (was: Triage Needed)

Marked this as "challenging" as getting this to work for people upgrading from 
2.1 and those already integrated with 3.0 (presto came up) is the issue.

> CqlInputFormat regression going from 2.1 to 3.x caused by semantic difference 
> between thrift and the new system.size_estimates table when dealing with 
> multiple dc deployments
> --
>
> Key: CASSANDRA-15637
> URL: https://issues.apache.org/jira/browse/CASSANDRA-15637
> Project: Cassandra
>  Issue Type: Bug
>  Components: Legacy/Tools
>Reporter: David Capwell
>Assignee: David Capwell
>Priority: Normal
>
> In 3.0 CqlInputFormat switched away from thrift in favor of a new 
> system.size_estimates table, but the semantics changed when dealing with 
> multiple DCs or when Cassandra is not collocated with Hadoop.
> The core issues are:
> * system.size_estimates uses the primary range, in a multi-dc setup this 
> could lead to uneven ranges
> example:
> DC1: [0, 10, 20, 30]
> DC2: [1, 11, 21, 31]
> DC3: [2, 12, 22, 32]
> Using NetworkTopologyStrategy the primary ranges are: [0, 1), [1, 2), [2, 
> 10), [10, 11), [11, 12), [12, 20), [20, 21), [21, 22), [22, 30), [30, 31), 
> [31, 32), [32, 0).
> Given this the only ranges that are more than one token are: [2, 10), [12, 
> 20), [22, 30).
> * system.size_estimates is not replicated so need to hit every node in the 
> cluster to get estimates, if nodes are down in the DC with non-size-1 ranges 
> there is no way to get a estimate.
> * CqlInputFormat used to call describe_local_ring so all interactions were 
> with a single DC, the java driver doesn't filter the DC so looks to allow 
> cross DC traffic and includes nodes from other DCs in the replica set; in the 
> example above, the amount of splits went from 4 to 12.
> * CqlInputFormat used to call describe_splits_ex to dynamically calculate the 
> estimates, this was on the "local primary range" and was able to hit replicas 
> to create estimates if the primary was down. With system.size_estimates we no 
> longer have backup and no longer expose the "local primary range" in multi-dc.
> * CqlInputFormat special cases Cassandra being collocated with Hadoop and 
> assumes this when querying system.size_estimates as it doesn't filter to the 
> specific host, this means that non-collocated deployments randomly select the 
> nodes and create splits with ranges the hosts do not have locally.
> The problems are deterministic to replicate, the following test will show it
> 1) deploy a 3 DC cluster with 3 nodes each
> 2) create DC2 tokens are +1 of DC1 and DC3 are +1 of DC2
> 3) CREATE KEYSPACE simpleuniform0 WITH replication = {‘class’: 
> ‘NetworkTopologyStrategy’, ‘DC1’: 3, ‘DC2’: 3, ‘DC3’: 3};
> 4) CREATE TABLE simpletable0 (pk bigint, ck bigint, value blob, PRIMARY KEY 
> (pk, ck))
> 5) insert 500k partitions uniformly: [0, 500,000)
> 6) wait until estimates catch up to writes
> 7) for all nodes, SELECT * FROM system.size_estimates
> You will get the following
>  keyspace_name  | table_name   | range_start  | range_end
> | mean_partition_size | partitions_count
> +--+--+--+-+--
>  simpleuniform0 | simpletable0 | -9223372036854775808 | -6148914691236517206 
> |  87 |   122240
>  simpleuniform0 | simpletable0 |  6148914691236517207 | -9223372036854775808 
> |  87 |   121472
> (2 rows)
>  keyspace_name  | table_name   | range_start | range_end   | 
> mean_partition_size | partitions_count
> +--+-+-+-+--
>  simpleuniform0 | simpletable0 |   2 | 6148914691236517205 |  
> 87 |   243072
> (1 rows)
>  keyspace_name  | table_name   | range_start  | range_end
> | mean_partition_size | partitions_count
> +--+--+--+-+--
>  simpleuniform0 | simpletable0 | -6148914691236517206 | -6148914691236517205 
> |  87 |1
> (1 rows)
>  keyspace_name  | table_name   | range_start | range_end | 
> mean_partition_size | 

[jira] [Created] (CASSANDRA-15637) CqlInputFormat regression going from 2.1 to 3.x caused by semantic difference between thrift and the new system.size_estimates table when dealing with multiple dc de

2020-03-11 Thread David Capwell (Jira)
David Capwell created CASSANDRA-15637:
-

 Summary: CqlInputFormat regression going from 2.1 to 3.x caused by 
semantic difference between thrift and the new system.size_estimates table when 
dealing with multiple dc deployments
 Key: CASSANDRA-15637
 URL: https://issues.apache.org/jira/browse/CASSANDRA-15637
 Project: Cassandra
  Issue Type: Bug
  Components: Legacy/Tools
Reporter: David Capwell
Assignee: David Capwell


In 3.0 CqlInputFormat switched away from thrift in favor of a new 
system.size_estimates table, but the semantics changed when dealing with 
multiple DCs or when Cassandra is not collocated with Hadoop.

The core issues are:

* system.size_estimates uses the primary range, in a multi-dc setup this could 
lead to uneven ranges
example:

DC1: [0, 10, 20, 30]
DC2: [1, 11, 21, 31]
DC3: [2, 12, 22, 32]

Using NetworkTopologyStrategy the primary ranges are: [0, 1), [1, 2), [2, 10), 
[10, 11), [11, 12), [12, 20), [20, 21), [21, 22), [22, 30), [30, 31), [31, 32), 
[32, 0).
Given this the only ranges that are more than one token are: [2, 10), [12, 20), 
[22, 30).

* system.size_estimates is not replicated so need to hit every node in the 
cluster to get estimates, if nodes are down in the DC with non-size-1 ranges 
there is no way to get a estimate.
* CqlInputFormat used to call describe_local_ring so all interactions were with 
a single DC, the java driver doesn't filter the DC so looks to allow cross DC 
traffic and includes nodes from other DCs in the replica set; in the example 
above, the amount of splits went from 4 to 12.
* CqlInputFormat used to call describe_splits_ex to dynamically calculate the 
estimates, this was on the "local primary range" and was able to hit replicas 
to create estimates if the primary was down. With system.size_estimates we no 
longer have backup and no longer expose the "local primary range" in multi-dc.
* CqlInputFormat special cases Cassandra being collocated with Hadoop and 
assumes this when querying system.size_estimates as it doesn't filter to the 
specific host, this means that non-collocated deployments randomly select the 
nodes and create splits with ranges the hosts do not have locally.

The problems are deterministic to replicate, the following test will show it

1) deploy a 3 DC cluster with 3 nodes each
2) create DC2 tokens are +1 of DC1 and DC3 are +1 of DC2
3) CREATE KEYSPACE simpleuniform0 WITH replication = {‘class’: 
‘NetworkTopologyStrategy’, ‘DC1’: 3, ‘DC2’: 3, ‘DC3’: 3};
4) CREATE TABLE simpletable0 (pk bigint, ck bigint, value blob, PRIMARY KEY 
(pk, ck))
5) insert 500k partitions uniformly: [0, 500,000)
6) wait until estimates catch up to writes
7) for all nodes, SELECT * FROM system.size_estimates

You will get the following

 keyspace_name  | table_name   | range_start  | range_end| 
mean_partition_size | partitions_count
+--+--+--+-+--
 simpleuniform0 | simpletable0 | -9223372036854775808 | -6148914691236517206 |  
87 |   122240
 simpleuniform0 | simpletable0 |  6148914691236517207 | -9223372036854775808 |  
87 |   121472

(2 rows)

 keyspace_name  | table_name   | range_start | range_end   | 
mean_partition_size | partitions_count
+--+-+-+-+--
 simpleuniform0 | simpletable0 |   2 | 6148914691236517205 |
  87 |   243072

(1 rows)

 keyspace_name  | table_name   | range_start  | range_end| 
mean_partition_size | partitions_count
+--+--+--+-+--
 simpleuniform0 | simpletable0 | -6148914691236517206 | -6148914691236517205 |  
87 |1

(1 rows)

 keyspace_name  | table_name   | range_start | range_end | mean_partition_size 
| partitions_count
+--+-+---+-+--
 simpleuniform0 | simpletable0 |   0 | 1 |  87 
|1

(1 rows)

 keyspace_name  | table_name   | range_start | range_end   | 
mean_partition_size | partitions_count
+--+-+-+-+--
 simpleuniform0 | simpletable0 | 6148914691236517205 | 6148914691236517206 |
  87 |1

(1 rows)

 keyspace_name  | table_name   | range_start  | range_end| 
mean_partition_size | partitions_count
+--+--+--+-+--
 simpleuniform0 | 

[jira] [Updated] (CASSANDRA-15388) Add compaction allocation measurement test to support compaction gc optimization.

2020-03-11 Thread Blake Eggleston (Jira)


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

Blake Eggleston updated CASSANDRA-15388:

Source Control Link: 
https://github.com/apache/cassandra/commit/c9e40277f0389a773b21d4310a85a8c761932d61
 Resolution: Fixed
 Status: Resolved  (was: Ready to Commit)

thanks, committed to trunk as 
[c9e40277f0389a773b21d4310a85a8c761932d61|https://github.com/apache/cassandra/commit/c9e40277f0389a773b21d4310a85a8c761932d61]

> Add compaction allocation measurement test to support compaction gc 
> optimization. 
> --
>
> Key: CASSANDRA-15388
> URL: https://issues.apache.org/jira/browse/CASSANDRA-15388
> Project: Cassandra
>  Issue Type: Sub-task
>  Components: Local/Compaction
>Reporter: Blake Eggleston
>Assignee: Blake Eggleston
>Priority: Normal
> Fix For: 4.0
>
>
> This adds a test that is able to quickly and accurately measure the effect of 
> potential gc optimizations against a wide range of (synthetic) compaction 
> workloads. This test accurately measures allocation rates from 16 workloads 
> in less that 2 minutes.
> This test uses google’s {{java-allocation-instrumenter}} agent to measure the 
> workloads. Measurements using this agent are very accurate and pretty 
> repeatable from run to run, with most variance being negligible (1-2 bytes 
> per partition), although workloads with larger but fewer partitions vary a 
> bit more (still less that 0.03%).
> The thinking behind this patch is that with compaction, we’re generally 
> interested in the memory allocated per partition, since garbage scales more 
> or less linearly with the number of partitions compacted. So measuring 
> allocation from a small number of partitions that otherwise represent real 
> world use cases is a good enough approximation.
> In addition to helping with compaction optimizations, this test could be used 
> as a template for future optimization work. This pattern could also be used 
> to set allocation limits on workloads/operations and fail CI if the 
> allocation behavior changes past some threshold. 



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

-
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org



[cassandra] branch trunk updated: Add compaction allocation measurement test

2020-03-11 Thread bdeggleston
This is an automated email from the ASF dual-hosted git repository.

bdeggleston pushed a commit to branch trunk
in repository https://gitbox.apache.org/repos/asf/cassandra.git


The following commit(s) were added to refs/heads/trunk by this push:
 new c9e4027  Add compaction allocation measurement test
c9e4027 is described below

commit c9e40277f0389a773b21d4310a85a8c761932d61
Author: Blake Eggleston 
AuthorDate: Tue Oct 15 13:04:26 2019 -0700

Add compaction allocation measurement test

Patch by Blake Eggleston, reviewed by Benedict Elliott Smith and David 
Capwell for CASSANDRA-15388
---
 CHANGES.txt|   1 +
 build.xml  |  13 +
 ide/idea-iml-file.xml  |   1 +
 .../db/compaction/CompactionAllocationTest.java| 767 +
 4 files changed, 782 insertions(+)

diff --git a/CHANGES.txt b/CHANGES.txt
index d863df2..c6a2eac 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -1,4 +1,5 @@
 4.0-alpha4
+ * Add compaction allocation measurement test (CASSANDRA-15388)
  * Added UnleveledSSTables global and table level metric (CASSANDRA-15620)
  * Added Virtual Table exposing Cassandra relevant system properties 
(CASSANDRA-15616)
  * Add data modeling introduction (CASSANDRA-15481)
diff --git a/build.xml b/build.xml
index 9c4f5b0..bd1f557 100644
--- a/build.xml
+++ b/build.xml
@@ -60,6 +60,7 @@
 
 
 
+
 
 
 
@@ -96,6 +97,7 @@
 
 
 
+
 
 
 
@@ -118,6 +120,7 @@
 
 
 
+
 
 
 
@@ -539,6 +542,7 @@
   
   
   
+  
   
  
   
@@ -672,6 +676,7 @@
 version="${version}"/>
 
 
+
 
 
 
@@ -1324,6 +1329,7 @@
  
  
  
+ 
  
  
 
@@ -1620,6 +1626,13 @@
 
   
 
+  
+  
+  
+  
+  
+
   
 
   
diff --git a/ide/idea-iml-file.xml b/ide/idea-iml-file.xml
index 17d4c5b..86827c3 100644
--- a/ide/idea-iml-file.xml
+++ b/ide/idea-iml-file.xml
@@ -32,6 +32,7 @@
 
 
 
+
 
 
 
diff --git 
a/test/memory/org/apache/cassandra/db/compaction/CompactionAllocationTest.java 
b/test/memory/org/apache/cassandra/db/compaction/CompactionAllocationTest.java
new file mode 100644
index 000..a58303d
--- /dev/null
+++ 
b/test/memory/org/apache/cassandra/db/compaction/CompactionAllocationTest.java
@@ -0,0 +1,767 @@
+/*
+ * 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 except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.cassandra.db.compaction;
+
+import java.io.IOException;
+import java.lang.management.ManagementFactory;
+import java.util.ArrayList;
+import java.util.Collections;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+import java.util.Random;
+import java.util.Set;
+
+import com.google.common.base.Joiner;
+import com.google.common.collect.Iterables;
+import com.google.common.collect.Lists;
+import com.google.common.primitives.Ints;
+import org.junit.AfterClass;
+import org.junit.Assert;
+import org.junit.BeforeClass;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+import com.google.monitoring.runtime.instrumentation.AllocationRecorder;
+import com.google.monitoring.runtime.instrumentation.Sampler;
+import com.sun.management.ThreadMXBean;
+import org.apache.cassandra.OrderedJUnit4ClassRunner;
+import org.apache.cassandra.SchemaLoader;
+import org.apache.cassandra.cql3.QueryOptions;
+import org.apache.cassandra.cql3.QueryProcessor;
+import org.apache.cassandra.cql3.statements.SelectStatement;
+import org.apache.cassandra.cql3.statements.schema.CreateTableStatement;
+import org.apache.cassandra.db.ColumnFamilyStore;
+import org.apache.cassandra.db.ReadExecutionController;
+import org.apache.cassandra.db.ReadQuery;
+import org.apache.cassandra.db.filter.ColumnFilter;
+import org.apache.cassandra.db.partitions.UnfilteredPartitionIterator;
+import org.apache.cassandra.db.partitions.UnfilteredPartitionIterators;
+import 

[jira] [Updated] (CASSANDRA-15388) Add compaction allocation measurement test to support compaction gc optimization.

2020-03-11 Thread Blake Eggleston (Jira)


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

Blake Eggleston updated CASSANDRA-15388:

Status: Ready to Commit  (was: Changes Suggested)

> Add compaction allocation measurement test to support compaction gc 
> optimization. 
> --
>
> Key: CASSANDRA-15388
> URL: https://issues.apache.org/jira/browse/CASSANDRA-15388
> Project: Cassandra
>  Issue Type: Sub-task
>  Components: Local/Compaction
>Reporter: Blake Eggleston
>Assignee: Blake Eggleston
>Priority: Normal
> Fix For: 4.0
>
>
> This adds a test that is able to quickly and accurately measure the effect of 
> potential gc optimizations against a wide range of (synthetic) compaction 
> workloads. This test accurately measures allocation rates from 16 workloads 
> in less that 2 minutes.
> This test uses google’s {{java-allocation-instrumenter}} agent to measure the 
> workloads. Measurements using this agent are very accurate and pretty 
> repeatable from run to run, with most variance being negligible (1-2 bytes 
> per partition), although workloads with larger but fewer partitions vary a 
> bit more (still less that 0.03%).
> The thinking behind this patch is that with compaction, we’re generally 
> interested in the memory allocated per partition, since garbage scales more 
> or less linearly with the number of partitions compacted. So measuring 
> allocation from a small number of partitions that otherwise represent real 
> world use cases is a good enough approximation.
> In addition to helping with compaction optimizations, this test could be used 
> as a template for future optimization work. This pattern could also be used 
> to set allocation limits on workloads/operations and fail CI if the 
> allocation behavior changes past some threshold. 



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

-
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org



[jira] [Commented] (CASSANDRA-15262) server_encryption_options is not backwards compatible with 3.11

2020-03-11 Thread Adam Holmberg (Jira)


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

Adam Holmberg commented on CASSANDRA-15262:
---

[~jolynch] you mentioned having WIP that you might be able to hand off to 
someone. Will you be able to push that soon?

> server_encryption_options is not backwards compatible with 3.11
> ---
>
> Key: CASSANDRA-15262
> URL: https://issues.apache.org/jira/browse/CASSANDRA-15262
> Project: Cassandra
>  Issue Type: Bug
>  Components: Local/Config
>Reporter: Joey Lynch
>Assignee: Joey Lynch
>Priority: Normal
> Fix For: 4.0, 4.0-alpha
>
>
> The current `server_encryption_options` configuration options are as follows:
> {noformat}
> server_encryption_options:
> # set to true for allowing secure incoming connections
> enabled: false
> # If enabled and optional are both set to true, encrypted and unencrypted 
> connections are handled on the storage_port
> optional: false
> # if enabled, will open up an encrypted listening socket on 
> ssl_storage_port. Should be used
> # during upgrade to 4.0; otherwise, set to false.
> enable_legacy_ssl_storage_port: false
> # on outbound connections, determine which type of peers to securely 
> connect to. 'enabled' must be set to true.
> internode_encryption: none
> keystore: conf/.keystore
> keystore_password: cassandra
> truststore: conf/.truststore
> truststore_password: cassandra
> # More advanced defaults below:
> # protocol: TLS
> # store_type: JKS
> # cipher_suites: 
> [TLS_RSA_WITH_AES_128_CBC_SHA,TLS_RSA_WITH_AES_256_CBC_SHA,TLS_DHE_RSA_WITH_AES_128_CBC_SHA,TLS_DHE_RSA_WITH_AES_256_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA]
> # require_client_auth: false
> # require_endpoint_verification: false
> {noformat}
> A couple of issues here:
> 1. optional defaults to false, which will break existing TLS configurations 
> for (from what I can tell) no particularly good reason
> 2. The provided protocol and cipher suites are not good ideas (in particular 
> encouraging anyone to use CBC ciphers is a bad plan
> I propose that before the 4.0 cut we fixup server_encryption_options and even 
> client_encryption_options :
> # Change the default {{optional}} setting to true. As the new Netty code 
> intelligently decides to open a TLS connection or not this is the more 
> sensible default (saves operators a step while transitioning to TLS as well)
> # Update the defaults to what netty actually defaults to



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

-
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org



[jira] [Updated] (CASSANDRA-15314) Fix failing test - test_rolling_upgrade_with_internode_ssl - upgrade_tests.upgrade_through_versions_test.TestProtoV4Upgrade_AllVersions_EndsAt_Trunk_HEAD

2020-03-11 Thread Adam Holmberg (Jira)


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

Adam Holmberg updated CASSANDRA-15314:
--
 Bug Category: Parent values: Correctness(12982)Level 1 values: Test 
Failure(12990)
   Complexity: Normal
Discovered By: Unit Test
 Severity: Normal
   Status: Open  (was: Triage Needed)

> Fix failing test - test_rolling_upgrade_with_internode_ssl - 
> upgrade_tests.upgrade_through_versions_test.TestProtoV4Upgrade_AllVersions_EndsAt_Trunk_HEAD
> -
>
> Key: CASSANDRA-15314
> URL: https://issues.apache.org/jira/browse/CASSANDRA-15314
> Project: Cassandra
>  Issue Type: Bug
>  Components: Test/dtest
>Reporter: Vinay Chella
>Assignee: Brandon Williams
>Priority: Normal
>  Labels: dtest
> Fix For: 4.0-alpha
>
>
> Example failure: 
> [https://circleci.com/gh/vinaykumarchella/cassandra/468#tests/containers/11]
>  
> {code:java}
> ccmlib.node.TimeoutError: 06 Sep 2019 20:23:57 [node2] Missing: ['127.0.0.1.* 
> now UP']: INFO  [HANDSHAKE-/127.0.0.1] 2019-09-06 20:20:01,7. See 
> system.log for remainder
> self = 
>   object at 0x7f6d90d43b38>
> @pytest.mark.timeout(3000)
> def test_rolling_upgrade_with_internode_ssl(self):
> """
> Rolling upgrade test using internode ssl.
> """
> >   self.upgrade_scenario(rolling=True, internode_ssl=True)
> upgrade_tests/upgrade_through_versions_test.py:296: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> upgrade_tests/upgrade_through_versions_test.py:352: in upgrade_scenario
> self.upgrade_to_version(version_meta, partial=True, nodes=(node,), 
> internode_ssl=internode_ssl)
> upgrade_tests/upgrade_through_versions_test.py:456: in upgrade_to_version
> node.start(wait_other_notice=240, wait_for_binary_proto=True)
> ../env/src/ccm/ccmlib/node.py:751: in start
> node.watch_log_for_alive(self, from_mark=mark, timeout=wait_other_notice)
> ../env/src/ccm/ccmlib/node.py:568: in watch_log_for_alive
> self.watch_log_for(tofind, from_mark=from_mark, timeout=timeout, 
> filename=filename)
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> self = 
> exprs = ['127.0.0.1.* now UP'], from_mark = 150742, timeout = 240
> process = None, verbose = False, filename = 'system.log'
> def watch_log_for(self, exprs, from_mark=None, timeout=600, process=None, 
> verbose=False, filename='system.log'):
> """
> Watch the log until one or more (regular) expression are found.
> This methods when all the expressions have been found or the 
> method
> timeouts (a TimeoutError is then raised). On successful 
> completion,
> a list of pair (line matched, match object) is returned.
> """
> start = time.time()
> tofind = [exprs] if isinstance(exprs, string_types) else exprs
> tofind = [re.compile(e) for e in tofind]
> matchings = []
> reads = ""
> if len(tofind) == 0:
> return None
> 
> log_file = os.path.join(self.get_path(), 'logs', filename)
> output_read = False
> while not os.path.exists(log_file):
> time.sleep(.5)
> if start + timeout < time.time():
> raise TimeoutError(time.strftime("%d %b %Y %H:%M:%S", 
> time.gmtime()) + " [" + self.name + "] Timed out waiting for {} to be 
> created.".format(log_file))
> if process and not output_read:
> process.poll()
> if process.returncode is not None:
> self.print_process_output(self.name, process, verbose)
> output_read = True
> if process.returncode != 0:
> raise RuntimeError()  # Shouldn't reuse RuntimeError 
> but I'm lazy
> 
> with open(log_file) as f:
> if from_mark:
> f.seek(from_mark)
> 
> while True:
> # First, if we have a process to check, then check it.
> # Skip on Windows - stdout/stderr is cassandra.bat
> if not common.is_win() and not output_read:
> if process:
> process.poll()
> if process.returncode is not None:
> self.print_process_output(self.name, process, 
> verbose)
> output_read = True
> if process.returncode != 0:
> raise RuntimeError()  # Shouldn't reuse 
> RuntimeError but I'm lazy
> 
>   

[jira] [Updated] (CASSANDRA-15315) Fix failing test - test_rolling_upgrade_with_internode_ssl - upgrade_tests.upgrade_through_versions_test.TestProtoV4Upgrade_AllVersions_RandomPartitioner_EndsAt_Trun

2020-03-11 Thread Adam Holmberg (Jira)


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

Adam Holmberg updated CASSANDRA-15315:
--
 Bug Category: Parent values: Correctness(12982)Level 1 values: Test 
Failure(12990)
   Complexity: Normal
Discovered By: Unit Test
 Severity: Normal
   Status: Open  (was: Triage Needed)

> Fix failing test - test_rolling_upgrade_with_internode_ssl - 
> upgrade_tests.upgrade_through_versions_test.TestProtoV4Upgrade_AllVersions_RandomPartitioner_EndsAt_Trunk_HEAD
> ---
>
> Key: CASSANDRA-15315
> URL: https://issues.apache.org/jira/browse/CASSANDRA-15315
> Project: Cassandra
>  Issue Type: Bug
>  Components: Test/dtest
>Reporter: Vinay Chella
>Assignee: Brandon Williams
>Priority: Normal
> Fix For: 4.0-alpha
>
>
> Example failure:
> [https://circleci.com/gh/vinaykumarchella/cassandra/468#tests/containers/11]
> [https://circleci.com/gh/vinaykumarchella/cassandra/451#tests/containers/11]
> {code:java}
> ccmlib.node.TimeoutError: 06 Sep 2019 20:21:39 [node2] Missing: ['127.0.0.1.* 
> now UP']: INFO  [HANDSHAKE-/127.0.0.1] 2019-09-06 20:17:43,8. See 
> system.log for remainder
> self = 
>   object at 0x7fbb75245a90>
> @pytest.mark.timeout(3000)
> def test_rolling_upgrade_with_internode_ssl(self):
> """
> Rolling upgrade test using internode ssl.
> """
> >   self.upgrade_scenario(rolling=True, internode_ssl=True)
> upgrade_tests/upgrade_through_versions_test.py:296: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> upgrade_tests/upgrade_through_versions_test.py:352: in upgrade_scenario
> self.upgrade_to_version(version_meta, partial=True, nodes=(node,), 
> internode_ssl=internode_ssl)
> upgrade_tests/upgrade_through_versions_test.py:456: in upgrade_to_version
> node.start(wait_other_notice=240, wait_for_binary_proto=True)
> ../env/src/ccm/ccmlib/node.py:751: in start
> node.watch_log_for_alive(self, from_mark=mark, timeout=wait_other_notice)
> ../env/src/ccm/ccmlib/node.py:568: in watch_log_for_alive
> self.watch_log_for(tofind, from_mark=from_mark, timeout=timeout, 
> filename=filename)
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> self = 
> exprs = ['127.0.0.1.* now UP'], from_mark = 151813, timeout = 240
> process = None, verbose = False, filename = 'system.log'
> def watch_log_for(self, exprs, from_mark=None, timeout=600, process=None, 
> verbose=False, filename='system.log'):
> """
> Watch the log until one or more (regular) expression are found.
> This methods when all the expressions have been found or the 
> method
> timeouts (a TimeoutError is then raised). On successful 
> completion,
> a list of pair (line matched, match object) is returned.
> """
> start = time.time()
> tofind = [exprs] if isinstance(exprs, string_types) else exprs
> tofind = [re.compile(e) for e in tofind]
> matchings = []
> reads = ""
> if len(tofind) == 0:
> return None
> 
> log_file = os.path.join(self.get_path(), 'logs', filename)
> output_read = False
> while not os.path.exists(log_file):
> time.sleep(.5)
> if start + timeout < time.time():
> raise TimeoutError(time.strftime("%d %b %Y %H:%M:%S", 
> time.gmtime()) + " [" + self.name + "] Timed out waiting for {} to be 
> created.".format(log_file))
> if process and not output_read:
> process.poll()
> if process.returncode is not None:
> self.print_process_output(self.name, process, verbose)
> output_read = True
> if process.returncode != 0:
> raise RuntimeError()  # Shouldn't reuse RuntimeError 
> but I'm lazy
> 
> with open(log_file) as f:
> if from_mark:
> f.seek(from_mark)
> 
> while True:
> # First, if we have a process to check, then check it.
> # Skip on Windows - stdout/stderr is cassandra.bat
> if not common.is_win() and not output_read:
> if process:
> process.poll()
> if process.returncode is not None:
> self.print_process_output(self.name, process, 
> verbose)
> output_read = True
> if process.returncode != 0:
> 

[jira] [Created] (CASSANDRA-15636) Refactor protocol related code to eliminate magic numbers

2020-03-11 Thread Dinesh Joshi (Jira)
Dinesh Joshi created CASSANDRA-15636:


 Summary: Refactor protocol related code to eliminate magic numbers
 Key: CASSANDRA-15636
 URL: https://issues.apache.org/jira/browse/CASSANDRA-15636
 Project: Cassandra
  Issue Type: Improvement
  Components: Messaging/Client
Reporter: Dinesh Joshi


Parts of Cassandra's codebase has protocol related magic numbers. It makes the 
code hard to understand. We should refactor the code to remove magic numbers 
and instead replace them with versioned constants. This will help make the code 
clearer. Example: 
https://github.com/apache/cassandra/blob/trunk/src/java/org/apache/cassandra/transport/messages/ErrorMessage.java#L288





--
This message was sent by Atlassian Jira
(v8.3.4#803005)

-
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org



[jira] [Comment Edited] (CASSANDRA-15605) Broken dtest replication_test.py::TestSnitchConfigurationUpdate

2020-03-11 Thread Ryan Svihla (Jira)


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

Ryan Svihla edited comment on CASSANDRA-15605 at 3/11/20, 5:25 PM:
---

Looks like the racks were assumed to be in the same order, adding a sort gets 
the tests to pass. I'm not sure why the order is changing sometimes, but in all 
cases the topology had changed and the comparison was just missing that fact.

fails

 

{{Status=Up/Down}}
 {{|/ State=Normal/Leaving/Joining/Moving}}
 {{-- Address Load Tokens Owns (effective) Host ID Rack}}
 {{UN 127.0.0.3 105.28 KiB 1 ? 41df89ae-0631-447c-9def-ff1fbff3b8a7 rack2}}
 {{UN 127.0.0.2 164.25 KiB 1 ? 47a49e4e-6964-4b00-b353-d3ab345f4aba rack1}}
 {{UN 127.0.0.1 128.46 KiB 1 ? b63ad12d-1d12-4e51-95ba-88ff61b252ea rack0}}

works

 

{\{16:05:35,630 replication_test DEBUG Datacenter: dc1 }}
 {{===}}
 {{Status=Up/Down}}
 {{|/ State=Normal/Leaving/Joining/Moving}}
 {{-- Address Load Tokens Owns (effective) Host ID Rack}}
 {{UN 127.0.0.1 132.51 KiB 1 100.0% 8b244cb0-135d-4745-b498-86f46187348f rack0}}
 {{UN 127.0.0.2 164.36 KiB 1 100.0% 36f42f34-fe8c-4543-b6c9-6db12b93b660 rack1}}
 {{UN 127.0.0.3 192.66 KiB 1 100.0% 1224e768-db1f-4d56-a1c8-db9b764a46d5 rack2}}

 

 [pr|https://github.com/apache/cassandra-dtest/pull/58]


was (Author: rssvihla):
https://github.com/apache/cassandra-dtest/pull/58

> Broken dtest replication_test.py::TestSnitchConfigurationUpdate
> ---
>
> Key: CASSANDRA-15605
> URL: https://issues.apache.org/jira/browse/CASSANDRA-15605
> Project: Cassandra
>  Issue Type: Bug
>  Components: Test/dtest
>Reporter: Sam Tunnicliffe
>Assignee: Ryan Svihla
>Priority: Normal
> Fix For: 4.0-alpha
>
>
> Noticed this failing on a couple of CI runs and repros when running trunk 
> locally and on CircleCI
> 2 or 3 tests are consistently failing:
>  * {{test_rf_expand_gossiping_property_file_snitch}}
>  * {{test_rf_expand_property_file_snitch}}
>  * {{test_move_forwards_between_and_cleanup}}
> [https://circleci.com/workflow-run/f23f13a9-bbdc-4764-8336-109517e137f1]



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

-
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org



[jira] [Issue Comment Deleted] (CASSANDRA-15605) Broken dtest replication_test.py::TestSnitchConfigurationUpdate

2020-03-11 Thread Ryan Svihla (Jira)


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

Ryan Svihla updated CASSANDRA-15605:

Comment: was deleted

(was: Looks like the racks were assumed to be in the same order, adding a sort 
gets the tests to pass. I'm not sure why the order is changing sometimes, but 
in all cases the topology had changed and the comparison was just missing that 
fact.



fails

 

{{Status=Up/Down}}
{{|/ State=Normal/Leaving/Joining/Moving}}
{{-- Address Load Tokens Owns (effective) Host ID Rack}}
{{UN 127.0.0.3 105.28 KiB 1 ? 41df89ae-0631-447c-9def-ff1fbff3b8a7 rack2}}
{{UN 127.0.0.2 164.25 KiB 1 ? 47a49e4e-6964-4b00-b353-d3ab345f4aba rack1}}
{{UN 127.0.0.1 128.46 KiB 1 ? b63ad12d-1d12-4e51-95ba-88ff61b252ea rack0}}


works

 

{{16:05:35,630 replication_test DEBUG Datacenter: dc1 }}
{{===}}
{{Status=Up/Down}}
{{|/ State=Normal/Leaving/Joining/Moving}}
{{-- Address Load Tokens Owns (effective) Host ID Rack}}
{{UN 127.0.0.1 132.51 KiB 1 100.0% 8b244cb0-135d-4745-b498-86f46187348f rack0}}
{{UN 127.0.0.2 164.36 KiB 1 100.0% 36f42f34-fe8c-4543-b6c9-6db12b93b660 rack1}}
{{UN 127.0.0.3 192.66 KiB 1 100.0% 1224e768-db1f-4d56-a1c8-db9b764a46d5 rack2}}

 

 [pr|https://github.com/apache/cassandra-dtest/pull/58])

> Broken dtest replication_test.py::TestSnitchConfigurationUpdate
> ---
>
> Key: CASSANDRA-15605
> URL: https://issues.apache.org/jira/browse/CASSANDRA-15605
> Project: Cassandra
>  Issue Type: Bug
>  Components: Test/dtest
>Reporter: Sam Tunnicliffe
>Assignee: Ryan Svihla
>Priority: Normal
> Fix For: 4.0-alpha
>
>
> Noticed this failing on a couple of CI runs and repros when running trunk 
> locally and on CircleCI
> 2 or 3 tests are consistently failing:
>  * {{test_rf_expand_gossiping_property_file_snitch}}
>  * {{test_rf_expand_property_file_snitch}}
>  * {{test_move_forwards_between_and_cleanup}}
> [https://circleci.com/workflow-run/f23f13a9-bbdc-4764-8336-109517e137f1]



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

-
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org



[jira] [Updated] (CASSANDRA-15605) Broken dtest replication_test.py::TestSnitchConfigurationUpdate

2020-03-11 Thread Ryan Svihla (Jira)


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

Ryan Svihla updated CASSANDRA-15605:

Test and Documentation Plan: not needed
 Status: Patch Available  (was: In Progress)

https://github.com/apache/cassandra-dtest/pull/58

> Broken dtest replication_test.py::TestSnitchConfigurationUpdate
> ---
>
> Key: CASSANDRA-15605
> URL: https://issues.apache.org/jira/browse/CASSANDRA-15605
> Project: Cassandra
>  Issue Type: Bug
>  Components: Test/dtest
>Reporter: Sam Tunnicliffe
>Assignee: Ryan Svihla
>Priority: Normal
> Fix For: 4.0-alpha
>
>
> Noticed this failing on a couple of CI runs and repros when running trunk 
> locally and on CircleCI
> 2 or 3 tests are consistently failing:
>  * {{test_rf_expand_gossiping_property_file_snitch}}
>  * {{test_rf_expand_property_file_snitch}}
>  * {{test_move_forwards_between_and_cleanup}}
> [https://circleci.com/workflow-run/f23f13a9-bbdc-4764-8336-109517e137f1]



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

-
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org



[jira] [Comment Edited] (CASSANDRA-15605) Broken dtest replication_test.py::TestSnitchConfigurationUpdate

2020-03-11 Thread Ryan Svihla (Jira)


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

Ryan Svihla edited comment on CASSANDRA-15605 at 3/11/20, 5:17 PM:
---

Looks like the racks were assumed to be in the same order, adding a sort gets 
the tests to pass. I'm not sure why the order is changing sometimes, but in all 
cases the topology had changed and the comparison was just missing that fact.



fails

 

{{Status=Up/Down}}
{{|/ State=Normal/Leaving/Joining/Moving}}
{{-- Address Load Tokens Owns (effective) Host ID Rack}}
{{UN 127.0.0.3 105.28 KiB 1 ? 41df89ae-0631-447c-9def-ff1fbff3b8a7 rack2}}
{{UN 127.0.0.2 164.25 KiB 1 ? 47a49e4e-6964-4b00-b353-d3ab345f4aba rack1}}
{{UN 127.0.0.1 128.46 KiB 1 ? b63ad12d-1d12-4e51-95ba-88ff61b252ea rack0}}


works

 

{{16:05:35,630 replication_test DEBUG Datacenter: dc1 }}
{{===}}
{{Status=Up/Down}}
{{|/ State=Normal/Leaving/Joining/Moving}}
{{-- Address Load Tokens Owns (effective) Host ID Rack}}
{{UN 127.0.0.1 132.51 KiB 1 100.0% 8b244cb0-135d-4745-b498-86f46187348f rack0}}
{{UN 127.0.0.2 164.36 KiB 1 100.0% 36f42f34-fe8c-4543-b6c9-6db12b93b660 rack1}}
{{UN 127.0.0.3 192.66 KiB 1 100.0% 1224e768-db1f-4d56-a1c8-db9b764a46d5 rack2}}

 

 [pr|https://github.com/apache/cassandra-dtest/pull/58]


was (Author: rssvihla):
Looks like the racks were assumed to be in the same order, adding a sort gets 
the tests to pass. I'm not sure why the order is changing sometimes, but in all 
cases the topology had changed and the comparison was just missing that fact:
[pr|https://github.com/apache/cassandra-dtest/pull/58]

> Broken dtest replication_test.py::TestSnitchConfigurationUpdate
> ---
>
> Key: CASSANDRA-15605
> URL: https://issues.apache.org/jira/browse/CASSANDRA-15605
> Project: Cassandra
>  Issue Type: Bug
>  Components: Test/dtest
>Reporter: Sam Tunnicliffe
>Assignee: Ryan Svihla
>Priority: Normal
> Fix For: 4.0-alpha
>
>
> Noticed this failing on a couple of CI runs and repros when running trunk 
> locally and on CircleCI
> 2 or 3 tests are consistently failing:
>  * {{test_rf_expand_gossiping_property_file_snitch}}
>  * {{test_rf_expand_property_file_snitch}}
>  * {{test_move_forwards_between_and_cleanup}}
> [https://circleci.com/workflow-run/f23f13a9-bbdc-4764-8336-109517e137f1]



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

-
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org



[jira] [Created] (CASSANDRA-15635) Script to autogenerate cassandra.yaml

2020-03-11 Thread Dinesh Joshi (Jira)
Dinesh Joshi created CASSANDRA-15635:


 Summary: Script to autogenerate cassandra.yaml
 Key: CASSANDRA-15635
 URL: https://issues.apache.org/jira/browse/CASSANDRA-15635
 Project: Cassandra
  Issue Type: Improvement
  Components: Local/Config, Local/Scripts
Reporter: Dinesh Joshi


It would be useful to have a script that can ask the user a few questions and 
generate a recommended cassandra.yaml based on their answers. This will help 
solve issues like selecting num_tokens. It can also be integrated into OS 
specific packaging tools such as debconf[1]. Rather than just documenting on 
the website, it is best to provide a simple script to auto-generate 
configuration based on common use-cases.

[1] https://wiki.debian.org/debconf



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

-
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org



[jira] [Commented] (CASSANDRA-15605) Broken dtest replication_test.py::TestSnitchConfigurationUpdate

2020-03-11 Thread Ryan Svihla (Jira)


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

Ryan Svihla commented on CASSANDRA-15605:
-

Looks like the racks were assumed to be in the same order, adding a sort gets 
the tests to pass. I'm not sure why the order is changing sometimes, but in all 
cases the topology had changed and the comparison was just missing that fact:
[pr|https://github.com/apache/cassandra-dtest/pull/58]

> Broken dtest replication_test.py::TestSnitchConfigurationUpdate
> ---
>
> Key: CASSANDRA-15605
> URL: https://issues.apache.org/jira/browse/CASSANDRA-15605
> Project: Cassandra
>  Issue Type: Bug
>  Components: Test/dtest
>Reporter: Sam Tunnicliffe
>Assignee: Ryan Svihla
>Priority: Normal
> Fix For: 4.0-alpha
>
>
> Noticed this failing on a couple of CI runs and repros when running trunk 
> locally and on CircleCI
> 2 or 3 tests are consistently failing:
>  * {{test_rf_expand_gossiping_property_file_snitch}}
>  * {{test_rf_expand_property_file_snitch}}
>  * {{test_move_forwards_between_and_cleanup}}
> [https://circleci.com/workflow-run/f23f13a9-bbdc-4764-8336-109517e137f1]



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

-
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org



[jira] [Commented] (CASSANDRA-15564) Refactor repair coordinator so errors are consistent

2020-03-11 Thread Blake Eggleston (Jira)


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

Blake Eggleston commented on CASSANDRA-15564:
-

+1, response/service time thing seems reasonable

> Refactor repair coordinator so errors are consistent
> 
>
> Key: CASSANDRA-15564
> URL: https://issues.apache.org/jira/browse/CASSANDRA-15564
> Project: Cassandra
>  Issue Type: Sub-task
>  Components: Consistency/Repair
>Reporter: David Capwell
>Assignee: David Capwell
>Priority: Normal
>  Labels: pull-request-available
>  Time Spent: 17h
>  Remaining Estimate: 0h
>
> This is to split the change in CASSANDRA-15399 so the refactor is isolated 
> out.
> Currently the repair coordinator special cases the exit cases at each call 
> site; this makes it so that errors can be inconsistent and there are cases 
> where proper complete isn't done (proper notifications, and forgetting to 
> update ActiveRepairService).
> [Circle 
> CI|https://circleci.com/gh/dcapwell/cassandra/tree/bug%2FrepairCoordinatorJmxConsistency]



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

-
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org



[jira] [Commented] (CASSANDRA-15633) Cassandra repair failing

2020-03-11 Thread Brandon Williams (Jira)


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

Brandon Williams commented on CASSANDRA-15633:
--

bq. you need to do as it suggests, and check the server log.

> Cassandra repair failing 
> -
>
> Key: CASSANDRA-15633
> URL: https://issues.apache.org/jira/browse/CASSANDRA-15633
> Project: Cassandra
>  Issue Type: Task
>Reporter: Chirantan
>Priority: Normal
>
> [2020-03-10 18:09:51,533] Repair session 7be9f3c0-631e-11ea-8e47-ef25c77f7899 
> for range [(6301399909211397355,6302095577836606571], 
> (6301291625775958686,6301399909211397355], 
> (6302095577836606571,6313970392023331777], 
> (6297705134651154643,6301291625775958686]] finished (progress: 44%)
> Exception occurred during clean-up. 
> java.lang.reflect.UndeclaredThrowableException
> Cassandra has shutdown.
> error: [2020-03-10 18:09:56,868] JMX connection closed. You should check 
> server log for repair status of keyspace cortex(Subsequent keyspaces are not 
> going to be repaired).
> -- StackTrace --
> java.io.IOException: [2020-03-10 18:09:56,868] JMX connection closed. You 
> should check server log for repair status of keyspace cortex(Subsequent 
> keyspaces are not going to be repaired).
>  at 
> org.apache.cassandra.tools.RepairRunner.handleConnectionFailed(RepairRunner.java:98)
>  at 
> org.apache.cassandra.utils.progress.jmx.JMXNotificationProgressListener.handleNotification(JMXNotificationProgressListener.java:86)
>  at 
> javax.management.NotificationBroadcasterSupport.handleNotification(NotificationBroadcasterSupport.java:286)
>  at 
> javax.management.NotificationBroadcasterSupport$SendNotifJob.run(NotificationBroadcasterSupport.java:363)
>  at 
> javax.management.NotificationBroadcasterSupport$1.execute(NotificationBroadcasterSupport.java:348)
>  at 
> javax.management.NotificationBroadcasterSupport.sendNotification(NotificationBroadcasterSupport.java:259)
>  at 
> javax.management.remote.rmi.RMIConnector.sendNotification(RMIConnector.java:452)
>  at 
> javax.management.remote.rmi.RMIConnector.access$1200(RMIConnector.java:132)
>  at 
> javax.management.remote.rmi.RMIConnector$RMIClientCommunicatorAdmin.gotIOException(RMIConnector.java:1542)
>  at 
> javax.management.remote.rmi.RMIConnector$RMINotifClient.fetchNotifs(RMIConnector.java:1363)
>  at 
> com.sun.jmx.remote.internal.ClientNotifForwarder$NotifFetcher.fetchOneNotif(ClientNotifForwarder.java:667)
>  at 
> com.sun.jmx.remote.internal.ClientNotifForwarder$NotifFetcher.fetchNotifs(ClientNotifForwarder.java:619)
>  at 
> com.sun.jmx.remote.internal.ClientNotifForwarder$NotifFetcher.doRun(ClientNotifForwarder.java:483)
>  at 
> com.sun.jmx.remote.internal.ClientNotifForwarder$NotifFetcher.run(ClientNotifForwarder.java:464)
>  at 
> com.sun.jmx.remote.internal.ClientNotifForwarder$LinearExecutor$1.run(ClientNotifForwarder.java:120)



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

-
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org



[jira] [Updated] (CASSANDRA-15622) Unit tests throw UnknownHostException trying to use `InetAddress.getLocalHost()` instead of `FBUtilities.getLocalAddress()`

2020-03-11 Thread Michael Semb Wever (Jira)


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

Michael Semb Wever updated CASSANDRA-15622:
---
  Fix Version/s: (was: 3.11.x)
 (was: 4.x)
 (was: 3.0.x)
 (was: 2.2.x)
 4.0-alpha
 3.11.7
 3.0.21
 2.2.17
  Since Version: 0.3
Source Control Link: 
https://github.com/apache/cassandra/commit/a8ef9c9ad1495f3eb9dc1ef09c0995926561fd8c
 Resolution: Fixed
 Status: Resolved  (was: Ready to Commit)

Committed as a8ef9c9ad1495f3eb9dc1ef09c0995926561fd8c

> Unit tests throw UnknownHostException trying to use 
> `InetAddress.getLocalHost()` instead of `FBUtilities.getLocalAddress()`
> ---
>
> Key: CASSANDRA-15622
> URL: https://issues.apache.org/jira/browse/CASSANDRA-15622
> Project: Cassandra
>  Issue Type: Bug
>  Components: Test/unit
>Reporter: Michael Semb Wever
>Assignee: Michael Semb Wever
>Priority: Normal
> Fix For: 2.2.17, 3.0.21, 3.11.7, 4.0-alpha
>
>
> Many of the unit tests in Jenkins fail because of the use of 
> {{`InetAddress.getLocalHost()`}} in the test classes.
> The Jenkins agents need a public ipaddress (and a hostname associated to it) 
> so the Jenkins master can connect to them (agents can be hosted externally, 
> by donating third-parties).
> The call to {{`InetAddress.getLocalHost()`}} can resolve to a hostname that 
> can't be looked up.
> Not only can it not be listed in {{`/etc/hosts`}}, but we don't want it to be 
> either (in case of accidental external port opening if the hostname points to 
> the public ipaddress). (Which is also ASF policy on this infrastructure.)
> The unit test code needs to replace these code occurrences with the call to 
> {{`FBUtilities.getLocalAddress()`}}



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

-
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org



[jira] [Updated] (CASSANDRA-15633) Cassandra repair failing

2020-03-11 Thread Brandon Williams (Jira)


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

Brandon Williams updated CASSANDRA-15633:
-
Summary: Cassandra repair failing   (was: Cassandra rebuild failing )

> Cassandra repair failing 
> -
>
> Key: CASSANDRA-15633
> URL: https://issues.apache.org/jira/browse/CASSANDRA-15633
> Project: Cassandra
>  Issue Type: Task
>Reporter: Chirantan
>Priority: Normal
>
> [2020-03-10 18:09:51,533] Repair session 7be9f3c0-631e-11ea-8e47-ef25c77f7899 
> for range [(6301399909211397355,6302095577836606571], 
> (6301291625775958686,6301399909211397355], 
> (6302095577836606571,6313970392023331777], 
> (6297705134651154643,6301291625775958686]] finished (progress: 44%)
> Exception occurred during clean-up. 
> java.lang.reflect.UndeclaredThrowableException
> Cassandra has shutdown.
> error: [2020-03-10 18:09:56,868] JMX connection closed. You should check 
> server log for repair status of keyspace cortex(Subsequent keyspaces are not 
> going to be repaired).
> -- StackTrace --
> java.io.IOException: [2020-03-10 18:09:56,868] JMX connection closed. You 
> should check server log for repair status of keyspace cortex(Subsequent 
> keyspaces are not going to be repaired).
>  at 
> org.apache.cassandra.tools.RepairRunner.handleConnectionFailed(RepairRunner.java:98)
>  at 
> org.apache.cassandra.utils.progress.jmx.JMXNotificationProgressListener.handleNotification(JMXNotificationProgressListener.java:86)
>  at 
> javax.management.NotificationBroadcasterSupport.handleNotification(NotificationBroadcasterSupport.java:286)
>  at 
> javax.management.NotificationBroadcasterSupport$SendNotifJob.run(NotificationBroadcasterSupport.java:363)
>  at 
> javax.management.NotificationBroadcasterSupport$1.execute(NotificationBroadcasterSupport.java:348)
>  at 
> javax.management.NotificationBroadcasterSupport.sendNotification(NotificationBroadcasterSupport.java:259)
>  at 
> javax.management.remote.rmi.RMIConnector.sendNotification(RMIConnector.java:452)
>  at 
> javax.management.remote.rmi.RMIConnector.access$1200(RMIConnector.java:132)
>  at 
> javax.management.remote.rmi.RMIConnector$RMIClientCommunicatorAdmin.gotIOException(RMIConnector.java:1542)
>  at 
> javax.management.remote.rmi.RMIConnector$RMINotifClient.fetchNotifs(RMIConnector.java:1363)
>  at 
> com.sun.jmx.remote.internal.ClientNotifForwarder$NotifFetcher.fetchOneNotif(ClientNotifForwarder.java:667)
>  at 
> com.sun.jmx.remote.internal.ClientNotifForwarder$NotifFetcher.fetchNotifs(ClientNotifForwarder.java:619)
>  at 
> com.sun.jmx.remote.internal.ClientNotifForwarder$NotifFetcher.doRun(ClientNotifForwarder.java:483)
>  at 
> com.sun.jmx.remote.internal.ClientNotifForwarder$NotifFetcher.run(ClientNotifForwarder.java:464)
>  at 
> com.sun.jmx.remote.internal.ClientNotifForwarder$LinearExecutor$1.run(ClientNotifForwarder.java:120)



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

-
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org



[jira] [Updated] (CASSANDRA-14842) SSL connection problems when upgrading to 4.0 when upgrading from 3.0.x

2020-03-11 Thread Brandon Williams (Jira)


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

Brandon Williams updated CASSANDRA-14842:
-
Resolution: Fixed
Status: Resolved  (was: Open)

> SSL connection problems when upgrading to 4.0 when upgrading from 3.0.x
> ---
>
> Key: CASSANDRA-14842
> URL: https://issues.apache.org/jira/browse/CASSANDRA-14842
> Project: Cassandra
>  Issue Type: Bug
>  Components: Messaging/Internode
>Reporter: Tommy Stendahl
>Assignee: Tommy Stendahl
>Priority: Normal
> Fix For: 4.0
>
>
> While testing to upgrade from 3.0.15 to 4.0 the old nodes fails to connect to 
> the 4.0 node, I get this exception on the 4.0 node:
>  
> {noformat}
> 2018-10-22T11:57:44.366+0200 ERROR [MessagingService-NettyInbound-Thread-3-8] 
> InboundHandshakeHandler.java:300 Failed to properly handshake with peer 
> /10.216.193.246:58296. Closing the channel.
> io.netty.handler.codec.DecoderException: javax.net.ssl.SSLHandshakeException: 
> SSLv2Hello is disabled
> at 
> io.netty.handler.codec.ByteToMessageDecoder.callDecode(ByteToMessageDecoder.java:459)
> at 
> io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:265)
> at 
> io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362)
> at 
> io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348)
> at 
> io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340)
> at 
> io.netty.channel.DefaultChannelPipeline$HeadContext.channelRead(DefaultChannelPipeline.java:1434)
> at 
> io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362)
> at 
> io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348)
> at 
> io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:965)
> at 
> io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe.epollInReady(AbstractEpollStreamChannel.java:808)
> at io.netty.channel.epoll.EpollEventLoop.processReady(EpollEventLoop.java:417)
> at io.netty.channel.epoll.EpollEventLoop.run(EpollEventLoop.java:317)
> at 
> io.netty.util.concurrent.SingleThreadEventExecutor$5.run(SingleThreadEventExecutor.java:884)
> at 
> io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30)
> at java.lang.Thread.run(Thread.java:748)
> Caused by: javax.net.ssl.SSLHandshakeException: SSLv2Hello is disabled
> at sun.security.ssl.InputRecord.handleUnknownRecord(InputRecord.java:637)
> at sun.security.ssl.InputRecord.read(InputRecord.java:527)
> at sun.security.ssl.EngineInputRecord.read(EngineInputRecord.java:382)
> at sun.security.ssl.SSLEngineImpl.readRecord(SSLEngineImpl.java:962)
> at sun.security.ssl.SSLEngineImpl.readNetRecord(SSLEngineImpl.java:907)
> at sun.security.ssl.SSLEngineImpl.unwrap(SSLEngineImpl.java:781)
> at javax.net.ssl.SSLEngine.unwrap(SSLEngine.java:624)
> at io.netty.handler.ssl.SslHandler$SslEngineType$3.unwrap(SslHandler.java:294)
> at io.netty.handler.ssl.SslHandler.unwrap(SslHandler.java:1275)
> at io.netty.handler.ssl.SslHandler.decodeJdkCompatible(SslHandler.java:1177)
> at io.netty.handler.ssl.SslHandler.decode(SslHandler.java:1221)
> at 
> io.netty.handler.codec.ByteToMessageDecoder.decodeRemovalReentryProtection(ByteToMessageDecoder.java:489)
> at 
> io.netty.handler.codec.ByteToMessageDecoder.callDecode(ByteToMessageDecoder.java:428)
> ... 14 common frames omitted{noformat}
> In the server encryption options on the 4.0 node I have both "enabled and 
> "enable_legacy_ssl_storage_port" set to true so it should accept incoming 
> connections on the "ssl_storage_port".
>  



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

-
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org



[cassandra] branch cassandra-3.11 updated (8a5b127 -> 9eab263)

2020-03-11 Thread mck
This is an automated email from the ASF dual-hosted git repository.

mck pushed a change to branch cassandra-3.11
in repository https://gitbox.apache.org/repos/asf/cassandra.git.


from 8a5b127  Merge branch 'cassandra-3.0' into cassandra-3.11
 new a8ef9c9  Fix unit tests to listen on FBUtilities.getLocalAddress() 
instead of InetAddress.getLocalHost()
 new 0cd3b68  Merge branch 'cassandra-2.2' into cassandra-3.0
 new 9eab263  Merge branch 'cassandra-3.0' into cassandra-3.11

The 3 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:
 .../org/apache/cassandra/utils/GuidGenerator.java  | 10 +++---
 .../org/apache/cassandra/auth/jmx/JMXAuthTest.java |  1 +
 .../cassandra/concurrent/SEPExecutorTest.java  |  9 +
 .../validation/operations/ThriftCQLTester.java | 10 +++---
 .../cassandra/db/OldFormatDeserializerTest.java|  8 
 .../db/commitlog/CommitLogDescriptorTest.java  |  3 +++
 .../apache/cassandra/gms/ArrivalWindowTest.java| 22 +++---
 .../org/apache/cassandra/gms/GossipDigestTest.java |  9 +
 .../cassandra/io/sstable/SSTableHeaderFixTest.java |  1 +
 .../io/sstable/format/ClientModeSSTableTest.java   |  3 ++-
 .../apache/cassandra/net/MessagingServiceTest.java |  3 ++-
 .../messages/RepairMessageSerializationsTest.java  |  9 +
 .../schema/TupleTypesRepresentationTest.java   |  1 +
 .../apache/cassandra/security/SSLFactoryTest.java  | 11 +--
 .../cassandra/streaming/SessionInfoTest.java   |  8 
 .../cassandra/tools/CompactionStressTest.java  |  7 +++
 .../org/apache/cassandra/tools/ToolsTester.java|  5 +
 .../apache/cassandra/triggers/TriggersTest.java| 13 ++---
 .../org/apache/cassandra/utils/MerkleTreeTest.java |  7 +++
 .../apache/cassandra/utils/TopKSamplerTest.java|  8 
 20 files changed, 108 insertions(+), 40 deletions(-)


-
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org



[cassandra] 01/01: Merge branch 'cassandra-2.2' into cassandra-3.0

2020-03-11 Thread mck
This is an automated email from the ASF dual-hosted git repository.

mck pushed a commit to branch cassandra-3.0
in repository https://gitbox.apache.org/repos/asf/cassandra.git

commit 0cd3b689597604982e6bb0c822ad300549638d17
Merge: c81d7dc a8ef9c9
Author: Mick Semb Wever 
AuthorDate: Wed Mar 11 17:34:20 2020 +0100

Merge branch 'cassandra-2.2' into cassandra-3.0

 src/java/org/apache/cassandra/utils/GuidGenerator.java |  6 ++
 .../cql3/validation/operations/ThriftCQLTester.java| 10 +++---
 test/unit/org/apache/cassandra/gms/ArrivalWindowTest.java  | 14 +++---
 .../unit/org/apache/cassandra/security/SSLFactoryTest.java |  4 ++--
 test/unit/org/apache/cassandra/triggers/TriggersTest.java  | 13 ++---
 5 files changed, 16 insertions(+), 31 deletions(-)

diff --cc 
test/unit/org/apache/cassandra/cql3/validation/operations/ThriftCQLTester.java
index a77e861,7947317..5d4d1a0
--- 
a/test/unit/org/apache/cassandra/cql3/validation/operations/ThriftCQLTester.java
+++ 
b/test/unit/org/apache/cassandra/cql3/validation/operations/ThriftCQLTester.java
@@@ -77,10 -74,10 +73,10 @@@ public class ThriftCQLTester extends CQ
  
  public Cassandra.Client getClient() throws Throwable
  {
- return getClient(InetAddress.getLocalHost().getHostName(), 
thriftPort);
+ return getClient(FBUtilities.getLocalAddress().getHostName(), 
thriftPort);
  }
  
 -  public Cassandra.Client getClient(String hostname, int thriftPort) 
throws Throwable
 +public Cassandra.Client getClient(String hostname, int thriftPort) throws 
Throwable
{
  if (client == null)
  client = new Cassandra.Client(new TBinaryProtocol(new 
TFramedTransportFactory().openTransport(hostname, thriftPort)));
diff --cc test/unit/org/apache/cassandra/triggers/TriggersTest.java
index 67619dc,3cd0a2c..70e040b
--- a/test/unit/org/apache/cassandra/triggers/TriggersTest.java
+++ b/test/unit/org/apache/cassandra/triggers/TriggersTest.java
@@@ -66,10 -61,9 +65,10 @@@ public class TriggersTes
  @Before
  public void setup() throws Exception
  {
 +StorageService.instance.initServer(0);
  if (thriftServer == null || ! thriftServer.isRunning())
  {
- thriftServer = new ThriftServer(InetAddress.getLocalHost(), 9170, 
50);
+ thriftServer = new ThriftServer(FBUtilities.getLocalAddress(), 
9170, 50);
  thriftServer.start();
  }
  


-
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org



[cassandra] 01/01: Merge branch 'cassandra-3.0' into cassandra-3.11

2020-03-11 Thread mck
This is an automated email from the ASF dual-hosted git repository.

mck pushed a commit to branch cassandra-3.11
in repository https://gitbox.apache.org/repos/asf/cassandra.git

commit 9eab2633cc194af7a6b04977c0f148a65a735189
Merge: 8a5b127 0cd3b68
Author: Mick Semb Wever 
AuthorDate: Wed Mar 11 17:35:26 2020 +0100

Merge branch 'cassandra-3.0' into cassandra-3.11

 .../org/apache/cassandra/utils/GuidGenerator.java  | 10 +++---
 .../org/apache/cassandra/auth/jmx/JMXAuthTest.java |  1 +
 .../cassandra/concurrent/SEPExecutorTest.java  |  9 +
 .../validation/operations/ThriftCQLTester.java | 10 +++---
 .../cassandra/db/OldFormatDeserializerTest.java|  8 
 .../db/commitlog/CommitLogDescriptorTest.java  |  3 +++
 .../apache/cassandra/gms/ArrivalWindowTest.java| 22 +++---
 .../org/apache/cassandra/gms/GossipDigestTest.java |  9 +
 .../cassandra/io/sstable/SSTableHeaderFixTest.java |  1 +
 .../io/sstable/format/ClientModeSSTableTest.java   |  3 ++-
 .../apache/cassandra/net/MessagingServiceTest.java |  3 ++-
 .../messages/RepairMessageSerializationsTest.java  |  9 +
 .../schema/TupleTypesRepresentationTest.java   |  1 +
 .../apache/cassandra/security/SSLFactoryTest.java  | 11 +--
 .../cassandra/streaming/SessionInfoTest.java   |  8 
 .../cassandra/tools/CompactionStressTest.java  |  7 +++
 .../org/apache/cassandra/tools/ToolsTester.java|  5 +
 .../apache/cassandra/triggers/TriggersTest.java| 13 ++---
 .../org/apache/cassandra/utils/MerkleTreeTest.java |  7 +++
 .../apache/cassandra/utils/TopKSamplerTest.java|  8 
 20 files changed, 108 insertions(+), 40 deletions(-)

diff --cc test/unit/org/apache/cassandra/auth/jmx/JMXAuthTest.java
index 10c871b,000..08a89df
mode 100644,00..100644
--- a/test/unit/org/apache/cassandra/auth/jmx/JMXAuthTest.java
+++ b/test/unit/org/apache/cassandra/auth/jmx/JMXAuthTest.java
@@@ -1,279 -1,0 +1,280 @@@
 +/*
 + * 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 except in compliance
 + * with the License.  You may obtain a copy of the License at
 + *
 + * http://www.apache.org/licenses/LICENSE-2.0
 + *
 + * Unless required by applicable law or agreed to in writing, software
 + * distributed under the License is distributed on an "AS IS" BASIS,
 + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 + * See the License for the specific language governing permissions and
 + * limitations under the License.
 + */
 +
 +package org.apache.cassandra.auth.jmx;
 +
 +import java.lang.reflect.Field;
 +import java.nio.file.Paths;
 +import java.rmi.server.RMISocketFactory;
 +import java.util.HashMap;
 +import java.util.Map;
 +import javax.management.JMX;
 +import javax.management.MBeanServerConnection;
 +import javax.management.ObjectName;
 +import javax.management.remote.*;
 +import javax.security.auth.Subject;
 +import javax.security.auth.callback.CallbackHandler;
 +import javax.security.auth.login.LoginException;
 +import javax.security.auth.spi.LoginModule;
 +
 +import com.google.common.collect.ImmutableSet;
 +import org.junit.Before;
 +import org.junit.BeforeClass;
 +import org.junit.Test;
 +
 +import org.apache.cassandra.auth.*;
 +import org.apache.cassandra.config.DatabaseDescriptor;
 +import org.apache.cassandra.cql3.CQLTester;
 +import org.apache.cassandra.db.ColumnFamilyStoreMBean;
 +import org.apache.cassandra.utils.JMXServerUtils;
 +
 +import static org.junit.Assert.assertEquals;
 +import static org.junit.Assert.fail;
 +
 +public class JMXAuthTest extends CQLTester
 +{
 +private static JMXConnectorServer jmxServer;
 +private static MBeanServerConnection connection;
 +private RoleResource role;
 +private String tableName;
 +private JMXResource tableMBean;
 +
 +@FunctionalInterface
 +private interface MBeanAction
 +{
 +void execute();
 +}
 +
 +@BeforeClass
 +public static void setupClass() throws Exception
 +{
++DatabaseDescriptor.daemonInitialization();
 +setupAuthorizer();
 +setupJMXServer();
 +}
 +
 +private static void setupAuthorizer()
 +{
 +try
 +{
 +IAuthorizer authorizer = new StubAuthorizer();
 +Field authorizerField = 
DatabaseDescriptor.class.getDeclaredField("authorizer");
 +authorizerField.setAccessible(true);
 +authorizerField.set(null, authorizer);
 +DatabaseDescriptor.setPermissionsValidity(0);
 +}
 +catch (IllegalAccessException | NoSuchFieldException e)
 +{
 +throw new RuntimeException(e);
 +  

[cassandra] branch trunk updated (95224b7 -> 8006ec6)

2020-03-11 Thread mck
This is an automated email from the ASF dual-hosted git repository.

mck pushed a change to branch trunk
in repository https://gitbox.apache.org/repos/asf/cassandra.git.


from 95224b7  Wait for async abort to finish in StreamTransferTaskTest
 new a8ef9c9  Fix unit tests to listen on FBUtilities.getLocalAddress() 
instead of InetAddress.getLocalHost()
 new 0cd3b68  Merge branch 'cassandra-2.2' into cassandra-3.0
 new 9eab263  Merge branch 'cassandra-3.0' into cassandra-3.11
 new 8006ec6  Merge branch 'cassandra-3.11' into trunk

The 4 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:
 src/java/org/apache/cassandra/utils/GuidGenerator.java | 10 +++---
 1 file changed, 3 insertions(+), 7 deletions(-)


-
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org



[cassandra] 01/01: Merge branch 'cassandra-3.11' into trunk

2020-03-11 Thread mck
This is an automated email from the ASF dual-hosted git repository.

mck pushed a commit to branch trunk
in repository https://gitbox.apache.org/repos/asf/cassandra.git

commit 8006ec6f6629e7ea178ad21f80fc70328172bdb2
Merge: 95224b7 9eab263
Author: Mick Semb Wever 
AuthorDate: Wed Mar 11 17:37:15 2020 +0100

Merge branch 'cassandra-3.11' into trunk

 src/java/org/apache/cassandra/utils/GuidGenerator.java | 10 +++---
 1 file changed, 3 insertions(+), 7 deletions(-)

diff --cc src/java/org/apache/cassandra/utils/GuidGenerator.java
index b8c3732,9742353..2b3af01
--- a/src/java/org/apache/cassandra/utils/GuidGenerator.java
+++ b/src/java/org/apache/cassandra/utils/GuidGenerator.java
@@@ -38,12 -36,10 +36,10 @@@ public class GuidGenerato
  mySecureRand = new SecureRandom();
  long secureInitializer = mySecureRand.nextLong();
  myRand = new Random(secureInitializer);
- try
- {
- s_id = InetAddress.getLocalHost().toString();
+ try {
 -s_id = FBUtilities.getLocalAddress().toString();
++s_id = FBUtilities.getLocalAddressAndPort().toString();
  }
- catch (UnknownHostException e)
- {
+ catch (RuntimeException e) {
  throw new AssertionError(e);
  }
  }


-
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org



[cassandra] branch cassandra-2.2 updated: Fix unit tests to listen on FBUtilities.getLocalAddress() instead of InetAddress.getLocalHost()

2020-03-11 Thread mck
This is an automated email from the ASF dual-hosted git repository.

mck pushed a commit to branch cassandra-2.2
in repository https://gitbox.apache.org/repos/asf/cassandra.git


The following commit(s) were added to refs/heads/cassandra-2.2 by this push:
 new a8ef9c9  Fix unit tests to listen on FBUtilities.getLocalAddress() 
instead of InetAddress.getLocalHost()
a8ef9c9 is described below

commit a8ef9c9ad1495f3eb9dc1ef09c0995926561fd8c
Author: Mick Semb Wever 
AuthorDate: Wed Mar 4 23:05:11 2020 +0100

Fix unit tests to listen on FBUtilities.getLocalAddress() instead of 
InetAddress.getLocalHost()

 patch by Mick Semb Wever; reviewed by Benjamin Lerer for CASSANDRA-15622
---
 src/java/org/apache/cassandra/utils/GuidGenerator.java |  6 ++
 .../cql3/validation/operations/ThriftCQLTester.java| 10 +++---
 test/unit/org/apache/cassandra/gms/ArrivalWindowTest.java  | 14 +++---
 .../unit/org/apache/cassandra/security/SSLFactoryTest.java |  4 ++--
 test/unit/org/apache/cassandra/triggers/TriggersTest.java  | 14 +++---
 5 files changed, 17 insertions(+), 31 deletions(-)

diff --git a/src/java/org/apache/cassandra/utils/GuidGenerator.java 
b/src/java/org/apache/cassandra/utils/GuidGenerator.java
index 33f7330..09c7f3e 100644
--- a/src/java/org/apache/cassandra/utils/GuidGenerator.java
+++ b/src/java/org/apache/cassandra/utils/GuidGenerator.java
@@ -17,8 +17,6 @@
  */
 package org.apache.cassandra.utils;
 
-import java.net.InetAddress;
-import java.net.UnknownHostException;
 import java.nio.ByteBuffer;
 import java.security.SecureRandom;
 import java.util.Random;
@@ -36,9 +34,9 @@ public class GuidGenerator {
 long secureInitializer = mySecureRand.nextLong();
 myRand = new Random(secureInitializer);
 try {
-s_id = InetAddress.getLocalHost().toString();
+s_id = FBUtilities.getLocalAddress().toString();
 }
-catch (UnknownHostException e) {
+catch (RuntimeException e) {
 throw new AssertionError(e);
 }
 }
diff --git 
a/test/unit/org/apache/cassandra/cql3/validation/operations/ThriftCQLTester.java
 
b/test/unit/org/apache/cassandra/cql3/validation/operations/ThriftCQLTester.java
index 13d6901..7947317 100644
--- 
a/test/unit/org/apache/cassandra/cql3/validation/operations/ThriftCQLTester.java
+++ 
b/test/unit/org/apache/cassandra/cql3/validation/operations/ThriftCQLTester.java
@@ -19,9 +19,7 @@
 package org.apache.cassandra.cql3.validation.operations;
 
 import java.io.IOException;
-import java.net.InetAddress;
 import java.net.ServerSocket;
-import java.net.UnknownHostException;
 
 import org.junit.AfterClass;
 import org.junit.BeforeClass;
@@ -29,12 +27,10 @@ import org.junit.BeforeClass;
 import org.apache.cassandra.config.DatabaseDescriptor;
 import org.apache.cassandra.cql3.*;
 import org.apache.cassandra.dht.ByteOrderedPartitioner;
-import org.apache.cassandra.dht.Murmur3Partitioner;
 import org.apache.cassandra.service.*;
 import org.apache.cassandra.thrift.*;
+import org.apache.cassandra.utils.FBUtilities;
 import org.apache.thrift.protocol.TBinaryProtocol;
-import org.apache.thrift.transport.TFramedTransport;
-import org.apache.thrift.transport.TSocket;
 
 public class ThriftCQLTester extends CQLTester
 {
@@ -62,7 +58,7 @@ public class ThriftCQLTester extends CQLTester
 
 if (thriftServer == null || ! thriftServer.isRunning())
 {
-thriftServer = new ThriftServer(InetAddress.getLocalHost(), 
thriftPort, 50);
+thriftServer = new ThriftServer(FBUtilities.getLocalAddress(), 
thriftPort, 50);
 thriftServer.start();
 }
 }
@@ -78,7 +74,7 @@ public class ThriftCQLTester extends CQLTester
 
 public Cassandra.Client getClient() throws Throwable
 {
-return getClient(InetAddress.getLocalHost().getHostName(), thriftPort);
+return getClient(FBUtilities.getLocalAddress().getHostName(), 
thriftPort);
 }
 
public Cassandra.Client getClient(String hostname, int thriftPort) 
throws Throwable
diff --git a/test/unit/org/apache/cassandra/gms/ArrivalWindowTest.java 
b/test/unit/org/apache/cassandra/gms/ArrivalWindowTest.java
index 511511b..459956b 100644
--- a/test/unit/org/apache/cassandra/gms/ArrivalWindowTest.java
+++ b/test/unit/org/apache/cassandra/gms/ArrivalWindowTest.java
@@ -25,9 +25,9 @@ import static org.junit.Assert.*;
 
 import org.junit.Test;
 
-import java.lang.RuntimeException;
 import java.net.InetAddress;
-import java.net.UnknownHostException;
+
+import org.apache.cassandra.utils.FBUtilities;
 
 public class ArrivalWindowTest
 {
@@ -36,15 +36,7 @@ public class ArrivalWindowTest
 {
 final ArrivalWindow windowWithNano = new ArrivalWindow(4);
 final long toNano = 100L;
-InetAddress ep;
-try
-{
-ep = InetAddress.getLocalHost();
-}
-catch (UnknownHostException e)
-{
-throw new 

[cassandra] branch cassandra-3.0 updated (c81d7dc -> 0cd3b68)

2020-03-11 Thread mck
This is an automated email from the ASF dual-hosted git repository.

mck pushed a change to branch cassandra-3.0
in repository https://gitbox.apache.org/repos/asf/cassandra.git.


from c81d7dc  Use result size for built index test
 new a8ef9c9  Fix unit tests to listen on FBUtilities.getLocalAddress() 
instead of InetAddress.getLocalHost()
 new 0cd3b68  Merge branch 'cassandra-2.2' into cassandra-3.0

The 2 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:
 src/java/org/apache/cassandra/utils/GuidGenerator.java |  6 ++
 .../cql3/validation/operations/ThriftCQLTester.java| 10 +++---
 test/unit/org/apache/cassandra/gms/ArrivalWindowTest.java  | 14 +++---
 .../unit/org/apache/cassandra/security/SSLFactoryTest.java |  4 ++--
 test/unit/org/apache/cassandra/triggers/TriggersTest.java  | 13 ++---
 5 files changed, 16 insertions(+), 31 deletions(-)


-
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org



[jira] [Commented] (CASSANDRA-15633) Cassandra rebuild failing

2020-03-11 Thread Chirantan (Jira)


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

Chirantan commented on CASSANDRA-15633:
---

sorry for type issue is with repair 

when i try to bring up node it came up 

but nodetool command is not working  that node 

getting below message 

nodetool: Failed to connect to '127.0.0.1:7199' - FailedLoginException: 'Cannot 
login as server authentication setup is not yet completed'.

for other node its showing as down asd in describe cluster that node is showing 
as unavailable 

and for other node 

> Cassandra rebuild failing 
> --
>
> Key: CASSANDRA-15633
> URL: https://issues.apache.org/jira/browse/CASSANDRA-15633
> Project: Cassandra
>  Issue Type: Task
>Reporter: Chirantan
>Priority: Normal
>
> [2020-03-10 18:09:51,533] Repair session 7be9f3c0-631e-11ea-8e47-ef25c77f7899 
> for range [(6301399909211397355,6302095577836606571], 
> (6301291625775958686,6301399909211397355], 
> (6302095577836606571,6313970392023331777], 
> (6297705134651154643,6301291625775958686]] finished (progress: 44%)
> Exception occurred during clean-up. 
> java.lang.reflect.UndeclaredThrowableException
> Cassandra has shutdown.
> error: [2020-03-10 18:09:56,868] JMX connection closed. You should check 
> server log for repair status of keyspace cortex(Subsequent keyspaces are not 
> going to be repaired).
> -- StackTrace --
> java.io.IOException: [2020-03-10 18:09:56,868] JMX connection closed. You 
> should check server log for repair status of keyspace cortex(Subsequent 
> keyspaces are not going to be repaired).
>  at 
> org.apache.cassandra.tools.RepairRunner.handleConnectionFailed(RepairRunner.java:98)
>  at 
> org.apache.cassandra.utils.progress.jmx.JMXNotificationProgressListener.handleNotification(JMXNotificationProgressListener.java:86)
>  at 
> javax.management.NotificationBroadcasterSupport.handleNotification(NotificationBroadcasterSupport.java:286)
>  at 
> javax.management.NotificationBroadcasterSupport$SendNotifJob.run(NotificationBroadcasterSupport.java:363)
>  at 
> javax.management.NotificationBroadcasterSupport$1.execute(NotificationBroadcasterSupport.java:348)
>  at 
> javax.management.NotificationBroadcasterSupport.sendNotification(NotificationBroadcasterSupport.java:259)
>  at 
> javax.management.remote.rmi.RMIConnector.sendNotification(RMIConnector.java:452)
>  at 
> javax.management.remote.rmi.RMIConnector.access$1200(RMIConnector.java:132)
>  at 
> javax.management.remote.rmi.RMIConnector$RMIClientCommunicatorAdmin.gotIOException(RMIConnector.java:1542)
>  at 
> javax.management.remote.rmi.RMIConnector$RMINotifClient.fetchNotifs(RMIConnector.java:1363)
>  at 
> com.sun.jmx.remote.internal.ClientNotifForwarder$NotifFetcher.fetchOneNotif(ClientNotifForwarder.java:667)
>  at 
> com.sun.jmx.remote.internal.ClientNotifForwarder$NotifFetcher.fetchNotifs(ClientNotifForwarder.java:619)
>  at 
> com.sun.jmx.remote.internal.ClientNotifForwarder$NotifFetcher.doRun(ClientNotifForwarder.java:483)
>  at 
> com.sun.jmx.remote.internal.ClientNotifForwarder$NotifFetcher.run(ClientNotifForwarder.java:464)
>  at 
> com.sun.jmx.remote.internal.ClientNotifForwarder$LinearExecutor$1.run(ClientNotifForwarder.java:120)



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

-
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org



[jira] [Updated] (CASSANDRA-15622) Unit tests throw UnknownHostException trying to use `InetAddress.getLocalHost()` instead of `FBUtilities.getLocalAddress()`

2020-03-11 Thread Michael Semb Wever (Jira)


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

Michael Semb Wever updated CASSANDRA-15622:
---
Description: 
Many of the unit tests in Jenkins fail because of the use of 
{{`InetAddress.getLocalHost()`}} in the test classes.

The Jenkins agents need a public ipaddress (and a hostname associated to it) so 
the Jenkins master can connect to them (agents can be hosted externally, by 
donating third-parties).

The call to {{`InetAddress.getLocalHost()`}} can resolve to a hostname that 
can't be looked up.
Not only can it not be listed in {{`/etc/hosts`}}, but we don't want it to be 
either (in case of accidental external port opening if the hostname points to 
the public ipaddress). (Which is also ASF policy on this infrastructure.)

The unit test code needs to replace these code occurrences with the call to 
{{`FBUtilities.getLocalAddress()`}}

  was:
Many of the unit tests in Jenkins fail because of the use of 
{{`InetAddress.getLocalHost()`}} in the test classes.

The Jenkins agents need a public ipaddress (and a hostname associated to it) so 
the Jenkins master can connect to them (agents can be hosted externally, by 
donating third-parties).

The call to {{`InetAddress.getLocalHost()`}} can resolve to a hostname that 
can't be looked up.
Not only it likely not listed in {{`/etc/hosts`}}, but we don't want it to be 
either (in case of accidental external port opening if the hostname points to 
the public ipaddress). (This is also ASF policy on this infrastructure.)

The unit test code needs to replace these code occurrences with the call to 
{{`FBUtilities.getLocalAddress()`}}


> Unit tests throw UnknownHostException trying to use 
> `InetAddress.getLocalHost()` instead of `FBUtilities.getLocalAddress()`
> ---
>
> Key: CASSANDRA-15622
> URL: https://issues.apache.org/jira/browse/CASSANDRA-15622
> Project: Cassandra
>  Issue Type: Bug
>  Components: Test/unit
>Reporter: Michael Semb Wever
>Assignee: Michael Semb Wever
>Priority: Normal
> Fix For: 2.2.x, 3.0.x, 3.11.x, 4.x
>
>
> Many of the unit tests in Jenkins fail because of the use of 
> {{`InetAddress.getLocalHost()`}} in the test classes.
> The Jenkins agents need a public ipaddress (and a hostname associated to it) 
> so the Jenkins master can connect to them (agents can be hosted externally, 
> by donating third-parties).
> The call to {{`InetAddress.getLocalHost()`}} can resolve to a hostname that 
> can't be looked up.
> Not only can it not be listed in {{`/etc/hosts`}}, but we don't want it to be 
> either (in case of accidental external port opening if the hostname points to 
> the public ipaddress). (Which is also ASF policy on this infrastructure.)
> The unit test code needs to replace these code occurrences with the call to 
> {{`FBUtilities.getLocalAddress()`}}



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

-
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org



[jira] [Updated] (CASSANDRA-15634) one node up but its showing as down is showing as down for other node

2020-03-11 Thread Brandon Williams (Jira)


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

Brandon Williams updated CASSANDRA-15634:
-
Resolution: Invalid
Status: Resolved  (was: Triage Needed)

Jira is not a support system, the best way to get help with your issue is to 
email the user list, or join the #cassandra slack channel. 
http://cassandra.apache.org/community/

> one node up but its showing as down is showing as down  for other node 
> ---
>
> Key: CASSANDRA-15634
> URL: https://issues.apache.org/jira/browse/CASSANDRA-15634
> Project: Cassandra
>  Issue Type: Task
>Reporter: Chirantan
>Priority: Normal
>
>  
> one node up but its showing as down is showing as down for other node
> and in describecluster its showing as unreachable 
>  



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

-
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org



[jira] [Created] (CASSANDRA-15634) one node up but its showing as down is showing as down for other node

2020-03-11 Thread Chirantan (Jira)
Chirantan created CASSANDRA-15634:
-

 Summary: one node up but its showing as down is showing as down  
for other node 
 Key: CASSANDRA-15634
 URL: https://issues.apache.org/jira/browse/CASSANDRA-15634
 Project: Cassandra
  Issue Type: Task
Reporter: Chirantan


 

one node up but its showing as down is showing as down for other node

and in describecluster its showing as unreachable 

 



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

-
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org



[jira] [Comment Edited] (CASSANDRA-15633) Cassandra rebuild failing

2020-03-11 Thread Brandon Williams (Jira)


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

Brandon Williams edited comment on CASSANDRA-15633 at 3/11/20, 4:03 PM:


Your description is from repair, not rebuild.  You only have the (jmx) client 
side error, you need to do as it suggests, and check the server log.


was (Author: brandon.williams):
Your description is from repair, not rebuild.  You only have the (jmx) client 
side error, you need to do as it suggest, and check the server log.

> Cassandra rebuild failing 
> --
>
> Key: CASSANDRA-15633
> URL: https://issues.apache.org/jira/browse/CASSANDRA-15633
> Project: Cassandra
>  Issue Type: Task
>Reporter: Chirantan
>Priority: Normal
>
> [2020-03-10 18:09:51,533] Repair session 7be9f3c0-631e-11ea-8e47-ef25c77f7899 
> for range [(6301399909211397355,6302095577836606571], 
> (6301291625775958686,6301399909211397355], 
> (6302095577836606571,6313970392023331777], 
> (6297705134651154643,6301291625775958686]] finished (progress: 44%)
> Exception occurred during clean-up. 
> java.lang.reflect.UndeclaredThrowableException
> Cassandra has shutdown.
> error: [2020-03-10 18:09:56,868] JMX connection closed. You should check 
> server log for repair status of keyspace cortex(Subsequent keyspaces are not 
> going to be repaired).
> -- StackTrace --
> java.io.IOException: [2020-03-10 18:09:56,868] JMX connection closed. You 
> should check server log for repair status of keyspace cortex(Subsequent 
> keyspaces are not going to be repaired).
>  at 
> org.apache.cassandra.tools.RepairRunner.handleConnectionFailed(RepairRunner.java:98)
>  at 
> org.apache.cassandra.utils.progress.jmx.JMXNotificationProgressListener.handleNotification(JMXNotificationProgressListener.java:86)
>  at 
> javax.management.NotificationBroadcasterSupport.handleNotification(NotificationBroadcasterSupport.java:286)
>  at 
> javax.management.NotificationBroadcasterSupport$SendNotifJob.run(NotificationBroadcasterSupport.java:363)
>  at 
> javax.management.NotificationBroadcasterSupport$1.execute(NotificationBroadcasterSupport.java:348)
>  at 
> javax.management.NotificationBroadcasterSupport.sendNotification(NotificationBroadcasterSupport.java:259)
>  at 
> javax.management.remote.rmi.RMIConnector.sendNotification(RMIConnector.java:452)
>  at 
> javax.management.remote.rmi.RMIConnector.access$1200(RMIConnector.java:132)
>  at 
> javax.management.remote.rmi.RMIConnector$RMIClientCommunicatorAdmin.gotIOException(RMIConnector.java:1542)
>  at 
> javax.management.remote.rmi.RMIConnector$RMINotifClient.fetchNotifs(RMIConnector.java:1363)
>  at 
> com.sun.jmx.remote.internal.ClientNotifForwarder$NotifFetcher.fetchOneNotif(ClientNotifForwarder.java:667)
>  at 
> com.sun.jmx.remote.internal.ClientNotifForwarder$NotifFetcher.fetchNotifs(ClientNotifForwarder.java:619)
>  at 
> com.sun.jmx.remote.internal.ClientNotifForwarder$NotifFetcher.doRun(ClientNotifForwarder.java:483)
>  at 
> com.sun.jmx.remote.internal.ClientNotifForwarder$NotifFetcher.run(ClientNotifForwarder.java:464)
>  at 
> com.sun.jmx.remote.internal.ClientNotifForwarder$LinearExecutor$1.run(ClientNotifForwarder.java:120)



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

-
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org



[jira] [Commented] (CASSANDRA-15633) Cassandra rebuild failing

2020-03-11 Thread Brandon Williams (Jira)


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

Brandon Williams commented on CASSANDRA-15633:
--

Your description is from repair, not build.  You only have the (jmx) client 
side error, you need to do as it suggest, and check the server log.

> Cassandra rebuild failing 
> --
>
> Key: CASSANDRA-15633
> URL: https://issues.apache.org/jira/browse/CASSANDRA-15633
> Project: Cassandra
>  Issue Type: Task
>Reporter: Chirantan
>Priority: Normal
>
> [2020-03-10 18:09:51,533] Repair session 7be9f3c0-631e-11ea-8e47-ef25c77f7899 
> for range [(6301399909211397355,6302095577836606571], 
> (6301291625775958686,6301399909211397355], 
> (6302095577836606571,6313970392023331777], 
> (6297705134651154643,6301291625775958686]] finished (progress: 44%)
> Exception occurred during clean-up. 
> java.lang.reflect.UndeclaredThrowableException
> Cassandra has shutdown.
> error: [2020-03-10 18:09:56,868] JMX connection closed. You should check 
> server log for repair status of keyspace cortex(Subsequent keyspaces are not 
> going to be repaired).
> -- StackTrace --
> java.io.IOException: [2020-03-10 18:09:56,868] JMX connection closed. You 
> should check server log for repair status of keyspace cortex(Subsequent 
> keyspaces are not going to be repaired).
>  at 
> org.apache.cassandra.tools.RepairRunner.handleConnectionFailed(RepairRunner.java:98)
>  at 
> org.apache.cassandra.utils.progress.jmx.JMXNotificationProgressListener.handleNotification(JMXNotificationProgressListener.java:86)
>  at 
> javax.management.NotificationBroadcasterSupport.handleNotification(NotificationBroadcasterSupport.java:286)
>  at 
> javax.management.NotificationBroadcasterSupport$SendNotifJob.run(NotificationBroadcasterSupport.java:363)
>  at 
> javax.management.NotificationBroadcasterSupport$1.execute(NotificationBroadcasterSupport.java:348)
>  at 
> javax.management.NotificationBroadcasterSupport.sendNotification(NotificationBroadcasterSupport.java:259)
>  at 
> javax.management.remote.rmi.RMIConnector.sendNotification(RMIConnector.java:452)
>  at 
> javax.management.remote.rmi.RMIConnector.access$1200(RMIConnector.java:132)
>  at 
> javax.management.remote.rmi.RMIConnector$RMIClientCommunicatorAdmin.gotIOException(RMIConnector.java:1542)
>  at 
> javax.management.remote.rmi.RMIConnector$RMINotifClient.fetchNotifs(RMIConnector.java:1363)
>  at 
> com.sun.jmx.remote.internal.ClientNotifForwarder$NotifFetcher.fetchOneNotif(ClientNotifForwarder.java:667)
>  at 
> com.sun.jmx.remote.internal.ClientNotifForwarder$NotifFetcher.fetchNotifs(ClientNotifForwarder.java:619)
>  at 
> com.sun.jmx.remote.internal.ClientNotifForwarder$NotifFetcher.doRun(ClientNotifForwarder.java:483)
>  at 
> com.sun.jmx.remote.internal.ClientNotifForwarder$NotifFetcher.run(ClientNotifForwarder.java:464)
>  at 
> com.sun.jmx.remote.internal.ClientNotifForwarder$LinearExecutor$1.run(ClientNotifForwarder.java:120)



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

-
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org



[jira] [Comment Edited] (CASSANDRA-15633) Cassandra rebuild failing

2020-03-11 Thread Brandon Williams (Jira)


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

Brandon Williams edited comment on CASSANDRA-15633 at 3/11/20, 4:03 PM:


Your description is from repair, not rebuild.  You only have the (jmx) client 
side error, you need to do as it suggest, and check the server log.


was (Author: brandon.williams):
Your description is from repair, not build.  You only have the (jmx) client 
side error, you need to do as it suggest, and check the server log.

> Cassandra rebuild failing 
> --
>
> Key: CASSANDRA-15633
> URL: https://issues.apache.org/jira/browse/CASSANDRA-15633
> Project: Cassandra
>  Issue Type: Task
>Reporter: Chirantan
>Priority: Normal
>
> [2020-03-10 18:09:51,533] Repair session 7be9f3c0-631e-11ea-8e47-ef25c77f7899 
> for range [(6301399909211397355,6302095577836606571], 
> (6301291625775958686,6301399909211397355], 
> (6302095577836606571,6313970392023331777], 
> (6297705134651154643,6301291625775958686]] finished (progress: 44%)
> Exception occurred during clean-up. 
> java.lang.reflect.UndeclaredThrowableException
> Cassandra has shutdown.
> error: [2020-03-10 18:09:56,868] JMX connection closed. You should check 
> server log for repair status of keyspace cortex(Subsequent keyspaces are not 
> going to be repaired).
> -- StackTrace --
> java.io.IOException: [2020-03-10 18:09:56,868] JMX connection closed. You 
> should check server log for repair status of keyspace cortex(Subsequent 
> keyspaces are not going to be repaired).
>  at 
> org.apache.cassandra.tools.RepairRunner.handleConnectionFailed(RepairRunner.java:98)
>  at 
> org.apache.cassandra.utils.progress.jmx.JMXNotificationProgressListener.handleNotification(JMXNotificationProgressListener.java:86)
>  at 
> javax.management.NotificationBroadcasterSupport.handleNotification(NotificationBroadcasterSupport.java:286)
>  at 
> javax.management.NotificationBroadcasterSupport$SendNotifJob.run(NotificationBroadcasterSupport.java:363)
>  at 
> javax.management.NotificationBroadcasterSupport$1.execute(NotificationBroadcasterSupport.java:348)
>  at 
> javax.management.NotificationBroadcasterSupport.sendNotification(NotificationBroadcasterSupport.java:259)
>  at 
> javax.management.remote.rmi.RMIConnector.sendNotification(RMIConnector.java:452)
>  at 
> javax.management.remote.rmi.RMIConnector.access$1200(RMIConnector.java:132)
>  at 
> javax.management.remote.rmi.RMIConnector$RMIClientCommunicatorAdmin.gotIOException(RMIConnector.java:1542)
>  at 
> javax.management.remote.rmi.RMIConnector$RMINotifClient.fetchNotifs(RMIConnector.java:1363)
>  at 
> com.sun.jmx.remote.internal.ClientNotifForwarder$NotifFetcher.fetchOneNotif(ClientNotifForwarder.java:667)
>  at 
> com.sun.jmx.remote.internal.ClientNotifForwarder$NotifFetcher.fetchNotifs(ClientNotifForwarder.java:619)
>  at 
> com.sun.jmx.remote.internal.ClientNotifForwarder$NotifFetcher.doRun(ClientNotifForwarder.java:483)
>  at 
> com.sun.jmx.remote.internal.ClientNotifForwarder$NotifFetcher.run(ClientNotifForwarder.java:464)
>  at 
> com.sun.jmx.remote.internal.ClientNotifForwarder$LinearExecutor$1.run(ClientNotifForwarder.java:120)



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

-
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org



[jira] [Created] (CASSANDRA-15633) Cassandra rebuild failing

2020-03-11 Thread Chirantan (Jira)
Chirantan created CASSANDRA-15633:
-

 Summary: Cassandra rebuild failing 
 Key: CASSANDRA-15633
 URL: https://issues.apache.org/jira/browse/CASSANDRA-15633
 Project: Cassandra
  Issue Type: Task
Reporter: Chirantan


[2020-03-10 18:09:51,533] Repair session 7be9f3c0-631e-11ea-8e47-ef25c77f7899 
for range [(6301399909211397355,6302095577836606571], 
(6301291625775958686,6301399909211397355], 
(6302095577836606571,6313970392023331777], 
(6297705134651154643,6301291625775958686]] finished (progress: 44%)
Exception occurred during clean-up. 
java.lang.reflect.UndeclaredThrowableException
Cassandra has shutdown.
error: [2020-03-10 18:09:56,868] JMX connection closed. You should check server 
log for repair status of keyspace cortex(Subsequent keyspaces are not going to 
be repaired).
-- StackTrace --
java.io.IOException: [2020-03-10 18:09:56,868] JMX connection closed. You 
should check server log for repair status of keyspace cortex(Subsequent 
keyspaces are not going to be repaired).
 at 
org.apache.cassandra.tools.RepairRunner.handleConnectionFailed(RepairRunner.java:98)
 at 
org.apache.cassandra.utils.progress.jmx.JMXNotificationProgressListener.handleNotification(JMXNotificationProgressListener.java:86)
 at 
javax.management.NotificationBroadcasterSupport.handleNotification(NotificationBroadcasterSupport.java:286)
 at 
javax.management.NotificationBroadcasterSupport$SendNotifJob.run(NotificationBroadcasterSupport.java:363)
 at 
javax.management.NotificationBroadcasterSupport$1.execute(NotificationBroadcasterSupport.java:348)
 at 
javax.management.NotificationBroadcasterSupport.sendNotification(NotificationBroadcasterSupport.java:259)
 at 
javax.management.remote.rmi.RMIConnector.sendNotification(RMIConnector.java:452)
 at javax.management.remote.rmi.RMIConnector.access$1200(RMIConnector.java:132)
 at 
javax.management.remote.rmi.RMIConnector$RMIClientCommunicatorAdmin.gotIOException(RMIConnector.java:1542)
 at 
javax.management.remote.rmi.RMIConnector$RMINotifClient.fetchNotifs(RMIConnector.java:1363)
 at 
com.sun.jmx.remote.internal.ClientNotifForwarder$NotifFetcher.fetchOneNotif(ClientNotifForwarder.java:667)
 at 
com.sun.jmx.remote.internal.ClientNotifForwarder$NotifFetcher.fetchNotifs(ClientNotifForwarder.java:619)
 at 
com.sun.jmx.remote.internal.ClientNotifForwarder$NotifFetcher.doRun(ClientNotifForwarder.java:483)
 at 
com.sun.jmx.remote.internal.ClientNotifForwarder$NotifFetcher.run(ClientNotifForwarder.java:464)
 at 
com.sun.jmx.remote.internal.ClientNotifForwarder$LinearExecutor$1.run(ClientNotifForwarder.java:120)



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

-
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org



[jira] [Commented] (CASSANDRA-15614) Flakey test - TestBootstrap.test_resumable_bootstrap

2020-03-11 Thread Ekaterina Dimitrova (Jira)


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

Ekaterina Dimitrova commented on CASSANDRA-15614:
-

As this was closed I created ticket for improvement CASSANDRA-15632

> Flakey test - TestBootstrap.test_resumable_bootstrap 
> -
>
> Key: CASSANDRA-15614
> URL: https://issues.apache.org/jira/browse/CASSANDRA-15614
> Project: Cassandra
>  Issue Type: Bug
>  Components: Test/dtest
>Reporter: Ekaterina Dimitrova
>Assignee: Ekaterina Dimitrova
>Priority: Normal
> Fix For: 4.0-alpha
>
> Attachments: test_resumable_bootstrap-CASSANDRA-15614.txt
>
>
> Fails 2 out of 10 times on Mac/Java 8
> {noformat}
> ==
>  FAILURES 
> ==
> *___
>  TestBootstrap.test_resumable_bootstrap 
> ___*
>  
> self = 
>  
>     *@since('2.2')*
>     *def test_resumable_bootstrap(self):*
>         *"""*
>             *Test resuming bootstrap after data streaming failure*
>             *"""*
>         *cluster = self.cluster*
>         *cluster.populate(2)*
>     **    
>         *node1 = cluster.nodes['node1']*
>         *# set up byteman*
>         *node1.byteman_port = '8100'*
>         *node1.import_config_files()*
>     **    
>         *cluster.start(wait_other_notice=True)*
>         *# kill stream to node3 in the middle of streaming to let it fail*
>         *if cluster.version() < '4.0':*
>             *node1.byteman_submit([self.byteman_submit_path_pre_4_0])*
>         *else:*
>             *node1.byteman_submit([self.byteman_submit_path_4_0])*
>         *node1.stress(['write', 'n=1K', 'no-warmup', 'cl=TWO', '-schema', 
> 'replication(factor=2)', '-rate', 'threads=50'])*
>         *cluster.flush()*
>     **    
>         *# start bootstrapping node3 and wait for streaming*
>         *node3 = new_node(cluster)*
>         *node3.start(wait_other_notice=False)*
>     **    
>         *# let streaming fail as we expect*
> *>       node3.watch_log_for('Some data streaming failed')*
>  
> *bootstrap_test.py*:365: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ _ 
>  
> self = , exprs = 'Some data streaming 
> failed', from_mark = None, timeout = 600, process = None, verbose = False, 
> filename = 'system.log'
>  
>     *def watch_log_for(self, exprs, from_mark=None, timeout=600, 
> process=None, verbose=False, filename='system.log'):*
>         *"""*
>             *Watch the log until one or more (regular) expression are found.*
>             *This methods when all the expressions have been found or the 
> method*
>             *timeouts (a TimeoutError is then raised). On successful 
> completion,*
>             *a list of pair (line matched, match object) is returned.*
>             *"""*
>         *start = time.time()*
>         *tofind = [exprs] if isinstance(exprs, string_types) else exprs*
>         *tofind = [re.compile(e) for e in tofind]*
>         *matchings = []*
>         *reads = ""*
>         *if len(tofind) == 0:*
>             *return None*
>     **    
>         *log_file = os.path.join(self.get_path(), 'logs', filename)*
>         *output_read = False*
>         *while not os.path.exists(log_file):*
>             *time.sleep(.5)*
>             *if start + timeout < time.time():*
>                 *raise TimeoutError(time.strftime("%d %b %Y %H:%M:%S", 
> time.gmtime()) + " [" + self.name + "] Timed out waiting for {} to be 
> created.".format(log_file))*
>             *if process and not output_read:*
>                 *process.poll()*
>                 *if process.returncode is not None:*
>                     *self.print_process_output(self.name, process, verbose)*
>                     *output_read = True*
>                     *if process.returncode != 0:*
>                         *raise RuntimeError()  # Shouldn't reuse RuntimeError 
> but I'm lazy*
>     **    
>         *with open(log_file) as f:*
>             *if from_mark:*
>                 *f.seek(from_mark)*
>     **    
>             *while True:*
>                 *# First, if we have a process to check, then check it.*
>                 *# Skip on Windows - stdout/stderr is cassandra.bat*
>                 *if not 

[jira] [Created] (CASSANDRA-15632) Create a deterministic in-jvm equivalent of dtest TestBootstrap.test_resumable_bootstrap

2020-03-11 Thread Ekaterina Dimitrova (Jira)
Ekaterina Dimitrova created CASSANDRA-15632:
---

 Summary: Create a deterministic in-jvm equivalent of dtest 
TestBootstrap.test_resumable_bootstrap
 Key: CASSANDRA-15632
 URL: https://issues.apache.org/jira/browse/CASSANDRA-15632
 Project: Cassandra
  Issue Type: Improvement
Reporter: Ekaterina Dimitrova


This ticket is a followup on CASSANDRA-15614 - fix flakey test 
TestBootstrap.test_resumable_bootstrap.

The dtest is not really fully deterministic.  In-jvm test might give a way for 
better control on the streaming failures.

 



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

-
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org



[jira] [Updated] (CASSANDRA-14633) Update trunk's netty to 4.1.28

2020-03-11 Thread Dmitry Konstantinov (Jira)


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

Dmitry Konstantinov updated CASSANDRA-14633:

Summary: Update trunk's netty to 4.1.28  (was: Update trunk's netty to 
4.1.128)

> Update trunk's netty to 4.1.28
> --
>
> Key: CASSANDRA-14633
> URL: https://issues.apache.org/jira/browse/CASSANDRA-14633
> Project: Cassandra
>  Issue Type: Improvement
>  Components: Legacy/Streaming and Messaging
>Reporter: Jason Brown
>Assignee: Jason Brown
>Priority: Low
> Fix For: 4.0
>
>
> Upgrade the version of netty in trunk (4.0) to 4.1.28. We currently have 
> 4.1.14, and there's been lots of bug fixes since we last updated this for 
> trunk.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

-
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org



[jira] [Commented] (CASSANDRA-15550) Fix flaky test org.apache.cassandra.streaming.StreamTransferTaskTest testFailSessionDuringTransferShouldNotReleaseReferences

2020-03-11 Thread Brandon Williams (Jira)


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

Brandon Williams commented on CASSANDRA-15550:
--

Commited with retries limited to 10, since recently I've seen a trend where 
tests fail on weaker machines, and 10 retries is still only 100ms total.

> Fix flaky test org.apache.cassandra.streaming.StreamTransferTaskTest 
> testFailSessionDuringTransferShouldNotReleaseReferences
> 
>
> Key: CASSANDRA-15550
> URL: https://issues.apache.org/jira/browse/CASSANDRA-15550
> Project: Cassandra
>  Issue Type: Bug
>  Components: Test/unit
>Reporter: David Capwell
>Assignee: Brandon Williams
>Priority: Normal
> Fix For: 4.0-alpha
>
>
> {code}
> junit.framework.AssertionFailedError: expected:<0> but was:<1>
>   at 
> org.apache.cassandra.streaming.StreamTransferTaskTest.testFailSessionDuringTransferShouldNotReleaseReferences(StreamTransferTaskTest.java:181)
>   at 
> java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>   at 
> java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
>   at 
> java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> {code}
> Failure was on java 11



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

-
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org



[jira] [Updated] (CASSANDRA-15550) Fix flaky test org.apache.cassandra.streaming.StreamTransferTaskTest testFailSessionDuringTransferShouldNotReleaseReferences

2020-03-11 Thread Brandon Williams (Jira)


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

Brandon Williams updated CASSANDRA-15550:
-
  Since Version: 2.2.8
Source Control Link: 
https://github.com/apache/cassandra/commit/95224b71e19e2b7f18596da070937291f040f695
 Resolution: Fixed
 Status: Resolved  (was: Ready to Commit)

> Fix flaky test org.apache.cassandra.streaming.StreamTransferTaskTest 
> testFailSessionDuringTransferShouldNotReleaseReferences
> 
>
> Key: CASSANDRA-15550
> URL: https://issues.apache.org/jira/browse/CASSANDRA-15550
> Project: Cassandra
>  Issue Type: Bug
>  Components: Test/unit
>Reporter: David Capwell
>Assignee: Brandon Williams
>Priority: Normal
> Fix For: 4.0-alpha
>
>
> {code}
> junit.framework.AssertionFailedError: expected:<0> but was:<1>
>   at 
> org.apache.cassandra.streaming.StreamTransferTaskTest.testFailSessionDuringTransferShouldNotReleaseReferences(StreamTransferTaskTest.java:181)
>   at 
> java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>   at 
> java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
>   at 
> java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> {code}
> Failure was on java 11



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

-
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org



[jira] [Commented] (CASSANDRA-15543) flaky test org.apache.cassandra.distributed.test.SimpleReadWriteTest.readWithSchemaDisagreement

2020-03-11 Thread Kevin Gallardo (Jira)


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

Kevin Gallardo commented on CASSANDRA-15543:


bq. Also, RequestFailureException is not used only here in the codebase...

Right, I was planning on making the immutable copy changes for calls to 
WriteFailureException too

> flaky test 
> org.apache.cassandra.distributed.test.SimpleReadWriteTest.readWithSchemaDisagreement
> ---
>
> Key: CASSANDRA-15543
> URL: https://issues.apache.org/jira/browse/CASSANDRA-15543
> Project: Cassandra
>  Issue Type: Bug
>  Components: Test/dtest
>Reporter: David Capwell
>Assignee: Kevin Gallardo
>Priority: Normal
> Fix For: 4.0-alpha
>
>
> This fails infrequently, last seen failure was on java 8
> {code}
> junit.framework.AssertionFailedError
>   at 
> org.apache.cassandra.distributed.test.DistributedReadWritePathTest.readWithSchemaDisagreement(DistributedReadWritePathTest.java:276)
> {code}



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

-
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org



[cassandra] branch trunk updated: Wait for async abort to finish in StreamTransferTaskTest

2020-03-11 Thread brandonwilliams
This is an automated email from the ASF dual-hosted git repository.

brandonwilliams pushed a commit to branch trunk
in repository https://gitbox.apache.org/repos/asf/cassandra.git


The following commit(s) were added to refs/heads/trunk by this push:
 new 95224b7  Wait for async abort to finish in StreamTransferTaskTest
95224b7 is described below

commit 95224b71e19e2b7f18596da070937291f040f695
Author: Brandon Williams 
AuthorDate: Wed Feb 12 17:47:53 2020 -0600

Wait for async abort to finish in StreamTransferTaskTest

Patch by brandonwilliams, reviewed by Dinesh Joshi for CASSANDRA-15550
---
 .../apache/cassandra/streaming/StreamTransferTaskTest.java| 11 +++
 1 file changed, 11 insertions(+)

diff --git 
a/test/unit/org/apache/cassandra/streaming/StreamTransferTaskTest.java 
b/test/unit/org/apache/cassandra/streaming/StreamTransferTaskTest.java
index 80607c5..2361125 100644
--- a/test/unit/org/apache/cassandra/streaming/StreamTransferTaskTest.java
+++ b/test/unit/org/apache/cassandra/streaming/StreamTransferTaskTest.java
@@ -34,6 +34,7 @@ import org.junit.Test;
 import io.netty.channel.embedded.EmbeddedChannel;
 import org.junit.Assert;
 import org.apache.cassandra.SchemaLoader;
+import org.apache.cassandra.concurrent.ScheduledExecutors;
 import org.apache.cassandra.db.ColumnFamilyStore;
 import org.apache.cassandra.db.Keyspace;
 import org.apache.cassandra.db.streaming.CassandraOutgoingFile;
@@ -169,6 +170,16 @@ public class StreamTransferTaskTest
 assertEquals(1, ref.globalCount());
 }
 
+//wait for stream to abort asynchronously
+int tries = 10;
+while (ScheduledExecutors.nonPeriodicTasks.getActiveCount() > 0)
+{
+if(tries < 1)
+throw new RuntimeException("test did not complete in time");
+Thread.sleep(10);
+tries--;
+}
+
 //simulate finish transfer
 for (OutgoingStreamMessage file : files)
 {


-
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org



[jira] [Updated] (CASSANDRA-15550) Fix flaky test org.apache.cassandra.streaming.StreamTransferTaskTest testFailSessionDuringTransferShouldNotReleaseReferences

2020-03-11 Thread Brandon Williams (Jira)


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

Brandon Williams updated CASSANDRA-15550:
-
Status: Ready to Commit  (was: Changes Suggested)

> Fix flaky test org.apache.cassandra.streaming.StreamTransferTaskTest 
> testFailSessionDuringTransferShouldNotReleaseReferences
> 
>
> Key: CASSANDRA-15550
> URL: https://issues.apache.org/jira/browse/CASSANDRA-15550
> Project: Cassandra
>  Issue Type: Bug
>  Components: Test/unit
>Reporter: David Capwell
>Assignee: Brandon Williams
>Priority: Normal
> Fix For: 4.0-alpha
>
>
> {code}
> junit.framework.AssertionFailedError: expected:<0> but was:<1>
>   at 
> org.apache.cassandra.streaming.StreamTransferTaskTest.testFailSessionDuringTransferShouldNotReleaseReferences(StreamTransferTaskTest.java:181)
>   at 
> java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>   at 
> java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
>   at 
> java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> {code}
> Failure was on java 11



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

-
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org



[jira] [Commented] (CASSANDRA-15543) flaky test org.apache.cassandra.distributed.test.SimpleReadWriteTest.readWithSchemaDisagreement

2020-03-11 Thread Ekaterina Dimitrova (Jira)


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

Ekaterina Dimitrova commented on CASSANDRA-15543:
-

Also, RequestFailureException is not used only here in the codebase...

> flaky test 
> org.apache.cassandra.distributed.test.SimpleReadWriteTest.readWithSchemaDisagreement
> ---
>
> Key: CASSANDRA-15543
> URL: https://issues.apache.org/jira/browse/CASSANDRA-15543
> Project: Cassandra
>  Issue Type: Bug
>  Components: Test/dtest
>Reporter: David Capwell
>Assignee: Kevin Gallardo
>Priority: Normal
> Fix For: 4.0-alpha
>
>
> This fails infrequently, last seen failure was on java 8
> {code}
> junit.framework.AssertionFailedError
>   at 
> org.apache.cassandra.distributed.test.DistributedReadWritePathTest.readWithSchemaDisagreement(DistributedReadWritePathTest.java:276)
> {code}



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

-
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org



[jira] [Commented] (CASSANDRA-15543) flaky test org.apache.cassandra.distributed.test.SimpleReadWriteTest.readWithSchemaDisagreement

2020-03-11 Thread Ekaterina Dimitrova (Jira)


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

Ekaterina Dimitrova commented on CASSANDRA-15543:
-

Yes, I would also separate them. This is test fix. The other one would be to 
improve the failure reporting for the end users and try to mitigate any 
potential confusion. 

> flaky test 
> org.apache.cassandra.distributed.test.SimpleReadWriteTest.readWithSchemaDisagreement
> ---
>
> Key: CASSANDRA-15543
> URL: https://issues.apache.org/jira/browse/CASSANDRA-15543
> Project: Cassandra
>  Issue Type: Bug
>  Components: Test/dtest
>Reporter: David Capwell
>Assignee: Kevin Gallardo
>Priority: Normal
> Fix For: 4.0-alpha
>
>
> This fails infrequently, last seen failure was on java 8
> {code}
> junit.framework.AssertionFailedError
>   at 
> org.apache.cassandra.distributed.test.DistributedReadWritePathTest.readWithSchemaDisagreement(DistributedReadWritePathTest.java:276)
> {code}



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

-
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org



[jira] [Comment Edited] (CASSANDRA-15543) flaky test org.apache.cassandra.distributed.test.SimpleReadWriteTest.readWithSchemaDisagreement

2020-03-11 Thread Kevin Gallardo (Jira)


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

Kevin Gallardo edited comment on CASSANDRA-15543 at 3/11/20, 3:23 PM:
--

Thanks for the reply, Ekaterina, and for confirming the behavior described.

Got some more time to think about this, and it seems the best way to approach 
it, since what I suggest would be a larger behavioral change, would be to 
create a separate ticket for it. 

I think in this ticket I would rather: Fix the discrepancies between the 
failures number and the failure messages with the immutable map copy + fix the 
test that expects 2 failures to only expect 1 to match current behavior. 

Then, in the other ticket we can properly advocate/discuss pros and cons of 
returning cohesive error messages VS fail-fast & incohesive error message.


was (Author: newkek):
Thanks for the reply, Ekaterina. 

Got some more time to think about this, and I think the best way to approach 
it, since what I suggest would be a larger behavioral change, would be to 
create a separate ticket for it.

I think in this ticket I would rather: Fix the discrepancies between the 
failures number and the failure messages with the immutable map copy + fix the 
test that expects 2 failures to only expect 1 to match current behavior. 

Then, in the other ticket we can discuss pros and cons of returning cohesive 
error messages VS fail-fast & incohesive error message.

> flaky test 
> org.apache.cassandra.distributed.test.SimpleReadWriteTest.readWithSchemaDisagreement
> ---
>
> Key: CASSANDRA-15543
> URL: https://issues.apache.org/jira/browse/CASSANDRA-15543
> Project: Cassandra
>  Issue Type: Bug
>  Components: Test/dtest
>Reporter: David Capwell
>Assignee: Kevin Gallardo
>Priority: Normal
> Fix For: 4.0-alpha
>
>
> This fails infrequently, last seen failure was on java 8
> {code}
> junit.framework.AssertionFailedError
>   at 
> org.apache.cassandra.distributed.test.DistributedReadWritePathTest.readWithSchemaDisagreement(DistributedReadWritePathTest.java:276)
> {code}



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

-
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org



[jira] [Comment Edited] (CASSANDRA-15543) flaky test org.apache.cassandra.distributed.test.SimpleReadWriteTest.readWithSchemaDisagreement

2020-03-11 Thread Kevin Gallardo (Jira)


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

Kevin Gallardo edited comment on CASSANDRA-15543 at 3/11/20, 3:23 PM:
--

Thanks for the reply, Ekaterina, and for confirming the behavior described.

Got some more time to think about this, and it seems the best way to approach 
it, since what I suggest would be a larger behavioral change, would be to 
create a separate ticket for it. 

I think in this ticket I would rather: Fix the discrepancies between the 
failures number and the failure messages with the immutable map copy + fix the 
test that expects 2 failures to only expect 1 to match current behavior. 

Then, in the other ticket we can properly advocate/discuss pros and cons of 
returning cohesive error messages VS fail-fast & incohesive error message.

Does that make sense?


was (Author: newkek):
Thanks for the reply, Ekaterina, and for confirming the behavior described.

Got some more time to think about this, and it seems the best way to approach 
it, since what I suggest would be a larger behavioral change, would be to 
create a separate ticket for it. 

I think in this ticket I would rather: Fix the discrepancies between the 
failures number and the failure messages with the immutable map copy + fix the 
test that expects 2 failures to only expect 1 to match current behavior. 

Then, in the other ticket we can properly advocate/discuss pros and cons of 
returning cohesive error messages VS fail-fast & incohesive error message.

> flaky test 
> org.apache.cassandra.distributed.test.SimpleReadWriteTest.readWithSchemaDisagreement
> ---
>
> Key: CASSANDRA-15543
> URL: https://issues.apache.org/jira/browse/CASSANDRA-15543
> Project: Cassandra
>  Issue Type: Bug
>  Components: Test/dtest
>Reporter: David Capwell
>Assignee: Kevin Gallardo
>Priority: Normal
> Fix For: 4.0-alpha
>
>
> This fails infrequently, last seen failure was on java 8
> {code}
> junit.framework.AssertionFailedError
>   at 
> org.apache.cassandra.distributed.test.DistributedReadWritePathTest.readWithSchemaDisagreement(DistributedReadWritePathTest.java:276)
> {code}



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

-
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org



[jira] [Commented] (CASSANDRA-13994) Remove COMPACT STORAGE internals before 4.0 release

2020-03-11 Thread Alex Petrov (Jira)


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

Alex Petrov commented on CASSANDRA-13994:
-

[~e.dimitrova] sure! 

In short, we've recently deprecated thrift, but some of the parts that were 
used for thrift compatibility in the new storage engine are still present. For 
example, {{isDense}}, {{isCompact}}, {{isSuper}} 
[methods|https://github.com/apache/cassandra/blob/trunk/src/java/org/apache/cassandra/schema/TableMetadata.java#L238-L276]
 and 
[flags|https://github.com/apache/cassandra/blob/trunk/src/java/org/apache/cassandra/schema/TableMetadata.java#L70].
 We need to remove usages and mentions of those, only leave enough to make sure 
we have reasonable error messages. You can find a bit more information on 
compact storage in [CASSANDRA-10857]. 

> Remove COMPACT STORAGE internals before 4.0 release
> ---
>
> Key: CASSANDRA-13994
> URL: https://issues.apache.org/jira/browse/CASSANDRA-13994
> Project: Cassandra
>  Issue Type: Improvement
>  Components: Legacy/Local Write-Read Paths
>Reporter: Alex Petrov
>Assignee: Alex Petrov
>Priority: Low
> Fix For: 4.0, 4.0-rc
>
>
> 4.0 comes without thrift (after [CASSANDRA-5]) and COMPACT STORAGE (after 
> [CASSANDRA-10857]), and since Compact Storage flags are now disabled, all of 
> the related functionality is useless.
> There are still some things to consider:
> 1. One of the system tables (built indexes) was compact. For now, we just 
> added {{value}} column to it to make sure it's backwards-compatible, but we 
> might want to make sure it's just a "normal" table and doesn't have redundant 
> columns.
> 2. Compact Tables were building indexes in {{KEYS}} mode. Removing it is 
> trivial, but this would mean that all built indexes will be defunct. We could 
> log a warning for now and ask users to migrate off those for now and 
> completely remove it from future releases. It's just a couple of classes 
> though.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

-
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org



[jira] [Commented] (CASSANDRA-15543) flaky test org.apache.cassandra.distributed.test.SimpleReadWriteTest.readWithSchemaDisagreement

2020-03-11 Thread Kevin Gallardo (Jira)


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

Kevin Gallardo commented on CASSANDRA-15543:


Thanks for the reply, Ekaterina. 

Got some more time to think about this, and I think the best way to approach 
it, since what I suggest would be a larger behavioral change, would be to 
create a separate ticket for it.

I think in this ticket I would rather: Fix the discrepancies between the 
failures number and the failure messages with the immutable map copy + fix the 
test that expects 2 failures to only expect 1 to match current behavior. 

Then, in the other ticket we can discuss pros and cons of returning cohesive 
error messages VS fail-fast & incohesive error message.

> flaky test 
> org.apache.cassandra.distributed.test.SimpleReadWriteTest.readWithSchemaDisagreement
> ---
>
> Key: CASSANDRA-15543
> URL: https://issues.apache.org/jira/browse/CASSANDRA-15543
> Project: Cassandra
>  Issue Type: Bug
>  Components: Test/dtest
>Reporter: David Capwell
>Assignee: Kevin Gallardo
>Priority: Normal
> Fix For: 4.0-alpha
>
>
> This fails infrequently, last seen failure was on java 8
> {code}
> junit.framework.AssertionFailedError
>   at 
> org.apache.cassandra.distributed.test.DistributedReadWritePathTest.readWithSchemaDisagreement(DistributedReadWritePathTest.java:276)
> {code}



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

-
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org



[jira] [Commented] (CASSANDRA-15152) Batch Log - Mutation too large while bootstrapping a newly added node

2020-03-11 Thread Bjorn Carlsson (Jira)


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

Bjorn Carlsson commented on CASSANDRA-15152:


Hi [~via.vokal], we are experiencing the same issue when joining new nodes to 
our cluster. Did you manage to solve this? We have the same questions regarding 
which keyspace table the mutations belongs too.

Kind regards,

Bjorn

> Batch Log - Mutation too large while bootstrapping a newly added node
> -
>
> Key: CASSANDRA-15152
> URL: https://issues.apache.org/jira/browse/CASSANDRA-15152
> Project: Cassandra
>  Issue Type: Bug
>  Components: Consistency/Batch Log
>Reporter: Avraham Kalvo
>Priority: Normal
>
> Scaling our six nodes cluster by three more nodes, we came upon behavior in 
> which bootstrap appears hung under `UJ` (two previously added were joined 
> within approximately 2.5 hours).
> Examining the logs the following became apparent shortly after the bootstrap 
> process has commenced for this node:
> ```
> ERROR [BatchlogTasks:1] 2019-06-05 14:43:46,508 CassandraDaemon.java:207 - 
> Exception in thread Thread[BatchlogTasks:1,5,main]
> java.lang.IllegalArgumentException: Mutation of 108035175 bytes is too large 
> for the maximum size of 16777216
> at 
> org.apache.cassandra.db.commitlog.CommitLog.add(CommitLog.java:256) 
> ~[apache-cassandra-3.0.10.jar:3.0.10]
> at org.apache.cassandra.db.Keyspace.apply(Keyspace.java:520) 
> ~[apache-cassandra-3.0.10.jar:3.0.10]
> at 
> org.apache.cassandra.db.Keyspace.applyNotDeferrable(Keyspace.java:399) 
> ~[apache-cassandra-3.0.10.jar:3.0.10]
> at org.apache.cassandra.db.Mutation.apply(Mutation.java:213) 
> ~[apache-cassandra-3.0.10.jar:3.0.10]
> at org.apache.cassandra.db.Mutation.apply(Mutation.java:227) 
> ~[apache-cassandra-3.0.10.jar:3.0.10]
> at 
> org.apache.cassandra.batchlog.BatchlogManager$ReplayingBatch.sendSingleReplayMutation(BatchlogManager.java:427)
>  ~[apache-cassandra-3.0.10.jar:3.0.10]
> at 
> org.apache.cassandra.batchlog.BatchlogManager$ReplayingBatch.sendReplays(BatchlogManager.java:402)
>  ~[apache-cassandra-3.0.10.jar:3.0.10]
> at 
> org.apache.cassandra.batchlog.BatchlogManager$ReplayingBatch.replay(BatchlogManager.java:318)
>  ~[apache-cassandra-3.0.10.jar:3.0.10]
> at 
> org.apache.cassandra.batchlog.BatchlogManager.processBatchlogEntries(BatchlogManager.java:238)
>  ~[apache-cassandra-3.0.10.jar:3.0.10]
> at 
> org.apache.cassandra.batchlog.BatchlogManager.replayFailedBatches(BatchlogManager.java:207)
>  ~[apache-cassandra-3.0.10.jar:3.0.10]
> at 
> org.apache.cassandra.concurrent.DebuggableScheduledThreadPoolExecutor$UncomplainingRunnable.run(DebuggableScheduledThreadPoolExecutor.java:118)
>  ~[apache-cassandra-3.0.10.jar:3.0.10]
> at 
> java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) 
> [na:1.8.0_201]
> at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:308) 
> [na:1.8.0_201]
> at 
> java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(ScheduledThreadPoolExecutor.java:180)
>  [na:1.8.0_201]
> at 
> java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:294)
>  [na:1.8.0_201]
> at 
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
>  [na:1.8.0_201]
> at 
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
>  [na:1.8.0_201]
> at java.lang.Thread.run(Thread.java:748) [na:1.8.0_201]
> ```
> And since then, repeating itself in the logs.
> We decided to discard the newly added apparently still joining node by doing 
> the following:
> 1. at first - simply restarting it, which resulted in it starting up 
> apparently normally 
> 2. then - decommission it by issuing `nodetool decommission`, this took long 
> (over 2.5 hours) and eventually was terminated by issuing `nodetool 
> removenode`
> 3. node removal was hung on a specific token, which led us to complete it by 
> force.
> 4. forcing the node removal has generated a corruption with one of the 
> `system.batches` table SSTables, which was removed (backed up) from its 
> underlying data dir as mitigation (78MB worth)
> 5. cluster-wide repair was run
> 6. `Mutation too large` error is now repeating itself in three different 
> permutations (alerted sizes) under three different nodes (our standard 
> replication factor is of three)
> We're not sure whether we're hitting 
> https://issues.apache.org/jira/browse/CASSANDRA-11670 or not, as it's said to 
> be resolved in our current version of 3.0.10.
> Still would like to verify what's the root cause for this? as we 

[jira] [Created] (CASSANDRA-15631) Add AssertJ test dependency

2020-03-11 Thread Kevin Gallardo (Jira)
Kevin Gallardo created CASSANDRA-15631:
--

 Summary: Add AssertJ test dependency
 Key: CASSANDRA-15631
 URL: https://issues.apache.org/jira/browse/CASSANDRA-15631
 Project: Cassandra
  Issue Type: Improvement
  Components: Test/dtest, Test/unit
Reporter: Kevin Gallardo
Assignee: Kevin Gallardo


See 
[proposal|https://lists.apache.org/thread.html/rc562ec47578d0ae6f346ba9e3d7469c1cd3f8b521a72ddcb2accc47b%40%3Cdev.cassandra.apache.org%3E].

The goal is to add [AssertJ|https://assertj.github.io/doc/] to the test 
framework to allow for more comprehensible and easier to write tests.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

-
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org



[jira] [Updated] (CASSANDRA-15622) Unit tests throw UnknownHostException trying to use `InetAddress.getLocalHost()` instead of `FBUtilities.getLocalAddress()`

2020-03-11 Thread Benjamin Lerer (Jira)


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

Benjamin Lerer updated CASSANDRA-15622:
---
Reviewers: Benjamin Lerer, Benjamin Lerer  (was: Benjamin Lerer)
   Benjamin Lerer, Benjamin Lerer  (was: Benjamin Lerer)
   Status: Review In Progress  (was: Patch Available)

> Unit tests throw UnknownHostException trying to use 
> `InetAddress.getLocalHost()` instead of `FBUtilities.getLocalAddress()`
> ---
>
> Key: CASSANDRA-15622
> URL: https://issues.apache.org/jira/browse/CASSANDRA-15622
> Project: Cassandra
>  Issue Type: Bug
>  Components: Test/unit
>Reporter: Michael Semb Wever
>Assignee: Michael Semb Wever
>Priority: Normal
> Fix For: 2.2.x, 3.0.x, 3.11.x, 4.x
>
>
> Many of the unit tests in Jenkins fail because of the use of 
> {{`InetAddress.getLocalHost()`}} in the test classes.
> The Jenkins agents need a public ipaddress (and a hostname associated to it) 
> so the Jenkins master can connect to them (agents can be hosted externally, 
> by donating third-parties).
> The call to {{`InetAddress.getLocalHost()`}} can resolve to a hostname that 
> can't be looked up.
> Not only it likely not listed in {{`/etc/hosts`}}, but we don't want it to be 
> either (in case of accidental external port opening if the hostname points to 
> the public ipaddress). (This is also ASF policy on this infrastructure.)
> The unit test code needs to replace these code occurrences with the call to 
> {{`FBUtilities.getLocalAddress()`}}



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

-
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org



[jira] [Updated] (CASSANDRA-15622) Unit tests throw UnknownHostException trying to use `InetAddress.getLocalHost()` instead of `FBUtilities.getLocalAddress()`

2020-03-11 Thread Benjamin Lerer (Jira)


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

Benjamin Lerer updated CASSANDRA-15622:
---
Status: Ready to Commit  (was: Review In Progress)

> Unit tests throw UnknownHostException trying to use 
> `InetAddress.getLocalHost()` instead of `FBUtilities.getLocalAddress()`
> ---
>
> Key: CASSANDRA-15622
> URL: https://issues.apache.org/jira/browse/CASSANDRA-15622
> Project: Cassandra
>  Issue Type: Bug
>  Components: Test/unit
>Reporter: Michael Semb Wever
>Assignee: Michael Semb Wever
>Priority: Normal
> Fix For: 2.2.x, 3.0.x, 3.11.x, 4.x
>
>
> Many of the unit tests in Jenkins fail because of the use of 
> {{`InetAddress.getLocalHost()`}} in the test classes.
> The Jenkins agents need a public ipaddress (and a hostname associated to it) 
> so the Jenkins master can connect to them (agents can be hosted externally, 
> by donating third-parties).
> The call to {{`InetAddress.getLocalHost()`}} can resolve to a hostname that 
> can't be looked up.
> Not only it likely not listed in {{`/etc/hosts`}}, but we don't want it to be 
> either (in case of accidental external port opening if the hostname points to 
> the public ipaddress). (This is also ASF policy on this infrastructure.)
> The unit test code needs to replace these code occurrences with the call to 
> {{`FBUtilities.getLocalAddress()`}}



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

-
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org



[jira] [Commented] (CASSANDRA-15622) Unit tests throw UnknownHostException trying to use `InetAddress.getLocalHost()` instead of `FBUtilities.getLocalAddress()`

2020-03-11 Thread Benjamin Lerer (Jira)


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

Benjamin Lerer commented on CASSANDRA-15622:


Sorry, for the delay. The patches look good.

> Unit tests throw UnknownHostException trying to use 
> `InetAddress.getLocalHost()` instead of `FBUtilities.getLocalAddress()`
> ---
>
> Key: CASSANDRA-15622
> URL: https://issues.apache.org/jira/browse/CASSANDRA-15622
> Project: Cassandra
>  Issue Type: Bug
>  Components: Test/unit
>Reporter: Michael Semb Wever
>Assignee: Michael Semb Wever
>Priority: Normal
> Fix For: 2.2.x, 3.0.x, 3.11.x, 4.x
>
>
> Many of the unit tests in Jenkins fail because of the use of 
> {{`InetAddress.getLocalHost()`}} in the test classes.
> The Jenkins agents need a public ipaddress (and a hostname associated to it) 
> so the Jenkins master can connect to them (agents can be hosted externally, 
> by donating third-parties).
> The call to {{`InetAddress.getLocalHost()`}} can resolve to a hostname that 
> can't be looked up.
> Not only it likely not listed in {{`/etc/hosts`}}, but we don't want it to be 
> either (in case of accidental external port opening if the hostname points to 
> the public ipaddress). (This is also ASF policy on this infrastructure.)
> The unit test code needs to replace these code occurrences with the call to 
> {{`FBUtilities.getLocalAddress()`}}



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

-
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org



[jira] [Commented] (CASSANDRA-15605) Broken dtest replication_test.py::TestSnitchConfigurationUpdate

2020-03-11 Thread Ryan Svihla (Jira)


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

Ryan Svihla commented on CASSANDRA-15605:
-

{{So I got them to finally fail, I had to get down to a 2 core VM before they 
would:}}


{{test_rf_collapse_gossiping_property_file_snitch passed 1 out of the required 
1 times. Success!}}
{{test_rf_expand_gossiping_property_file_snitch failed and was not selected for 
rerun.}}
{{ }}
{{ Ran out of time waiting for topology to change on node 0}}
{{ [, 
, ] }}
{{test_rf_collapse_property_file_snitch passed 1 out of the required 1 times. 
Success!}}
{{test_rf_expand_property_file_snitch failed and was not selected for rerun.}}
{{ }}
{{ Ran out of time waiting for topology to change on node 0}}
{{ [, 
, ] }}
{{test_cannot_restart_with_different_rack passed 1 out of the required 1 times. 
Success!}}
{{test_failed_snitch_update_gossiping_property_file_snitch passed 1 out of the 
required 1 times. Success! }}
{{test_failed_snitch_update_property_file_snitch passed 1 out of the required 1 
times. Success!}}
{{test_switch_data_center_startup_fails passed 1 out of the required 1 times. 
Success!}}

> Broken dtest replication_test.py::TestSnitchConfigurationUpdate
> ---
>
> Key: CASSANDRA-15605
> URL: https://issues.apache.org/jira/browse/CASSANDRA-15605
> Project: Cassandra
>  Issue Type: Bug
>  Components: Test/dtest
>Reporter: Sam Tunnicliffe
>Assignee: Ryan Svihla
>Priority: Normal
> Fix For: 4.0-alpha
>
>
> Noticed this failing on a couple of CI runs and repros when running trunk 
> locally and on CircleCI
> 2 or 3 tests are consistently failing:
>  * {{test_rf_expand_gossiping_property_file_snitch}}
>  * {{test_rf_expand_property_file_snitch}}
>  * {{test_move_forwards_between_and_cleanup}}
> [https://circleci.com/workflow-run/f23f13a9-bbdc-4764-8336-109517e137f1]



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

-
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org



[jira] [Assigned] (CASSANDRA-15605) Broken dtest replication_test.py::TestSnitchConfigurationUpdate

2020-03-11 Thread Ryan Svihla (Jira)


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

Ryan Svihla reassigned CASSANDRA-15605:
---

Assignee: Ryan Svihla

> Broken dtest replication_test.py::TestSnitchConfigurationUpdate
> ---
>
> Key: CASSANDRA-15605
> URL: https://issues.apache.org/jira/browse/CASSANDRA-15605
> Project: Cassandra
>  Issue Type: Bug
>  Components: Test/dtest
>Reporter: Sam Tunnicliffe
>Assignee: Ryan Svihla
>Priority: Normal
> Fix For: 4.0-alpha
>
>
> Noticed this failing on a couple of CI runs and repros when running trunk 
> locally and on CircleCI
> 2 or 3 tests are consistently failing:
>  * {{test_rf_expand_gossiping_property_file_snitch}}
>  * {{test_rf_expand_property_file_snitch}}
>  * {{test_move_forwards_between_and_cleanup}}
> [https://circleci.com/workflow-run/f23f13a9-bbdc-4764-8336-109517e137f1]



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

-
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org



[jira] [Updated] (CASSANDRA-15565) Fix flaky test org.apache.cassandra.index.internal.CassandraIndexTest indexCorrectlyMarkedAsBuildAndRemoved

2020-03-11 Thread Sam Tunnicliffe (Jira)


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

Sam Tunnicliffe updated CASSANDRA-15565:

  Fix Version/s: 3.11.7
 3.0.21
  Since Version: 3.0.0
Source Control Link: 
https://github.com/apache/cassandra/commit/c81d7dcc09fa1c35f190f0baad764fbe8a024679
 Resolution: Fixed
 Status: Resolved  (was: Ready to Commit)

Thanks, looks good to me. I've made a small addition to your patch to verify 
that when dropped, the index is removed from the built indexes table. From the 
name, it seemed like that should've been part of the test all along. I've 
committed to 3.0 and merged to 3.11 & trunk.

> Fix flaky test org.apache.cassandra.index.internal.CassandraIndexTest 
> indexCorrectlyMarkedAsBuildAndRemoved
> ---
>
> Key: CASSANDRA-15565
> URL: https://issues.apache.org/jira/browse/CASSANDRA-15565
> Project: Cassandra
>  Issue Type: Bug
>  Components: Test/unit
>Reporter: David Capwell
>Assignee: Jorge Bay
>Priority: Normal
>  Labels: pull-request-available
> Fix For: 3.0.21, 3.11.7, 4.0-alpha
>
>  Time Spent: 10m
>  Remaining Estimate: 0h
>
> {code}
> junit.framework.AssertionFailedError: Got more rows than expected. Expected 1 
> but got 4.
>   at org.apache.cassandra.cql3.CQLTester.assertRows(CQLTester.java:1098)
>   at 
> org.apache.cassandra.index.internal.CassandraIndexTest.indexCorrectlyMarkedAsBuildAndRemoved(CassandraIndexTest.java:499)
>   at 
> java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>   at 
> java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
>   at 
> java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> {code}
> The failure was seen on java 11.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

-
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org



[cassandra] branch trunk updated (1916e5d -> 8ebe72d)

2020-03-11 Thread samt
This is an automated email from the ASF dual-hosted git repository.

samt pushed a change to branch trunk
in repository https://gitbox.apache.org/repos/asf/cassandra.git.


from 1916e5d  Add UnleveledSSTables table level metric
 new c81d7dc  Use result size for built index test
 new 8a5b127  Merge branch 'cassandra-3.0' into cassandra-3.11
 new 8ebe72d  Merge branch 'cassandra-3.11' into trunk

The 3 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:
 .../index/internal/CassandraIndexTest.java | 23 ++
 1 file changed, 19 insertions(+), 4 deletions(-)


-
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org



[cassandra] 01/01: Merge branch 'cassandra-3.0' into cassandra-3.11

2020-03-11 Thread samt
This is an automated email from the ASF dual-hosted git repository.

samt pushed a commit to branch cassandra-3.11
in repository https://gitbox.apache.org/repos/asf/cassandra.git

commit 8a5b1275ff5ffb8e867a8ffa1558f12923c3f956
Merge: b714667 c81d7dc
Author: Sam Tunnicliffe 
AuthorDate: Wed Mar 11 10:26:36 2020 +

Merge branch 'cassandra-3.0' into cassandra-3.11

 .../index/internal/CassandraIndexTest.java | 23 ++
 1 file changed, 19 insertions(+), 4 deletions(-)

diff --cc test/unit/org/apache/cassandra/index/internal/CassandraIndexTest.java
index 23b27b8,7cea9da..b573e6f
--- a/test/unit/org/apache/cassandra/index/internal/CassandraIndexTest.java
+++ b/test/unit/org/apache/cassandra/index/internal/CassandraIndexTest.java
@@@ -515,6 -488,12 +515,12 @@@ public class CassandraIndexTest extend
  @Test
  public void indexCorrectlyMarkedAsBuildAndRemoved() throws Throwable
  {
+ String selectBuiltIndexesQuery = String.format("SELECT * FROM 
%s.\"%s\"",
 -   SystemKeyspace.NAME,
++   
SchemaConstants.SYSTEM_KEYSPACE_NAME,
+
SystemKeyspace.BUILT_INDEXES);
+ UntypedResultSet rs = execute(selectBuiltIndexesQuery);
+ int initialSize = rs.size();
+ 
  String indexName = "build_remove_test_idx";
  String tableName = createTable("CREATE TABLE %s (a int, b int, c int, 
PRIMARY KEY (a, b))");
  createIndex(String.format("CREATE INDEX %s ON %%s(c)", indexName));


-
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org



[cassandra] 01/01: Merge branch 'cassandra-3.11' into trunk

2020-03-11 Thread samt
This is an automated email from the ASF dual-hosted git repository.

samt pushed a commit to branch trunk
in repository https://gitbox.apache.org/repos/asf/cassandra.git

commit 8ebe72d853c18d62f3e50f39736330b2bf141518
Merge: 1916e5d 8a5b127
Author: Sam Tunnicliffe 
AuthorDate: Wed Mar 11 10:29:33 2020 +

Merge branch 'cassandra-3.11' into trunk

 .../index/internal/CassandraIndexTest.java | 23 ++
 1 file changed, 19 insertions(+), 4 deletions(-)

diff --cc test/unit/org/apache/cassandra/index/internal/CassandraIndexTest.java
index 65c2417,b573e6f..bab2eb2
--- a/test/unit/org/apache/cassandra/index/internal/CassandraIndexTest.java
+++ b/test/unit/org/apache/cassandra/index/internal/CassandraIndexTest.java
@@@ -496,24 -526,32 +502,33 @@@ public class CassandraIndexTest extend
  createIndex(String.format("CREATE INDEX %s ON %%s(c)", indexName));
  waitForIndex(KEYSPACE, tableName, indexName);
  // check that there are no other rows in the built indexes table
- assertRows(execute(String.format("SELECT * FROM %s.\"%s\"", 
SchemaConstants.SYSTEM_KEYSPACE_NAME, SystemKeyspace.BUILT_INDEXES)),
-row(KEYSPACE, indexName, null));
+ rs = execute(selectBuiltIndexesQuery);
+ int sizeAfterBuild = rs.size();
 -assertRowsIgnoringOrderAndExtra(rs, row(KEYSPACE, indexName));
++assertRowsIgnoringOrderAndExtra(rs, row(KEYSPACE, indexName, null));
  
  // rebuild the index and verify the built status table
  getCurrentColumnFamilyStore().rebuildSecondaryIndex(indexName);
  waitForIndex(KEYSPACE, tableName, indexName);
  
  // check that there are no other rows in the built indexes table
- assertRows(execute(String.format("SELECT * FROM %s.\"%s\"", 
SchemaConstants.SYSTEM_KEYSPACE_NAME, SystemKeyspace.BUILT_INDEXES)),
-row(KEYSPACE, indexName, null ));
+ rs = execute(selectBuiltIndexesQuery);
+ assertEquals(sizeAfterBuild, rs.size());
 -assertRowsIgnoringOrderAndExtra(rs, row(KEYSPACE, indexName));
++assertRowsIgnoringOrderAndExtra(rs, row(KEYSPACE, indexName, null));
+ 
+ // check that dropping the index removes it from the built indexes 
table
+ dropIndex("DROP INDEX %s." + indexName);
+ rs = execute(selectBuiltIndexesQuery);
+ assertEquals(initialSize, rs.size());
+ rs.forEach(row -> 
assertFalse(row.getString("table_name").equals(KEYSPACE)  // table_name is 
actually keyspace
+   && 
row.getString("index_name").equals(indexName)));
  }
  
 +
  // this is slightly annoying, but we cannot read rows from the methods in 
Util as
 -// ReadCommand#executeInternal uses metadata retrieved via the cfId, 
which the index
 +// ReadCommand#executeLocally uses metadata retrieved via the tableId, 
which the index
  // CFS inherits from the base CFS. This has the 'wrong' partitioner (the 
index table
  // uses LocalPartition, the base table a real one, so we cannot read from 
the index
 -// table with executeInternal
 +// table with executeLocally
  private void assertIndexRowTtl(ColumnFamilyStore indexCfs, int 
indexedValue, int ttl) throws Throwable
  {
  DecoratedKey indexKey = 
indexCfs.decorateKey(ByteBufferUtil.bytes(indexedValue));


-
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org



[jira] [Updated] (CASSANDRA-15565) Fix flaky test org.apache.cassandra.index.internal.CassandraIndexTest indexCorrectlyMarkedAsBuildAndRemoved

2020-03-11 Thread Sam Tunnicliffe (Jira)


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

Sam Tunnicliffe updated CASSANDRA-15565:

Status: Ready to Commit  (was: Review In Progress)

> Fix flaky test org.apache.cassandra.index.internal.CassandraIndexTest 
> indexCorrectlyMarkedAsBuildAndRemoved
> ---
>
> Key: CASSANDRA-15565
> URL: https://issues.apache.org/jira/browse/CASSANDRA-15565
> Project: Cassandra
>  Issue Type: Bug
>  Components: Test/unit
>Reporter: David Capwell
>Assignee: Jorge Bay
>Priority: Normal
>  Labels: pull-request-available
> Fix For: 4.0-alpha
>
>  Time Spent: 10m
>  Remaining Estimate: 0h
>
> {code}
> junit.framework.AssertionFailedError: Got more rows than expected. Expected 1 
> but got 4.
>   at org.apache.cassandra.cql3.CQLTester.assertRows(CQLTester.java:1098)
>   at 
> org.apache.cassandra.index.internal.CassandraIndexTest.indexCorrectlyMarkedAsBuildAndRemoved(CassandraIndexTest.java:499)
>   at 
> java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>   at 
> java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
>   at 
> java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> {code}
> The failure was seen on java 11.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

-
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org



[cassandra] branch cassandra-3.0 updated: Use result size for built index test

2020-03-11 Thread samt
This is an automated email from the ASF dual-hosted git repository.

samt pushed a commit to branch cassandra-3.0
in repository https://gitbox.apache.org/repos/asf/cassandra.git


The following commit(s) were added to refs/heads/cassandra-3.0 by this push:
 new c81d7dc  Use result size for built index test
c81d7dc is described below

commit c81d7dcc09fa1c35f190f0baad764fbe8a024679
Author: Jorge Bay Gondra 
AuthorDate: Wed Mar 11 10:19:28 2020 +

Use result size for built index test

Patch by Jorge Bay Gondra; reviewed by Sam Tunnicliffe for CASSANDRA-15565
---
 .../index/internal/CassandraIndexTest.java | 23 ++
 1 file changed, 19 insertions(+), 4 deletions(-)

diff --git 
a/test/unit/org/apache/cassandra/index/internal/CassandraIndexTest.java 
b/test/unit/org/apache/cassandra/index/internal/CassandraIndexTest.java
index 286c418..7cea9da 100644
--- a/test/unit/org/apache/cassandra/index/internal/CassandraIndexTest.java
+++ b/test/unit/org/apache/cassandra/index/internal/CassandraIndexTest.java
@@ -488,21 +488,36 @@ public class CassandraIndexTest extends CQLTester
 @Test
 public void indexCorrectlyMarkedAsBuildAndRemoved() throws Throwable
 {
+String selectBuiltIndexesQuery = String.format("SELECT * FROM 
%s.\"%s\"",
+   SystemKeyspace.NAME,
+   
SystemKeyspace.BUILT_INDEXES);
+UntypedResultSet rs = execute(selectBuiltIndexesQuery);
+int initialSize = rs.size();
+
 String indexName = "build_remove_test_idx";
 String tableName = createTable("CREATE TABLE %s (a int, b int, c int, 
PRIMARY KEY (a, b))");
 createIndex(String.format("CREATE INDEX %s ON %%s(c)", indexName));
 waitForIndex(KEYSPACE, tableName, indexName);
 // check that there are no other rows in the built indexes table
-assertRows(execute(String.format("SELECT * FROM %s.\"%s\"", 
SystemKeyspace.NAME, SystemKeyspace.BUILT_INDEXES)),
-   row(KEYSPACE, indexName));
+rs = execute(selectBuiltIndexesQuery);
+int sizeAfterBuild = rs.size();
+assertRowsIgnoringOrderAndExtra(rs, row(KEYSPACE, indexName));
 
 // rebuild the index and verify the built status table
 getCurrentColumnFamilyStore().rebuildSecondaryIndex(indexName);
 waitForIndex(KEYSPACE, tableName, indexName);
 
 // check that there are no other rows in the built indexes table
-assertRows(execute(String.format("SELECT * FROM %s.\"%s\"", 
SystemKeyspace.NAME, SystemKeyspace.BUILT_INDEXES)),
-   row(KEYSPACE, indexName));
+rs = execute(selectBuiltIndexesQuery);
+assertEquals(sizeAfterBuild, rs.size());
+assertRowsIgnoringOrderAndExtra(rs, row(KEYSPACE, indexName));
+
+// check that dropping the index removes it from the built indexes 
table
+dropIndex("DROP INDEX %s." + indexName);
+rs = execute(selectBuiltIndexesQuery);
+assertEquals(initialSize, rs.size());
+rs.forEach(row -> 
assertFalse(row.getString("table_name").equals(KEYSPACE)  // table_name is 
actually keyspace
+  && 
row.getString("index_name").equals(indexName)));
 }
 
 // this is slightly annoying, but we cannot read rows from the methods in 
Util as


-
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org



[cassandra] branch cassandra-3.11 updated (b714667 -> 8a5b127)

2020-03-11 Thread samt
This is an automated email from the ASF dual-hosted git repository.

samt pushed a change to branch cassandra-3.11
in repository https://gitbox.apache.org/repos/asf/cassandra.git.


from b714667  Merge branch 'cassandra-3.0' into cassandra-3.11
 new c81d7dc  Use result size for built index test
 new 8a5b127  Merge branch 'cassandra-3.0' into cassandra-3.11

The 2 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:
 .../index/internal/CassandraIndexTest.java | 23 ++
 1 file changed, 19 insertions(+), 4 deletions(-)


-
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org



[jira] [Updated] (CASSANDRA-15565) Fix flaky test org.apache.cassandra.index.internal.CassandraIndexTest indexCorrectlyMarkedAsBuildAndRemoved

2020-03-11 Thread Sam Tunnicliffe (Jira)


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

Sam Tunnicliffe updated CASSANDRA-15565:

Reviewers: Sam Tunnicliffe, Sam Tunnicliffe  (was: Sam Tunnicliffe)
   Sam Tunnicliffe, Sam Tunnicliffe
   Status: Review In Progress  (was: Patch Available)

> Fix flaky test org.apache.cassandra.index.internal.CassandraIndexTest 
> indexCorrectlyMarkedAsBuildAndRemoved
> ---
>
> Key: CASSANDRA-15565
> URL: https://issues.apache.org/jira/browse/CASSANDRA-15565
> Project: Cassandra
>  Issue Type: Bug
>  Components: Test/unit
>Reporter: David Capwell
>Assignee: Jorge Bay
>Priority: Normal
>  Labels: pull-request-available
> Fix For: 4.0-alpha
>
>  Time Spent: 10m
>  Remaining Estimate: 0h
>
> {code}
> junit.framework.AssertionFailedError: Got more rows than expected. Expected 1 
> but got 4.
>   at org.apache.cassandra.cql3.CQLTester.assertRows(CQLTester.java:1098)
>   at 
> org.apache.cassandra.index.internal.CassandraIndexTest.indexCorrectlyMarkedAsBuildAndRemoved(CassandraIndexTest.java:499)
>   at 
> java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>   at 
> java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
>   at 
> java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> {code}
> The failure was seen on java 11.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

-
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org



[jira] [Updated] (CASSANDRA-15620) Add "unleveled sstables" table metric

2020-03-11 Thread Stefan Podkowinski (Jira)


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

Stefan Podkowinski updated CASSANDRA-15620:
---
  Fix Version/s: 4.0-alpha
Source Control Link: 
https://github.com/apache/cassandra/commit/1916e5d1ca6ed526a65c4fef7ff933de70006496
 Resolution: Fixed
 Status: Resolved  (was: Ready to Commit)

Committed as 1916e5d1ca6ed526a65c4fef7ff933de70006496

> Add "unleveled sstables" table metric
> -
>
> Key: CASSANDRA-15620
> URL: https://issues.apache.org/jira/browse/CASSANDRA-15620
> Project: Cassandra
>  Issue Type: Improvement
>  Components: Observability/Metrics
>Reporter: Stefan Podkowinski
>Assignee: Stefan Podkowinski
>Priority: Normal
> Fix For: 4.0-alpha
>
>
> The number of unleveled sstables is an important indicator that deserves to 
> be a dedicated table metric on its own. This will also add a global gauge 
> that is convenient to query.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

-
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org



[cassandra] branch trunk updated: Add UnleveledSSTables table level metric

2020-03-11 Thread spod
This is an automated email from the ASF dual-hosted git repository.

spod pushed a commit to branch trunk
in repository https://gitbox.apache.org/repos/asf/cassandra.git


The following commit(s) were added to refs/heads/trunk by this push:
 new 1916e5d  Add UnleveledSSTables table level metric
1916e5d is described below

commit 1916e5d1ca6ed526a65c4fef7ff933de70006496
Author: Stefan Podkowinski 
AuthorDate: Tue Mar 3 13:09:43 2020 +0100

Add UnleveledSSTables table level metric

patch by Stefan Podkowinski; reviewed by Chris Lohfink for CASSANDRA-15620
---
 CHANGES.txt |  1 +
 src/java/org/apache/cassandra/metrics/TableMetrics.java | 12 
 2 files changed, 13 insertions(+)

diff --git a/CHANGES.txt b/CHANGES.txt
index e418db7..d863df2 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -1,4 +1,5 @@
 4.0-alpha4
+ * Added UnleveledSSTables global and table level metric (CASSANDRA-15620)
  * Added Virtual Table exposing Cassandra relevant system properties 
(CASSANDRA-15616)
  * Add data modeling introduction (CASSANDRA-15481)
  * Improve the algorithmic token allocation in case racks = RF 
(CASSANDRA-15600)
diff --git a/src/java/org/apache/cassandra/metrics/TableMetrics.java 
b/src/java/org/apache/cassandra/metrics/TableMetrics.java
index d8330cc..6095f50 100644
--- a/src/java/org/apache/cassandra/metrics/TableMetrics.java
+++ b/src/java/org/apache/cassandra/metrics/TableMetrics.java
@@ -218,6 +218,8 @@ public class TableMetrics
 public final Counter additionalWrites;
 public final Gauge additionalWriteLatencyNanos;
 
+public final Gauge unleveledSSTables;
+
 /**
  * Metrics for inconsistencies detected between repaired data sets across 
replicas. These
  * are tracked on the coordinator.
@@ -943,6 +945,16 @@ public class TableMetrics
 
 confirmedRepairedInconsistencies = 
createTableMeter("RepairedDataInconsistenciesConfirmed", 
cfs.keyspace.metric.confirmedRepairedInconsistencies);
 unconfirmedRepairedInconsistencies = 
createTableMeter("RepairedDataInconsistenciesUnconfirmed", 
cfs.keyspace.metric.unconfirmedRepairedInconsistencies);
+
+unleveledSSTables = createTableGauge("UnleveledSSTables", 
cfs::getUnleveledSSTables, () -> {
+// global gauge
+int cnt = 0;
+for (Metric cfGauge : allTableMetrics.get("UnleveledSSTables"))
+{
+cnt += ((Gauge) 
cfGauge).getValue().intValue();
+}
+return cnt;
+});
 }
 
 public void updateSSTableIterated(int count)


-
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org