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

2020-06-07 Thread Ekaterina Dimitrova (Jira)


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

Ekaterina Dimitrova commented on CASSANDRA-15234:
-

Thanks to a recent patch I managed to run the upgrade tests in CircleCI. 

The [results 
|https://app.circleci.com/pipelines/github/ekaterinadimitrova2/cassandra/207/workflows/1d0a0a87-16d9-467b-9299-bb148cb10f68/jobs/1223]
 look good(more than 700 failures but they are those which are currently 
presented on trunk in CircleCI and mostly related to the environment) when we 
use the old current DTest suite, CCM and cassandra.yaml. Using the old 
cassandra.yaml is actually the way a real upgrade will happen.

In order to run the upgrade tests using the newly proposed version of the 
DTests suite and CCM, I need to take care about a couple of places where the 
suite checks for Cassandra version and tries respectively to load some of the 
parameters with their new names which causes cluster start issues, preventing 
some of the upgrade tests from run. 

Currently identified the primary conflict to be in dtest_setup.py. After that 
scripts is adjusted there are only around 20 tests which fail [here 
|https://app.circleci.com/pipelines/github/ekaterinadimitrova2/cassandra/206/workflows/1f7b0a54-c9e2-4305-8c94-be08d07846dd/jobs/1217/tests].
  One of the other issues is the new name _materialized_views_enabled due_ 
{color:#172b4d}to which some of the cql tests fail.{color}

Quick intermediate solution to the mentioned problems would be to add a script 
which:

1) runs before the upgrade tests start

2) replaces the new  cassandra.yaml file with the old one

3) sets the names of the parameters which would cause issues to their old names 
which as far as I see are 6-7 compared to almost 70 changed names according to 
this patch.

Then I can open a follow-up ticket for fix of the tests so we don't use this 
customization in the long term but I find this current issue as not being a 
blocker for the patch or Beta. 

*TO DO:* Update the Upgrade documentation with the steps of upgrading to 
version 4 with the old cassandra.yaml and then updating the cassandra.yaml.

 

> 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
>
> Attachments: CASSANDRA-15234-3-DTests-JAVA8.txt
>
>
> 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 {{KB/s}}, given these are regularly used for either 
> their old or new definition e.g. {{KiB/s}}, or we could support them and 
> simply log the value in bytes/s.



--
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-15862) Use "allow list" or "safe list" instead of the term "whitelist"

2020-06-07 Thread Ash Berlin-Taylor (Jira)
Ash Berlin-Taylor created CASSANDRA-15862:
-

 Summary: Use "allow list" or "safe list" instead of the term 
"whitelist" 
 Key: CASSANDRA-15862
 URL: https://issues.apache.org/jira/browse/CASSANDRA-15862
 Project: Cassandra
  Issue Type: New Feature
Reporter: Ash Berlin-Taylor


Language matters. I'd like to remove all references in Apache Airflow to 
whitelist or black list, and the Cassandra Python API has some that we can't 
easily remove.

The recent global events have made this even more relevant, but this has been 
on my radar for a while now. Here is a well written article for why I think it 
matters 

https://www.ncsc.gov.uk/blog-post/terminology-its-not-black-and-white

{quote}It's fairly common to say whitelisting and blacklisting to describe 
desirable and undesirable things in cyber security.

However, there's an issue with the terminology. It only makes sense if you 
equate white with 'good, permitted, safe' and black with 'bad, dangerous, 
forbidden'. There are some obvious problems with this. {quote}

My exposure to is via the Python API where there is the 
cassandra.pollicies.WhiteListRoundRobinPolicy class. I propose that this be 
renamed to AllowListRoundRobinPolicy instead. I do not know if there are other 
references.



--
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-07 Thread ZhaoYang (Jira)


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

ZhaoYang commented on CASSANDRA-8272:
-

Created CASSANDRA-15861 for "TestRepair.test_dead_sync_initiator" failure. 
TL;DR: entire-sstable-streaming requires immutable on-disk files but STATS 
metadata can be mutated causing file size recorded in streaming component 
manifest to be different from actual transferred file.

> 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.21, 3.11.7, 4.0-alpha5
>
>  Time Spent: 7h
>  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-15861) Muting sstable STATS metadata may race with entire-sstable-streaming(ZCS) causing checksum validation failure

2020-06-07 Thread ZhaoYang (Jira)


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

ZhaoYang updated CASSANDRA-15861:
-
 Bug Category: Parent values: Correctness(12982)Level 1 values: 
Unrecoverable Corruption / Loss(13161)
   Complexity: Normal
Discovered By: Unit Test
 Severity: Normal
   Status: Open  (was: Triage Needed)

> Muting sstable STATS metadata may race with entire-sstable-streaming(ZCS) 
> causing checksum validation failure
> -
>
> Key: CASSANDRA-15861
> URL: https://issues.apache.org/jira/browse/CASSANDRA-15861
> Project: Cassandra
>  Issue Type: Bug
>  Components: Consistency/Repair, Consistency/Streaming
>Reporter: ZhaoYang
>Assignee: ZhaoYang
>Priority: Normal
> Fix For: 4.0-beta
>
>
> Flaky dtest: [test_dead_sync_initiator - 
> repair_tests.repair_test.TestRepair|https://ci-cassandra.apache.org/view/all/job/Cassandra-devbranch-dtest/143/testReport/junit/dtest.repair_tests.repair_test/TestRepair/test_dead_sync_initiator/]
> In the above test, it executes "nodetool repair" on node1 and kills node2 
> during repair. At the end, node3 reports checksum validation failure on 
> sstable transferred from node1.
> {code:java|title=what happened}
> 1. When repair started on node1, it performs anti-compaction which modifies 
> sstable's repairAt to 0 and pending repair id to session-id.
> 2. Then node1 creates {{ComponentManifest}} which contains file lengths to be 
> transferred to node3.
> 3. Before node1 actually sends the files to node3, node2 is killed and node1 
> starts to broadcast repair-failure-message to all participants in 
> {{CoordinatorSession#fail}}
> 4. Node1 receives its own repair-failure-message and fails its local repair 
> sessions at {{LocalSessions#failSession}} which triggers async background 
> compaction.
> 5. Node1's background compaction will mutate sstable's repairAt to 0 and 
> pending repair id to null via  
> {{PendingRepairManager#getNextRepairFinishedTask}}, as there is no more 
> in-progress repair.
> 6. Node1 actually sends the sstable to node3 where the sstable's STATS 
> component size is different from the original size recorded in the manifest.
> 7. At the end, node3 reports checksum validation failure when it tries to 
> mutate sstable level and "isTransient" attribute in 
> {{CassandraEntireSSTableStreamReader#read}}.
> {code}
> I believe similar race may happen with level compaction where it may directly 
> mutate a sstable's level if it doesn't overlap with sstables at next level. 
> (Note: this isn't a problem in legacy streaming as STATS file length didn't 
> matter.)
> Ideally it will be great to make sstable STATS metadata immutable, just like 
> other sstable components, so we don't have to worry this special case. For 
> now, I suggest to use a {{StatsMetadata}} snapshot when initializing 
> {{CassandraOutgoingFile}} instead of relying on mutable on-disk STATS file.



--
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-15861) Muting sstable STATS metadata may race with entire-sstable-streaming(ZCS) causing checksum validation failure

2020-06-07 Thread ZhaoYang (Jira)
ZhaoYang created CASSANDRA-15861:


 Summary: Muting sstable STATS metadata may race with 
entire-sstable-streaming(ZCS) causing checksum validation failure
 Key: CASSANDRA-15861
 URL: https://issues.apache.org/jira/browse/CASSANDRA-15861
 Project: Cassandra
  Issue Type: Bug
  Components: Consistency/Repair, Consistency/Streaming
Reporter: ZhaoYang


Flaky dtest: [test_dead_sync_initiator - 
repair_tests.repair_test.TestRepair|https://ci-cassandra.apache.org/view/all/job/Cassandra-devbranch-dtest/143/testReport/junit/dtest.repair_tests.repair_test/TestRepair/test_dead_sync_initiator/]

In the above test, it executes "nodetool repair" on node1 and kills node2 
during repair. At the end, node3 reports checksum validation failure on sstable 
transferred from node1.
{code:java|title=what happened}
1. When repair started on node1, it performs anti-compaction which modifies 
sstable's repairAt to 0 and pending repair id to session-id.
2. Then node1 creates {{ComponentManifest}} which contains file lengths to be 
transferred to node3.
3. Before node1 actually sends the files to node3, node2 is killed and node1 
starts to broadcast repair-failure-message to all participants in 
{{CoordinatorSession#fail}}
4. Node1 receives its own repair-failure-message and fails its local repair 
sessions at {{LocalSessions#failSession}} which triggers async background 
compaction.
5. Node1's background compaction will mutate sstable's repairAt to 0 and 
pending repair id to null via  
{{PendingRepairManager#getNextRepairFinishedTask}}, as there is no more 
in-progress repair.
6. Node1 actually sends the sstable to node3 where the sstable's STATS 
component size is different from the original size recorded in the manifest.
7. At the end, node3 reports checksum validation failure when it tries to 
mutate sstable level and "isTransient" attribute in 
{{CassandraEntireSSTableStreamReader#read}}.
{code}

I believe similar race may happen with level compaction where it may directly 
mutate a sstable's level if it doesn't overlap with sstables at next level. 
(Note: this isn't a problem in legacy streaming as STATS file length didn't 
matter.)

Ideally it will be great to make sstable STATS metadata immutable, just like 
other sstable components, so we don't have to worry this special case. For now, 
I suggest to use a {{StatsMetadata}} snapshot when initializing 
{{CassandraOutgoingFile}} instead of relying on mutable on-disk STATS file.



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

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



[jira] [Assigned] (CASSANDRA-15861) Muting sstable STATS metadata may race with entire-sstable-streaming(ZCS) causing checksum validation failure

2020-06-07 Thread ZhaoYang (Jira)


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

ZhaoYang reassigned CASSANDRA-15861:


Assignee: ZhaoYang

> Muting sstable STATS metadata may race with entire-sstable-streaming(ZCS) 
> causing checksum validation failure
> -
>
> Key: CASSANDRA-15861
> URL: https://issues.apache.org/jira/browse/CASSANDRA-15861
> Project: Cassandra
>  Issue Type: Bug
>  Components: Consistency/Repair, Consistency/Streaming
>Reporter: ZhaoYang
>Assignee: ZhaoYang
>Priority: Normal
> Fix For: 4.0-beta
>
>
> Flaky dtest: [test_dead_sync_initiator - 
> repair_tests.repair_test.TestRepair|https://ci-cassandra.apache.org/view/all/job/Cassandra-devbranch-dtest/143/testReport/junit/dtest.repair_tests.repair_test/TestRepair/test_dead_sync_initiator/]
> In the above test, it executes "nodetool repair" on node1 and kills node2 
> during repair. At the end, node3 reports checksum validation failure on 
> sstable transferred from node1.
> {code:java|title=what happened}
> 1. When repair started on node1, it performs anti-compaction which modifies 
> sstable's repairAt to 0 and pending repair id to session-id.
> 2. Then node1 creates {{ComponentManifest}} which contains file lengths to be 
> transferred to node3.
> 3. Before node1 actually sends the files to node3, node2 is killed and node1 
> starts to broadcast repair-failure-message to all participants in 
> {{CoordinatorSession#fail}}
> 4. Node1 receives its own repair-failure-message and fails its local repair 
> sessions at {{LocalSessions#failSession}} which triggers async background 
> compaction.
> 5. Node1's background compaction will mutate sstable's repairAt to 0 and 
> pending repair id to null via  
> {{PendingRepairManager#getNextRepairFinishedTask}}, as there is no more 
> in-progress repair.
> 6. Node1 actually sends the sstable to node3 where the sstable's STATS 
> component size is different from the original size recorded in the manifest.
> 7. At the end, node3 reports checksum validation failure when it tries to 
> mutate sstable level and "isTransient" attribute in 
> {{CassandraEntireSSTableStreamReader#read}}.
> {code}
> I believe similar race may happen with level compaction where it may directly 
> mutate a sstable's level if it doesn't overlap with sstables at next level. 
> (Note: this isn't a problem in legacy streaming as STATS file length didn't 
> matter.)
> Ideally it will be great to make sstable STATS metadata immutable, just like 
> other sstable components, so we don't have to worry this special case. For 
> now, I suggest to use a {{StatsMetadata}} snapshot when initializing 
> {{CassandraOutgoingFile}} instead of relying on mutable on-disk STATS file.



--
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-15861) Muting sstable STATS metadata may race with entire-sstable-streaming(ZCS) causing checksum validation failure

2020-06-07 Thread ZhaoYang (Jira)


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

ZhaoYang updated CASSANDRA-15861:
-
Fix Version/s: 4.0-beta

> Muting sstable STATS metadata may race with entire-sstable-streaming(ZCS) 
> causing checksum validation failure
> -
>
> Key: CASSANDRA-15861
> URL: https://issues.apache.org/jira/browse/CASSANDRA-15861
> Project: Cassandra
>  Issue Type: Bug
>  Components: Consistency/Repair, Consistency/Streaming
>Reporter: ZhaoYang
>Priority: Normal
> Fix For: 4.0-beta
>
>
> Flaky dtest: [test_dead_sync_initiator - 
> repair_tests.repair_test.TestRepair|https://ci-cassandra.apache.org/view/all/job/Cassandra-devbranch-dtest/143/testReport/junit/dtest.repair_tests.repair_test/TestRepair/test_dead_sync_initiator/]
> In the above test, it executes "nodetool repair" on node1 and kills node2 
> during repair. At the end, node3 reports checksum validation failure on 
> sstable transferred from node1.
> {code:java|title=what happened}
> 1. When repair started on node1, it performs anti-compaction which modifies 
> sstable's repairAt to 0 and pending repair id to session-id.
> 2. Then node1 creates {{ComponentManifest}} which contains file lengths to be 
> transferred to node3.
> 3. Before node1 actually sends the files to node3, node2 is killed and node1 
> starts to broadcast repair-failure-message to all participants in 
> {{CoordinatorSession#fail}}
> 4. Node1 receives its own repair-failure-message and fails its local repair 
> sessions at {{LocalSessions#failSession}} which triggers async background 
> compaction.
> 5. Node1's background compaction will mutate sstable's repairAt to 0 and 
> pending repair id to null via  
> {{PendingRepairManager#getNextRepairFinishedTask}}, as there is no more 
> in-progress repair.
> 6. Node1 actually sends the sstable to node3 where the sstable's STATS 
> component size is different from the original size recorded in the manifest.
> 7. At the end, node3 reports checksum validation failure when it tries to 
> mutate sstable level and "isTransient" attribute in 
> {{CassandraEntireSSTableStreamReader#read}}.
> {code}
> I believe similar race may happen with level compaction where it may directly 
> mutate a sstable's level if it doesn't overlap with sstables at next level. 
> (Note: this isn't a problem in legacy streaming as STATS file length didn't 
> matter.)
> Ideally it will be great to make sstable STATS metadata immutable, just like 
> other sstable components, so we don't have to worry this special case. For 
> now, I suggest to use a {{StatsMetadata}} snapshot when initializing 
> {{CassandraOutgoingFile}} instead of relying on mutable on-disk STATS file.



--
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: Print exit status for dtest docker runs, and debug on failures. Fix grabbing of ccm logs files from dtests.

2020-06-07 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 51eb85b  Print exit status for dtest docker runs, and debug on 
failures. Fix grabbing of ccm logs files from dtests.
51eb85b is described below

commit 51eb85b57b62a542ca456e52a20bee06955f6ec1
Author: Mick Semb Wever 
AuthorDate: Sun Jun 7 12:16:27 2020 +0200

Print exit status for dtest docker runs, and debug on failures. Fix 
grabbing of ccm logs files from dtests.
---
 build-scripts/cassandra-dtest-pytest.sh | 13 -
 docker/jenkins/jenkinscommand.sh| 13 +
 2 files changed, 17 insertions(+), 9 deletions(-)

diff --git a/build-scripts/cassandra-dtest-pytest.sh 
b/build-scripts/cassandra-dtest-pytest.sh
index 00bb8f2..b8a38a0 100755
--- a/build-scripts/cassandra-dtest-pytest.sh
+++ b/build-scripts/cassandra-dtest-pytest.sh
@@ -65,21 +65,24 @@ cd cassandra-dtest/
 mkdir -p ${TMPDIR}
 set +e # disable immediate exit from this point
 if [ "${DTEST_TARGET}" = "dtest" ]; then
-pytest -vv --log-level="INFO" --use-vnodes --num-tokens=32 
--junit-xml=nosetests.xml --junit-prefix=${DTEST_TARGET} -s 
--cassandra-dir=$CASSANDRA_DIR --skip-resource-intensive-tests 2>&1 | tee -a 
${WORKSPACE}/test_stdout.txt
+pytest -vv --log-level="INFO" --use-vnodes --num-tokens=32 
--junit-xml=nosetests.xml --junit-prefix=${DTEST_TARGET} -s 
--cassandra-dir=$CASSANDRA_DIR --skip-resource-intensive-tests --keep-test-dir 
2>&1 | tee -a ${WORKSPACE}/test_stdout.txt
 elif [ "${DTEST_TARGET}" = "dtest-novnode" ]; then
-pytest -vv --log-level="INFO" --junit-xml=nosetests.xml 
--junit-prefix=${DTEST_TARGET} -s --cassandra-dir=$CASSANDRA_DIR 
--skip-resource-intensive-tests 2>&1 | tee -a ${WORKSPACE}/test_stdout.txt
+pytest -vv --log-level="INFO" --junit-xml=nosetests.xml 
--junit-prefix=${DTEST_TARGET} -s --cassandra-dir=$CASSANDRA_DIR 
--skip-resource-intensive-tests --keep-test-dir 2>&1 | tee -a 
${WORKSPACE}/test_stdout.txt
 elif [ "${DTEST_TARGET}" = "dtest-offheap" ]; then
-pytest -vv --log-level="INFO" --use-vnodes --num-tokens=32 
--use-off-heap-memtables --junit-xml=nosetests.xml 
--junit-prefix=${DTEST_TARGET} -s --cassandra-dir=$CASSANDRA_DIR 
--skip-resource-intensive-tests 2>&1 | tee -a ${WORKSPACE}/test_stdout.txt
+pytest -vv --log-level="INFO" --use-vnodes --num-tokens=32 
--use-off-heap-memtables --junit-xml=nosetests.xml 
--junit-prefix=${DTEST_TARGET} -s --cassandra-dir=$CASSANDRA_DIR 
--skip-resource-intensive-tests --keep-test-dir 2>&1 | tee -a 
${WORKSPACE}/test_stdout.txt
 elif [ "${DTEST_TARGET}" = "dtest-large" ]; then
-pytest -vv --log-level="INFO" --use-vnodes --num-tokens=32 
--junit-xml=nosetests.xml --junit-prefix=${DTEST_TARGET} -s 
--cassandra-dir=$CASSANDRA_DIR --only-resource-intensive-tests 2>&1 | tee -a 
${WORKSPACE}/test_stdout.txt
+pytest -vv --log-level="INFO" --use-vnodes --num-tokens=32 
--junit-xml=nosetests.xml --junit-prefix=${DTEST_TARGET} -s 
--cassandra-dir=$CASSANDRA_DIR --only-resource-intensive-tests --keep-test-dir 
2>&1 | tee -a ${WORKSPACE}/test_stdout.txt
 elif [ "${DTEST_TARGET}" = "dtest-upgrade" ]; then
 export RUN_STATIC_UPGRADE_MATRIX=true
-pytest -vv --log-level="INFO" --execute-upgrade-tests-only 
--junit-xml=nosetests.xml --junit-prefix=${DTEST_TARGET} -s 
--cassandra-dir=$CASSANDRA_DIR 2>&1 | tee -a ${WORKSPACE}/test_stdout.txt
+pytest -vv --log-level="INFO" --execute-upgrade-tests-only 
--junit-xml=nosetests.xml --junit-prefix=${DTEST_TARGET} -s 
--cassandra-dir=$CASSANDRA_DIR --keep-test-dir 2>&1 | tee -a 
${WORKSPACE}/test_stdout.txt
 else
 echo "Unknown dtest target: ${DTEST_TARGET}"
 exit 1
 fi
 
+# tar up ccm logs for easy retrieval
+tar -cJf ccm_logs.tar.xz ${TMPDIR}/*/test/*/logs/*
+
 
 #
 # Clean
diff --git a/docker/jenkins/jenkinscommand.sh b/docker/jenkins/jenkinscommand.sh
index 1a4b233..caa97e2 100644
--- a/docker/jenkins/jenkinscommand.sh
+++ b/docker/jenkins/jenkinscommand.sh
@@ -16,16 +16,21 @@ EOF
 
 echo "jenkinscommand.sh: running: git clone --branch $BUILDSBRANCH 
$BUILDSREPO; sh ./cassandra-builds/docker/jenkins/dtest.sh $TARGET"
 ID=$(docker run --env-file env.list -dt $DOCKER_IMAGE dumb-init bash -ilc "git 
clone --branch $BUILDSBRANCH $BUILDSREPO; sh 
./cassandra-builds/docker/jenkins/dtest.sh $TARGET")
+
 # use docker attach instead of docker wait to get output
 docker attach --no-stdin $ID
+status="$?"
+echo "$ID done (${status}), copying files"
+
+if [ "$status" -ne 0 ] ; then
+docker ps -a
+docker info
+fi
 
-echo "$ID done, copying files"
 # pytest results
 docker cp $ID:/home/cassandra/cassandra/cassandra-dtest/nosetests.xml .
 # pytest logs
 docker cp $ID:/home/cassandra/cassandra/test_stdout.txt .
-# ccm logs. depends on $TMP_DIR and ccm cluster name. see 

[jira] [Assigned] (CASSANDRA-15715) [CQL help] URL for help topic CREATE_KEYSPACE is leading to page that does not exist

2020-06-07 Thread Dean Z (Jira)


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

Dean Z reassigned CASSANDRA-15715:
--

Assignee: Dean Z

> [CQL help] URL for help topic CREATE_KEYSPACE is leading to page that does 
> not exist
> 
>
> Key: CASSANDRA-15715
> URL: https://issues.apache.org/jira/browse/CASSANDRA-15715
> Project: Cassandra
>  Issue Type: Bug
>  Components: Documentation/Blog
>Reporter: Andrey Andreev
>Assignee: Dean Z
>Priority: Normal
> Attachments: 0001-Fix-URL-for-help-topic-CREATE_KEYSPACE.patch, 
> Screenshot from 2020-04-11 12-13-32.png
>
>
> URL for help topic CREATE_KEYSPACE is leading to page that does not exist
> {code:java}
> cqlsh> SHOW VERSION;
> [cqlsh 5.0.1 | Cassandra 3.11.6 | CQL spec 3.4.4 | Native protocol v4]
> cqlsh> HELP CREATE_KEYSPACE;
> *** No browser to display CQL help. URL for help topic CREATE_KEYSPACE : 
> https://cassandra.apache.org/doc/cql3/CQL-3.2.html#createKeyspaceStmt
> {code}
> Page "https://cassandra.apache.org/doc/cql3/CQL-3.2.html#createKeyspaceStmt; 
> is showing 404 "Not Found". (see screenshot attachment)
> How did I install C* (From the book "Cassandra The Definitive Guide, Third 
> Edition, page 53")
> {code:java}
> docker pull cassandra
> docker run --name c-seed cassandra
> docker exec -it c-seed cqlsh
> HELP CREATE_KEYSPACE;
> {code}
>  It is probably related to this part of code: 
> [https://github.com/apache/cassandra/blob/d069fd235f3553ef6e3267efc9cf3b9b2fe4e70e/bin/cqlsh.py#L76]
> Probably we need to replace:
> CASSANDRA_CQL_HTML_FALLBACK = 
> 'https://cassandra.apache.org/doc/cql3/CQL-3.2.html'
> with
> CASSANDRA_CQL_HTML_FALLBACK = 
> 'https://cassandra.apache.org/doc/old/CQL-3.0.html'
>  



--
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-15715) [CQL help] URL for help topic CREATE_KEYSPACE is leading to page that does not exist

2020-06-07 Thread Dean Z (Jira)


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

Dean Z commented on CASSANDRA-15715:


[^0001-Fix-URL-for-help-topic-CREATE_KEYSPACE.patch]

Hi [~widkets] , here's a patch, I think this solves this issue

> [CQL help] URL for help topic CREATE_KEYSPACE is leading to page that does 
> not exist
> 
>
> Key: CASSANDRA-15715
> URL: https://issues.apache.org/jira/browse/CASSANDRA-15715
> Project: Cassandra
>  Issue Type: Bug
>  Components: Documentation/Blog
>Reporter: Andrey Andreev
>Priority: Normal
> Attachments: 0001-Fix-URL-for-help-topic-CREATE_KEYSPACE.patch, 
> Screenshot from 2020-04-11 12-13-32.png
>
>
> URL for help topic CREATE_KEYSPACE is leading to page that does not exist
> {code:java}
> cqlsh> SHOW VERSION;
> [cqlsh 5.0.1 | Cassandra 3.11.6 | CQL spec 3.4.4 | Native protocol v4]
> cqlsh> HELP CREATE_KEYSPACE;
> *** No browser to display CQL help. URL for help topic CREATE_KEYSPACE : 
> https://cassandra.apache.org/doc/cql3/CQL-3.2.html#createKeyspaceStmt
> {code}
> Page "https://cassandra.apache.org/doc/cql3/CQL-3.2.html#createKeyspaceStmt; 
> is showing 404 "Not Found". (see screenshot attachment)
> How did I install C* (From the book "Cassandra The Definitive Guide, Third 
> Edition, page 53")
> {code:java}
> docker pull cassandra
> docker run --name c-seed cassandra
> docker exec -it c-seed cqlsh
> HELP CREATE_KEYSPACE;
> {code}
>  It is probably related to this part of code: 
> [https://github.com/apache/cassandra/blob/d069fd235f3553ef6e3267efc9cf3b9b2fe4e70e/bin/cqlsh.py#L76]
> Probably we need to replace:
> CASSANDRA_CQL_HTML_FALLBACK = 
> 'https://cassandra.apache.org/doc/cql3/CQL-3.2.html'
> with
> CASSANDRA_CQL_HTML_FALLBACK = 
> 'https://cassandra.apache.org/doc/old/CQL-3.0.html'
>  



--
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-15715) [CQL help] URL for help topic CREATE_KEYSPACE is leading to page that does not exist

2020-06-07 Thread Dean Z (Jira)


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

Dean Z updated CASSANDRA-15715:
---
Attachment: 0001-Fix-URL-for-help-topic-CREATE_KEYSPACE.patch

> [CQL help] URL for help topic CREATE_KEYSPACE is leading to page that does 
> not exist
> 
>
> Key: CASSANDRA-15715
> URL: https://issues.apache.org/jira/browse/CASSANDRA-15715
> Project: Cassandra
>  Issue Type: Bug
>  Components: Documentation/Blog
>Reporter: Andrey Andreev
>Priority: Normal
> Attachments: 0001-Fix-URL-for-help-topic-CREATE_KEYSPACE.patch, 
> Screenshot from 2020-04-11 12-13-32.png
>
>
> URL for help topic CREATE_KEYSPACE is leading to page that does not exist
> {code:java}
> cqlsh> SHOW VERSION;
> [cqlsh 5.0.1 | Cassandra 3.11.6 | CQL spec 3.4.4 | Native protocol v4]
> cqlsh> HELP CREATE_KEYSPACE;
> *** No browser to display CQL help. URL for help topic CREATE_KEYSPACE : 
> https://cassandra.apache.org/doc/cql3/CQL-3.2.html#createKeyspaceStmt
> {code}
> Page "https://cassandra.apache.org/doc/cql3/CQL-3.2.html#createKeyspaceStmt; 
> is showing 404 "Not Found". (see screenshot attachment)
> How did I install C* (From the book "Cassandra The Definitive Guide, Third 
> Edition, page 53")
> {code:java}
> docker pull cassandra
> docker run --name c-seed cassandra
> docker exec -it c-seed cqlsh
> HELP CREATE_KEYSPACE;
> {code}
>  It is probably related to this part of code: 
> [https://github.com/apache/cassandra/blob/d069fd235f3553ef6e3267efc9cf3b9b2fe4e70e/bin/cqlsh.py#L76]
> Probably we need to replace:
> CASSANDRA_CQL_HTML_FALLBACK = 
> 'https://cassandra.apache.org/doc/cql3/CQL-3.2.html'
> with
> CASSANDRA_CQL_HTML_FALLBACK = 
> 'https://cassandra.apache.org/doc/old/CQL-3.0.html'
>  



--
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: Copy, compress and archive, the dtest ccm logfiles

2020-06-07 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 22757c1  Copy, compress and archive, the dtest ccm logfiles
22757c1 is described below

commit 22757c1a56cffe4d147dc04868764a4a9fc1de2a
Author: Mick Semb Wever 
AuthorDate: Fri Jun 5 15:03:59 2020 +0200

Copy, compress and archive, the dtest ccm logfiles
---
 docker/jenkins/jenkinscommand.sh  | 8 
 jenkins-dsl/cassandra_job_dsl_seed.groovy | 4 ++--
 2 files changed, 10 insertions(+), 2 deletions(-)

diff --git a/docker/jenkins/jenkinscommand.sh b/docker/jenkins/jenkinscommand.sh
index e342ed4..1a4b233 100644
--- a/docker/jenkins/jenkinscommand.sh
+++ b/docker/jenkins/jenkinscommand.sh
@@ -13,11 +13,19 @@ BRANCH=$2
 DTEST_REPO=$3
 DTEST_BRANCH=$4
 EOF
+
 echo "jenkinscommand.sh: running: git clone --branch $BUILDSBRANCH 
$BUILDSREPO; sh ./cassandra-builds/docker/jenkins/dtest.sh $TARGET"
 ID=$(docker run --env-file env.list -dt $DOCKER_IMAGE dumb-init bash -ilc "git 
clone --branch $BUILDSBRANCH $BUILDSREPO; sh 
./cassandra-builds/docker/jenkins/dtest.sh $TARGET")
 # use docker attach instead of docker wait to get output
 docker attach --no-stdin $ID
+
 echo "$ID done, copying files"
+# pytest results
 docker cp $ID:/home/cassandra/cassandra/cassandra-dtest/nosetests.xml .
+# pytest logs
 docker cp $ID:/home/cassandra/cassandra/test_stdout.txt .
+# ccm logs. depends on $TMP_DIR and ccm cluster name. see 
cassandra-dtest-pytest.sh
+docker exec $ID /bin/bash -c "tar -cJf /ccm_logs.tar.xz 
/home/cassandra/cassandra/cassandra-dtest/tmp/*/test/*/logs/*"
+docker cp $ID:/ccm_logs.tar.xz .
+
 docker rm $ID
diff --git a/jenkins-dsl/cassandra_job_dsl_seed.groovy 
b/jenkins-dsl/cassandra_job_dsl_seed.groovy
index 728e10f..4c6fe65 100644
--- a/jenkins-dsl/cassandra_job_dsl_seed.groovy
+++ b/jenkins-dsl/cassandra_job_dsl_seed.groovy
@@ -243,7 +243,7 @@ job('Cassandra-template-dtest') {
 }
 publishers {
 archiveArtifacts {
-pattern('**/test_stdout.txt,**/nosetests.xml')
+pattern('**/test_stdout.txt,**/nosetests.xml,**/ccm_logs.tar.xz')
 allowEmpty()
 fingerprint()
 }
@@ -649,7 +649,7 @@ dtestTargets.each {
 }
 publishers {
 archiveArtifacts {
-pattern('**/test_stdout.txt,**/nosetests.xml')
+
pattern('**/test_stdout.txt,**/nosetests.xml,**/ccm_logs.tar.xz')
 allowEmpty()
 fingerprint()
 }


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