[jira] [Comment Edited] (CASSANDRA-15234) Standardise config and JVM parameters

2020-06-03 Thread Ekaterina Dimitrova (Jira)


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

Ekaterina Dimitrova edited comment on CASSANDRA-15234 at 6/4/20, 5:47 AM:
--

[ [Part 2 
|https://github.com/ekaterinadimitrova2/cassandra/tree/CASSANDRA-15234-3] ] [ 
[DTests 
|https://github.com/ekaterinadimitrova2/cassandra-dtest/tree/CASSANDRA-15234-3] 
] [ [CCM |https://github.com/ekaterinadimitrova2/ccm/tree/CASSANDRA-15234-3] ] 
[ [CI run 
|https://app.circleci.com/pipelines/github/ekaterinadimitrova2/cassandra/187/workflows/615cdebf-1d49-47ab-93a4-efad25a247b1]
 ]

 - Unit tests updated

- Getters and Setters names in the DatabaseDescriptor were updated to follow 
the new names of the parameters updated
 - The conversion of some of the parameters values which is happening in their 
getters is kept as it is needed in runtime. Some parameters are used with 
different units in the different areas of the codebase. So I left this part 
untouched.

 - New class created, ParseAndConvertUnits - it pulls all the functionality 
needed to cover the addition of units suffixes to the Memory, Duration, and 
Rate parameters in the cassandra.yaml

- the cassandra.yaml file in this branch contains currently the new parameters 
with new names and unit suffixes but the arrangement of the sections is the old 
one as this was causing me issues every time I rebase/commit. If we confirm the 
format, this will be the last step to switch to the new format

- Added some additional parsing and supporting conversion functions for the 
double duration parameters.

- The 2 failing cqlsh tests were fixed locally and tested. It was formatting 
issue. 

-1 unit test failed - it doesn't look a related issue but will check the config 
loaded to ensure that tomorrow

- 8 failing dtest, it doesn't look related but I am gonna compare tomorrow 
morning

 - Current version of the code needs a final rebase/merge of the last 6 commits 
on trunk.  Will do tomorrow after I recheck the CI and current version

- Have to return the default requirements.txt and config.yml files. The current 
versions were required only for testing purposes with CircleCI

*WARNING:* we should be careful with the dtests and ccm. One missed check for 
old/new parameter and default value of the respective parameter from Config 
will be loaded. This might not lead to failing test and thus silently cover the 
miss.

*NOTE:* Custom Types, as they were suggested, don't really work with SnakeYAML, 
unfortunately.  SnakeYAML supports nothing more than mapping between the yaml 
and the Config class.
 * _So something like that: Memory max_value = new Memory("5ms") wouldn't work. 
If there is no value in the yaml, the config default  max_value will be parsed 
properly but if there is value assigned to max_value at the yaml, it won't be 
assigned properly in Config. Classes are used for nested parameters. Also, 
currently there won't be a big benefit of the custom types as the different 
parameters validations in the DatabaseDescriptor are taking different 
approaches, there is no general framework/approach per group of parameters 
(Memory, Duration, Rate)._

_-_

The last part was updated as per the recommendations. CI ran successfully. Need 
to rebase and recheck nothing that might need the attention of this patch has 
changed in the meanwhile. Three weeks passed since I took care of this one. 
 [ [Part3 
|https://github.com/ekaterinadimitrova2/cassandra/tree/CASSANDRA-15234-5] ]  [  
[CI JAVA8 
|https://app.circleci.com/pipelines/github/ekaterinadimitrova2/cassandra/146/workflows/fae5da98-acf5-4824-bf61-3ffab3d86cd6]
 ] [ [CI Java11 
|https://app.circleci.com/pipelines/github/ekaterinadimitrova2/cassandra/146/workflows/21b088c4-8984-4b20-8302-2ff8adaf55f7]
 ]


was (Author: e.dimitrova):
[ [Part 2 
|https://github.com/ekaterinadimitrova2/cassandra/tree/CASSANDRA-15234-3] ] [ 
[DTests 
|https://github.com/ekaterinadimitrova2/cassandra-dtest/tree/CASSANDRA-15234-3] 
] [ [CCM |https://github.com/ekaterinadimitrova2/ccm/tree/CASSANDRA-15234-3] ] 
[ [CI run 
|https://app.circleci.com/pipelines/github/ekaterinadimitrova2/cassandra/187/workflows/615cdebf-1d49-47ab-93a4-efad25a247b1]
 ]

 - Unit tests updated

- Getters and Setters names in the DatabaseDescriptor were updated to follow 
the new names of the parameters updated
 - The conversion of some of the parameters values which is happening in their 
getters is kept as it is needed in runtime. Some parameters are used with 
different units in the different areas of the codebase. So I left this part 
untouched.

 - New class created, ParseAndConvertUnits - it pulls all the functionality 
needed to cover the addition of units suffixes to the Memory, Duration, and 
Rate parameters in the cassandra.yaml

- the cassandra.yaml file in this branch contains currently the new parameters 
with 

[jira] [Comment Edited] (CASSANDRA-15234) Standardise config and JVM parameters

2020-06-03 Thread Ekaterina Dimitrova (Jira)


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

Ekaterina Dimitrova edited comment on CASSANDRA-15234 at 6/4/20, 5:43 AM:
--

[ [Part 2 
|https://github.com/ekaterinadimitrova2/cassandra/tree/CASSANDRA-15234-3] ] [ 
[DTests 
|https://github.com/ekaterinadimitrova2/cassandra-dtest/tree/CASSANDRA-15234-3] 
] [ [CCM |https://github.com/ekaterinadimitrova2/ccm/tree/CASSANDRA-15234-3] ] 
[ [CI run 
|https://app.circleci.com/pipelines/github/ekaterinadimitrova2/cassandra/187/workflows/615cdebf-1d49-47ab-93a4-efad25a247b1]
 ]

 - Unit tests updated

- Getters and Setters names in the DatabaseDescriptor were updated to follow 
the new names of the parameters updated
 - The conversion of some of the parameters values which is happening in their 
getters is kept as it is needed in runtime. Some parameters are used with 
different units in the different areas of the codebase. So I left this part 
untouched.

 - New class created, ParseAndConvertUnits - it pulls all the functionality 
needed to cover the addition of units suffixes to the Memory, Duration, and 
Rate parameters in the cassandra.yaml

- the cassandra.yaml file in this branch contains currently the new parameters 
with new names and unit suffixes but the arrangement of the sections is the old 
one as this was causing me issues every time I rebase/commit. If we confirm the 
format, this will be the last step to switch to the new format

- Added some additional parsing and supporting conversion functions for the 
double duration parameters.

- The 2 failing cqlsh tests were fixed locally and tested. It was formatting 
issue. 

-1 unit test failed - it doesn't look a related issue but will check the config 
loaded to ensure that tomorrow

- 8 failing dtest, it doesn't look related but I am gonna compare tomorrow 
morning

 - Current version of the code needs a final rebase/merge of the last 6 commits 
on trunk.  Will do tomorrow after I recheck the CI and current version

- Have to return the default requirements.txt and config.yml files. The current 
versions were required only for testing purposes with CircleCI

*WARNING:* we should be careful with the dtests and ccm. One missed check for 
old/new parameter and default value of the respective parameter from Config 
will be loaded. This might not lead to failing test and thus silently cover the 
miss.

*NOTE:* Custom Types, as they were suggested, don't really work with SnakeYAML, 
unfortunately.  SnakeYAML supports nothing more than mapping between the yaml 
and the Config class.
 * _So something like that: Memory max_value = new Memory("5ms") wouldn't work. 
If there is no value in the yaml, the config default  max_value will be parsed 
properly but if there is value assigned to max_value at the yaml, it won't be 
assigned properly in Config. Classes are used for nested parameters. Also, 
currently there won't be a big benefit of the custom types as the different 
parameters validations in the db descriptor are taking different approaches, 
there is no general framework/approach._

_-_

The last part was updated as per the recommendations. CI ran successfully. Need 
to rebase and recheck nothing that might need the attention of this patch has 
changed in the meanwhile. Three weeks passed since I took care of this one. 
 [ [Part3 
|https://github.com/ekaterinadimitrova2/cassandra/tree/CASSANDRA-15234-5] ]  [  
[CI JAVA8 
|https://app.circleci.com/pipelines/github/ekaterinadimitrova2/cassandra/146/workflows/fae5da98-acf5-4824-bf61-3ffab3d86cd6]
 ] [ [CI Java11 
|https://app.circleci.com/pipelines/github/ekaterinadimitrova2/cassandra/146/workflows/21b088c4-8984-4b20-8302-2ff8adaf55f7]
 ]


was (Author: e.dimitrova):
[ [Part 2 
|https://github.com/ekaterinadimitrova2/cassandra/tree/CASSANDRA-15234-3] ] [ 
[DTests 
|https://github.com/ekaterinadimitrova2/cassandra-dtest/tree/CASSANDRA-15234-3] 
] [ [CCM |https://github.com/ekaterinadimitrova2/ccm/tree/CASSANDRA-15234-3] ] 
[ [CI run 
|https://app.circleci.com/pipelines/github/ekaterinadimitrova2/cassandra/187/workflows/615cdebf-1d49-47ab-93a4-efad25a247b1]
 ]

 - Unit tests updated

- Getters and Setters names in the DatabaseDescriptor were updated to follow 
the new names of the parameters updated
 - The conversion of some of the parameters values which is happening in their 
getters is kept as it is needed in runtime. Some parameters are used with 
different units in the different areas of the codebase. So I left this part 
untouched.

 - New class created, ParseAndConvertUnits - it pulls all the functionality 
needed to cover the addition of units suffixes to the Memory, Duration, and 
Rate parameters in the cassandra.yaml

- the cassandra.yaml file in this branch contains currently the new parameters 
with new names and unit suffixes but the arrangement of the 

[jira] [Comment Edited] (CASSANDRA-15234) Standardise config and JVM parameters

2020-06-03 Thread Ekaterina Dimitrova (Jira)


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

Ekaterina Dimitrova edited comment on CASSANDRA-15234 at 6/4/20, 5:42 AM:
--

[ [Part 2 
|https://github.com/ekaterinadimitrova2/cassandra/tree/CASSANDRA-15234-3] ] [ 
[DTests 
|https://github.com/ekaterinadimitrova2/cassandra-dtest/tree/CASSANDRA-15234-3] 
] [ [CCM |https://github.com/ekaterinadimitrova2/ccm/tree/CASSANDRA-15234-3] ] 
[ [CI run 
|https://app.circleci.com/pipelines/github/ekaterinadimitrova2/cassandra/187/workflows/615cdebf-1d49-47ab-93a4-efad25a247b1]
 ]

 - Unit tests updated

- Getters and Setters names in the DatabaseDescriptor were updated to follow 
the new names of the parameters updated
 - The conversion of some of the parameters values which is happening in their 
getters is kept as it is needed in runtime. Some parameters are used with 
different units in the different areas of the codebase. So I left this part 
untouched.

 - New class created, ParseAndConvertUnits - it pulls all the functionality 
needed to cover the addition of units suffixes to the Memory, Duration, and 
Rate parameters in the cassandra.yaml

- the cassandra.yaml file in this branch contains currently the new parameters 
with new names and unit suffixes but the arrangement of the sections is the old 
one as this was causing me issues every time I rebase/commit. If we confirm the 
format, this will be the last step to switch to the new format

- Added some additional parsing and supporting conversion functions for the 
double duration parameters.

- The 2 failing cqlsh tests were fixed locally and tested. It was formatting 
issue. 

-1 unit test failed - it doesn't look a related issue but will check the config 
loaded to ensure that tomorrow

- 8 failing dtest, it doesn't look related but I am gonna compare tomorrow 
morning

 - Current version of the code needs a final rebase/merge of the last 6 commits 
on trunk.  Will do tomorrow after I recheck the CI and current version

- Have to return the default requirements.txt and config.yml files. The current 
versions were required only for testing purposes with CircleCI

*WARNING:* we should be careful with the dtests and ccm. One missed check for 
old/new parameter and default value of the respective parameter from Config 
will be loaded. This might not lead to failing test and thus silently cover the 
miss.

*NOTE:* Custom Types, as they were suggested, don't really work with SnakeYAML, 
unfortunately.  SnakeYAML supports nothing more than mapping between the yaml 
and the Config class.
 * _So something like that: Memory max_value = new Memory("5ms") wouldn't work. 
If there is no value in the yaml, the config default  max_value will be parsed 
properly but if there is value assigned to max_value at the yaml, it won't be 
assigned properly in Config. Classes are used for nested parameters. Also, 
currently there won't be a big benefit of the custom types as the different 
parameters validations in the db descriptor are taking different approaches, 
there is no general framework/approach._

_-_

The last part was updated as per the recommendations. CI ran successfully. Need 
to rebase and recheck nothing that might need the attention of this patch has 
changed in the meanwhile. Three weeks passed since I took care of this one. 
 [ [Part3 
|https://github.com/ekaterinadimitrova2/cassandra/tree/CASSANDRA-15234-5] ] [ 
[CI JAVA8 
|https://app.circleci.com/pipelines/github/ekaterinadimitrova2/cassandra/146/workflows/fae5da98-acf5-4824-bf61-3ffab3d86cd6]
 ] [ [CI Java11 
|https://app.circleci.com/pipelines/github/ekaterinadimitrova2/cassandra/146/workflows/21b088c4-8984-4b20-8302-2ff8adaf55f7]
 ]


was (Author: e.dimitrova):
[ [Part 2 
|https://github.com/ekaterinadimitrova2/cassandra/tree/CASSANDRA-15234-3] ] [ 
[DTests 
|https://github.com/ekaterinadimitrova2/cassandra-dtest/tree/CASSANDRA-15234-3] 
] [ [CCM |https://github.com/ekaterinadimitrova2/ccm/tree/CASSANDRA-15234-3] ] 
[ [CI run 
|https://app.circleci.com/pipelines/github/ekaterinadimitrova2/cassandra/187/workflows/615cdebf-1d49-47ab-93a4-efad25a247b1]
 ]

 - Unit tests updated

- Getters and Setters names in the DatabaseDescriptor were updated to follow 
the new names of the parameters updated
 - The conversion of some of the parameters values which is happening in their 
getters is kept as it is needed in runtime. Some parameters are used with 
different units in the different areas of the codebase. So I left this part 
untouched.

 - New class created, ParseAndConvertUnits - it pulls all the functionality 
needed to cover the addition of units suffixes to the Memory, Duration, and 
Rate parameters in the cassandra.yaml

- the cassandra.yaml file in this branch contains currently the new parameters 
with new names and unit suffixes but the arrangement of the 

[jira] [Commented] (CASSANDRA-15234) Standardise config and JVM parameters

2020-06-03 Thread Ekaterina Dimitrova (Jira)


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

Ekaterina Dimitrova commented on CASSANDRA-15234:
-

[ [Part 2 
|https://github.com/ekaterinadimitrova2/cassandra/tree/CASSANDRA-15234-3] ] [ 
[DTests 
|https://github.com/ekaterinadimitrova2/cassandra-dtest/tree/CASSANDRA-15234-3] 
] [ [CCM |https://github.com/ekaterinadimitrova2/ccm/tree/CASSANDRA-15234-3] ] 
[ [CI run 
|https://app.circleci.com/pipelines/github/ekaterinadimitrova2/cassandra/187/workflows/615cdebf-1d49-47ab-93a4-efad25a247b1]
 ]

 - Unit tests updated

- Getters and Setters names in the DatabaseDescriptor were updated to follow 
the new names of the parameters updated
 - The conversion of some of the parameters values which is happening in their 
getters is kept as it is needed in runtime. Some parameters are used with 
different units in the different areas of the codebase. So I left this part 
untouched.

 - New class created, ParseAndConvertUnits - it pulls all the functionality 
needed to cover the addition of units suffixes to the Memory, Duration, and 
Rate parameters in the cassandra.yaml

- the cassandra.yaml file in this branch contains currently the new parameters 
with new names and unit suffixes but the arrangement of the sections is the old 
one as this was causing me issues every time I rebase/commit. If we confirm the 
format, this will be the last step to switch to the new format

- Added some additional parsing and supporting conversion functions for the 
double duration parameters.

- The 2 failing cqlsh tests were fixed locally and tested. It was formatting 
issue. 

-1 unit test failed - it doesn't look a related issue but will check the config 
loaded to ensure that tomorrow

- 8 failing dtest, it doesn't look related but I am gonna compare tomorrow 
morning

 - Current version of the code needs a final rebase/merge of the last 6 commits 
on trunk.  Will do tomorrow after I recheck the CI and current version

- Have to return the default requirements.txt and config.yml files. The current 
versions were required only for testing purposes with CircleCI

*WARNING:* we should be careful with the dtests and ccm. One missed check for 
old/new parameter and default value of the respective parameter from Config 
will be loaded. This might not lead to failing test and thus silently cover the 
miss.

*NOTE:* Custom Types, as they were suggested, don't really work with SnakeYAML, 
unfortunately.  SnakeYAML supports nothing more than mapping between the yaml 
and the Config class.
 * _So something like that: Memory max_value = new Memory("5ms") wouldn't work. 
If there is no value in the yaml, the config default  max_value will be parsed 
properly but if there is value assigned to max_value at the yaml, it won't be 
assigned properly in Config. Classes are used for nested parameters. Also, 
currently there won't be a big benefit of the custom types as the different 
parameters validations in the db descriptor are taking different approaches, 
there is no general framework/approach._

_-_

The last part was updated as per the recommendations. CI ran successfully. Need 
to rebase and recheck nothing that might need the attention of this patch has 
changed in the meanwhile. Three weeks passed since I took care of this one. 
 [ [Part3 
|https://github.com/ekaterinadimitrova2/cassandra/tree/CASSANDRA-15234-5] ] [ 
[CI JAVA8 
|https://app.circleci.com/pipelines/github/ekaterinadimitrova2/cassandra/146/workflows/fae5da98-acf5-4824-bf61-3ffab3d86cd6]]
 [ [CI Java11 
|https://app.circleci.com/pipelines/github/ekaterinadimitrova2/cassandra/146/workflows/21b088c4-8984-4b20-8302-2ff8adaf55f7]
 ]

> Standardise config and JVM parameters
> -
>
> Key: CASSANDRA-15234
> URL: https://issues.apache.org/jira/browse/CASSANDRA-15234
> Project: Cassandra
>  Issue Type: Bug
>  Components: Local/Config
>Reporter: Benedict Elliott Smith
>Assignee: Ekaterina Dimitrova
>Priority: Normal
> Fix For: 4.0-alpha
>
>
> We have a bunch of inconsistent names and config patterns in the codebase, 
> both from the yams and JVM properties.  It would be nice to standardise the 
> naming (such as otc_ vs internode_) as well as the provision of values with 
> units - while maintaining perpetual backwards compatibility with the old 
> parameter names, of course.
> For temporal units, I would propose parsing strings with suffixes of:
> {{code}}
> u|micros(econds?)?
> ms|millis(econds?)?
> s(econds?)?
> m(inutes?)?
> h(ours?)?
> d(ays?)?
> mo(nths?)?
> {{code}}
> For rate units, I would propose parsing any of the standard {{B/s, KiB/s, 
> MiB/s, GiB/s, TiB/s}}.
> Perhaps for avoiding ambiguity we could not accept bauds {{bs, Mbps}} or 
> powers of 1000 such as 

[jira] [Updated] (CASSANDRA-15850) Delay between Gossip settle and CQL port opening during the startup

2020-06-03 Thread Jai Bheemsen Rao Dhanwada (Jira)


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

Jai Bheemsen Rao Dhanwada updated CASSANDRA-15850:
--
Impacts:   (was: None)

> Delay between Gossip settle and CQL port opening during the startup
> ---
>
> Key: CASSANDRA-15850
> URL: https://issues.apache.org/jira/browse/CASSANDRA-15850
> Project: Cassandra
>  Issue Type: Bug
>Reporter: Jai Bheemsen Rao Dhanwada
>Priority: Normal
>
> Hello,
> When I am bootstrapping/restarting a Cassandra Node, there is a delay between 
> gossip settle and CQL port opening. Can someone please explain me where this 
> delay is configured and can this be changed? I don't see any information in 
> the logs
> In my case if you see there is  a ~3 minutes delay and this increases if I 
> increase the #of tables and #of nodes and DC.
> {code:java}
> INFO  [main] 2020-05-31 23:51:07,554 Gossiper.java:1692 - Waiting for gossip 
> to settle...
> INFO  [main] 2020-05-31 23:51:15,555 Gossiper.java:1723 - No gossip backlog; 
> proceeding
> INFO  [main] 2020-05-31 23:54:06,867 NativeTransportService.java:70 - Netty 
> using native Epoll event loop
> INFO  [main] 2020-05-31 23:54:06,913 Server.java:155 - Using Netty Version: 
> [netty-buffer=netty-buffer-4.0.44.Final.452812a, 
> netty-codec=netty-codec-4.0.44.Final.452812a, 
> netty-codec-haproxy=netty-codec-haproxy-4.0.44.Final.452812a, 
> netty-codec-http=netty-codec-http-4.0.44.Final.452812a, 
> netty-codec-socks=netty-codec-socks-4.0.44.Final.452812a, 
> netty-common=netty-common-4.0.44.Final.452812a, 
> netty-handler=netty-handler-4.0.44.Final.452812a, 
> netty-tcnative=netty-tcnative-1.1.33.Fork26.142ecbb, 
> netty-transport=netty-transport-4.0.44.Final.452812a, 
> netty-transport-native-epoll=netty-transport-native-epoll-4.0.44.Final.452812a,
>  netty-transport-rxtx=netty-transport-rxtx-4.0.44.Final.452812a, 
> netty-transport-sctp=netty-transport-sctp-4.0.44.Final.452812a, 
> netty-transport-udt=netty-transport-udt-4.0.44.Final.452812a]
> INFO  [main] 2020-05-31 23:54:06,913 Server.java:156 - Starting listening for 
> CQL clients on /x.x.x.x:9042 (encrypted)...
> {code}
> Also during this 3-10 minutes delay, I see 
> {noformat}
> nodetool compactionstats
> {noformat}
>  command is hung and never respond, until the CQL port is up and running.
> Can someone please help me understand the delay here?
> Cassandra Version: 3.11.3
> The issue can be easily reproducible with around 300 Tables and 100 nodes in 
> a cluster.



--
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-15850) Delay between Gossip settle and CQL port opening during the startup

2020-06-03 Thread Jai Bheemsen Rao Dhanwada (Jira)
Jai Bheemsen Rao Dhanwada created CASSANDRA-15850:
-

 Summary: Delay between Gossip settle and CQL port opening during 
the startup
 Key: CASSANDRA-15850
 URL: https://issues.apache.org/jira/browse/CASSANDRA-15850
 Project: Cassandra
  Issue Type: Bug
Reporter: Jai Bheemsen Rao Dhanwada


Hello,

When I am bootstrapping/restarting a Cassandra Node, there is a delay between 
gossip settle and CQL port opening. Can someone please explain me where this 
delay is configured and can this be changed? I don't see any information in the 
logs

In my case if you see there is  a ~3 minutes delay and this increases if I 
increase the #of tables and #of nodes and DC.


{code:java}
INFO  [main] 2020-05-31 23:51:07,554 Gossiper.java:1692 - Waiting for gossip to 
settle...
INFO  [main] 2020-05-31 23:51:15,555 Gossiper.java:1723 - No gossip backlog; 
proceeding
INFO  [main] 2020-05-31 23:54:06,867 NativeTransportService.java:70 - Netty 
using native Epoll event loop
INFO  [main] 2020-05-31 23:54:06,913 Server.java:155 - Using Netty Version: 
[netty-buffer=netty-buffer-4.0.44.Final.452812a, 
netty-codec=netty-codec-4.0.44.Final.452812a, 
netty-codec-haproxy=netty-codec-haproxy-4.0.44.Final.452812a, 
netty-codec-http=netty-codec-http-4.0.44.Final.452812a, 
netty-codec-socks=netty-codec-socks-4.0.44.Final.452812a, 
netty-common=netty-common-4.0.44.Final.452812a, 
netty-handler=netty-handler-4.0.44.Final.452812a, 
netty-tcnative=netty-tcnative-1.1.33.Fork26.142ecbb, 
netty-transport=netty-transport-4.0.44.Final.452812a, 
netty-transport-native-epoll=netty-transport-native-epoll-4.0.44.Final.452812a, 
netty-transport-rxtx=netty-transport-rxtx-4.0.44.Final.452812a, 
netty-transport-sctp=netty-transport-sctp-4.0.44.Final.452812a, 
netty-transport-udt=netty-transport-udt-4.0.44.Final.452812a]
INFO  [main] 2020-05-31 23:54:06,913 Server.java:156 - Starting listening for 
CQL clients on /x.x.x.x:9042 (encrypted)...
{code}


Also during this 3-10 minutes delay, I see 
{noformat}
nodetool compactionstats
{noformat}
 command is hung and never respond, until the CQL port is up and running.

Can someone please help me understand the delay here?

Cassandra Version: 3.11.3


The issue can be easily reproducible with around 300 Tables and 100 nodes in a 
cluster.



--
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-15733) jvm dtest builder should be provided to the factory and expose state

2020-06-03 Thread David Capwell (Jira)


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

David Capwell commented on CASSANDRA-15733:
---

[~ifesdjeen] poke =)

> jvm dtest builder should be provided to the factory and expose state
> 
>
> Key: CASSANDRA-15733
> URL: https://issues.apache.org/jira/browse/CASSANDRA-15733
> Project: Cassandra
>  Issue Type: Improvement
>  Components: Test/dtest
>Reporter: David Capwell
>Assignee: David Capwell
>Priority: Normal
>  Labels: pull-request-available
>  Time Spent: 3h
>  Remaining Estimate: 0h
>
> Currently the builder is rather heavy and creates configs plus call the 
> factory with specific fields only, this isn’t that flexible and makes it 
> harder to have custom cluster definitions which require additional fields to 
> be defined.  To solve this we should make the builder be sent to the factory 
> and expose the state so the factory can get all the fields it needs, the 
> factory should also be in charge of creating the configs



--
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-15299) CASSANDRA-13304 follow-up: improve checksumming and compression in protocol v5-beta

2020-06-03 Thread Josh McKenzie (Jira)


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

Josh McKenzie commented on CASSANDRA-15299:
---

{quote}There's also still quite a bit of internal stuff to be done,
{quote}
Anything anyone can do to help on this? This is one of our last blockers before 
cutting beta.

> CASSANDRA-13304 follow-up: improve checksumming and compression in protocol 
> v5-beta
> ---
>
> Key: CASSANDRA-15299
> URL: https://issues.apache.org/jira/browse/CASSANDRA-15299
> Project: Cassandra
>  Issue Type: Improvement
>  Components: Messaging/Client
>Reporter: Aleksey Yeschenko
>Assignee: Sam Tunnicliffe
>Priority: Normal
>  Labels: protocolv5
> Fix For: 4.0-alpha
>
>
> CASSANDRA-13304 made an important improvement to our native protocol: it 
> introduced checksumming/CRC32 to request and response bodies. It’s an 
> important step forward, but it doesn’t cover the entire stream. In 
> particular, the message header is not covered by a checksum or a crc, which 
> poses a correctness issue if, for example, {{streamId}} gets corrupted.
> Additionally, we aren’t quite using CRC32 correctly, in two ways:
> 1. We are calculating the CRC32 of the *decompressed* value instead of 
> computing the CRC32 on the bytes written on the wire - losing the properties 
> of the CRC32. In some cases, due to this sequencing, attempting to decompress 
> a corrupt stream can cause a segfault by LZ4.
> 2. When using CRC32, the CRC32 value is written in the incorrect byte order, 
> also losing some of the protections.
> See https://users.ece.cmu.edu/~koopman/pubs/KoopmanCRCWebinar9May2012.pdf for 
> explanation for the two points above.
> Separately, there are some long-standing issues with the protocol - since 
> *way* before CASSANDRA-13304. Importantly, both checksumming and compression 
> operate on individual message bodies rather than frames of multiple complete 
> messages. In reality, this has several important additional downsides. To 
> name a couple:
> # For compression, we are getting poor compression ratios for smaller 
> messages - when operating on tiny sequences of bytes. In reality, for most 
> small requests and responses we are discarding the compressed value as it’d 
> be smaller than the uncompressed one - incurring both redundant allocations 
> and compressions.
> # For checksumming and CRC32 we pay a high overhead price for small messages. 
> 4 bytes extra is *a lot* for an empty write response, for example.
> To address the correctness issue of {{streamId}} not being covered by the 
> checksum/CRC32 and the inefficiency in compression and checksumming/CRC32, we 
> should switch to a framing protocol with multiple messages in a single frame.
> I suggest we reuse the framing protocol recently implemented for internode 
> messaging in CASSANDRA-15066 to the extent that its logic can be borrowed, 
> and that we do it before native protocol v5 graduates from beta. See 
> https://github.com/apache/cassandra/blob/trunk/src/java/org/apache/cassandra/net/FrameDecoderCrc.java
>  and 
> https://github.com/apache/cassandra/blob/trunk/src/java/org/apache/cassandra/net/FrameDecoderLZ4.java.



--
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-14761) Rename speculative_retry to match additional_write_policy

2020-06-03 Thread Josh McKenzie (Jira)


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

Josh McKenzie commented on CASSANDRA-14761:
---

Removing fixver for now; I assume it's a major only type change due to API 
breaking but don't want to presume since I'm not sure what the path forward is 
for an experimental feature.

> Rename speculative_retry to match additional_write_policy
> -
>
> Key: CASSANDRA-14761
> URL: https://issues.apache.org/jira/browse/CASSANDRA-14761
> Project: Cassandra
>  Issue Type: Improvement
>  Components: Legacy/Core
>Reporter: Ariel Weisberg
>Priority: Normal
>
> It's not really speculative. This commit is where it was last named and shows 
> what to update 
> https://github.com/aweisberg/cassandra/commit/e1df8e977d942a1b0da7c2a7554149c781d0e6c3



--
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-14761) Rename speculative_retry to match additional_write_policy

2020-06-03 Thread Josh McKenzie (Jira)


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

Josh McKenzie updated CASSANDRA-14761:
--
Fix Version/s: (was: 4.0-alpha)

> Rename speculative_retry to match additional_write_policy
> -
>
> Key: CASSANDRA-14761
> URL: https://issues.apache.org/jira/browse/CASSANDRA-14761
> Project: Cassandra
>  Issue Type: Improvement
>  Components: Legacy/Core
>Reporter: Ariel Weisberg
>Priority: Normal
>
> It's not really speculative. This commit is where it was last named and shows 
> what to update 
> https://github.com/aweisberg/cassandra/commit/e1df8e977d942a1b0da7c2a7554149c781d0e6c3



--
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-15792) test_speculative_data_request - read_repair_test.TestSpeculativeReadRepair

2020-06-03 Thread Josh McKenzie (Jira)


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

Josh McKenzie commented on CASSANDRA-15792:
---

Thanks for the insight; agree on fixver. A little sad about the delay-based 
testing, though I assume converting to any kind of determinism would be 
significantly more invasive and artificial in the codebase so not worth 
pursuing. Perhaps commenting in the dtest the issue we ran into here so if we 
see it pop up subsequently (or annotating / elaborating in the failure state) 
pointing to this ticket could help in the future if this crops back up?

 

Just a thought.

> test_speculative_data_request - read_repair_test.TestSpeculativeReadRepair
> --
>
> Key: CASSANDRA-15792
> URL: https://issues.apache.org/jira/browse/CASSANDRA-15792
> Project: Cassandra
>  Issue Type: Bug
>  Components: Test/dtest
>Reporter: Ekaterina Dimitrova
>Assignee: Gianluca Righetto
>Priority: Normal
> Fix For: 4.0-beta
>
>
> Failing on the latest trunk here:
> https://app.circleci.com/pipelines/github/ekaterinadimitrova2/cassandra/127/workflows/dfba669d-4a5c-4553-b6a2-85647d0d8d2b/jobs/668/tests
> Failing once in 30 times as per Jenkins:
> https://jenkins-cm4.apache.org/job/Cassandra-trunk-dtest/69/testReport/dtest.read_repair_test/TestSpeculativeReadRepair/test_speculative_data_request/



--
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-15792) test_speculative_data_request - read_repair_test.TestSpeculativeReadRepair

2020-06-03 Thread Josh McKenzie (Jira)


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

Josh McKenzie updated CASSANDRA-15792:
--
Fix Version/s: (was: 4.0-alpha)
   4.0-beta

> test_speculative_data_request - read_repair_test.TestSpeculativeReadRepair
> --
>
> Key: CASSANDRA-15792
> URL: https://issues.apache.org/jira/browse/CASSANDRA-15792
> Project: Cassandra
>  Issue Type: Bug
>  Components: Test/dtest
>Reporter: Ekaterina Dimitrova
>Assignee: Gianluca Righetto
>Priority: Normal
> Fix For: 4.0-beta
>
>
> Failing on the latest trunk here:
> https://app.circleci.com/pipelines/github/ekaterinadimitrova2/cassandra/127/workflows/dfba669d-4a5c-4553-b6a2-85647d0d8d2b/jobs/668/tests
> Failing once in 30 times as per Jenkins:
> https://jenkins-cm4.apache.org/job/Cassandra-trunk-dtest/69/testReport/dtest.read_repair_test/TestSpeculativeReadRepair/test_speculative_data_request/



--
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-15685) flaky testWithMismatchingPending - org.apache.cassandra.distributed.test.PreviewRepairTest

2020-06-03 Thread Josh McKenzie (Jira)


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

Josh McKenzie commented on CASSANDRA-15685:
---

What do we think about moving fixver to 4.0-beta on this?

> flaky testWithMismatchingPending - 
> org.apache.cassandra.distributed.test.PreviewRepairTest
> --
>
> Key: CASSANDRA-15685
> URL: https://issues.apache.org/jira/browse/CASSANDRA-15685
> Project: Cassandra
>  Issue Type: Bug
>  Components: Test/dtest
>Reporter: Kevin Gallardo
>Assignee: Ekaterina Dimitrova
>Priority: Normal
>  Labels: pull-request-available
> Fix For: 4.0-alpha
>
> Attachments: log-CASSANDRA-15685.txt, output
>
>  Time Spent: 10m
>  Remaining Estimate: 0h
>
> Observed in: 
> https://app.circleci.com/pipelines/github/newkek/cassandra/34/workflows/1c6b157d-13c3-48a9-85fb-9fe8c153256b/jobs/191/tests
> Failure:
> {noformat}
> testWithMismatchingPending - 
> org.apache.cassandra.distributed.test.PreviewRepairTest
> junit.framework.AssertionFailedError
>   at 
> org.apache.cassandra.distributed.test.PreviewRepairTest.testWithMismatchingPending(PreviewRepairTest.java:97)
> {noformat}
> [Circle 
> CI|https://circleci.com/gh/dcapwell/cassandra/tree/bug%2FCASSANDRA-15685]



--
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-15848) Fully purged static row causes NPE in repaired data tracking

2020-06-03 Thread Marcus Eriksson (Jira)


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

Marcus Eriksson updated CASSANDRA-15848:

Reviewers: Marcus Eriksson

> Fully purged static row causes NPE in repaired data tracking
> 
>
> Key: CASSANDRA-15848
> URL: https://issues.apache.org/jira/browse/CASSANDRA-15848
> Project: Cassandra
>  Issue Type: Bug
>  Components: Legacy/Local Write-Read Paths
>Reporter: Sam Tunnicliffe
>Assignee: Sam Tunnicliffe
>Priority: Normal
> Fix For: 4.0-alpha
>
>
> During repaired data tracking, if the result of applying the purge function 
> to a static row is null, an exception is thrown from RepairedDataInfo. This 
> will cause a read exception from the replica and could lead to unavailable 
> results if hit on multiple replicas. A workaround is to disable repaired data 
> tracking.



--
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-15848) Fully purged static row causes NPE in repaired data tracking

2020-06-03 Thread Sam Tunnicliffe (Jira)


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

Sam Tunnicliffe updated CASSANDRA-15848:

Test and Documentation Plan: Added unit test. Existing unit/dtest/in-jvm 
dtests run.
 Status: Patch Available  (was: Open)

||branch||utests||in-jvm dtests||dtests_with_vnodes||dtests_no_vnodes||
|[15848-trunk|https://github.com/beobal/cassandra/tree/15848-trunk]|[jdk8|https://circleci.com/gh/beobal/cassandra/1460],
 
[jdk11|https://circleci.com/gh/beobal/cassandra/1461]|[jdk8|https://circleci.com/gh/beobal/cassandra/1459],
 
[jdk11|https://circleci.com/gh/beobal/cassandra/1458]|[jdk8|https://circleci.com/gh/beobal/cassandra/1462],
 
[jdk11|https://circleci.com/gh/beobal/cassandra/1465]|[jdk8|https://circleci.com/gh/beobal/cassandra/1463],
 [jdk11|https://circleci.com/gh/beobal/cassandra/1464]|


> Fully purged static row causes NPE in repaired data tracking
> 
>
> Key: CASSANDRA-15848
> URL: https://issues.apache.org/jira/browse/CASSANDRA-15848
> Project: Cassandra
>  Issue Type: Bug
>  Components: Legacy/Local Write-Read Paths
>Reporter: Sam Tunnicliffe
>Assignee: Sam Tunnicliffe
>Priority: Normal
> Fix For: 4.0-alpha
>
>
> During repaired data tracking, if the result of applying the purge function 
> to a static row is null, an exception is thrown from RepairedDataInfo. This 
> will cause a read exception from the replica and could lead to unavailable 
> results if hit on multiple replicas. A workaround is to disable repaired data 
> tracking.



--
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-15822) DOC - Improve C* configuration docs

2020-06-03 Thread Jon Haddad (Jira)


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

Jon Haddad updated CASSANDRA-15822:
---
  Fix Version/s: 4.0-alpha5
Source Control Link: https://issues.apache.org/jira/browse/CASSANDRA-15822
 Resolution: Fixed
 Status: Resolved  (was: Ready to Commit)

Made a couple minor tweaks, rebased and committed.  Thanks!

> DOC - Improve C* configuration docs
> ---
>
> Key: CASSANDRA-15822
> URL: https://issues.apache.org/jira/browse/CASSANDRA-15822
> Project: Cassandra
>  Issue Type: Improvement
>  Components: Documentation/Website
>Reporter: Lorina Poland
>Assignee: Lorina Poland
>Priority: Normal
> Fix For: 4.0-alpha5
>
>
> Two sections, Getting started > Configuring  and Configuration, could use 
> improvement. 
> Adding information about some of the other config files besides 
> cassandra.yaml is one key goal. 
>  
> At the risk of contaminating one ticket with another project, I started 
> creating a separate glossary file, so that key terms in configuration can be 
> linked to a glossary that describes terms.



--
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-15822) DOC - Improve C* configuration docs

2020-06-03 Thread Jon Haddad (Jira)


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

Jon Haddad updated CASSANDRA-15822:
---
Status: Ready to Commit  (was: Review In Progress)

> DOC - Improve C* configuration docs
> ---
>
> Key: CASSANDRA-15822
> URL: https://issues.apache.org/jira/browse/CASSANDRA-15822
> Project: Cassandra
>  Issue Type: Improvement
>  Components: Documentation/Website
>Reporter: Lorina Poland
>Assignee: Lorina Poland
>Priority: Normal
>
> Two sections, Getting started > Configuring  and Configuration, could use 
> improvement. 
> Adding information about some of the other config files besides 
> cassandra.yaml is one key goal. 
>  
> At the risk of contaminating one ticket with another project, I started 
> creating a separate glossary file, so that key terms in configuration can be 
> linked to a glossary that describes terms.



--
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-15822) DOC - Improve C* configuration docs

2020-06-03 Thread Jon Haddad (Jira)


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

Jon Haddad updated CASSANDRA-15822:
---
Reviewers: Jon Haddad, Jon Haddad  (was: Jon Haddad)
   Jon Haddad, Jon Haddad  (was: Jon Haddad)
   Status: Review In Progress  (was: Patch Available)

> DOC - Improve C* configuration docs
> ---
>
> Key: CASSANDRA-15822
> URL: https://issues.apache.org/jira/browse/CASSANDRA-15822
> Project: Cassandra
>  Issue Type: Improvement
>  Components: Documentation/Website
>Reporter: Lorina Poland
>Assignee: Lorina Poland
>Priority: Normal
>
> Two sections, Getting started > Configuring  and Configuration, could use 
> improvement. 
> Adding information about some of the other config files besides 
> cassandra.yaml is one key goal. 
>  
> At the risk of contaminating one ticket with another project, I started 
> creating a separate glossary file, so that key terms in configuration can be 
> linked to a glossary that describes terms.



--
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: Improving Cassandra configuration docs

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

rustyrazorblade 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 57a63f8  Improving Cassandra configuration docs
57a63f8 is described below

commit 57a63f8551448d10d39f67d138842e0c81414526
Author: polandll 
AuthorDate: Fri May 8 17:24:32 2020 -0700

Improving Cassandra configuration docs

* Update copyright date to 2020
* Add glossary
* Rearranged rackdc for better flow
* Add topologies properties file
* Add commitlog_archiving file
* Add logback.xml info
* jvm.options files
* Removed invalid reference to wiki from configuration file

Patch by Lorina Poland; Reviewed by Jon Haddad for CASSANDRA-15822
---
 conf/cassandra.yaml|5 +-
 doc/Dockerfile |2 +-
 doc/source/conf.py |2 +-
 doc/source/configuration/cass_cl_archive_file.rst  |   46 +
 doc/source/configuration/cass_env_sh_file.rst  |  132 ++
 doc/source/configuration/cass_jvm_options_file.rst |   10 +
 doc/source/configuration/cass_logback_xml_file.rst |  157 ++
 doc/source/configuration/cass_rackdc_file.rst  |   67 +
 doc/source/configuration/cass_topo_file.rst|   48 +
 doc/source/configuration/cass_yaml_file.rst| 2074 
 doc/source/configuration/index.rst |8 +-
 doc/source/getting_started/configuring.rst |   59 +-
 doc/source/glossary.rst|   35 +
 13 files changed, 2615 insertions(+), 30 deletions(-)

diff --git a/conf/cassandra.yaml b/conf/cassandra.yaml
index 6db9557..3a44a09 100644
--- a/conf/cassandra.yaml
+++ b/conf/cassandra.yaml
@@ -1,7 +1,7 @@
 # Cassandra storage config YAML
 
 # NOTE:
-#   See http://wiki.apache.org/cassandra/StorageConfiguration for
+#   See https://cassandra.apache.org/doc/latest/configuration/ for
 #   full explanations of configuration directives
 # /NOTE
 
@@ -20,8 +20,6 @@ cluster_name: 'Test Cluster'
 # Specifying initial_token will override this setting on the node's initial 
start,
 # on subsequent starts, this setting will apply even if initial token is set.
 #
-# If you already have a cluster with 1 token per node, and wish to migrate to 
-# multiple tokens per node, see http://wiki.apache.org/cassandra/Operations
 num_tokens: 256
 
 # Triggers automatic allocation of num_tokens tokens for this node. The 
allocation
@@ -47,7 +45,6 @@ num_tokens: 256
 # that do not have vnodes enabled.
 # initial_token:
 
-# See http://wiki.apache.org/cassandra/HintedHandoff
 # May either be "true" or "false" to enable globally
 hinted_handoff_enabled: true
 
diff --git a/doc/Dockerfile b/doc/Dockerfile
index 8999464..fcb4c41 100644
--- a/doc/Dockerfile
+++ b/doc/Dockerfile
@@ -13,7 +13,7 @@ RUN apt-get update && apt-get install -y 
software-properties-common
 RUN wget -qO - https://adoptopenjdk.jfrog.io/adoptopenjdk/api/gpg/key/public | 
apt-key add - \
 && add-apt-repository --yes 
https://adoptopenjdk.jfrog.io/adoptopenjdk/deb/ \
 && apt-get update \
-&& apt-get install -y adoptopenjdk-8-hotspot ant
+&& apt-get install -y adoptopenjdk-11-hotspot ant
 
 
 RUN apt-get clean
diff --git a/doc/source/conf.py b/doc/source/conf.py
index 7143b23..48f87a8 100644
--- a/doc/source/conf.py
+++ b/doc/source/conf.py
@@ -75,7 +75,7 @@ master_doc = 'index'
 
 # General information about the project.
 project = u'Apache Cassandra'
-copyright = u'2016, The Apache Cassandra team'
+copyright = u'2020, The Apache Cassandra team'
 author = u'The Apache Cassandra team'
 
 # The version info for the project you're documenting, acts as replacement for
diff --git a/doc/source/configuration/cass_cl_archive_file.rst 
b/doc/source/configuration/cass_cl_archive_file.rst
new file mode 100644
index 000..fc14440
--- /dev/null
+++ b/doc/source/configuration/cass_cl_archive_file.rst
@@ -0,0 +1,46 @@
+.. _cassandra-cl-archive:
+
+commitlog-archiving.properties file 
+
+
+The ``commitlog-archiving.properties`` configuration file can optionally set 
commands that are executed when archiving or restoring a commitlog segment. 
+
+===
+Options
+===
+
+``archive_command=``
+--
+One command can be inserted with %path and %name arguments. %path is the fully 
qualified path of the commitlog segment to archive. %name is the filename of 
the commitlog. STDOUT, STDIN, or multiple commands cannot be executed. If 
multiple commands are required, add a pointer to a script in this option.
+
+**Example:** archive_command=/bin/ln %path /backup/%name
+
+**Default value:** blank
+
+``restore_command=``
+--
+One command can be inserted with %from and %to arguments. %from is the fully 
qualified path to an archived commitlog segment 

[jira] [Commented] (CASSANDRA-15700) Performance regression on internode messaging

2020-06-03 Thread Sergio Bossa (Jira)


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

Sergio Bossa commented on CASSANDRA-15700:
--

[~aleksey] thanks for reviewing: getting back to this after two months and 
having to rebuild the whole thing in my mind, made me realize how complex this 
is, and that I should have put a couple more comments, so apologies and kudos 
for getting through it all alone :)

That said, to answer your question straight: the race you point out is 
absolutely correct, and was unfortunately overlooked by myself, but there 
should be an easy fix. Before going with that, I think I have to clarify first 
why I introduced the new {{nextExpirationDeadline}} variable along 
{{earliestExpiryTime}}. Simply put, if we only track time via 
{{earliestExpiryTime}} during both {{add}} and {{prune}}, we risk getting into 
a race where we accumulate an unbounded number of messages until the next 
expiration, as shown in the following scenario:
1. {{add}} is called N times with {{earliestExpiryTime}} set as the minimum 
time among the added messages; you can't adjust in this case by the current 
time otherwise you would never expire (as the time would always shift).
2. {{prune}} is called and {{earliestExpiryTime}} is set as the minimum between 
the minimum time among the pruned messages and the current expiry time.
3. This means that any messages arrived between the start and end of the 
pruning whose expiry time was not the minimum, but still less than the minimum 
expiry time among pruned messages, would be "ignored" and remain in the queue.

At this point you might say it really sounds like the race you discovered and 
in a way it is :) Although in the above case the race window would be much 
larger (the whole {{prune}}).

Anyway, as I said there should be an easy fix: the deadline should be updated 
only if it's actually the minimum value (adjusted by current time), and I've 
sent a new commit with such fix. I don't see a way to fix the same kind of 
races by just keeping a single variable, but let me know if you find any.

> Performance regression on internode messaging
> -
>
> Key: CASSANDRA-15700
> URL: https://issues.apache.org/jira/browse/CASSANDRA-15700
> Project: Cassandra
>  Issue Type: Bug
>  Components: Messaging/Internode
>Reporter: Sergio Bossa
>Assignee: Sergio Bossa
>Priority: Normal
>  Labels: pull-request-available
> Fix For: 4.0-beta
>
> Attachments: Oss40patchedvsOss311.png, Oss40vsOss311.png, oss40.gc, 
> oss40_nogc.tar.xz, oss40_system.log
>
>  Time Spent: 10m
>  Remaining Estimate: 0h
>
> Me and [~jasonstack] have been investigating a performance regression 
> affecting 4.0 during a 3 nodes, RF 3 write throughput test with a timeseries 
> like workload, as shown in this plot, where blue is 3.11 and orange is 4.0:
> !Oss40vsOss311.png|width=389,height=214!
>  It's been a bit of a long investigation, but two clues ended up standing out:
> 1) An abnormal number of expired messages on 4.0 (as shown in the attached  
> system log), while 3.11 has almost none.
> 2) An abnormal GC activity (as shown in the attached gc log).
> Turns out the two are related, as the [on expired 
> callback|https://github.com/apache/cassandra/blob/trunk/src/java/org/apache/cassandra/net/OutboundConnection.java#L462]
>  creates a huge amount of strings in the {{id()}} call. The next question is 
> what causes all those message expirations; we thoroughly reviewed the 
> internode messaging code and the only issue we could find so far is related 
> to the "batch pruning" calls 
> [here|https://github.com/apache/cassandra/blob/trunk/src/java/org/apache/cassandra/net/OutboundMessageQueue.java#L81]
>  and 
> [here|https://github.com/apache/cassandra/blob/trunk/src/java/org/apache/cassandra/net/OutboundMessageQueue.java#L188]:
>  it _seems_ too much time is spent on those, causing the event loop to fall 
> behind in processing the rest of the messages, which will end up being 
> expired. This is supported by the analysis of the collapsed stacks (after 
> fixing the GC issue):
> {noformat}
> (tprint (top-aggregated-calls oss40nogc "EventLoopDelivery:doRun" 5))
> org/apache/cassandra/net/OutboundConnection$EventLoopDelivery:doRun 3456
> org/apache/cassandra/net/OutboundMessageQueue:access$600 1621
> org/apache/cassandra/net/PrunableArrayQueue:prune 1621
> org/apache/cassandra/net/OutboundMessageQueue$WithLock:close 1621
> org/apache/cassandra/net/OutboundMessageQueue:pruneInternalQueueWithLock 1620
> {noformat}
> Those are the top 5 sampled calls from {{EventLoopDelivery#doRun()}} which 
> spends half of its time pruning. But only a tiny portion of such pruning time 
> is spent actually expiring:
> {noformat}
> 

[jira] [Updated] (CASSANDRA-15849) Remove generated files from apache-cassandra-*-src.tar.gz artifacts

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


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

Michael Semb Wever updated CASSANDRA-15849:
---
Change Category: Semantic
 Complexity: Low Hanging Fruit
  Fix Version/s: 4.0-beta
 Status: Open  (was: Triage Needed)

> Remove generated files from apache-cassandra-*-src.tar.gz artifacts
> ---
>
> Key: CASSANDRA-15849
> URL: https://issues.apache.org/jira/browse/CASSANDRA-15849
> Project: Cassandra
>  Issue Type: Task
>  Components: Build
>Reporter: Michael Semb Wever
>Assignee: Michael Semb Wever
>Priority: Normal
> Fix For: 4.0-beta
>
>
> The apache-cassandra-*-src.tar.gz source artifacts contain a lot of generated 
> files. 
> These need to be excluded when putting together the source tarball.



--
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-14712) Add fqltool and auditlogviewer to rpm and deb packages

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


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

Michael Semb Wever updated CASSANDRA-14712:
---
  Fix Version/s: (was: 4.x)
 4.0-alpha5
 4.0
  Since Version: 4.0-alpha1
Source Control Link: 
https://github.com/apache/cassandra/commit/ecf2c9ccd482c4b08355a288213326dc7a8cdcef
 Resolution: Fixed
 Status: Resolved  (was: Ready to Commit)

Committed as [ecf2c9ccd482c4b08355a288213326dc7a8cdcef 
|https://github.com/apache/cassandra/commit/ecf2c9ccd482c4b08355a288213326dc7a8cdcef].

Thanks [~stefan.miklosovic]!

> Add fqltool and auditlogviewer to rpm and deb packages
> --
>
> Key: CASSANDRA-14712
> URL: https://issues.apache.org/jira/browse/CASSANDRA-14712
> Project: Cassandra
>  Issue Type: Bug
>  Components: Packaging
>Reporter: Stefan Podkowinski
>Assignee: Stefan Miklosovic
>Priority: Normal
>  Labels: Java11, pull-request-available
> Fix For: 4.0, 4.0-alpha5
>
>  Time Spent: 2h 20m
>  Remaining Estimate: 0h
>
> Currently it's not possible to build any native packages (.deb/.rpm) for 
> trunk.
> cassandra-builds - docker/*-image.docker
>  * Add Java11 to debian+centos build image
>  * (packaged ant scripts won't work with Java 11 on centos, so we may have to 
> install ant from tarballs)
> cassandra-builds - docker/build-*.sh
>  * set JAVA8_HOME to Java8
>  * set JAVA_HOME to Java11 (4.0) or Java8 (<4.0)
> cassandra - redhat/cassandra.spec
>  * Check if patches still apply after CASSANDRA-14707
>  * Add fqltool as %files
> We may also have to change the version handling in build.xml or build-*.sh, 
> depending how we plan to release packages during beta, or if we plan to do so 
> at all before GA.



--
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 fqltool and auditlogviewer to rpm and deb packages

2020-06-03 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


The following commit(s) were added to refs/heads/trunk by this push:
 new ecf2c9c  Add fqltool and auditlogviewer to rpm and deb packages
ecf2c9c is described below

commit ecf2c9ccd482c4b08355a288213326dc7a8cdcef
Author: Stefan Miklosovic 
AuthorDate: Wed Mar 27 17:32:27 2019 +1100

Add fqltool and auditlogviewer to rpm and deb packages

 patch by Stefan Miklosovic; reviewed by Mick Semb Wever for CASSANDRA-14712
---
 CHANGES.txt  | 1 +
 debian/cassandra.install | 2 ++
 debian/rules | 4 
 redhat/cassandra | 2 +-
 redhat/cassandra.spec| 5 +
 5 files changed, 13 insertions(+), 1 deletion(-)

diff --git a/CHANGES.txt b/CHANGES.txt
index 09635e8..565f362 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -1,4 +1,5 @@
 4.0-alpha5
+ * Add fqltool and auditlogviewer to rpm and deb packages (CASSANDRA-14712)
  * Include DROPPED_COLUMNS in schema digest computation (CASSANDRA-15843)
  * Fix Cassandra restart from rpm install (CASSANDRA-15830)
  * Improve handling of 2i initialization failures (CASSANDRA-13606)
diff --git a/debian/cassandra.install b/debian/cassandra.install
index da800a4..be34838 100644
--- a/debian/cassandra.install
+++ b/debian/cassandra.install
@@ -21,6 +21,8 @@ bin/sstablescrub usr/bin
 bin/sstableupgrade usr/bin
 bin/sstableverify usr/bin
 tools/bin/cassandra-stress usr/bin
+tools/bin/fqltool usr/bin
+tools/bin/auditlogviewer usr/bin
 lib/*.jar usr/share/cassandra/lib
 lib/*.zip usr/share/cassandra/lib
 lib/sigar-bin/* usr/share/cassandra/lib/sigar-bin
diff --git a/debian/rules b/debian/rules
index 53874c2..e7fa32f 100755
--- a/debian/rules
+++ b/debian/rules
@@ -51,6 +51,10 @@ install: build
dh_install build/tools/lib/stress.jar \
usr/share/cassandra
 
+   # Copy fqltool jars
+   dh_install build/tools/lib/fqltool.jar \
+   usr/share/cassandra
+
dh_link usr/share/cassandra/apache-cassandra-$(VERSION).jar \
usr/share/cassandra/apache-cassandra.jar
 
diff --git a/redhat/cassandra b/redhat/cassandra
index 97a0447..77622b6 100644
--- a/redhat/cassandra
+++ b/redhat/cassandra
@@ -34,7 +34,7 @@ lock_file=/var/lock/subsys/$NAME
 CASSANDRA_PROG=/usr/sbin/cassandra
 
 # The first existing directory is used for JAVA_HOME if needed.
-JVM_SEARCH_DIRS="/usr/lib/jvm/jre /usr/lib/jvm/jre-1.7.* 
/usr/lib/jvm/java-1.7.*/jre"
+JVM_SEARCH_DIRS="/usr/lib/jvm/jre /usr/lib/jvm/jre-1.8.* 
/usr/lib/jvm/java-1.8.*/jre"
 
 # Read configuration variable file if it is present
 [ -r /etc/default/$NAME ] && . /etc/default/$NAME
diff --git a/redhat/cassandra.spec b/redhat/cassandra.spec
index 9ca9f4c..f42ab83 100644
--- a/redhat/cassandra.spec
+++ b/redhat/cassandra.spec
@@ -100,6 +100,9 @@ cp -pr lib/* %{buildroot}/usr/share/%{username}/lib/
 # copy stress jar
 cp -p build/tools/lib/stress.jar %{buildroot}/usr/share/%{username}/
 
+# copy fqltool jar
+cp -p build/tools/lib/fqltool.jar %{buildroot}/usr/share/%{username}/
+
 # copy binaries
 mv bin/cassandra %{buildroot}/usr/sbin/
 cp -p bin/* %{buildroot}/usr/bin/
@@ -177,6 +180,8 @@ This package contains extra tools for working with 
Cassandra clusters.
 %attr(755,root,root) %{_bindir}/sstableofflinerelevel
 %attr(755,root,root) %{_bindir}/sstablerepairedset
 %attr(755,root,root) %{_bindir}/sstablesplit
+%attr(755,root,root) %{_bindir}/auditlogviewer
+%attr(755,root,root) %{_bindir}/fqltool
 
 
 %changelog


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



[jira] [Commented] (CASSANDRA-15845) test_populate_mv_after_insert_wide_rows schema version update race

2020-06-03 Thread Berenguer Blasi (Jira)


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

Berenguer Blasi commented on CASSANDRA-15845:
-

Mmm the fix is no good {{V iewSchemaTest}} blocks now. So there might be legit 
cases for node schema agreement while the schema is being worked on. This needs 
further digging.

> test_populate_mv_after_insert_wide_rows schema version update race
> --
>
> Key: CASSANDRA-15845
> URL: https://issues.apache.org/jira/browse/CASSANDRA-15845
> Project: Cassandra
>  Issue Type: Bug
>  Components: Test/dtest
>Reporter: Berenguer Blasi
>Assignee: Berenguer Blasi
>Priority: Normal
> Fix For: 4.0-beta
>
>  Time Spent: 10m
>  Remaining Estimate: 0h
>
> See failure 
> [here|https://ci-cassandra.apache.org/job/Cassandra-trunk/155/testReport/dtest-novnode.materialized_views_test/TestMaterializedViews/test_populate_mv_after_insert_wide_rows_2/]
> {quote}Error Message
> assert 160 == 0  +  where 160 = Row(count=160).count
> Stacktrace
> self =  0x7fcb232b5760>
> def test_populate_mv_after_insert_wide_rows(self):
> """Test that a view is OK when created with existing data with wide 
> rows"""
> session = self.prepare(consistency_level=ConsistencyLevel.QUORUM)
> 
> session.execute("CREATE TABLE t (id int, v int, PRIMARY KEY (id, v))")
> 
> for i in range(5):
> for j in range(1):
> session.execute("INSERT INTO t (id, v) VALUES ({}, 
> {})".format(i, j))
> 
> session.execute(("CREATE MATERIALIZED VIEW t_by_v AS SELECT * FROM t 
> WHERE v IS NOT NULL "
>  "AND id IS NOT NULL PRIMARY KEY (v, id)"))
> 
> logger.debug("wait for view to build")
> self._wait_for_view("ks", "t_by_v")
> 
> logger.debug("wait that all batchlogs are replayed")
> >   self._replay_batchlogs()
> materialized_views_test.py:350: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> self =  0x7fcb232b5760>
> def _replay_batchlogs(self):
> for node in self.cluster.nodelist():
> if node.is_running():
> logger.debug("Replaying batchlog on node 
> {}".format(node.name))
> node.nodetool("replaybatchlog")
> # CASSANDRA-13069 - Ensure replayed mutations are removed 
> from the batchlog
> node_session = self.patient_exclusive_cql_connection(node)
> result = list(node_session.execute("SELECT count(*) FROM 
> system.batches;"))
> >   assert result[0].count == 0
> E   assert 160 == 0
> E+  where 160 = Row(count=160).count
> materialized_views_test.py:171: AssertionError{quote}



--
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-15845) test_populate_mv_after_insert_wide_rows schema version update race

2020-06-03 Thread Berenguer Blasi (Jira)


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

Berenguer Blasi edited comment on CASSANDRA-15845 at 6/3/20, 3:24 PM:
--

Mmm the fix is no good {{ViewSchemaTest}} blocks now. So there might be legit 
cases for node schema agreement while the schema is being worked on. This needs 
further digging.


was (Author: bereng):
Mmm the fix is no good {{V iewSchemaTest}} blocks now. So there might be legit 
cases for node schema agreement while the schema is being worked on. This needs 
further digging.

> test_populate_mv_after_insert_wide_rows schema version update race
> --
>
> Key: CASSANDRA-15845
> URL: https://issues.apache.org/jira/browse/CASSANDRA-15845
> Project: Cassandra
>  Issue Type: Bug
>  Components: Test/dtest
>Reporter: Berenguer Blasi
>Assignee: Berenguer Blasi
>Priority: Normal
> Fix For: 4.0-beta
>
>  Time Spent: 10m
>  Remaining Estimate: 0h
>
> See failure 
> [here|https://ci-cassandra.apache.org/job/Cassandra-trunk/155/testReport/dtest-novnode.materialized_views_test/TestMaterializedViews/test_populate_mv_after_insert_wide_rows_2/]
> {quote}Error Message
> assert 160 == 0  +  where 160 = Row(count=160).count
> Stacktrace
> self =  0x7fcb232b5760>
> def test_populate_mv_after_insert_wide_rows(self):
> """Test that a view is OK when created with existing data with wide 
> rows"""
> session = self.prepare(consistency_level=ConsistencyLevel.QUORUM)
> 
> session.execute("CREATE TABLE t (id int, v int, PRIMARY KEY (id, v))")
> 
> for i in range(5):
> for j in range(1):
> session.execute("INSERT INTO t (id, v) VALUES ({}, 
> {})".format(i, j))
> 
> session.execute(("CREATE MATERIALIZED VIEW t_by_v AS SELECT * FROM t 
> WHERE v IS NOT NULL "
>  "AND id IS NOT NULL PRIMARY KEY (v, id)"))
> 
> logger.debug("wait for view to build")
> self._wait_for_view("ks", "t_by_v")
> 
> logger.debug("wait that all batchlogs are replayed")
> >   self._replay_batchlogs()
> materialized_views_test.py:350: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> self =  0x7fcb232b5760>
> def _replay_batchlogs(self):
> for node in self.cluster.nodelist():
> if node.is_running():
> logger.debug("Replaying batchlog on node 
> {}".format(node.name))
> node.nodetool("replaybatchlog")
> # CASSANDRA-13069 - Ensure replayed mutations are removed 
> from the batchlog
> node_session = self.patient_exclusive_cql_connection(node)
> result = list(node_session.execute("SELECT count(*) FROM 
> system.batches;"))
> >   assert result[0].count == 0
> E   assert 160 == 0
> E+  where 160 = Row(count=160).count
> materialized_views_test.py:171: AssertionError{quote}



--
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-14712) Add fqltool and auditlogviewer to rpm and deb packages

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


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

Michael Semb Wever updated CASSANDRA-14712:
---
Status: Ready to Commit  (was: Review In Progress)

> Add fqltool and auditlogviewer to rpm and deb packages
> --
>
> Key: CASSANDRA-14712
> URL: https://issues.apache.org/jira/browse/CASSANDRA-14712
> Project: Cassandra
>  Issue Type: Bug
>  Components: Packaging
>Reporter: Stefan Podkowinski
>Assignee: Stefan Miklosovic
>Priority: Normal
>  Labels: Java11, pull-request-available
> Fix For: 4.x
>
>  Time Spent: 2h 20m
>  Remaining Estimate: 0h
>
> Currently it's not possible to build any native packages (.deb/.rpm) for 
> trunk.
> cassandra-builds - docker/*-image.docker
>  * Add Java11 to debian+centos build image
>  * (packaged ant scripts won't work with Java 11 on centos, so we may have to 
> install ant from tarballs)
> cassandra-builds - docker/build-*.sh
>  * set JAVA8_HOME to Java8
>  * set JAVA_HOME to Java11 (4.0) or Java8 (<4.0)
> cassandra - redhat/cassandra.spec
>  * Check if patches still apply after CASSANDRA-14707
>  * Add fqltool as %files
> We may also have to change the version handling in build.xml or build-*.sh, 
> depending how we plan to release packages during beta, or if we plan to do so 
> at all before GA.



--
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-14712) Add fqltool and auditlogviewer to rpm and deb packages

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


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

Michael Semb Wever updated CASSANDRA-14712:
---
Reviewers: Michael Semb Wever, Michael Semb Wever  (was: Michael Semb Wever)
   Michael Semb Wever, Michael Semb Wever  (was: Michael Semb Wever)
   Status: Review In Progress  (was: Patch Available)

> Add fqltool and auditlogviewer to rpm and deb packages
> --
>
> Key: CASSANDRA-14712
> URL: https://issues.apache.org/jira/browse/CASSANDRA-14712
> Project: Cassandra
>  Issue Type: Bug
>  Components: Packaging
>Reporter: Stefan Podkowinski
>Assignee: Stefan Miklosovic
>Priority: Normal
>  Labels: Java11, pull-request-available
> Fix For: 4.x
>
>  Time Spent: 2h 20m
>  Remaining Estimate: 0h
>
> Currently it's not possible to build any native packages (.deb/.rpm) for 
> trunk.
> cassandra-builds - docker/*-image.docker
>  * Add Java11 to debian+centos build image
>  * (packaged ant scripts won't work with Java 11 on centos, so we may have to 
> install ant from tarballs)
> cassandra-builds - docker/build-*.sh
>  * set JAVA8_HOME to Java8
>  * set JAVA_HOME to Java11 (4.0) or Java8 (<4.0)
> cassandra - redhat/cassandra.spec
>  * Check if patches still apply after CASSANDRA-14707
>  * Add fqltool as %files
> We may also have to change the version handling in build.xml or build-*.sh, 
> depending how we plan to release packages during beta, or if we plan to do so 
> at all before GA.



--
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-14712) Add fqltool and auditlogviewer to rpm and deb packages

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


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

Michael Semb Wever updated CASSANDRA-14712:
---
Test and Documentation Plan: 
Manually using cassandra-*-packaging.sh scripts.
(Will become automatic with CASSANDRA-15838
 Status: Patch Available  (was: Open)

> Add fqltool and auditlogviewer to rpm and deb packages
> --
>
> Key: CASSANDRA-14712
> URL: https://issues.apache.org/jira/browse/CASSANDRA-14712
> Project: Cassandra
>  Issue Type: Bug
>  Components: Packaging
>Reporter: Stefan Podkowinski
>Assignee: Stefan Miklosovic
>Priority: Normal
>  Labels: Java11, pull-request-available
> Fix For: 4.x
>
>  Time Spent: 2h 20m
>  Remaining Estimate: 0h
>
> Currently it's not possible to build any native packages (.deb/.rpm) for 
> trunk.
> cassandra-builds - docker/*-image.docker
>  * Add Java11 to debian+centos build image
>  * (packaged ant scripts won't work with Java 11 on centos, so we may have to 
> install ant from tarballs)
> cassandra-builds - docker/build-*.sh
>  * set JAVA8_HOME to Java8
>  * set JAVA_HOME to Java11 (4.0) or Java8 (<4.0)
> cassandra - redhat/cassandra.spec
>  * Check if patches still apply after CASSANDRA-14707
>  * Add fqltool as %files
> We may also have to change the version handling in build.xml or build-*.sh, 
> depending how we plan to release packages during beta, or if we plan to do so 
> at all before GA.



--
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-14712) Add fqltool and auditlogviewer to rpm and deb packages

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


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

Michael Semb Wever updated CASSANDRA-14712:
---
Test and Documentation Plan: 
Manually using cassandra-*-packaging.sh scripts.
(Will become automatic with CASSANDRA-15838 )

  was:
Manually using cassandra-*-packaging.sh scripts.
(Will become automatic with CASSANDRA-15838


> Add fqltool and auditlogviewer to rpm and deb packages
> --
>
> Key: CASSANDRA-14712
> URL: https://issues.apache.org/jira/browse/CASSANDRA-14712
> Project: Cassandra
>  Issue Type: Bug
>  Components: Packaging
>Reporter: Stefan Podkowinski
>Assignee: Stefan Miklosovic
>Priority: Normal
>  Labels: Java11, pull-request-available
> Fix For: 4.x
>
>  Time Spent: 2h 20m
>  Remaining Estimate: 0h
>
> Currently it's not possible to build any native packages (.deb/.rpm) for 
> trunk.
> cassandra-builds - docker/*-image.docker
>  * Add Java11 to debian+centos build image
>  * (packaged ant scripts won't work with Java 11 on centos, so we may have to 
> install ant from tarballs)
> cassandra-builds - docker/build-*.sh
>  * set JAVA8_HOME to Java8
>  * set JAVA_HOME to Java11 (4.0) or Java8 (<4.0)
> cassandra - redhat/cassandra.spec
>  * Check if patches still apply after CASSANDRA-14707
>  * Add fqltool as %files
> We may also have to change the version handling in build.xml or build-*.sh, 
> depending how we plan to release packages during beta, or if we plan to do so 
> at all before GA.



--
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-14712) Add fqltool and auditlogviewer to rpm and deb packages

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


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

Michael Semb Wever commented on CASSANDRA-14712:


A rebase off trunk of #307 is available at 
https://github.com/apache/cassandra/compare/trunk...thelastpickle:CASSANDRA-14712

Have tested it. (Had to add back the line {{rm -f bin/*.orig}} to 
{{cassandra.spec}}.

+1

> Add fqltool and auditlogviewer to rpm and deb packages
> --
>
> Key: CASSANDRA-14712
> URL: https://issues.apache.org/jira/browse/CASSANDRA-14712
> Project: Cassandra
>  Issue Type: Bug
>  Components: Packaging
>Reporter: Stefan Podkowinski
>Assignee: Stefan Miklosovic
>Priority: Normal
>  Labels: Java11, pull-request-available
> Fix For: 4.x
>
>  Time Spent: 2h 20m
>  Remaining Estimate: 0h
>
> Currently it's not possible to build any native packages (.deb/.rpm) for 
> trunk.
> cassandra-builds - docker/*-image.docker
>  * Add Java11 to debian+centos build image
>  * (packaged ant scripts won't work with Java 11 on centos, so we may have to 
> install ant from tarballs)
> cassandra-builds - docker/build-*.sh
>  * set JAVA8_HOME to Java8
>  * set JAVA_HOME to Java11 (4.0) or Java8 (<4.0)
> cassandra - redhat/cassandra.spec
>  * Check if patches still apply after CASSANDRA-14707
>  * Add fqltool as %files
> We may also have to change the version handling in build.xml or build-*.sh, 
> depending how we plan to release packages during beta, or if we plan to do so 
> at all before GA.



--
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-15845) test_populate_mv_after_insert_wide_rows schema version update race

2020-06-03 Thread Berenguer Blasi (Jira)


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

Berenguer Blasi updated CASSANDRA-15845:

Status: In Progress  (was: Patch Available)

> test_populate_mv_after_insert_wide_rows schema version update race
> --
>
> Key: CASSANDRA-15845
> URL: https://issues.apache.org/jira/browse/CASSANDRA-15845
> Project: Cassandra
>  Issue Type: Bug
>  Components: Test/dtest
>Reporter: Berenguer Blasi
>Assignee: Berenguer Blasi
>Priority: Normal
> Fix For: 4.0-beta
>
>  Time Spent: 10m
>  Remaining Estimate: 0h
>
> See failure 
> [here|https://ci-cassandra.apache.org/job/Cassandra-trunk/155/testReport/dtest-novnode.materialized_views_test/TestMaterializedViews/test_populate_mv_after_insert_wide_rows_2/]
> {quote}Error Message
> assert 160 == 0  +  where 160 = Row(count=160).count
> Stacktrace
> self =  0x7fcb232b5760>
> def test_populate_mv_after_insert_wide_rows(self):
> """Test that a view is OK when created with existing data with wide 
> rows"""
> session = self.prepare(consistency_level=ConsistencyLevel.QUORUM)
> 
> session.execute("CREATE TABLE t (id int, v int, PRIMARY KEY (id, v))")
> 
> for i in range(5):
> for j in range(1):
> session.execute("INSERT INTO t (id, v) VALUES ({}, 
> {})".format(i, j))
> 
> session.execute(("CREATE MATERIALIZED VIEW t_by_v AS SELECT * FROM t 
> WHERE v IS NOT NULL "
>  "AND id IS NOT NULL PRIMARY KEY (v, id)"))
> 
> logger.debug("wait for view to build")
> self._wait_for_view("ks", "t_by_v")
> 
> logger.debug("wait that all batchlogs are replayed")
> >   self._replay_batchlogs()
> materialized_views_test.py:350: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> self =  0x7fcb232b5760>
> def _replay_batchlogs(self):
> for node in self.cluster.nodelist():
> if node.is_running():
> logger.debug("Replaying batchlog on node 
> {}".format(node.name))
> node.nodetool("replaybatchlog")
> # CASSANDRA-13069 - Ensure replayed mutations are removed 
> from the batchlog
> node_session = self.patient_exclusive_cql_connection(node)
> result = list(node_session.execute("SELECT count(*) FROM 
> system.batches;"))
> >   assert result[0].count == 0
> E   assert 160 == 0
> E+  where 160 = Row(count=160).count
> materialized_views_test.py:171: AssertionError{quote}



--
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-15845) test_populate_mv_after_insert_wide_rows schema version update race

2020-06-03 Thread Berenguer Blasi (Jira)


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

Berenguer Blasi updated CASSANDRA-15845:

Test and Documentation Plan: See PR
 Status: Patch Available  (was: In Progress)

> test_populate_mv_after_insert_wide_rows schema version update race
> --
>
> Key: CASSANDRA-15845
> URL: https://issues.apache.org/jira/browse/CASSANDRA-15845
> Project: Cassandra
>  Issue Type: Bug
>  Components: Test/dtest
>Reporter: Berenguer Blasi
>Assignee: Berenguer Blasi
>Priority: Normal
> Fix For: 4.0-beta
>
>  Time Spent: 10m
>  Remaining Estimate: 0h
>
> See failure 
> [here|https://ci-cassandra.apache.org/job/Cassandra-trunk/155/testReport/dtest-novnode.materialized_views_test/TestMaterializedViews/test_populate_mv_after_insert_wide_rows_2/]
> {quote}Error Message
> assert 160 == 0  +  where 160 = Row(count=160).count
> Stacktrace
> self =  0x7fcb232b5760>
> def test_populate_mv_after_insert_wide_rows(self):
> """Test that a view is OK when created with existing data with wide 
> rows"""
> session = self.prepare(consistency_level=ConsistencyLevel.QUORUM)
> 
> session.execute("CREATE TABLE t (id int, v int, PRIMARY KEY (id, v))")
> 
> for i in range(5):
> for j in range(1):
> session.execute("INSERT INTO t (id, v) VALUES ({}, 
> {})".format(i, j))
> 
> session.execute(("CREATE MATERIALIZED VIEW t_by_v AS SELECT * FROM t 
> WHERE v IS NOT NULL "
>  "AND id IS NOT NULL PRIMARY KEY (v, id)"))
> 
> logger.debug("wait for view to build")
> self._wait_for_view("ks", "t_by_v")
> 
> logger.debug("wait that all batchlogs are replayed")
> >   self._replay_batchlogs()
> materialized_views_test.py:350: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> self =  0x7fcb232b5760>
> def _replay_batchlogs(self):
> for node in self.cluster.nodelist():
> if node.is_running():
> logger.debug("Replaying batchlog on node 
> {}".format(node.name))
> node.nodetool("replaybatchlog")
> # CASSANDRA-13069 - Ensure replayed mutations are removed 
> from the batchlog
> node_session = self.patient_exclusive_cql_connection(node)
> result = list(node_session.execute("SELECT count(*) FROM 
> system.batches;"))
> >   assert result[0].count == 0
> E   assert 160 == 0
> E+  where 160 = Row(count=160).count
> materialized_views_test.py:171: AssertionError{quote}



--
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-15845) test_populate_mv_after_insert_wide_rows schema version update race

2020-06-03 Thread Berenguer Blasi (Jira)


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

Berenguer Blasi commented on CASSANDRA-15845:
-

Ok I did run this for 1.5h continuously and it's all green except for 2 
failures which are 'new' or different from how this was failing before this 
fix. I submitted a PR for review. Meanwhile the 'new failure' I would address 
in a new ticket.

New failure:
{noformat}
--
 Captured stdout setup 
--
15:47:37,189 ccm DEBUG Log-watching thread starting.
---
 Captured log setup 

15:47:37,151 conftest INFO Starting execution of 
test_populate_mv_after_insert_wide_rows at 2020-06-03 15:47:37.151758
15:47:37,152 dtest_setup INFO cluster ccm directory: /tmp/dtest-3_i9j_ku

 Captured log call 

15:47:51,930 cassandra.cluster INFO New Cassandra host  
discovered
15:47:51,930 cassandra.cluster INFO New Cassandra host  
discovered
15:48:24,880 cassandra.protocol WARNING Server warning: Materialized views are 
experimental and are not recommended for production use.
15:48:25,920 cassandra.cluster INFO New Cassandra host  
discovered
15:48:25,921 cassandra.cluster INFO New Cassandra host  
discovered
15:48:25,947 cassandra.cluster INFO New Cassandra host  
discovered
15:48:25,947 cassandra.cluster INFO New Cassandra host  
discovered
15:48:25,984 cassandra.cluster INFO New Cassandra host  
discovered
15:48:25,984 cassandra.cluster INFO New Cassandra host  
discovered
15:48:27,973 cassandra.cluster INFO New Cassandra host  
discovered
15:48:27,973 cassandra.cluster INFO New Cassandra host  
discovered
15:48:28,108 cassandra.protocol WARNING Server warning: Aggregation query used 
without partition key

 Captured stdout teardown 
-
15:48:28,320 ccm DEBUG Log-watching thread exiting.
--
 Captured stdout setup 
--
15:48:29,170 ccm DEBUG Log-watching thread starting.
---
 Captured log setup 

15:48:29,134 conftest INFO Starting execution of 
test_populate_mv_after_insert_wide_rows at 2020-06-03 15:48:29.134170
15:48:29,134 dtest_setup INFO cluster ccm directory: /tmp/dtest-a84sugqx

 Captured log call 

15:48:43,900 cassandra.cluster INFO New Cassandra host  
discovered
15:48:43,900 cassandra.cluster INFO New Cassandra host  
discovered
15:49:16,846 cassandra.protocol WARNING Server warning: Materialized views are 
experimental and are not recommended for production use.
15:49:17,911 cassandra.cluster INFO New Cassandra host  
discovered
15:49:17,911 cassandra.cluster INFO New Cassandra host  
discovered
15:49:17,946 cassandra.cluster INFO New Cassandra host  
discovered
15:49:17,946 cassandra.cluster INFO New Cassandra host  
discovered
15:49:17,977 cassandra.cluster INFO New Cassandra host  
discovered
15:49:17,977 cassandra.cluster INFO New Cassandra host  
discovered
15:49:20,349 cassandra.cluster INFO New Cassandra host  
discovered
15:49:20,350 cassandra.cluster INFO New Cassandra host  
discovered
15:49:20,614 cassandra.protocol WARNING Server warning: Aggregation query used 
without partition key

 Captured stdout 

[jira] [Updated] (CASSANDRA-15845) test_populate_mv_after_insert_wide_rows schema version update race

2020-06-03 Thread Berenguer Blasi (Jira)


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

Berenguer Blasi updated CASSANDRA-15845:

Summary: test_populate_mv_after_insert_wide_rows schema version update race 
 (was: 
dtest-novnode.materialized_views_test.TestMaterializedViews.test_populate_mv_after_insert_wide_rows)

> test_populate_mv_after_insert_wide_rows schema version update race
> --
>
> Key: CASSANDRA-15845
> URL: https://issues.apache.org/jira/browse/CASSANDRA-15845
> Project: Cassandra
>  Issue Type: Bug
>  Components: Test/dtest
>Reporter: Berenguer Blasi
>Assignee: Berenguer Blasi
>Priority: Normal
> Fix For: 4.0-beta
>
>
> See failure 
> [here|https://ci-cassandra.apache.org/job/Cassandra-trunk/155/testReport/dtest-novnode.materialized_views_test/TestMaterializedViews/test_populate_mv_after_insert_wide_rows_2/]
> {quote}Error Message
> assert 160 == 0  +  where 160 = Row(count=160).count
> Stacktrace
> self =  0x7fcb232b5760>
> def test_populate_mv_after_insert_wide_rows(self):
> """Test that a view is OK when created with existing data with wide 
> rows"""
> session = self.prepare(consistency_level=ConsistencyLevel.QUORUM)
> 
> session.execute("CREATE TABLE t (id int, v int, PRIMARY KEY (id, v))")
> 
> for i in range(5):
> for j in range(1):
> session.execute("INSERT INTO t (id, v) VALUES ({}, 
> {})".format(i, j))
> 
> session.execute(("CREATE MATERIALIZED VIEW t_by_v AS SELECT * FROM t 
> WHERE v IS NOT NULL "
>  "AND id IS NOT NULL PRIMARY KEY (v, id)"))
> 
> logger.debug("wait for view to build")
> self._wait_for_view("ks", "t_by_v")
> 
> logger.debug("wait that all batchlogs are replayed")
> >   self._replay_batchlogs()
> materialized_views_test.py:350: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> self =  0x7fcb232b5760>
> def _replay_batchlogs(self):
> for node in self.cluster.nodelist():
> if node.is_running():
> logger.debug("Replaying batchlog on node 
> {}".format(node.name))
> node.nodetool("replaybatchlog")
> # CASSANDRA-13069 - Ensure replayed mutations are removed 
> from the batchlog
> node_session = self.patient_exclusive_cql_connection(node)
> result = list(node_session.execute("SELECT count(*) FROM 
> system.batches;"))
> >   assert result[0].count == 0
> E   assert 160 == 0
> E+  where 160 = Row(count=160).count
> materialized_views_test.py:171: AssertionError{quote}



--
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-15849) Remove generated files from apache-cassandra-*-src.tar.gz artifacts

2020-06-03 Thread Michael Semb Wever (Jira)
Michael Semb Wever created CASSANDRA-15849:
--

 Summary: Remove generated files from apache-cassandra-*-src.tar.gz 
artifacts
 Key: CASSANDRA-15849
 URL: https://issues.apache.org/jira/browse/CASSANDRA-15849
 Project: Cassandra
  Issue Type: Task
  Components: Build
Reporter: Michael Semb Wever
Assignee: Michael Semb Wever


The apache-cassandra-*-src.tar.gz source artifacts contain a lot of generated 
files. 

These need to be excluded when putting together the source tarball.



--
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-15700) Performance regression on internode messaging

2020-06-03 Thread Aleksey Yeschenko (Jira)


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

Aleksey Yeschenko commented on CASSANDRA-15700:
---

I *think* the way we update times at the end of pruning in this patch is 
potentially problematic, but I might be getting this wrong, so pardon me for 
any obvious foolishness. Was thinking about this particular scenario:

1. After partial consumption/delivery, thread {{t1}} updates 
{{earliestExpiryTime}} with some high value (say, all messages up to now have 
been with long timeouts); gets descheduled for a period of time.
2. A different thread, {{t2}}, invokes {{add()}} with an lots of 
short-expiration messages, all skipping purging, as the lock is being held by 
{{t1}}. Repeatedly updates both {{earliestExpiryTime}} and 
{{nextExpirationDeadline}} with a small value
3. Thread {{t1}} is now scheduled again, sets {{nextExpirationDeadline}} to the 
high value from step (1)

If there are no {{add()}} incoming and delivery has stalled, we can now hold an 
arbitrary # of messages added at step 2, as we use {{nextExpirationDeadline}} 
value to determine whether or not pruning is necessary.

> Performance regression on internode messaging
> -
>
> Key: CASSANDRA-15700
> URL: https://issues.apache.org/jira/browse/CASSANDRA-15700
> Project: Cassandra
>  Issue Type: Bug
>  Components: Messaging/Internode
>Reporter: Sergio Bossa
>Assignee: Sergio Bossa
>Priority: Normal
>  Labels: pull-request-available
> Fix For: 4.0-beta
>
> Attachments: Oss40patchedvsOss311.png, Oss40vsOss311.png, oss40.gc, 
> oss40_nogc.tar.xz, oss40_system.log
>
>  Time Spent: 10m
>  Remaining Estimate: 0h
>
> Me and [~jasonstack] have been investigating a performance regression 
> affecting 4.0 during a 3 nodes, RF 3 write throughput test with a timeseries 
> like workload, as shown in this plot, where blue is 3.11 and orange is 4.0:
> !Oss40vsOss311.png|width=389,height=214!
>  It's been a bit of a long investigation, but two clues ended up standing out:
> 1) An abnormal number of expired messages on 4.0 (as shown in the attached  
> system log), while 3.11 has almost none.
> 2) An abnormal GC activity (as shown in the attached gc log).
> Turns out the two are related, as the [on expired 
> callback|https://github.com/apache/cassandra/blob/trunk/src/java/org/apache/cassandra/net/OutboundConnection.java#L462]
>  creates a huge amount of strings in the {{id()}} call. The next question is 
> what causes all those message expirations; we thoroughly reviewed the 
> internode messaging code and the only issue we could find so far is related 
> to the "batch pruning" calls 
> [here|https://github.com/apache/cassandra/blob/trunk/src/java/org/apache/cassandra/net/OutboundMessageQueue.java#L81]
>  and 
> [here|https://github.com/apache/cassandra/blob/trunk/src/java/org/apache/cassandra/net/OutboundMessageQueue.java#L188]:
>  it _seems_ too much time is spent on those, causing the event loop to fall 
> behind in processing the rest of the messages, which will end up being 
> expired. This is supported by the analysis of the collapsed stacks (after 
> fixing the GC issue):
> {noformat}
> (tprint (top-aggregated-calls oss40nogc "EventLoopDelivery:doRun" 5))
> org/apache/cassandra/net/OutboundConnection$EventLoopDelivery:doRun 3456
> org/apache/cassandra/net/OutboundMessageQueue:access$600 1621
> org/apache/cassandra/net/PrunableArrayQueue:prune 1621
> org/apache/cassandra/net/OutboundMessageQueue$WithLock:close 1621
> org/apache/cassandra/net/OutboundMessageQueue:pruneInternalQueueWithLock 1620
> {noformat}
> Those are the top 5 sampled calls from {{EventLoopDelivery#doRun()}} which 
> spends half of its time pruning. But only a tiny portion of such pruning time 
> is spent actually expiring:
> {noformat}
> (tprint (top-aggregated-calls oss40nogc 
> "OutboundMessageQueue:pruneInternalQueueWithLock" 5))
> org/apache/cassandra/net/OutboundMessageQueue:pruneInternalQueueWithLock 1900
> org/apache/cassandra/net/PrunableArrayQueue:prune 1894
> org/apache/cassandra/net/OutboundMessageQueue$1Pruner:onPruned 147
> org/apache/cassandra/net/OutboundConnection$$Lambda$444/740904487:accept 147
> org/apache/cassandra/net/OutboundConnection:onExpired 147
> {noformat}
> And indeed, the {{PrunableArrayQueue:prune()}} self time is dominant:
> {noformat}
> (tprint (top-self-calls oss40nogc "PrunableArrayQueue:prune" 5))
> org/apache/cassandra/net/PrunableArrayQueue:prune 1718
> org/apache/cassandra/net/OutboundConnection:releaseCapacity 27
> java/util/concurrent/ConcurrentHashMap:replaceNode 19
> java/util/concurrent/ConcurrentLinkedQueue:offer 16
> java/util/concurrent/LinkedBlockingQueue:offer 15
> {noformat}
> That said, before 

[jira] [Created] (CASSANDRA-15848) Fully purged static row causes NPE in repaired data tracking

2020-06-03 Thread Sam Tunnicliffe (Jira)
Sam Tunnicliffe created CASSANDRA-15848:
---

 Summary: Fully purged static row causes NPE in repaired data 
tracking
 Key: CASSANDRA-15848
 URL: https://issues.apache.org/jira/browse/CASSANDRA-15848
 Project: Cassandra
  Issue Type: Bug
  Components: Legacy/Local Write-Read Paths
Reporter: Sam Tunnicliffe
Assignee: Sam Tunnicliffe


During repaired data tracking, if the result of applying the purge function to 
a static row is null, an exception is thrown from RepairedDataInfo. This will 
cause a read exception from the replica and could lead to unavailable results 
if hit on multiple replicas. A workaround is to disable repaired data tracking.



--
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-15848) Fully purged static row causes NPE in repaired data tracking

2020-06-03 Thread Sam Tunnicliffe (Jira)


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

Sam Tunnicliffe updated CASSANDRA-15848:

 Bug Category: Parent values: Availability(12983)Level 1 values: Response 
Crash(12991)
   Complexity: Low Hanging Fruit
Discovered By: User Report
Fix Version/s: 4.0-alpha
 Severity: Normal
   Status: Open  (was: Triage Needed)

> Fully purged static row causes NPE in repaired data tracking
> 
>
> Key: CASSANDRA-15848
> URL: https://issues.apache.org/jira/browse/CASSANDRA-15848
> Project: Cassandra
>  Issue Type: Bug
>  Components: Legacy/Local Write-Read Paths
>Reporter: Sam Tunnicliffe
>Assignee: Sam Tunnicliffe
>Priority: Normal
> Fix For: 4.0-alpha
>
>
> During repaired data tracking, if the result of applying the purge function 
> to a static row is null, an exception is thrown from RepairedDataInfo. This 
> will cause a read exception from the replica and could lead to unavailable 
> results if hit on multiple replicas. A workaround is to disable repaired data 
> tracking.



--
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-15845) dtest-novnode.materialized_views_test.TestMaterializedViews.test_populate_mv_after_insert_wide_rows

2020-06-03 Thread Berenguer Blasi (Jira)


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

Berenguer Blasi edited comment on CASSANDRA-15845 at 6/3/20, 10:11 AM:
---

[~jasonstack] you rock! you saved me a few hours of painful debugging :-) I 
have tried to repro locally and I can't anymore. I will leave it running for 
lunch just in case as it was a difficult one to repro. I would like to get your 
opinion on how to best fix this given I don't know the codebase as well:
A. Make {{SchemaKeyspace#calculateSchemaDigest}} public and check schema 
agreement against that as well in {{Gossiper#nodesAgreeOnSchema}} (this is the 
current fix that seems to work)
B. Mark the schema somehow 'dirty' and take that into account in all calls to 
the version. Not sure how or how much work that would be
C. Block during the 'schema version update' window.

I think B and C sound very nice but I wonder into how much trouble and 
deadlocks can we get ourselves into and if it's worth it or reasonably doable. 
Maybe fixing {{Gossiper#nodesAgreeOnSchema}} with A is a good compromise and 
that method is going to be there for anybody that needs to. Wdyt? :thinking:


was (Author: bereng):
[~jasonstack] you rock! you saved me a few hours of painful debugging :-) I 
have tried to repro locally and I can't anymore. I will leave it running for 
lunch just in case as it was a difficult one to repro. I would like to get your 
opinion on how to best fix this given I don't know the codebase as well:
A. Make {{SchemaKeyspace#calculateSchemaDigest}} public and check schema 
agreement against that as well in {{Gossiper#nodesAgreeOnSchema}} (this is the 
current fix that seems to work
B. Mark the schema somehow 'dirty' and take that into account in all calls to 
the version. Not sure how or how much work that would be
C. Block during the 'schema version update' window.

I think B and C sound very nice but I wonder into how much trouble and 
deadlocks can we get ourselves into and if it's worth it or reasonably doable. 
Maybe fixing {{Gossiper#nodesAgreeOnSchema}} with A is a good compromise and 
that method is going to be there for anybody that needs to. Wdyt? :thinking:

> dtest-novnode.materialized_views_test.TestMaterializedViews.test_populate_mv_after_insert_wide_rows
> ---
>
> Key: CASSANDRA-15845
> URL: https://issues.apache.org/jira/browse/CASSANDRA-15845
> Project: Cassandra
>  Issue Type: Bug
>  Components: Test/dtest
>Reporter: Berenguer Blasi
>Assignee: Berenguer Blasi
>Priority: Normal
> Fix For: 4.0-beta
>
>
> See failure 
> [here|https://ci-cassandra.apache.org/job/Cassandra-trunk/155/testReport/dtest-novnode.materialized_views_test/TestMaterializedViews/test_populate_mv_after_insert_wide_rows_2/]
> {quote}Error Message
> assert 160 == 0  +  where 160 = Row(count=160).count
> Stacktrace
> self =  0x7fcb232b5760>
> def test_populate_mv_after_insert_wide_rows(self):
> """Test that a view is OK when created with existing data with wide 
> rows"""
> session = self.prepare(consistency_level=ConsistencyLevel.QUORUM)
> 
> session.execute("CREATE TABLE t (id int, v int, PRIMARY KEY (id, v))")
> 
> for i in range(5):
> for j in range(1):
> session.execute("INSERT INTO t (id, v) VALUES ({}, 
> {})".format(i, j))
> 
> session.execute(("CREATE MATERIALIZED VIEW t_by_v AS SELECT * FROM t 
> WHERE v IS NOT NULL "
>  "AND id IS NOT NULL PRIMARY KEY (v, id)"))
> 
> logger.debug("wait for view to build")
> self._wait_for_view("ks", "t_by_v")
> 
> logger.debug("wait that all batchlogs are replayed")
> >   self._replay_batchlogs()
> materialized_views_test.py:350: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> self =  0x7fcb232b5760>
> def _replay_batchlogs(self):
> for node in self.cluster.nodelist():
> if node.is_running():
> logger.debug("Replaying batchlog on node 
> {}".format(node.name))
> node.nodetool("replaybatchlog")
> # CASSANDRA-13069 - Ensure replayed mutations are removed 
> from the batchlog
> node_session = self.patient_exclusive_cql_connection(node)
> result = list(node_session.execute("SELECT count(*) FROM 
> system.batches;"))
> >   assert result[0].count == 0
> E   assert 160 == 0
> E+  where 160 = Row(count=160).count
> materialized_views_test.py:171: AssertionError{quote}



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


[jira] [Commented] (CASSANDRA-15845) dtest-novnode.materialized_views_test.TestMaterializedViews.test_populate_mv_after_insert_wide_rows

2020-06-03 Thread Berenguer Blasi (Jira)


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

Berenguer Blasi commented on CASSANDRA-15845:
-

[~jasonstack] you rock! you saved me a few hours of painful debugging :-) I 
have tried to repro locally and I can't anymore. I will leave it running for 
lunch just in case as it was a difficult one to repro. I would like to get your 
opinion on how to best fix this given I don't know the codebase as well:
A. Make {{SchemaKeyspace#calculateSchemaDigest}} public and check schema 
agreement against that as well in {{Gossiper#nodesAgreeOnSchema}} (this is the 
current fix that seems to work
B. Mark the schema somehow 'dirty' and take that into account in all calls to 
the version. Not sure how or how much work that would be
C. Block during the 'schema version update' window.

I think B and C sound very nice but I wonder into how much trouble and 
deadlocks can we get ourselves into and if it's worth it or reasonably doable. 
Maybe fixing {{Gossiper#nodesAgreeOnSchema}} with A is a good compromise and 
that method is going to be there for anybody that needs to. Wdyt? :thinking:

> dtest-novnode.materialized_views_test.TestMaterializedViews.test_populate_mv_after_insert_wide_rows
> ---
>
> Key: CASSANDRA-15845
> URL: https://issues.apache.org/jira/browse/CASSANDRA-15845
> Project: Cassandra
>  Issue Type: Bug
>  Components: Test/dtest
>Reporter: Berenguer Blasi
>Assignee: Berenguer Blasi
>Priority: Normal
> Fix For: 4.0-beta
>
>
> See failure 
> [here|https://ci-cassandra.apache.org/job/Cassandra-trunk/155/testReport/dtest-novnode.materialized_views_test/TestMaterializedViews/test_populate_mv_after_insert_wide_rows_2/]
> {quote}Error Message
> assert 160 == 0  +  where 160 = Row(count=160).count
> Stacktrace
> self =  0x7fcb232b5760>
> def test_populate_mv_after_insert_wide_rows(self):
> """Test that a view is OK when created with existing data with wide 
> rows"""
> session = self.prepare(consistency_level=ConsistencyLevel.QUORUM)
> 
> session.execute("CREATE TABLE t (id int, v int, PRIMARY KEY (id, v))")
> 
> for i in range(5):
> for j in range(1):
> session.execute("INSERT INTO t (id, v) VALUES ({}, 
> {})".format(i, j))
> 
> session.execute(("CREATE MATERIALIZED VIEW t_by_v AS SELECT * FROM t 
> WHERE v IS NOT NULL "
>  "AND id IS NOT NULL PRIMARY KEY (v, id)"))
> 
> logger.debug("wait for view to build")
> self._wait_for_view("ks", "t_by_v")
> 
> logger.debug("wait that all batchlogs are replayed")
> >   self._replay_batchlogs()
> materialized_views_test.py:350: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> self =  0x7fcb232b5760>
> def _replay_batchlogs(self):
> for node in self.cluster.nodelist():
> if node.is_running():
> logger.debug("Replaying batchlog on node 
> {}".format(node.name))
> node.nodetool("replaybatchlog")
> # CASSANDRA-13069 - Ensure replayed mutations are removed 
> from the batchlog
> node_session = self.patient_exclusive_cql_connection(node)
> result = list(node_session.execute("SELECT count(*) FROM 
> system.batches;"))
> >   assert result[0].count == 0
> E   assert 160 == 0
> E+  where 160 = Row(count=160).count
> materialized_views_test.py:171: AssertionError{quote}



--
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-15838) Add deb and rpm packaging to artifacts test script

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


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

Michael Semb Wever commented on CASSANDRA-15838:


Support for building rpms with jdk11 is also implemented.

And looking at the source artefacts, the biggest current problem is that the 
original {{*-src.tar.gz}} artefacts contains thousands of non-source files. I 
will address this in a separate ticket.

Patch is complete, at 
https://github.com/apache/cassandra-builds/compare/master...thelastpickle:mck/15838

> Add deb and rpm packaging to artifacts test script
> --
>
> Key: CASSANDRA-15838
> URL: https://issues.apache.org/jira/browse/CASSANDRA-15838
> Project: Cassandra
>  Issue Type: Task
>  Components: Build, CI, Packaging
>Reporter: Michael Semb Wever
>Assignee: Michael Semb Wever
>Priority: Normal
> Fix For: 4.0-beta
>
> Attachments: Screenshot 2020-06-01 at 12.29.21.png, Screenshot 
> 2020-06-01 at 23.24.39.png
>
>
> Currently we have no way of testing debian or rpm packaging. This is a 
> problem, it hurts when cutting releases as well as afterwards (like 
> CASSANDRA-15830). 
> This ticket is to add testing of debian or rpm packaging into the artifacts 
> test script.
> This will also provide "nightly" build artifacts for the deb and rpm packages.



--
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-15838) Add deb and rpm packaging to artifacts test script

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


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

Michael Semb Wever updated CASSANDRA-15838:
---
Test and Documentation Plan: 
https://issues.apache.org/jira/browse/CASSANDRA-15838?focusedCommentId=17123524=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-17123524
 Status: Patch Available  (was: In Progress)

> Add deb and rpm packaging to artifacts test script
> --
>
> Key: CASSANDRA-15838
> URL: https://issues.apache.org/jira/browse/CASSANDRA-15838
> Project: Cassandra
>  Issue Type: Task
>  Components: Build, CI, Packaging
>Reporter: Michael Semb Wever
>Assignee: Michael Semb Wever
>Priority: Normal
> Fix For: 4.0-beta
>
> Attachments: Screenshot 2020-06-01 at 12.29.21.png, Screenshot 
> 2020-06-01 at 23.24.39.png
>
>
> Currently we have no way of testing debian or rpm packaging. This is a 
> problem, it hurts when cutting releases as well as afterwards (like 
> CASSANDRA-15830). 
> This ticket is to add testing of debian or rpm packaging into the artifacts 
> test script.
> This will also provide "nightly" build artifacts for the deb and rpm packages.



--
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-15835) Upgrade-dtests on trunk not working in CircleCI

2020-06-03 Thread Eduard Tudenhoefner (Jira)


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

Eduard Tudenhoefner commented on CASSANDRA-15835:
-

reviewed all of the above PRs and changes LGTM. Waiting on final CI results now.

> Upgrade-dtests on trunk not working in CircleCI
> ---
>
> Key: CASSANDRA-15835
> URL: https://issues.apache.org/jira/browse/CASSANDRA-15835
> Project: Cassandra
>  Issue Type: Bug
>  Components: CI, Test/dtest
>Reporter: Robert Stupp
>Assignee: Robert Stupp
>Priority: Normal
> Fix For: 4.0-alpha
>
>  Time Spent: 1h 10m
>  Remaining Estimate: 0h
>
> ~3600 Upgrade-dtests are failing in CircleCI for trunk due to the missing 
> {{JAVA8_HOME}} environment variable.
> Patching the Docker image is rather simple by creating a new image:
> {code}
> FROM nastra/cassandra-testing-ubuntu1910-java11-w-dependencies:20200406
> ENV JAVA8_HOME=/usr/lib/jvm/java-8-openjdk-amd64
> {code}
> Pushed the above to Docker hub as 
> [snazy/cassandra-testing-ubuntu1910-java11-w-dependencies:202005261540|https://hub.docker.com/layers/snazy/cassandra-testing-ubuntu1910-java11-w-dependencies/202005261540/images/sha256-ac8a713be58694f095c491921e006c2d1a7823a3c23299e477198e2c93a6bbd7?context=explore]
> The size of the whole Docker image is a little concerning though (1.85G 
> compressed), but that's out of the scope of this ticket.
> I'll prepare a patch soon-ish.



--
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-builds] branch master updated: Update README

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

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


The following commit(s) were added to refs/heads/master by this push:
 new b94a3a1  Update README
b94a3a1 is described below

commit b94a3a14e53e10dd332ef5a3fe25811cf4e7825e
Author: Eduard Tudenhoefner 
AuthorDate: Wed Jun 3 09:14:49 2020 +0200

Update README
---
 docker/testing/README.md | 10 +-
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/docker/testing/README.md b/docker/testing/README.md
index 99a88e9..8864391 100644
--- a/docker/testing/README.md
+++ b/docker/testing/README.md
@@ -2,7 +2,7 @@
 
 Docker files in this directory are used to build images used by CircleCI. 
These are directly referenced in the `circle.yml` after publishing to 
dockerhub. There are two types of images:
 
-* Base image for Linux distribution to use for testing (e.g. 
`ubuntu1810_j11.docker`)
+* Base image for Linux distribution to use for testing (e.g. 
`ubuntu1910_j11.docker`)
 * Caching image that contains git sources, maven and ccm dependencies
 
 ## Building Images
@@ -11,11 +11,11 @@ Build images from the parent directory using the following 
commands. Change tag
 
 Base image:
 
-`docker build -t spod/cassandra-testing-ubuntu1810:20180128 -t 
spod/cassandra-testing-ubuntu1810:latest -f testing/ubuntu1810_j11.docker 
testing/`
+`docker build -t nastra/cassandra-testing-ubuntu1910-java11:20200603 -t 
nastra/cassandra-testing-ubuntu1910-java11:latest -f ubuntu1910_j11.docker .`
 
 Caching image:
 
-`docker build  --no-cache -t 
spod/cassandra-testing-ubuntu1810-java11-w-dependencies:20190306 -t 
spod/cassandra-testing-ubuntu1810-java11-w-dependencies:latest -f 
testing/ubuntu1810_j11_w_dependencies.docker testing/`
+`docker build  --no-cache -t 
nastra/cassandra-testing-ubuntu1910-java11-w-dependencies:20200603 -t 
nastra/cassandra-testing-ubuntu1910-java11-w-dependencies:latest -f 
ubuntu1910_j11_w_dependencies.docker .`
 
 Please make sure to always tag also by date, so we can go back to that version 
in case anything breaks after the next update!
 
@@ -26,8 +26,8 @@ We are using Docker Hub for storing published images. See 
[Quick Start Guide](ht
 Push both image references:
 
 ```
-docker push spod/cassandra-testing-ubuntu1810-java11-w-dependencies:20190306
-docker push spod/cassandra-testing-ubuntu1810-java11-w-dependencies:latest
+docker push nastra/cassandra-testing-ubuntu1910-java11-w-dependencies:20200603
+docker push nastra/cassandra-testing-ubuntu1910-java11-w-dependencies:latest
 ```
 
 ## Updating circleci.yml


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



[cassandra-builds] branch master updated: CASSANDRA-15835 Update Docker image w/ JAVA8_HOME via ENV

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

snazy pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/cassandra-builds.git


The following commit(s) were added to refs/heads/master by this push:
 new 45dc010  CASSANDRA-15835 Update Docker image w/ JAVA8_HOME via ENV
45dc010 is described below

commit 45dc010227d75bf05e34617729de5389e62f8f99
Author: Robert Stupp 
AuthorDate: Tue Jun 2 12:43:30 2020 +0200

CASSANDRA-15835 Update Docker image w/ JAVA8_HOME via ENV
---
 docker/testing/ubuntu1810_j11.docker | 5 +
 docker/testing/ubuntu18_j11.docker   | 5 +
 docker/testing/ubuntu1910_j11.docker | 5 +
 3 files changed, 15 insertions(+)

diff --git a/docker/testing/ubuntu1810_j11.docker 
b/docker/testing/ubuntu1810_j11.docker
index 835d2ad..58fea47 100644
--- a/docker/testing/ubuntu1810_j11.docker
+++ b/docker/testing/ubuntu1810_j11.docker
@@ -80,6 +80,11 @@ RUN echo 'export ANT_HOME=/usr/share/ant' >> 
/home/cassandra/.bashrc && \
 echo 'export JAVA11_HOME=/usr/lib/jvm/java-11-openjdk-amd64' >> 
/home/cassandra/.bashrc && \
 echo 'export JAVA_HOME=$JAVA8_HOME' >> /home/cassandra/.bashrc
 
+ENV ANT_HOME=/usr/share/ant \
+JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64 \
+JAVA8_HOME=/usr/lib/jvm/java-8-openjdk-amd64 \
+JAVA11_HOME=/usr/lib/jvm/java-11-openjdk-amd64
+
 # run pip commands and setup virtualenv (note we do this after we switch to 
cassandra user so we
 # setup the virtualenv for the cassandra user and not the root user by 
accident)
 RUN virtualenv --python=python3.6 --no-site-packages env
diff --git a/docker/testing/ubuntu18_j11.docker 
b/docker/testing/ubuntu18_j11.docker
index 7e92c0f..3e6fe6b 100644
--- a/docker/testing/ubuntu18_j11.docker
+++ b/docker/testing/ubuntu18_j11.docker
@@ -80,6 +80,11 @@ RUN echo 'export ANT_HOME=/usr/share/ant' >> 
/home/cassandra/.bashrc && \
 echo 'export JAVA11_HOME=/usr/lib/jvm/java-11-openjdk-amd64' >> 
/home/cassandra/.bashrc && \
 echo 'export JAVA_HOME=$JAVA8_HOME' >> /home/cassandra/.bashrc
 
+ENV ANT_HOME=/usr/share/ant \
+JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64 \
+JAVA8_HOME=/usr/lib/jvm/java-8-openjdk-amd64 \
+JAVA11_HOME=/usr/lib/jvm/java-11-openjdk-amd64
+
 # run pip commands and setup virtualenv (note we do this after we switch to 
cassandra user so we
 # setup the virtualenv for the cassandra user and not the root user by 
accident)
 RUN virtualenv --python=python3.6 --no-site-packages env
diff --git a/docker/testing/ubuntu1910_j11.docker 
b/docker/testing/ubuntu1910_j11.docker
index 38f60bb..70dd44b 100644
--- a/docker/testing/ubuntu1910_j11.docker
+++ b/docker/testing/ubuntu1910_j11.docker
@@ -92,6 +92,11 @@ RUN echo 'export ANT_HOME=/usr/share/ant' >> 
/home/cassandra/.bashrc && \
 echo 'export JAVA11_HOME=/usr/lib/jvm/java-11-openjdk-amd64' >> 
/home/cassandra/.bashrc && \
 echo 'export JAVA_HOME=$JAVA8_HOME' >> /home/cassandra/.bashrc
 
+ENV ANT_HOME=/usr/share/ant \
+JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64 \
+JAVA8_HOME=/usr/lib/jvm/java-8-openjdk-amd64 \
+JAVA11_HOME=/usr/lib/jvm/java-11-openjdk-amd64
+
 # run pip commands and setup virtualenv (note we do this after we switch to 
cassandra user so we
 # setup the virtualenv for the cassandra user and not the root user by 
accident) for Python 3.6/3.7/3.8
 RUN virtualenv --python=python3.6 env3.6


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



[cassandra-builds] branch master updated: CASSANDRA-15835 Update Docker image w/ JAVA8_HOME via ENV

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

snazy pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/cassandra-builds.git


The following commit(s) were added to refs/heads/master by this push:
 new 45dc010  CASSANDRA-15835 Update Docker image w/ JAVA8_HOME via ENV
45dc010 is described below

commit 45dc010227d75bf05e34617729de5389e62f8f99
Author: Robert Stupp 
AuthorDate: Tue Jun 2 12:43:30 2020 +0200

CASSANDRA-15835 Update Docker image w/ JAVA8_HOME via ENV
---
 docker/testing/ubuntu1810_j11.docker | 5 +
 docker/testing/ubuntu18_j11.docker   | 5 +
 docker/testing/ubuntu1910_j11.docker | 5 +
 3 files changed, 15 insertions(+)

diff --git a/docker/testing/ubuntu1810_j11.docker 
b/docker/testing/ubuntu1810_j11.docker
index 835d2ad..58fea47 100644
--- a/docker/testing/ubuntu1810_j11.docker
+++ b/docker/testing/ubuntu1810_j11.docker
@@ -80,6 +80,11 @@ RUN echo 'export ANT_HOME=/usr/share/ant' >> 
/home/cassandra/.bashrc && \
 echo 'export JAVA11_HOME=/usr/lib/jvm/java-11-openjdk-amd64' >> 
/home/cassandra/.bashrc && \
 echo 'export JAVA_HOME=$JAVA8_HOME' >> /home/cassandra/.bashrc
 
+ENV ANT_HOME=/usr/share/ant \
+JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64 \
+JAVA8_HOME=/usr/lib/jvm/java-8-openjdk-amd64 \
+JAVA11_HOME=/usr/lib/jvm/java-11-openjdk-amd64
+
 # run pip commands and setup virtualenv (note we do this after we switch to 
cassandra user so we
 # setup the virtualenv for the cassandra user and not the root user by 
accident)
 RUN virtualenv --python=python3.6 --no-site-packages env
diff --git a/docker/testing/ubuntu18_j11.docker 
b/docker/testing/ubuntu18_j11.docker
index 7e92c0f..3e6fe6b 100644
--- a/docker/testing/ubuntu18_j11.docker
+++ b/docker/testing/ubuntu18_j11.docker
@@ -80,6 +80,11 @@ RUN echo 'export ANT_HOME=/usr/share/ant' >> 
/home/cassandra/.bashrc && \
 echo 'export JAVA11_HOME=/usr/lib/jvm/java-11-openjdk-amd64' >> 
/home/cassandra/.bashrc && \
 echo 'export JAVA_HOME=$JAVA8_HOME' >> /home/cassandra/.bashrc
 
+ENV ANT_HOME=/usr/share/ant \
+JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64 \
+JAVA8_HOME=/usr/lib/jvm/java-8-openjdk-amd64 \
+JAVA11_HOME=/usr/lib/jvm/java-11-openjdk-amd64
+
 # run pip commands and setup virtualenv (note we do this after we switch to 
cassandra user so we
 # setup the virtualenv for the cassandra user and not the root user by 
accident)
 RUN virtualenv --python=python3.6 --no-site-packages env
diff --git a/docker/testing/ubuntu1910_j11.docker 
b/docker/testing/ubuntu1910_j11.docker
index 38f60bb..70dd44b 100644
--- a/docker/testing/ubuntu1910_j11.docker
+++ b/docker/testing/ubuntu1910_j11.docker
@@ -92,6 +92,11 @@ RUN echo 'export ANT_HOME=/usr/share/ant' >> 
/home/cassandra/.bashrc && \
 echo 'export JAVA11_HOME=/usr/lib/jvm/java-11-openjdk-amd64' >> 
/home/cassandra/.bashrc && \
 echo 'export JAVA_HOME=$JAVA8_HOME' >> /home/cassandra/.bashrc
 
+ENV ANT_HOME=/usr/share/ant \
+JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64 \
+JAVA8_HOME=/usr/lib/jvm/java-8-openjdk-amd64 \
+JAVA11_HOME=/usr/lib/jvm/java-11-openjdk-amd64
+
 # run pip commands and setup virtualenv (note we do this after we switch to 
cassandra user so we
 # setup the virtualenv for the cassandra user and not the root user by 
accident) for Python 3.6/3.7/3.8
 RUN virtualenv --python=python3.6 env3.6


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



[jira] [Commented] (CASSANDRA-15845) dtest-novnode.materialized_views_test.TestMaterializedViews.test_populate_mv_after_insert_wide_rows

2020-06-03 Thread ZhaoYang (Jira)


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

ZhaoYang commented on CASSANDRA-15845:
--

CASSANDRA-14571 should have avoided view builder starting before schema 
propagation..

According to the log [~Bereng] uploaded, it looks like node1 is in schema 
agreement with other nodes.. My hypothesis is when update view schema at node1, 
it starts view builder before updating schema digest..

In {{"Schema#transform"}}"
{code}
merge(diff);   // starts view builder asynchronously
updateVersion();  // update schema digest
{code}

bq. Also do you think we should mark this test as a failure in dtests like it's 
suggested here until the underlying cause is fixed?

Alternatively we can put a delay in view builder for dtests..

> dtest-novnode.materialized_views_test.TestMaterializedViews.test_populate_mv_after_insert_wide_rows
> ---
>
> Key: CASSANDRA-15845
> URL: https://issues.apache.org/jira/browse/CASSANDRA-15845
> Project: Cassandra
>  Issue Type: Bug
>  Components: Test/dtest
>Reporter: Berenguer Blasi
>Assignee: Berenguer Blasi
>Priority: Normal
> Fix For: 4.0-beta
>
>
> See failure 
> [here|https://ci-cassandra.apache.org/job/Cassandra-trunk/155/testReport/dtest-novnode.materialized_views_test/TestMaterializedViews/test_populate_mv_after_insert_wide_rows_2/]
> {quote}Error Message
> assert 160 == 0  +  where 160 = Row(count=160).count
> Stacktrace
> self =  0x7fcb232b5760>
> def test_populate_mv_after_insert_wide_rows(self):
> """Test that a view is OK when created with existing data with wide 
> rows"""
> session = self.prepare(consistency_level=ConsistencyLevel.QUORUM)
> 
> session.execute("CREATE TABLE t (id int, v int, PRIMARY KEY (id, v))")
> 
> for i in range(5):
> for j in range(1):
> session.execute("INSERT INTO t (id, v) VALUES ({}, 
> {})".format(i, j))
> 
> session.execute(("CREATE MATERIALIZED VIEW t_by_v AS SELECT * FROM t 
> WHERE v IS NOT NULL "
>  "AND id IS NOT NULL PRIMARY KEY (v, id)"))
> 
> logger.debug("wait for view to build")
> self._wait_for_view("ks", "t_by_v")
> 
> logger.debug("wait that all batchlogs are replayed")
> >   self._replay_batchlogs()
> materialized_views_test.py:350: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> self =  0x7fcb232b5760>
> def _replay_batchlogs(self):
> for node in self.cluster.nodelist():
> if node.is_running():
> logger.debug("Replaying batchlog on node 
> {}".format(node.name))
> node.nodetool("replaybatchlog")
> # CASSANDRA-13069 - Ensure replayed mutations are removed 
> from the batchlog
> node_session = self.patient_exclusive_cql_connection(node)
> result = list(node_session.execute("SELECT count(*) FROM 
> system.batches;"))
> >   assert result[0].count == 0
> E   assert 160 == 0
> E+  where 160 = Row(count=160).count
> materialized_views_test.py:171: AssertionError{quote}



--
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-15845) dtest-novnode.materialized_views_test.TestMaterializedViews.test_populate_mv_after_insert_wide_rows

2020-06-03 Thread Berenguer Blasi (Jira)


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

Berenguer Blasi edited comment on CASSANDRA-15845 at 6/3/20, 7:37 AM:
--

Hi [~jasonstack],

thx for the info. What I see is slightly different though. We do indeed 
[wait|https://github.com/apache/cassandra/blob/trunk/src/java/org/apache/cassandra/db/view/ViewBuilderTask.java#L136]
 for schema agreement, but adding some logging on node1 we can see it _sees_ 
schema agreement while the other nodes2&3 don't know about the MV yet. Here is 
node1 under the wrong impression on schema agreement:

{noformat}
DEBUG [ViewBuildExecutor:1] 2020-06-02 17:31:46,137 Gossiper.java:2038 - Node: 
127.0.0.3:7000 expectedVersion: null remoteVersion: 
a17bfd1c-15fd-30ad-9a5e-534b45062856
DEBUG [ViewBuildExecutor:1] 2020-06-02 17:31:46,137 Gossiper.java:2038 - Node: 
127.0.0.2:7000 expectedVersion: a17bfd1c-15fd-30ad-9a5e-534b45062856 
remoteVersion: a17bfd1c-15fd-30ad-9a5e-534b45062856
DEBUG [ViewBuildExecutor:1] 2020-06-02 17:31:46,137 Gossiper.java:2038 - Node: 
127.0.0.1:7000 expectedVersion: a17bfd1c-15fd-30ad-9a5e-534b45062856 
remoteVersion: a17bfd1c-15fd-30ad-9a5e-534b45062856
DEBUG [ViewBuildExecutor:1] 2020-06-02 17:31:46,137 Gossiper.java:2047 - Nodes 
agree on schema
{noformat}

I don't know if it's worth going down this race rabbit hole or if Is there a 
ticket around already I can mark this one a duplicate of? I can't seem to find 
one

Also do you think we should mark this test as a failure in dtests like it's 
suggested 
[here|https://issues.apache.org/jira/browse/CASSANDRA-14571?focusedCommentId=16549702=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-16549702]
 until the underlying cause is fixed?


was (Author: bereng):
Hi [~jasonstack],

thx for the info. What I see is slightly different though. We do indeed 
[wait|https://github.com/apache/cassandra/blob/trunk/src/java/org/apache/cassandra/db/view/ViewBuilderTask.java#L136]
 for schema agreement, but adding some logging on node1 we can see it _sees_ 
schema agreement while the other nodes2&3 don't know about the MV yet. Here is 
node1 under the wrong impression on schema agreement:

{noformat}
DEBUG [ViewBuildExecutor:1] 2020-06-02 17:31:46,137 Gossiper.java:2038 - Node: 
127.0.0.3:7000 expectedVersion: null remoteVersion: 
a17bfd1c-15fd-30ad-9a5e-534b45062856
DEBUG [ViewBuildExecutor:1] 2020-06-02 17:31:46,137 Gossiper.java:2038 - Node: 
127.0.0.2:7000 expectedVersion: a17bfd1c-15fd-30ad-9a5e-534b45062856 
remoteVersion: a17bfd1c-15fd-30ad-9a5e-534b45062856
DEBUG [ViewBuildExecutor:1] 2020-06-02 17:31:46,137 Gossiper.java:2038 - Node: 
127.0.0.1:7000 expectedVersion: a17bfd1c-15fd-30ad-9a5e-534b45062856 
remoteVersion: a17bfd1c-15fd-30ad-9a5e-534b45062856
DEBUG [ViewBuildExecutor:1] 2020-06-02 17:31:46,137 Gossiper.java:2047 - Nodes 
agree on schema
{noformat}

I don't know if it's worth going down this race rabbit hole or if Is there a 
ticket around already I can mark this one a duplicate of? I can't seem to find 
one

> dtest-novnode.materialized_views_test.TestMaterializedViews.test_populate_mv_after_insert_wide_rows
> ---
>
> Key: CASSANDRA-15845
> URL: https://issues.apache.org/jira/browse/CASSANDRA-15845
> Project: Cassandra
>  Issue Type: Bug
>  Components: Test/dtest
>Reporter: Berenguer Blasi
>Assignee: Berenguer Blasi
>Priority: Normal
> Fix For: 4.0-beta
>
>
> See failure 
> [here|https://ci-cassandra.apache.org/job/Cassandra-trunk/155/testReport/dtest-novnode.materialized_views_test/TestMaterializedViews/test_populate_mv_after_insert_wide_rows_2/]
> {quote}Error Message
> assert 160 == 0  +  where 160 = Row(count=160).count
> Stacktrace
> self =  0x7fcb232b5760>
> def test_populate_mv_after_insert_wide_rows(self):
> """Test that a view is OK when created with existing data with wide 
> rows"""
> session = self.prepare(consistency_level=ConsistencyLevel.QUORUM)
> 
> session.execute("CREATE TABLE t (id int, v int, PRIMARY KEY (id, v))")
> 
> for i in range(5):
> for j in range(1):
> session.execute("INSERT INTO t (id, v) VALUES ({}, 
> {})".format(i, j))
> 
> session.execute(("CREATE MATERIALIZED VIEW t_by_v AS SELECT * FROM t 
> WHERE v IS NOT NULL "
>  "AND id IS NOT NULL PRIMARY KEY (v, id)"))
> 
> logger.debug("wait for view to build")
> self._wait_for_view("ks", "t_by_v")
> 
> logger.debug("wait that all batchlogs are replayed")
> >   self._replay_batchlogs()
> materialized_views_test.py:350: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

[jira] [Commented] (CASSANDRA-15845) dtest-novnode.materialized_views_test.TestMaterializedViews.test_populate_mv_after_insert_wide_rows

2020-06-03 Thread Berenguer Blasi (Jira)


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

Berenguer Blasi commented on CASSANDRA-15845:
-

Hi [~jasonstack],

thx for the info. What I see is slightly different though. We do indeed 
[wait|https://github.com/apache/cassandra/blob/trunk/src/java/org/apache/cassandra/db/view/ViewBuilderTask.java#L136]
 for schema agreement, but adding some logging on node1 we can see it _sees_ 
schema agreement while the other nodes2&3 don't know about the MV yet. Here is 
node1 under the wrong impression on schema agreement:

{noformat}
DEBUG [ViewBuildExecutor:1] 2020-06-02 17:31:46,137 Gossiper.java:2038 - Node: 
127.0.0.3:7000 expectedVersion: null remoteVersion: 
a17bfd1c-15fd-30ad-9a5e-534b45062856
DEBUG [ViewBuildExecutor:1] 2020-06-02 17:31:46,137 Gossiper.java:2038 - Node: 
127.0.0.2:7000 expectedVersion: a17bfd1c-15fd-30ad-9a5e-534b45062856 
remoteVersion: a17bfd1c-15fd-30ad-9a5e-534b45062856
DEBUG [ViewBuildExecutor:1] 2020-06-02 17:31:46,137 Gossiper.java:2038 - Node: 
127.0.0.1:7000 expectedVersion: a17bfd1c-15fd-30ad-9a5e-534b45062856 
remoteVersion: a17bfd1c-15fd-30ad-9a5e-534b45062856
DEBUG [ViewBuildExecutor:1] 2020-06-02 17:31:46,137 Gossiper.java:2047 - Nodes 
agree on schema
{noformat}

I don't know if it's worth going down this race rabbit hole or if Is there a 
ticket around already I can mark this one a duplicate of? I can't seem to find 
one

> dtest-novnode.materialized_views_test.TestMaterializedViews.test_populate_mv_after_insert_wide_rows
> ---
>
> Key: CASSANDRA-15845
> URL: https://issues.apache.org/jira/browse/CASSANDRA-15845
> Project: Cassandra
>  Issue Type: Bug
>  Components: Test/dtest
>Reporter: Berenguer Blasi
>Assignee: Berenguer Blasi
>Priority: Normal
> Fix For: 4.0-beta
>
>
> See failure 
> [here|https://ci-cassandra.apache.org/job/Cassandra-trunk/155/testReport/dtest-novnode.materialized_views_test/TestMaterializedViews/test_populate_mv_after_insert_wide_rows_2/]
> {quote}Error Message
> assert 160 == 0  +  where 160 = Row(count=160).count
> Stacktrace
> self =  0x7fcb232b5760>
> def test_populate_mv_after_insert_wide_rows(self):
> """Test that a view is OK when created with existing data with wide 
> rows"""
> session = self.prepare(consistency_level=ConsistencyLevel.QUORUM)
> 
> session.execute("CREATE TABLE t (id int, v int, PRIMARY KEY (id, v))")
> 
> for i in range(5):
> for j in range(1):
> session.execute("INSERT INTO t (id, v) VALUES ({}, 
> {})".format(i, j))
> 
> session.execute(("CREATE MATERIALIZED VIEW t_by_v AS SELECT * FROM t 
> WHERE v IS NOT NULL "
>  "AND id IS NOT NULL PRIMARY KEY (v, id)"))
> 
> logger.debug("wait for view to build")
> self._wait_for_view("ks", "t_by_v")
> 
> logger.debug("wait that all batchlogs are replayed")
> >   self._replay_batchlogs()
> materialized_views_test.py:350: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> self =  0x7fcb232b5760>
> def _replay_batchlogs(self):
> for node in self.cluster.nodelist():
> if node.is_running():
> logger.debug("Replaying batchlog on node 
> {}".format(node.name))
> node.nodetool("replaybatchlog")
> # CASSANDRA-13069 - Ensure replayed mutations are removed 
> from the batchlog
> node_session = self.patient_exclusive_cql_connection(node)
> result = list(node_session.execute("SELECT count(*) FROM 
> system.batches;"))
> >   assert result[0].count == 0
> E   assert 160 == 0
> E+  where 160 = Row(count=160).count
> materialized_views_test.py:171: AssertionError{quote}



--
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-8272) 2ndary indexes can return stale data

2020-06-03 Thread Caleb Rackliffe (Jira)


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

Caleb Rackliffe commented on CASSANDRA-8272:


[~adelapena] Given that {{TestRepair.test_dead_sync_initiator}} had already 
failed during [CASSANDRA-13606 
development|https://ci-cassandra.apache.org/view/all/job/Cassandra-devbranch-dtest/126/parameters/],
 it looks like this will be ready to commit once we revert the CircleCI branch 
changes?

> 2ndary indexes can return stale data
> 
>
> Key: CASSANDRA-8272
> URL: https://issues.apache.org/jira/browse/CASSANDRA-8272
> Project: Cassandra
>  Issue Type: Bug
>  Components: Feature/2i Index
>Reporter: Sylvain Lebresne
>Assignee: Andres de la Peña
>Priority: Normal
>  Labels: pull-request-available
> Fix For: 3.0.x, 3.11.x, 4.0-beta
>
>  Time Spent: 5h 20m
>  Remaining Estimate: 0h
>
> When replica return 2ndary index results, it's possible for a single replica 
> to return a stale result and that result will be sent back to the user, 
> potentially failing the CL contract.
> For instance, consider 3 replicas A, B and C, and the following situation:
> {noformat}
> CREATE TABLE test (k int PRIMARY KEY, v text);
> CREATE INDEX ON test(v);
> INSERT INTO test(k, v) VALUES (0, 'foo');
> {noformat}
> with every replica up to date. Now, suppose that the following queries are 
> done at {{QUORUM}}:
> {noformat}
> UPDATE test SET v = 'bar' WHERE k = 0;
> SELECT * FROM test WHERE v = 'foo';
> {noformat}
> then, if A and B acknowledge the insert but C respond to the read before 
> having applied the insert, then the now stale result will be returned (since 
> C will return it and A or B will return nothing).
> A potential solution would be that when we read a tombstone in the index (and 
> provided we make the index inherit the gcGrace of it's parent CF), instead of 
> skipping that tombstone, we'd insert in the result a corresponding range 
> tombstone.  



--
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-15835) Upgrade-dtests on trunk not working in CircleCI

2020-06-03 Thread Eduard Tudenhoefner (Jira)


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

Eduard Tudenhoefner updated CASSANDRA-15835:

Reviewers: Eduard Tudenhoefner, Eduard Tudenhoefner  (was: Eduard 
Tudenhoefner)
   Eduard Tudenhoefner, Eduard Tudenhoefner  (was: Eduard 
Tudenhoefner)
   Status: Review In Progress  (was: Patch Available)

> Upgrade-dtests on trunk not working in CircleCI
> ---
>
> Key: CASSANDRA-15835
> URL: https://issues.apache.org/jira/browse/CASSANDRA-15835
> Project: Cassandra
>  Issue Type: Bug
>  Components: CI, Test/dtest
>Reporter: Robert Stupp
>Assignee: Robert Stupp
>Priority: Normal
> Fix For: 4.0-alpha
>
>  Time Spent: 20m
>  Remaining Estimate: 0h
>
> ~3600 Upgrade-dtests are failing in CircleCI for trunk due to the missing 
> {{JAVA8_HOME}} environment variable.
> Patching the Docker image is rather simple by creating a new image:
> {code}
> FROM nastra/cassandra-testing-ubuntu1910-java11-w-dependencies:20200406
> ENV JAVA8_HOME=/usr/lib/jvm/java-8-openjdk-amd64
> {code}
> Pushed the above to Docker hub as 
> [snazy/cassandra-testing-ubuntu1910-java11-w-dependencies:202005261540|https://hub.docker.com/layers/snazy/cassandra-testing-ubuntu1910-java11-w-dependencies/202005261540/images/sha256-ac8a713be58694f095c491921e006c2d1a7823a3c23299e477198e2c93a6bbd7?context=explore]
> The size of the whole Docker image is a little concerning though (1.85G 
> compressed), but that's out of the scope of this ticket.
> I'll prepare a patch soon-ish.



--
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