[3/3] cassandra git commit: Merge branch 'cassandra-3.11' into trunk
Merge branch 'cassandra-3.11' into trunk Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/ded6b701 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/ded6b701 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/ded6b701 Branch: refs/heads/trunk Commit: ded6b7010ec3ff71483252e3f52428513740ab4c Parents: d169443 f71e7e1 Author: Michael ShulerAuthored: Fri Feb 3 18:27:33 2017 -0600 Committer: Michael Shuler Committed: Fri Feb 3 18:27:33 2017 -0600 -- --
[2/3] cassandra git commit: Increment version to 3.11.0
Increment version to 3.11.0 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/f71e7e1f Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/f71e7e1f Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/f71e7e1f Branch: refs/heads/trunk Commit: f71e7e1fedae2259e5dfb939164f79d8c93625c0 Parents: d8dfeb2 Author: Michael ShulerAuthored: Fri Feb 3 18:27:02 2017 -0600 Committer: Michael Shuler Committed: Fri Feb 3 18:27:02 2017 -0600 -- CHANGES.txt | 2 +- NEWS.txt | 8 build.xml| 2 +- debian/changelog | 6 ++ 4 files changed, 16 insertions(+), 2 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/f71e7e1f/CHANGES.txt -- diff --git a/CHANGES.txt b/CHANGES.txt index d0134e5..0836475 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -1,4 +1,4 @@ -3.11 +3.11.0 Merged from 3.0: * Fix handling of partition with partition-level deletion plus live rows in sstabledump (CASSANDRA-13177) http://git-wip-us.apache.org/repos/asf/cassandra/blob/f71e7e1f/NEWS.txt -- diff --git a/NEWS.txt b/NEWS.txt index 985c6d4..35ef9a5 100644 --- a/NEWS.txt +++ b/NEWS.txt @@ -14,6 +14,14 @@ restore snapshots created with the previous major version using the using the provided 'sstableupgrade' tool. +3.11.0 +== + +Upgrading +- + - Nothing specific to this release, but please read all notes back to your + current version if you are upgrading. + 3.10 http://git-wip-us.apache.org/repos/asf/cassandra/blob/f71e7e1f/build.xml -- diff --git a/build.xml b/build.xml index 09dbe69..0fdf5f3 100644 --- a/build.xml +++ b/build.xml @@ -25,7 +25,7 @@ - + http://git-wip-us.apache.org/repos/asf?p=cassandra.git;a=tree"/> http://git-wip-us.apache.org/repos/asf/cassandra/blob/f71e7e1f/debian/changelog -- diff --git a/debian/changelog b/debian/changelog index 5756188..cfa26e9 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,9 @@ +cassandra (3.11.0) UNRELEASED; urgency=medium + + * New release + + -- Michael Shuler Fri, 03 Feb 2017 18:17:49 -0600 + cassandra (3.10) unstable; urgency=medium * New release
[1/3] cassandra git commit: Increment version to 3.11.0
Repository: cassandra Updated Branches: refs/heads/cassandra-3.11 d8dfeb235 -> f71e7e1fe refs/heads/trunk d16944372 -> ded6b7010 Increment version to 3.11.0 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/f71e7e1f Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/f71e7e1f Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/f71e7e1f Branch: refs/heads/cassandra-3.11 Commit: f71e7e1fedae2259e5dfb939164f79d8c93625c0 Parents: d8dfeb2 Author: Michael ShulerAuthored: Fri Feb 3 18:27:02 2017 -0600 Committer: Michael Shuler Committed: Fri Feb 3 18:27:02 2017 -0600 -- CHANGES.txt | 2 +- NEWS.txt | 8 build.xml| 2 +- debian/changelog | 6 ++ 4 files changed, 16 insertions(+), 2 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/f71e7e1f/CHANGES.txt -- diff --git a/CHANGES.txt b/CHANGES.txt index d0134e5..0836475 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -1,4 +1,4 @@ -3.11 +3.11.0 Merged from 3.0: * Fix handling of partition with partition-level deletion plus live rows in sstabledump (CASSANDRA-13177) http://git-wip-us.apache.org/repos/asf/cassandra/blob/f71e7e1f/NEWS.txt -- diff --git a/NEWS.txt b/NEWS.txt index 985c6d4..35ef9a5 100644 --- a/NEWS.txt +++ b/NEWS.txt @@ -14,6 +14,14 @@ restore snapshots created with the previous major version using the using the provided 'sstableupgrade' tool. +3.11.0 +== + +Upgrading +- + - Nothing specific to this release, but please read all notes back to your + current version if you are upgrading. + 3.10 http://git-wip-us.apache.org/repos/asf/cassandra/blob/f71e7e1f/build.xml -- diff --git a/build.xml b/build.xml index 09dbe69..0fdf5f3 100644 --- a/build.xml +++ b/build.xml @@ -25,7 +25,7 @@ - + http://git-wip-us.apache.org/repos/asf?p=cassandra.git;a=tree"/> http://git-wip-us.apache.org/repos/asf/cassandra/blob/f71e7e1f/debian/changelog -- diff --git a/debian/changelog b/debian/changelog index 5756188..cfa26e9 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,9 @@ +cassandra (3.11.0) UNRELEASED; urgency=medium + + * New release + + -- Michael Shuler Fri, 03 Feb 2017 18:17:49 -0600 + cassandra (3.10) unstable; urgency=medium * New release
svn commit: r1781622 - /cassandra/site/publish/download/index.html
Author: mshuler Date: Fri Feb 3 23:31:24 2017 New Revision: 1781622 URL: http://svn.apache.org/viewvc?rev=1781622=rev Log: Fix release dates Modified: cassandra/site/publish/download/index.html Modified: cassandra/site/publish/download/index.html URL: http://svn.apache.org/viewvc/cassandra/site/publish/download/index.html?rev=1781622=1781621=1781622=diff == --- cassandra/site/publish/download/index.html (original) +++ cassandra/site/publish/download/index.html Fri Feb 3 23:31:24 2017 @@ -103,7 +103,7 @@ features; odd-numbered releases (e.g. 3.3) contain bug fixes only. If a critical bug is found, a patch will be released against the most recent bug fix release. Read more about http://www.planetcassandra.org/blog/cassandra-2-2-3-0-and-beyond/;>tick-tock here. -Download the latest Cassandra release: http://www.apache.org/dyn/closer.lua/cassandra/3.10/apache-cassandra-3.10-bin.tar.gz;>3.10 (http://www.apache.org/dist/cassandra/3.10/apache-cassandra-3.10-bin.tar.gz.asc;>pgp, http://www.apache.org/dist/cassandra/3.10/apache-cassandra-3.10-bin.tar.gz.md5;>md5 and http://www.apache.org/dist/cassandra/3.10/apache-cassandra-3.10-bin.tar.gz.sha1;>sha1), released on 2016-09-29. +Download the latest Cassandra release: http://www.apache.org/dyn/closer.lua/cassandra/3.10/apache-cassandra-3.10-bin.tar.gz;>3.10 (http://www.apache.org/dist/cassandra/3.10/apache-cassandra-3.10-bin.tar.gz.asc;>pgp, http://www.apache.org/dist/cassandra/3.10/apache-cassandra-3.10-bin.tar.gz.md5;>md5 and http://www.apache.org/dist/cassandra/3.10/apache-cassandra-3.10-bin.tar.gz.sha1;>sha1), released on 2017-02-03. Older supported releases @@ -113,7 +113,7 @@ released against the most recent bug fix Apache Cassandra 3.0 is supported until 6 months after 4.0 release (date TBD). The latest release is http://www.apache.org/dyn/closer.lua/cassandra/3.0.10/apache-cassandra-3.0.10-bin.tar.gz;>3.0.10 (http://www.apache.org/dist/cassandra/3.0.10/apache-cassandra-3.0.10-bin.tar.gz.asc;>pgp, http://www.apache.org/dist/cassandra/3.0.10/apache-cassandra-3.0.10-bin.tar.gz.md5;>md5 and http://www.apache.org/dist/cassandra/3.0.10/apache-cassandra-3.0.10-bin.tar.gz.sha1;>sha1), released on 2016-11-16. Apache Cassandra 2.2 is supported until 4.0 release (date TBD). The latest release is http://www.apache.org/dyn/closer.lua/cassandra/2.2.8/apache-cassandra-2.2.8-bin.tar.gz;>2.2.8 (http://www.apache.org/dist/cassandra/2.2.8/apache-cassandra-2.2.8-bin.tar.gz.asc;>pgp, http://www.apache.org/dist/cassandra/2.2.8/apache-cassandra-2.2.8-bin.tar.gz.md5;>md5 and http://www.apache.org/dist/cassandra/2.2.8/apache-cassandra-2.2.8-bin.tar.gz.sha1;>sha1), released on 2016-09-28. Apache Cassandra 2.1 is supported until 4.0 release (date TBD) with critical fixes only. The latest release is -http://www.apache.org/dyn/closer.lua/cassandra/2.1.16/apache-cassandra-2.1.16-bin.tar.gz;>2.1.16 (http://www.apache.org/dist/cassandra/2.1.16/apache-cassandra-2.1.16-bin.tar.gz.asc;>pgp, http://www.apache.org/dist/cassandra/2.1.16/apache-cassandra-2.1.16-bin.tar.gz.md5;>md5 and http://www.apache.org/dist/cassandra/2.1.16/apache-cassandra-2.1.16-bin.tar.gz.sha1;>sha1), released on 2017-02-03. +http://www.apache.org/dyn/closer.lua/cassandra/2.1.16/apache-cassandra-2.1.16-bin.tar.gz;>2.1.16 (http://www.apache.org/dist/cassandra/2.1.16/apache-cassandra-2.1.16-bin.tar.gz.asc;>pgp, http://www.apache.org/dist/cassandra/2.1.16/apache-cassandra-2.1.16-bin.tar.gz.md5;>md5 and http://www.apache.org/dist/cassandra/2.1.16/apache-cassandra-2.1.16-bin.tar.gz.sha1;>sha1), released on 2016-10-10. Older (unsupported) versions of Cassandra are http://archive.apache.org/dist/cassandra/;>archived here.
svn commit: r1781621 - in /cassandra/site: publish/download/index.html src/_data/releases.yaml
Author: mshuler Date: Fri Feb 3 23:28:05 2017 New Revision: 1781621 URL: http://svn.apache.org/viewvc?rev=1781621=rev Log: Apache Cassandra 3.10 Release Modified: cassandra/site/publish/download/index.html cassandra/site/src/_data/releases.yaml Modified: cassandra/site/publish/download/index.html URL: http://svn.apache.org/viewvc/cassandra/site/publish/download/index.html?rev=1781621=1781620=1781621=diff == --- cassandra/site/publish/download/index.html (original) +++ cassandra/site/publish/download/index.html Fri Feb 3 23:28:05 2017 @@ -103,7 +103,7 @@ features; odd-numbered releases (e.g. 3.3) contain bug fixes only. If a critical bug is found, a patch will be released against the most recent bug fix release. Read more about http://www.planetcassandra.org/blog/cassandra-2-2-3-0-and-beyond/;>tick-tock here. -Download the latest Cassandra release: http://www.apache.org/dyn/closer.lua/cassandra/3.9/apache-cassandra-3.9-bin.tar.gz;>3.9 (http://www.apache.org/dist/cassandra/3.9/apache-cassandra-3.9-bin.tar.gz.asc;>pgp, http://www.apache.org/dist/cassandra/3.9/apache-cassandra-3.9-bin.tar.gz.md5;>md5 and http://www.apache.org/dist/cassandra/3.9/apache-cassandra-3.9-bin.tar.gz.sha1;>sha1), released on 2016-09-29. +Download the latest Cassandra release: http://www.apache.org/dyn/closer.lua/cassandra/3.10/apache-cassandra-3.10-bin.tar.gz;>3.10 (http://www.apache.org/dist/cassandra/3.10/apache-cassandra-3.10-bin.tar.gz.asc;>pgp, http://www.apache.org/dist/cassandra/3.10/apache-cassandra-3.10-bin.tar.gz.md5;>md5 and http://www.apache.org/dist/cassandra/3.10/apache-cassandra-3.10-bin.tar.gz.sha1;>sha1), released on 2016-09-29. Older supported releases @@ -113,7 +113,7 @@ released against the most recent bug fix Apache Cassandra 3.0 is supported until 6 months after 4.0 release (date TBD). The latest release is http://www.apache.org/dyn/closer.lua/cassandra/3.0.10/apache-cassandra-3.0.10-bin.tar.gz;>3.0.10 (http://www.apache.org/dist/cassandra/3.0.10/apache-cassandra-3.0.10-bin.tar.gz.asc;>pgp, http://www.apache.org/dist/cassandra/3.0.10/apache-cassandra-3.0.10-bin.tar.gz.md5;>md5 and http://www.apache.org/dist/cassandra/3.0.10/apache-cassandra-3.0.10-bin.tar.gz.sha1;>sha1), released on 2016-11-16. Apache Cassandra 2.2 is supported until 4.0 release (date TBD). The latest release is http://www.apache.org/dyn/closer.lua/cassandra/2.2.8/apache-cassandra-2.2.8-bin.tar.gz;>2.2.8 (http://www.apache.org/dist/cassandra/2.2.8/apache-cassandra-2.2.8-bin.tar.gz.asc;>pgp, http://www.apache.org/dist/cassandra/2.2.8/apache-cassandra-2.2.8-bin.tar.gz.md5;>md5 and http://www.apache.org/dist/cassandra/2.2.8/apache-cassandra-2.2.8-bin.tar.gz.sha1;>sha1), released on 2016-09-28. Apache Cassandra 2.1 is supported until 4.0 release (date TBD) with critical fixes only. The latest release is -http://www.apache.org/dyn/closer.lua/cassandra/2.1.16/apache-cassandra-2.1.16-bin.tar.gz;>2.1.16 (http://www.apache.org/dist/cassandra/2.1.16/apache-cassandra-2.1.16-bin.tar.gz.asc;>pgp, http://www.apache.org/dist/cassandra/2.1.16/apache-cassandra-2.1.16-bin.tar.gz.md5;>md5 and http://www.apache.org/dist/cassandra/2.1.16/apache-cassandra-2.1.16-bin.tar.gz.sha1;>sha1), released on 2016-10-10. +http://www.apache.org/dyn/closer.lua/cassandra/2.1.16/apache-cassandra-2.1.16-bin.tar.gz;>2.1.16 (http://www.apache.org/dist/cassandra/2.1.16/apache-cassandra-2.1.16-bin.tar.gz.asc;>pgp, http://www.apache.org/dist/cassandra/2.1.16/apache-cassandra-2.1.16-bin.tar.gz.md5;>md5 and http://www.apache.org/dist/cassandra/2.1.16/apache-cassandra-2.1.16-bin.tar.gz.sha1;>sha1), released on 2017-02-03. Older (unsupported) versions of Cassandra are http://archive.apache.org/dist/cassandra/;>archived here. @@ -127,10 +127,10 @@ released against the most recent bug fix For older pre-tick-tock releases, the release series is the major version number, without dot, and with an appended x. So currently it can one of 21x, 22x or 30x. - Add the Apache repository of Cassandra to /etc/apt/sources.list.d/cassandra.sources.list, for example for version 3.9: + Add the Apache repository of Cassandra to /etc/apt/sources.list.d/cassandra.sources.list, for example for version 3.10: -echo "deb http://www.apache.org/dist/cassandra/debian 39x main" | sudo tee -a /etc/apt/sources.list.d/cassandra.sources.list +echo "deb http://www.apache.org/dist/cassandra/debian 310x main" | sudo tee -a /etc/apt/sources.list.d/cassandra.sources.list @@ -151,7 +151,7 @@ appended x. So currently it If you encounter this error: -GPG error: http://www.apache.org 39x InRelease: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY A278B781FE4B2BDA +GPG error: http://www.apache.org 310x InRelease: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY
svn commit: r18122 - in /release/cassandra: 3.10/ debian/dists/310x/ debian/dists/310x/main/ debian/dists/310x/main/binary-amd64/ debian/dists/310x/main/binary-i386/ debian/dists/310x/main/source/ deb
Author: mshuler Date: Fri Feb 3 22:56:05 2017 New Revision: 18122 Log: Apache Cassandra 3.10 Release Added: release/cassandra/3.10/ release/cassandra/3.10/apache-cassandra-3.10-bin.tar.gz (with props) release/cassandra/3.10/apache-cassandra-3.10-bin.tar.gz.asc release/cassandra/3.10/apache-cassandra-3.10-bin.tar.gz.asc.md5 release/cassandra/3.10/apache-cassandra-3.10-bin.tar.gz.asc.sha1 release/cassandra/3.10/apache-cassandra-3.10-bin.tar.gz.md5 release/cassandra/3.10/apache-cassandra-3.10-bin.tar.gz.sha1 release/cassandra/3.10/apache-cassandra-3.10-src.tar.gz (with props) release/cassandra/3.10/apache-cassandra-3.10-src.tar.gz.asc release/cassandra/3.10/apache-cassandra-3.10-src.tar.gz.asc.md5 release/cassandra/3.10/apache-cassandra-3.10-src.tar.gz.asc.sha1 release/cassandra/3.10/apache-cassandra-3.10-src.tar.gz.md5 release/cassandra/3.10/apache-cassandra-3.10-src.tar.gz.sha1 release/cassandra/debian/dists/310x/ release/cassandra/debian/dists/310x/InRelease release/cassandra/debian/dists/310x/Release release/cassandra/debian/dists/310x/Release.gpg release/cassandra/debian/dists/310x/main/ release/cassandra/debian/dists/310x/main/binary-amd64/ release/cassandra/debian/dists/310x/main/binary-amd64/Packages release/cassandra/debian/dists/310x/main/binary-amd64/Packages.gz (with props) release/cassandra/debian/dists/310x/main/binary-amd64/Release release/cassandra/debian/dists/310x/main/binary-i386/ release/cassandra/debian/dists/310x/main/binary-i386/Packages release/cassandra/debian/dists/310x/main/binary-i386/Packages.gz (with props) release/cassandra/debian/dists/310x/main/binary-i386/Release release/cassandra/debian/dists/310x/main/source/ release/cassandra/debian/dists/310x/main/source/Release release/cassandra/debian/dists/310x/main/source/Sources.gz (with props) release/cassandra/debian/pool/main/c/cassandra/cassandra-tools_3.10_all.deb (with props) release/cassandra/debian/pool/main/c/cassandra/cassandra_3.10.diff.gz (with props) release/cassandra/debian/pool/main/c/cassandra/cassandra_3.10.dsc release/cassandra/debian/pool/main/c/cassandra/cassandra_3.10.orig.tar.gz (with props) release/cassandra/debian/pool/main/c/cassandra/cassandra_3.10.orig.tar.gz.asc release/cassandra/debian/pool/main/c/cassandra/cassandra_3.10_all.deb (with props) Added: release/cassandra/3.10/apache-cassandra-3.10-bin.tar.gz == Binary file - no diff available. Propchange: release/cassandra/3.10/apache-cassandra-3.10-bin.tar.gz -- svn:mime-type = application/octet-stream Added: release/cassandra/3.10/apache-cassandra-3.10-bin.tar.gz.asc == --- release/cassandra/3.10/apache-cassandra-3.10-bin.tar.gz.asc (added) +++ release/cassandra/3.10/apache-cassandra-3.10-bin.tar.gz.asc Fri Feb 3 22:56:05 2017 @@ -0,0 +1,17 @@ +-BEGIN PGP SIGNATURE- +Version: GnuPG v1 + +iQIcBAABCAAGBQJYkLlwAAoJEKJ4t4H+Syva/WgQAIwcst6G1+Z8QIgMgmdwjhTg +54jx0FvN+voeconEm0yxz8+b/9JDQ5sCi2oaobFZE2cy/ZVOSFcwjtgfFlkqWDJB +Ekjug1qyF+Z8PU21BKrOWEYt8QXXFHrcQaOAUzAsb/d+IF8yS6Fqu9/3G1bUP0WX +X00k4Ah8ZaWoL1BZ9dH3YiQZk9ml8UEgZrZovxCrQA73pPbqMb3EpnVay6JYjlkg +Q+7tXtdxlEbYpzbGNVrPvjd6uvocQXB40DVpHAGEdXM3DlO317svOa7kaM//CPAS +4SRkudLJ8dicMdEXytUgKTPZnNMF3JhBndy45+sK9QccqmN6goRZmqEsZO/KAmbA +aLi7z+6kzPNGEocpoPKhcJocQr1SPxwzx7KkPnZoXAM+B1FIfe/Kc7AWC57zdB/p +g7hkMdIX6e1vHbQknCsFqxfTQ2AqmI+e/qOSyMDkgD5uJdyXwQFixww8pUunaCev +28mPHn27jDhsyfXoQ0C+COImxyFwlwFFu3F5Q5LPebtCHC4gFmk4+E6ooCiRRjMf +hsAA2zT3v2z2DB9PPv1asZc6lRDdOezpey6D3d9hFgCAHixyLSA9z8RXDBA3qtTE +Y6/AFjhcTrFN02RDPQv4VO/6ERChRoTUdHF/rzQ8my4FzytIVCIwboktyiwGDDxt +IAwgawZ5pF+REjJSJIbH +=mZjc +-END PGP SIGNATURE- Added: release/cassandra/3.10/apache-cassandra-3.10-bin.tar.gz.asc.md5 == --- release/cassandra/3.10/apache-cassandra-3.10-bin.tar.gz.asc.md5 (added) +++ release/cassandra/3.10/apache-cassandra-3.10-bin.tar.gz.asc.md5 Fri Feb 3 22:56:05 2017 @@ -0,0 +1 @@ +ae389e0d2933d415841ed3a0ae972eba \ No newline at end of file Added: release/cassandra/3.10/apache-cassandra-3.10-bin.tar.gz.asc.sha1 == --- release/cassandra/3.10/apache-cassandra-3.10-bin.tar.gz.asc.sha1 (added) +++ release/cassandra/3.10/apache-cassandra-3.10-bin.tar.gz.asc.sha1 Fri Feb 3 22:56:05 2017 @@ -0,0 +1 @@ +5f342acbbc5e8a389559a1fe8758a38d7aa6a992 \ No newline at end of file Added: release/cassandra/3.10/apache-cassandra-3.10-bin.tar.gz.md5 == --- release/cassandra/3.10/apache-cassandra-3.10-bin.tar.gz.md5
[jira] [Created] (CASSANDRA-13185) cqlsh COPY doesn't support dates before 1900 or after 9999
Tyler Hobbs created CASSANDRA-13185: --- Summary: cqlsh COPY doesn't support dates before 1900 or after Key: CASSANDRA-13185 URL: https://issues.apache.org/jira/browse/CASSANDRA-13185 Project: Cassandra Issue Type: Bug Components: Tools Reporter: Tyler Hobbs Fix For: 3.0.x, 3.x Although we fixed this problem for standard queries in CASSANDRA-10625, it still exists for COPY. In CASSANDRA-10625, we replaced datetimes outside of the supported time range with a simple milliseconds-since-epoch long. We may not want to use the same solution for COPY, because we wouldn't be able to load the same data back in through COPY. Having consistency in the format of values and support for loading exported data seems more important for COPY. -- This message was sent by Atlassian JIRA (v6.3.15#6346)
[cassandra] Git Push Summary
Repository: cassandra Updated Tags: refs/tags/cassandra-3.10 [created] 2790f5c72
[cassandra] Git Push Summary
Repository: cassandra Updated Tags: refs/tags/3.10-tentative [deleted] 3cf415279
[08/10] cassandra git commit: Merge branch 'cassandra-3.0' into cassandra-3.11
Merge branch 'cassandra-3.0' into cassandra-3.11 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/d8dfeb23 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/d8dfeb23 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/d8dfeb23 Branch: refs/heads/cassandra-3.11 Commit: d8dfeb2354a35ac6987a13a72a6d2c20f5a2cb23 Parents: 48cfe7d cc384a5 Author: T Jake LucianiAuthored: Fri Feb 3 15:19:32 2017 -0500 Committer: T Jake Luciani Committed: Fri Feb 3 15:19:32 2017 -0500 -- CHANGES.txt | 19 ++- .../apache/cassandra/db/ColumnFamilyStore.java | 4 ++-- 2 files changed, 20 insertions(+), 3 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/d8dfeb23/CHANGES.txt -- diff --cc CHANGES.txt index be749aa,1d6b53c..d0134e5 --- a/CHANGES.txt +++ b/CHANGES.txt @@@ -195,19 -86,6 +195,20 @@@ Merged from 3.0 * Correct log message for statistics of offheap memtable flush (CASSANDRA-12776) * Explicitly set locale for string validation (CASSANDRA-12541,CASSANDRA-12542,CASSANDRA-12543,CASSANDRA-12545) Merged from 2.2: ++ * Fix speculative retry bugs (CASSANDRA-13009) + * Fix handling of nulls and unsets in IN conditions (CASSANDRA-12981) + * Fix race causing infinite loop if Thrift server is stopped before it starts listening (CASSANDRA-12856) + * CompactionTasks now correctly drops sstables out of compaction when not enough disk space is available (CASSANDRA-12979) + * Remove support for non-JavaScript UDFs (CASSANDRA-12883) + * Fix DynamicEndpointSnitch noop in multi-datacenter situations (CASSANDRA-13074) + * cqlsh copy-from: encode column names to avoid primary key parsing errors (CASSANDRA-12909) + * Temporarily fix bug that creates commit log when running offline tools (CASSANDRA-8616) + * Reduce granuality of OpOrder.Group during index build (CASSANDRA-12796) + * Test bind parameters and unset parameters in InsertUpdateIfConditionTest (CASSANDRA-12980) + * Use saved tokens when setting local tokens on StorageService.joinRing (CASSANDRA-12935) + * cqlsh: fix DESC TYPES errors (CASSANDRA-12914) + * Fix leak on skipped SSTables in sstableupgrade (CASSANDRA-12899) + * Avoid blocking gossip during pending range calculation (CASSANDRA-12281) * Fix purgeability of tombstones with max timestamp (CASSANDRA-12792) * Fail repair if participant dies during sync or anticompaction (CASSANDRA-12901) * cqlsh COPY: unprotected pk values before converting them if not using prepared statements (CASSANDRA-12863) @@@ -339,12 -208,6 +356,12 @@@ Merged from 2.2 * Don't send erroneous NEW_NODE notifications on restart (CASSANDRA-11038) * StorageService shutdown hook should use a volatile variable (CASSANDRA-11984) Merged from 2.1: + * Add system property to set the max number of native transport requests in queue (CASSANDRA-11363) - * Fix queries with empty ByteBuffer values in clustering column restrictions (CASSANDRA-12127) ++ * Fix queries with empty ByteBuffer values in clustering column restrictions (CASSANDRA-12127) + * Disable passing control to post-flush after flush failure to prevent data loss (CASSANDRA-11828) + * Allow STCS-in-L0 compactions to reduce scope with LCS (CASSANDRA-12040) + * cannot use cql since upgrading python to 2.7.11+ (CASSANDRA-11850) + * Fix filtering on clustering columns when 2i is used (CASSANDRA-11907) * Avoid stalling paxos when the paxos state expires (CASSANDRA-12043) * Remove finished incoming streaming connections from MessagingService (CASSANDRA-11854) * Don't try to get sstables for non-repairing column families (CASSANDRA-12077) http://git-wip-us.apache.org/repos/asf/cassandra/blob/d8dfeb23/src/java/org/apache/cassandra/db/ColumnFamilyStore.java --
[05/10] cassandra git commit: Merge branch 'cassandra-2.2' into cassandra-3.0
Merge branch 'cassandra-2.2' into cassandra-3.0 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/cc384a5d Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/cc384a5d Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/cc384a5d Branch: refs/heads/cassandra-3.11 Commit: cc384a5d7959cc2be50be126303d7aa3377d2297 Parents: 883c9f0 2593809 Author: T Jake LucianiAuthored: Fri Feb 3 15:13:25 2017 -0500 Committer: T Jake Luciani Committed: Fri Feb 3 15:13:25 2017 -0500 -- CHANGES.txt | 5 +++-- src/java/org/apache/cassandra/db/ColumnFamilyStore.java | 4 ++-- 2 files changed, 5 insertions(+), 4 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/cc384a5d/CHANGES.txt -- diff --cc CHANGES.txt index dc10e1f,086e0e5..1d6b53c --- a/CHANGES.txt +++ b/CHANGES.txt @@@ -1,38 -1,6 +1,39 @@@ -2.2.9 +3.0.11 + * Fix handling of partition with partition-level deletion plus + live rows in sstabledump (CASSANDRA-13177) + * Provide user workaround when system_schema.columns does not contain entries + for a table that's in system_schema.tables (CASSANDRA-13180) + * Dump threads when unit tests time out (CASSANDRA-13117) + * Better error when modifying function permissions without explicit keyspace (CASSANDRA-12925) + * Indexer is not correctly invoked when building indexes over sstables (CASSANDRA-13075) + * Read repair is not blocking repair to finish in foreground repair (CASSANDRA-13115) + * Stress daemon help is incorrect (CASSANDRA-12563) + * Remove ALTER TYPE support (CASSANDRA-12443) + * Fix assertion for certain legacy range tombstone pattern (CASSANDRA-12203) + * Set javac encoding to utf-8 (CASSANDRA-11077) + * Replace empty strings with null values if they cannot be converted (CASSANDRA-12794) + * Fixed flacky SSTableRewriterTest: check file counts before calling validateCFS (CASSANDRA-12348) + * Fix deserialization of 2.x DeletedCells (CASSANDRA-12620) + * Add parent repair session id to anticompaction log message (CASSANDRA-12186) + * Improve contention handling on failure to acquire MV lock for streaming and hints (CASSANDRA-12905) + * Fix DELETE and UPDATE queries with empty IN restrictions (CASSANDRA-12829) + * Mark MVs as built after successful bootstrap (CASSANDRA-12984) + * Estimated TS drop-time histogram updated with Cell.NO_DELETION_TIME (CASSANDRA-13040) + * Nodetool compactionstats fails with NullPointerException (CASSANDRA-13021) + * Thread local pools never cleaned up (CASSANDRA-13033) + * Set RPC_READY to false when draining or if a node is marked as shutdown (CASSANDRA-12781) + * Make sure sstables only get committed when it's safe to discard commit log records (CASSANDRA-12956) + * Reject default_time_to_live option when creating or altering MVs (CASSANDRA-12868) + * Nodetool should use a more sane max heap size (CASSANDRA-12739) + * LocalToken ensures token values are cloned on heap (CASSANDRA-12651) + * AnticompactionRequestSerializer serializedSize is incorrect (CASSANDRA-12934) + * Prevent reloading of logback.xml from UDF sandbox (CASSANDRA-12535) + * Reenable HeapPool (CASSANDRA-12900) +Merged from 2.2: - * Fix handling of nulls and unsets in IN conditions (CASSANDRA-12981) + * Fix speculative retry bugs (CASSANDRA-13009) - * Fix handling of nulls and unsets in IN conditions (CASSANDRA-12981) ++ * Fix handling of nulls and unsets in IN conditions (CASSANDRA-12981) + * Fix race causing infinite loop if Thrift server is stopped before it starts listening (CASSANDRA-12856) + * CompactionTasks now correctly drops sstables out of compaction when not enough disk space is available (CASSANDRA-12979) * Remove support for non-JavaScript UDFs (CASSANDRA-12883) * Fix DynamicEndpointSnitch noop in multi-datacenter situations (CASSANDRA-13074) * cqlsh copy-from: encode column names to avoid primary key parsing errors (CASSANDRA-12909) @@@ -183,10 -62,12 +184,10 @@@ Merged from 2.2 * Fixed cqlshlib.test.remove_test_db (CASSANDRA-12214) * Synchronize ThriftServer::stop() (CASSANDRA-12105) * Use dedicated thread for JMX notifications (CASSANDRA-12146) - * NPE when trying to remove purgable tombstones from result (CASSANDRA-12143) * Improve streaming synchronization and fault tolerance (CASSANDRA-11414) * MemoryUtil.getShort() should return an unsigned short also for architectures not supporting unaligned memory accesses (CASSANDRA-11973) - * Don't write shadowed range tombstone (CASSANDRA-12030) Merged from 2.1: - * Fix queries with empty ByteBuffer values in clustering column restrictions (CASSANDRA-12127) - * Add system
[02/10] cassandra git commit: Fix speculative retry bugs
Fix speculative retry bugs Patch by Simon Zhou; reviewed by tjake for CASSANDRA-13009 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/25938090 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/25938090 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/25938090 Branch: refs/heads/cassandra-3.0 Commit: 25938090a68b10d12bf594fc344dd52fe5bd5447 Parents: 70e33d9 Author: Simon ZhouAuthored: Thu Feb 2 15:50:10 2017 -0500 Committer: T Jake Luciani Committed: Fri Feb 3 15:11:44 2017 -0500 -- CHANGES.txt | 1 + src/java/org/apache/cassandra/db/ColumnFamilyStore.java | 4 ++-- 2 files changed, 3 insertions(+), 2 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/25938090/CHANGES.txt -- diff --git a/CHANGES.txt b/CHANGES.txt index c5e5335..086e0e5 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -1,4 +1,5 @@ 2.2.9 + * Fix speculative retry bugs (CASSANDRA-13009) * Fix handling of nulls and unsets in IN conditions (CASSANDRA-12981) * Remove support for non-JavaScript UDFs (CASSANDRA-12883) * Fix DynamicEndpointSnitch noop in multi-datacenter situations (CASSANDRA-13074) http://git-wip-us.apache.org/repos/asf/cassandra/blob/25938090/src/java/org/apache/cassandra/db/ColumnFamilyStore.java -- diff --git a/src/java/org/apache/cassandra/db/ColumnFamilyStore.java b/src/java/org/apache/cassandra/db/ColumnFamilyStore.java index 4bc46d0..2e52eb2 100644 --- a/src/java/org/apache/cassandra/db/ColumnFamilyStore.java +++ b/src/java/org/apache/cassandra/db/ColumnFamilyStore.java @@ -384,7 +384,7 @@ public class ColumnFamilyStore implements ColumnFamilyStoreMBean this.indexManager = new SecondaryIndexManager(this); this.metric = new ColumnFamilyMetrics(this); fileIndexGenerator.set(generation); -sampleLatencyNanos = DatabaseDescriptor.getReadRpcTimeout() / 2; +sampleLatencyNanos = TimeUnit.MILLISECONDS.toNanos(DatabaseDescriptor.getReadRpcTimeout() / 2); logger.info("Initializing {}.{}", keyspace.getName(), name); @@ -443,7 +443,7 @@ public class ColumnFamilyStore implements ColumnFamilyStoreMBean { case PERCENTILE: // get percentile in nanos -sampleLatencyNanos = (long) (metric.coordinatorReadLatency.getSnapshot().getValue(retryPolicy.value) * 1000d); +sampleLatencyNanos = (long) (metric.coordinatorReadLatency.getSnapshot().getValue(retryPolicy.value)); break; case CUSTOM: // convert to nanos, since configuration is in millisecond
[10/10] cassandra git commit: Merge branch 'cassandra-3.11' into trunk
Merge branch 'cassandra-3.11' into trunk Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/d1694437 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/d1694437 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/d1694437 Branch: refs/heads/trunk Commit: d16944372c5d929bf3e1434f0e2e4d33e2cd9d07 Parents: d0937cc d8dfeb2 Author: T Jake LucianiAuthored: Fri Feb 3 15:20:26 2017 -0500 Committer: T Jake Luciani Committed: Fri Feb 3 15:20:26 2017 -0500 -- CHANGES.txt | 21 ++-- .../apache/cassandra/db/ColumnFamilyStore.java | 4 ++-- 2 files changed, 21 insertions(+), 4 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/d1694437/CHANGES.txt -- diff --cc CHANGES.txt index 90392b8,d0134e5..2076c8f --- a/CHANGES.txt +++ b/CHANGES.txt @@@ -226,9 -195,11 +226,10 @@@ Merged from 3.0 * Correct log message for statistics of offheap memtable flush (CASSANDRA-12776) * Explicitly set locale for string validation (CASSANDRA-12541,CASSANDRA-12542,CASSANDRA-12543,CASSANDRA-12545) Merged from 2.2: - * Fix handling of nulls and unsets in IN conditions (CASSANDRA-12981) + * Fix speculative retry bugs (CASSANDRA-13009) + * Fix handling of nulls and unsets in IN conditions (CASSANDRA-12981) * Fix race causing infinite loop if Thrift server is stopped before it starts listening (CASSANDRA-12856) * CompactionTasks now correctly drops sstables out of compaction when not enough disk space is available (CASSANDRA-12979) - * Remove support for non-JavaScript UDFs (CASSANDRA-12883) * Fix DynamicEndpointSnitch noop in multi-datacenter situations (CASSANDRA-13074) * cqlsh copy-from: encode column names to avoid primary key parsing errors (CASSANDRA-12909) * Temporarily fix bug that creates commit log when running offline tools (CASSANDRA-8616) http://git-wip-us.apache.org/repos/asf/cassandra/blob/d1694437/src/java/org/apache/cassandra/db/ColumnFamilyStore.java -- diff --cc src/java/org/apache/cassandra/db/ColumnFamilyStore.java index 4aa2d3e,1ff956e..039dc33 --- a/src/java/org/apache/cassandra/db/ColumnFamilyStore.java +++ b/src/java/org/apache/cassandra/db/ColumnFamilyStore.java @@@ -407,14 -394,14 +407,14 @@@ public class ColumnFamilyStore implemen this.keyspace = keyspace; this.metadata = metadata; name = columnFamilyName; -minCompactionThreshold = new DefaultValue<>(metadata.params.compaction.minCompactionThreshold()); -maxCompactionThreshold = new DefaultValue<>(metadata.params.compaction.maxCompactionThreshold()); -crcCheckChance = new DefaultValue<>(metadata.params.crcCheckChance); +minCompactionThreshold = new DefaultValue<>(metadata.get().params.compaction.minCompactionThreshold()); +maxCompactionThreshold = new DefaultValue<>(metadata.get().params.compaction.maxCompactionThreshold()); +crcCheckChance = new DefaultValue<>(metadata.get().params.crcCheckChance); indexManager = new SecondaryIndexManager(this); -viewManager = keyspace.viewManager.forTable(metadata); +viewManager = keyspace.viewManager.forTable(metadata.id); metric = new TableMetrics(this); fileIndexGenerator.set(generation); - sampleLatencyNanos = DatabaseDescriptor.getReadRpcTimeout() / 2; + sampleLatencyNanos = TimeUnit.MILLISECONDS.toNanos(DatabaseDescriptor.getReadRpcTimeout() / 2); logger.info("Initializing {}.{}", keyspace.getName(), name);
[06/10] cassandra git commit: Merge branch 'cassandra-2.2' into cassandra-3.0
Merge branch 'cassandra-2.2' into cassandra-3.0 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/cc384a5d Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/cc384a5d Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/cc384a5d Branch: refs/heads/cassandra-3.0 Commit: cc384a5d7959cc2be50be126303d7aa3377d2297 Parents: 883c9f0 2593809 Author: T Jake LucianiAuthored: Fri Feb 3 15:13:25 2017 -0500 Committer: T Jake Luciani Committed: Fri Feb 3 15:13:25 2017 -0500 -- CHANGES.txt | 5 +++-- src/java/org/apache/cassandra/db/ColumnFamilyStore.java | 4 ++-- 2 files changed, 5 insertions(+), 4 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/cc384a5d/CHANGES.txt -- diff --cc CHANGES.txt index dc10e1f,086e0e5..1d6b53c --- a/CHANGES.txt +++ b/CHANGES.txt @@@ -1,38 -1,6 +1,39 @@@ -2.2.9 +3.0.11 + * Fix handling of partition with partition-level deletion plus + live rows in sstabledump (CASSANDRA-13177) + * Provide user workaround when system_schema.columns does not contain entries + for a table that's in system_schema.tables (CASSANDRA-13180) + * Dump threads when unit tests time out (CASSANDRA-13117) + * Better error when modifying function permissions without explicit keyspace (CASSANDRA-12925) + * Indexer is not correctly invoked when building indexes over sstables (CASSANDRA-13075) + * Read repair is not blocking repair to finish in foreground repair (CASSANDRA-13115) + * Stress daemon help is incorrect (CASSANDRA-12563) + * Remove ALTER TYPE support (CASSANDRA-12443) + * Fix assertion for certain legacy range tombstone pattern (CASSANDRA-12203) + * Set javac encoding to utf-8 (CASSANDRA-11077) + * Replace empty strings with null values if they cannot be converted (CASSANDRA-12794) + * Fixed flacky SSTableRewriterTest: check file counts before calling validateCFS (CASSANDRA-12348) + * Fix deserialization of 2.x DeletedCells (CASSANDRA-12620) + * Add parent repair session id to anticompaction log message (CASSANDRA-12186) + * Improve contention handling on failure to acquire MV lock for streaming and hints (CASSANDRA-12905) + * Fix DELETE and UPDATE queries with empty IN restrictions (CASSANDRA-12829) + * Mark MVs as built after successful bootstrap (CASSANDRA-12984) + * Estimated TS drop-time histogram updated with Cell.NO_DELETION_TIME (CASSANDRA-13040) + * Nodetool compactionstats fails with NullPointerException (CASSANDRA-13021) + * Thread local pools never cleaned up (CASSANDRA-13033) + * Set RPC_READY to false when draining or if a node is marked as shutdown (CASSANDRA-12781) + * Make sure sstables only get committed when it's safe to discard commit log records (CASSANDRA-12956) + * Reject default_time_to_live option when creating or altering MVs (CASSANDRA-12868) + * Nodetool should use a more sane max heap size (CASSANDRA-12739) + * LocalToken ensures token values are cloned on heap (CASSANDRA-12651) + * AnticompactionRequestSerializer serializedSize is incorrect (CASSANDRA-12934) + * Prevent reloading of logback.xml from UDF sandbox (CASSANDRA-12535) + * Reenable HeapPool (CASSANDRA-12900) +Merged from 2.2: - * Fix handling of nulls and unsets in IN conditions (CASSANDRA-12981) + * Fix speculative retry bugs (CASSANDRA-13009) - * Fix handling of nulls and unsets in IN conditions (CASSANDRA-12981) ++ * Fix handling of nulls and unsets in IN conditions (CASSANDRA-12981) + * Fix race causing infinite loop if Thrift server is stopped before it starts listening (CASSANDRA-12856) + * CompactionTasks now correctly drops sstables out of compaction when not enough disk space is available (CASSANDRA-12979) * Remove support for non-JavaScript UDFs (CASSANDRA-12883) * Fix DynamicEndpointSnitch noop in multi-datacenter situations (CASSANDRA-13074) * cqlsh copy-from: encode column names to avoid primary key parsing errors (CASSANDRA-12909) @@@ -183,10 -62,12 +184,10 @@@ Merged from 2.2 * Fixed cqlshlib.test.remove_test_db (CASSANDRA-12214) * Synchronize ThriftServer::stop() (CASSANDRA-12105) * Use dedicated thread for JMX notifications (CASSANDRA-12146) - * NPE when trying to remove purgable tombstones from result (CASSANDRA-12143) * Improve streaming synchronization and fault tolerance (CASSANDRA-11414) * MemoryUtil.getShort() should return an unsigned short also for architectures not supporting unaligned memory accesses (CASSANDRA-11973) - * Don't write shadowed range tombstone (CASSANDRA-12030) Merged from 2.1: - * Fix queries with empty ByteBuffer values in clustering column restrictions (CASSANDRA-12127) - * Add system
[jira] [Updated] (CASSANDRA-13009) Speculative retry bugs
[ https://issues.apache.org/jira/browse/CASSANDRA-13009?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] T Jake Luciani updated CASSANDRA-13009: --- Resolution: Fixed Status: Resolved (was: Patch Available) Thanks! committed as {{25938090a68b10d12bf594fc344dd52fe5bd5447}} > Speculative retry bugs > -- > > Key: CASSANDRA-13009 > URL: https://issues.apache.org/jira/browse/CASSANDRA-13009 > Project: Cassandra > Issue Type: Bug >Reporter: Simon Zhou >Assignee: Simon Zhou > Fix For: 2.2.9, 3.0.11 > > Attachments: CASSANDRA-13009-v1.patch, CASSANDRA-13009-v2.patch > > > There are a few issues with speculative retry: > 1. Time unit bugs. These are from ColumnFamilyStore (v3.0.10): > The left hand side is in nanos, as the name suggests, while the right hand > side is in millis. > {code} > sampleLatencyNanos = DatabaseDescriptor.getReadRpcTimeout() / 2; > {code} > Here coordinatorReadLatency is already in nanos and we shouldn't multiple the > value by 1000. This was a regression in 8896a70 when we switch metrics > library and the two libraries use different time units. > {code} > sampleLatencyNanos = (long) > (metric.coordinatorReadLatency.getSnapshot().getValue(retryPolicy.threshold()) > * 1000d); > {code} > 2. Confusing overload protection and retry delay. As the name > "sampleLatencyNanos" suggests, it should be used to keep the actually sampled > read latency. However, we assign it the retry threshold in the case of > CUSTOM. Then we compare the retry threshold with read timeout (defaults to > 5000ms). This means, if we use speculative_retry=10ms for the table, we won't > be able to avoid being overloaded. We should compare the actual read latency > with the read timeout for overload protection. See line 450 of > ColumnFamilyStore.java and line 279 of AbstractReadExecutor.java. > My proposals are: > a. We use sampled p99 delay and compare it with a customizable threshold > (-Dcassandra.overload.threshold) for overload detection. > b. Introduce another variable retryDelayNanos for waiting time before retry. > This is the value from table setting (PERCENTILE or CUSTOM). -- This message was sent by Atlassian JIRA (v6.3.15#6346)
[03/10] cassandra git commit: Fix speculative retry bugs
Fix speculative retry bugs Patch by Simon Zhou; reviewed by tjake for CASSANDRA-13009 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/25938090 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/25938090 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/25938090 Branch: refs/heads/cassandra-3.11 Commit: 25938090a68b10d12bf594fc344dd52fe5bd5447 Parents: 70e33d9 Author: Simon ZhouAuthored: Thu Feb 2 15:50:10 2017 -0500 Committer: T Jake Luciani Committed: Fri Feb 3 15:11:44 2017 -0500 -- CHANGES.txt | 1 + src/java/org/apache/cassandra/db/ColumnFamilyStore.java | 4 ++-- 2 files changed, 3 insertions(+), 2 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/25938090/CHANGES.txt -- diff --git a/CHANGES.txt b/CHANGES.txt index c5e5335..086e0e5 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -1,4 +1,5 @@ 2.2.9 + * Fix speculative retry bugs (CASSANDRA-13009) * Fix handling of nulls and unsets in IN conditions (CASSANDRA-12981) * Remove support for non-JavaScript UDFs (CASSANDRA-12883) * Fix DynamicEndpointSnitch noop in multi-datacenter situations (CASSANDRA-13074) http://git-wip-us.apache.org/repos/asf/cassandra/blob/25938090/src/java/org/apache/cassandra/db/ColumnFamilyStore.java -- diff --git a/src/java/org/apache/cassandra/db/ColumnFamilyStore.java b/src/java/org/apache/cassandra/db/ColumnFamilyStore.java index 4bc46d0..2e52eb2 100644 --- a/src/java/org/apache/cassandra/db/ColumnFamilyStore.java +++ b/src/java/org/apache/cassandra/db/ColumnFamilyStore.java @@ -384,7 +384,7 @@ public class ColumnFamilyStore implements ColumnFamilyStoreMBean this.indexManager = new SecondaryIndexManager(this); this.metric = new ColumnFamilyMetrics(this); fileIndexGenerator.set(generation); -sampleLatencyNanos = DatabaseDescriptor.getReadRpcTimeout() / 2; +sampleLatencyNanos = TimeUnit.MILLISECONDS.toNanos(DatabaseDescriptor.getReadRpcTimeout() / 2); logger.info("Initializing {}.{}", keyspace.getName(), name); @@ -443,7 +443,7 @@ public class ColumnFamilyStore implements ColumnFamilyStoreMBean { case PERCENTILE: // get percentile in nanos -sampleLatencyNanos = (long) (metric.coordinatorReadLatency.getSnapshot().getValue(retryPolicy.value) * 1000d); +sampleLatencyNanos = (long) (metric.coordinatorReadLatency.getSnapshot().getValue(retryPolicy.value)); break; case CUSTOM: // convert to nanos, since configuration is in millisecond
[07/10] cassandra git commit: Merge branch 'cassandra-2.2' into cassandra-3.0
Merge branch 'cassandra-2.2' into cassandra-3.0 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/cc384a5d Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/cc384a5d Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/cc384a5d Branch: refs/heads/trunk Commit: cc384a5d7959cc2be50be126303d7aa3377d2297 Parents: 883c9f0 2593809 Author: T Jake LucianiAuthored: Fri Feb 3 15:13:25 2017 -0500 Committer: T Jake Luciani Committed: Fri Feb 3 15:13:25 2017 -0500 -- CHANGES.txt | 5 +++-- src/java/org/apache/cassandra/db/ColumnFamilyStore.java | 4 ++-- 2 files changed, 5 insertions(+), 4 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/cc384a5d/CHANGES.txt -- diff --cc CHANGES.txt index dc10e1f,086e0e5..1d6b53c --- a/CHANGES.txt +++ b/CHANGES.txt @@@ -1,38 -1,6 +1,39 @@@ -2.2.9 +3.0.11 + * Fix handling of partition with partition-level deletion plus + live rows in sstabledump (CASSANDRA-13177) + * Provide user workaround when system_schema.columns does not contain entries + for a table that's in system_schema.tables (CASSANDRA-13180) + * Dump threads when unit tests time out (CASSANDRA-13117) + * Better error when modifying function permissions without explicit keyspace (CASSANDRA-12925) + * Indexer is not correctly invoked when building indexes over sstables (CASSANDRA-13075) + * Read repair is not blocking repair to finish in foreground repair (CASSANDRA-13115) + * Stress daemon help is incorrect (CASSANDRA-12563) + * Remove ALTER TYPE support (CASSANDRA-12443) + * Fix assertion for certain legacy range tombstone pattern (CASSANDRA-12203) + * Set javac encoding to utf-8 (CASSANDRA-11077) + * Replace empty strings with null values if they cannot be converted (CASSANDRA-12794) + * Fixed flacky SSTableRewriterTest: check file counts before calling validateCFS (CASSANDRA-12348) + * Fix deserialization of 2.x DeletedCells (CASSANDRA-12620) + * Add parent repair session id to anticompaction log message (CASSANDRA-12186) + * Improve contention handling on failure to acquire MV lock for streaming and hints (CASSANDRA-12905) + * Fix DELETE and UPDATE queries with empty IN restrictions (CASSANDRA-12829) + * Mark MVs as built after successful bootstrap (CASSANDRA-12984) + * Estimated TS drop-time histogram updated with Cell.NO_DELETION_TIME (CASSANDRA-13040) + * Nodetool compactionstats fails with NullPointerException (CASSANDRA-13021) + * Thread local pools never cleaned up (CASSANDRA-13033) + * Set RPC_READY to false when draining or if a node is marked as shutdown (CASSANDRA-12781) + * Make sure sstables only get committed when it's safe to discard commit log records (CASSANDRA-12956) + * Reject default_time_to_live option when creating or altering MVs (CASSANDRA-12868) + * Nodetool should use a more sane max heap size (CASSANDRA-12739) + * LocalToken ensures token values are cloned on heap (CASSANDRA-12651) + * AnticompactionRequestSerializer serializedSize is incorrect (CASSANDRA-12934) + * Prevent reloading of logback.xml from UDF sandbox (CASSANDRA-12535) + * Reenable HeapPool (CASSANDRA-12900) +Merged from 2.2: - * Fix handling of nulls and unsets in IN conditions (CASSANDRA-12981) + * Fix speculative retry bugs (CASSANDRA-13009) - * Fix handling of nulls and unsets in IN conditions (CASSANDRA-12981) ++ * Fix handling of nulls and unsets in IN conditions (CASSANDRA-12981) + * Fix race causing infinite loop if Thrift server is stopped before it starts listening (CASSANDRA-12856) + * CompactionTasks now correctly drops sstables out of compaction when not enough disk space is available (CASSANDRA-12979) * Remove support for non-JavaScript UDFs (CASSANDRA-12883) * Fix DynamicEndpointSnitch noop in multi-datacenter situations (CASSANDRA-13074) * cqlsh copy-from: encode column names to avoid primary key parsing errors (CASSANDRA-12909) @@@ -183,10 -62,12 +184,10 @@@ Merged from 2.2 * Fixed cqlshlib.test.remove_test_db (CASSANDRA-12214) * Synchronize ThriftServer::stop() (CASSANDRA-12105) * Use dedicated thread for JMX notifications (CASSANDRA-12146) - * NPE when trying to remove purgable tombstones from result (CASSANDRA-12143) * Improve streaming synchronization and fault tolerance (CASSANDRA-11414) * MemoryUtil.getShort() should return an unsigned short also for architectures not supporting unaligned memory accesses (CASSANDRA-11973) - * Don't write shadowed range tombstone (CASSANDRA-12030) Merged from 2.1: - * Fix queries with empty ByteBuffer values in clustering column restrictions (CASSANDRA-12127) - * Add system property to
[04/10] cassandra git commit: Fix speculative retry bugs
Fix speculative retry bugs Patch by Simon Zhou; reviewed by tjake for CASSANDRA-13009 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/25938090 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/25938090 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/25938090 Branch: refs/heads/trunk Commit: 25938090a68b10d12bf594fc344dd52fe5bd5447 Parents: 70e33d9 Author: Simon ZhouAuthored: Thu Feb 2 15:50:10 2017 -0500 Committer: T Jake Luciani Committed: Fri Feb 3 15:11:44 2017 -0500 -- CHANGES.txt | 1 + src/java/org/apache/cassandra/db/ColumnFamilyStore.java | 4 ++-- 2 files changed, 3 insertions(+), 2 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/25938090/CHANGES.txt -- diff --git a/CHANGES.txt b/CHANGES.txt index c5e5335..086e0e5 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -1,4 +1,5 @@ 2.2.9 + * Fix speculative retry bugs (CASSANDRA-13009) * Fix handling of nulls and unsets in IN conditions (CASSANDRA-12981) * Remove support for non-JavaScript UDFs (CASSANDRA-12883) * Fix DynamicEndpointSnitch noop in multi-datacenter situations (CASSANDRA-13074) http://git-wip-us.apache.org/repos/asf/cassandra/blob/25938090/src/java/org/apache/cassandra/db/ColumnFamilyStore.java -- diff --git a/src/java/org/apache/cassandra/db/ColumnFamilyStore.java b/src/java/org/apache/cassandra/db/ColumnFamilyStore.java index 4bc46d0..2e52eb2 100644 --- a/src/java/org/apache/cassandra/db/ColumnFamilyStore.java +++ b/src/java/org/apache/cassandra/db/ColumnFamilyStore.java @@ -384,7 +384,7 @@ public class ColumnFamilyStore implements ColumnFamilyStoreMBean this.indexManager = new SecondaryIndexManager(this); this.metric = new ColumnFamilyMetrics(this); fileIndexGenerator.set(generation); -sampleLatencyNanos = DatabaseDescriptor.getReadRpcTimeout() / 2; +sampleLatencyNanos = TimeUnit.MILLISECONDS.toNanos(DatabaseDescriptor.getReadRpcTimeout() / 2); logger.info("Initializing {}.{}", keyspace.getName(), name); @@ -443,7 +443,7 @@ public class ColumnFamilyStore implements ColumnFamilyStoreMBean { case PERCENTILE: // get percentile in nanos -sampleLatencyNanos = (long) (metric.coordinatorReadLatency.getSnapshot().getValue(retryPolicy.value) * 1000d); +sampleLatencyNanos = (long) (metric.coordinatorReadLatency.getSnapshot().getValue(retryPolicy.value)); break; case CUSTOM: // convert to nanos, since configuration is in millisecond
[01/10] cassandra git commit: Fix speculative retry bugs
Repository: cassandra Updated Branches: refs/heads/cassandra-2.2 70e33d96e -> 25938090a refs/heads/cassandra-3.0 883c9f0f7 -> cc384a5d7 refs/heads/cassandra-3.11 48cfe7d28 -> d8dfeb235 refs/heads/trunk d0937cce9 -> d16944372 Fix speculative retry bugs Patch by Simon Zhou; reviewed by tjake for CASSANDRA-13009 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/25938090 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/25938090 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/25938090 Branch: refs/heads/cassandra-2.2 Commit: 25938090a68b10d12bf594fc344dd52fe5bd5447 Parents: 70e33d9 Author: Simon ZhouAuthored: Thu Feb 2 15:50:10 2017 -0500 Committer: T Jake Luciani Committed: Fri Feb 3 15:11:44 2017 -0500 -- CHANGES.txt | 1 + src/java/org/apache/cassandra/db/ColumnFamilyStore.java | 4 ++-- 2 files changed, 3 insertions(+), 2 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/25938090/CHANGES.txt -- diff --git a/CHANGES.txt b/CHANGES.txt index c5e5335..086e0e5 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -1,4 +1,5 @@ 2.2.9 + * Fix speculative retry bugs (CASSANDRA-13009) * Fix handling of nulls and unsets in IN conditions (CASSANDRA-12981) * Remove support for non-JavaScript UDFs (CASSANDRA-12883) * Fix DynamicEndpointSnitch noop in multi-datacenter situations (CASSANDRA-13074) http://git-wip-us.apache.org/repos/asf/cassandra/blob/25938090/src/java/org/apache/cassandra/db/ColumnFamilyStore.java -- diff --git a/src/java/org/apache/cassandra/db/ColumnFamilyStore.java b/src/java/org/apache/cassandra/db/ColumnFamilyStore.java index 4bc46d0..2e52eb2 100644 --- a/src/java/org/apache/cassandra/db/ColumnFamilyStore.java +++ b/src/java/org/apache/cassandra/db/ColumnFamilyStore.java @@ -384,7 +384,7 @@ public class ColumnFamilyStore implements ColumnFamilyStoreMBean this.indexManager = new SecondaryIndexManager(this); this.metric = new ColumnFamilyMetrics(this); fileIndexGenerator.set(generation); -sampleLatencyNanos = DatabaseDescriptor.getReadRpcTimeout() / 2; +sampleLatencyNanos = TimeUnit.MILLISECONDS.toNanos(DatabaseDescriptor.getReadRpcTimeout() / 2); logger.info("Initializing {}.{}", keyspace.getName(), name); @@ -443,7 +443,7 @@ public class ColumnFamilyStore implements ColumnFamilyStoreMBean { case PERCENTILE: // get percentile in nanos -sampleLatencyNanos = (long) (metric.coordinatorReadLatency.getSnapshot().getValue(retryPolicy.value) * 1000d); +sampleLatencyNanos = (long) (metric.coordinatorReadLatency.getSnapshot().getValue(retryPolicy.value)); break; case CUSTOM: // convert to nanos, since configuration is in millisecond
[09/10] cassandra git commit: Merge branch 'cassandra-3.0' into cassandra-3.11
Merge branch 'cassandra-3.0' into cassandra-3.11 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/d8dfeb23 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/d8dfeb23 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/d8dfeb23 Branch: refs/heads/trunk Commit: d8dfeb2354a35ac6987a13a72a6d2c20f5a2cb23 Parents: 48cfe7d cc384a5 Author: T Jake LucianiAuthored: Fri Feb 3 15:19:32 2017 -0500 Committer: T Jake Luciani Committed: Fri Feb 3 15:19:32 2017 -0500 -- CHANGES.txt | 19 ++- .../apache/cassandra/db/ColumnFamilyStore.java | 4 ++-- 2 files changed, 20 insertions(+), 3 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/d8dfeb23/CHANGES.txt -- diff --cc CHANGES.txt index be749aa,1d6b53c..d0134e5 --- a/CHANGES.txt +++ b/CHANGES.txt @@@ -195,19 -86,6 +195,20 @@@ Merged from 3.0 * Correct log message for statistics of offheap memtable flush (CASSANDRA-12776) * Explicitly set locale for string validation (CASSANDRA-12541,CASSANDRA-12542,CASSANDRA-12543,CASSANDRA-12545) Merged from 2.2: ++ * Fix speculative retry bugs (CASSANDRA-13009) + * Fix handling of nulls and unsets in IN conditions (CASSANDRA-12981) + * Fix race causing infinite loop if Thrift server is stopped before it starts listening (CASSANDRA-12856) + * CompactionTasks now correctly drops sstables out of compaction when not enough disk space is available (CASSANDRA-12979) + * Remove support for non-JavaScript UDFs (CASSANDRA-12883) + * Fix DynamicEndpointSnitch noop in multi-datacenter situations (CASSANDRA-13074) + * cqlsh copy-from: encode column names to avoid primary key parsing errors (CASSANDRA-12909) + * Temporarily fix bug that creates commit log when running offline tools (CASSANDRA-8616) + * Reduce granuality of OpOrder.Group during index build (CASSANDRA-12796) + * Test bind parameters and unset parameters in InsertUpdateIfConditionTest (CASSANDRA-12980) + * Use saved tokens when setting local tokens on StorageService.joinRing (CASSANDRA-12935) + * cqlsh: fix DESC TYPES errors (CASSANDRA-12914) + * Fix leak on skipped SSTables in sstableupgrade (CASSANDRA-12899) + * Avoid blocking gossip during pending range calculation (CASSANDRA-12281) * Fix purgeability of tombstones with max timestamp (CASSANDRA-12792) * Fail repair if participant dies during sync or anticompaction (CASSANDRA-12901) * cqlsh COPY: unprotected pk values before converting them if not using prepared statements (CASSANDRA-12863) @@@ -339,12 -208,6 +356,12 @@@ Merged from 2.2 * Don't send erroneous NEW_NODE notifications on restart (CASSANDRA-11038) * StorageService shutdown hook should use a volatile variable (CASSANDRA-11984) Merged from 2.1: + * Add system property to set the max number of native transport requests in queue (CASSANDRA-11363) - * Fix queries with empty ByteBuffer values in clustering column restrictions (CASSANDRA-12127) ++ * Fix queries with empty ByteBuffer values in clustering column restrictions (CASSANDRA-12127) + * Disable passing control to post-flush after flush failure to prevent data loss (CASSANDRA-11828) + * Allow STCS-in-L0 compactions to reduce scope with LCS (CASSANDRA-12040) + * cannot use cql since upgrading python to 2.7.11+ (CASSANDRA-11850) + * Fix filtering on clustering columns when 2i is used (CASSANDRA-11907) * Avoid stalling paxos when the paxos state expires (CASSANDRA-12043) * Remove finished incoming streaming connections from MessagingService (CASSANDRA-11854) * Don't try to get sstables for non-repairing column families (CASSANDRA-12077) http://git-wip-us.apache.org/repos/asf/cassandra/blob/d8dfeb23/src/java/org/apache/cassandra/db/ColumnFamilyStore.java --
[jira] [Updated] (CASSANDRA-13009) Speculative retry bugs
[ https://issues.apache.org/jira/browse/CASSANDRA-13009?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] T Jake Luciani updated CASSANDRA-13009: --- Fix Version/s: 2.2.9 > Speculative retry bugs > -- > > Key: CASSANDRA-13009 > URL: https://issues.apache.org/jira/browse/CASSANDRA-13009 > Project: Cassandra > Issue Type: Bug >Reporter: Simon Zhou >Assignee: Simon Zhou > Fix For: 2.2.9, 3.0.11 > > Attachments: CASSANDRA-13009-v1.patch, CASSANDRA-13009-v2.patch > > > There are a few issues with speculative retry: > 1. Time unit bugs. These are from ColumnFamilyStore (v3.0.10): > The left hand side is in nanos, as the name suggests, while the right hand > side is in millis. > {code} > sampleLatencyNanos = DatabaseDescriptor.getReadRpcTimeout() / 2; > {code} > Here coordinatorReadLatency is already in nanos and we shouldn't multiple the > value by 1000. This was a regression in 8896a70 when we switch metrics > library and the two libraries use different time units. > {code} > sampleLatencyNanos = (long) > (metric.coordinatorReadLatency.getSnapshot().getValue(retryPolicy.threshold()) > * 1000d); > {code} > 2. Confusing overload protection and retry delay. As the name > "sampleLatencyNanos" suggests, it should be used to keep the actually sampled > read latency. However, we assign it the retry threshold in the case of > CUSTOM. Then we compare the retry threshold with read timeout (defaults to > 5000ms). This means, if we use speculative_retry=10ms for the table, we won't > be able to avoid being overloaded. We should compare the actual read latency > with the read timeout for overload protection. See line 450 of > ColumnFamilyStore.java and line 279 of AbstractReadExecutor.java. > My proposals are: > a. We use sampled p99 delay and compare it with a customizable threshold > (-Dcassandra.overload.threshold) for overload detection. > b. Introduce another variable retryDelayNanos for waiting time before retry. > This is the value from table setting (PERCENTILE or CUSTOM). -- This message was sent by Atlassian JIRA (v6.3.15#6346)
[jira] [Commented] (CASSANDRA-11936) Add support for + and - operations on dates
[ https://issues.apache.org/jira/browse/CASSANDRA-11936?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15852007#comment-15852007 ] Alex Petrov commented on CASSANDRA-11936: - Thank you for the patch, a couple of very small things: * Why does {{TimeType}} not support to/from nanoseconds conversion (subsequently, also addition and subtraction operations.. * Do you think it's better skip supporting for simple date + sub-day sums? It'll currently throw an exception, although it could've been just an identity function on the first arg.. * {{hasMillisecondPrecision}} has a [copy-pasted comment|https://github.com/apache/cassandra/compare/cassandra-3.X...blerer:11936-3.X#diff-5cadfa6d134cd8bbd2c32874ac577c55R366] > Add support for + and - operations on dates > --- > > Key: CASSANDRA-11936 > URL: https://issues.apache.org/jira/browse/CASSANDRA-11936 > Project: Cassandra > Issue Type: Sub-task > Components: CQL >Reporter: Benjamin Lerer >Assignee: Benjamin Lerer > Fix For: 3.x > > > For time series it can be interesting to allow queries with {{WHERE}} clause > like: {{... WHERE reading_time < now() - 2h}} > In order to do that we need to add support for: {{+}} and {{-}} operation > with date. -- This message was sent by Atlassian JIRA (v6.3.15#6346)
[jira] [Updated] (CASSANDRA-13177) sstabledump doesn't handle non-empty partitions with a partition-level deletion correctly
[ https://issues.apache.org/jira/browse/CASSANDRA-13177?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Tyler Hobbs updated CASSANDRA-13177: Resolution: Fixed Fix Version/s: (was: 3.0.x) (was: 3.x) 3.11 3.0.11 Status: Resolved (was: Ready to Commit) Thank you, committed to {{cassandra-3.0}} as {{883c9f0f743139d78996f5faf191508a9be338b5}} and merged up to {{cassandra-3.11}} and {{trunk}}. > sstabledump doesn't handle non-empty partitions with a partition-level > deletion correctly > - > > Key: CASSANDRA-13177 > URL: https://issues.apache.org/jira/browse/CASSANDRA-13177 > Project: Cassandra > Issue Type: Bug > Components: Tools >Reporter: Tyler Hobbs >Assignee: Tyler Hobbs > Fix For: 3.0.11, 3.11 > > > If a partition has a partition-level deletion, but still contains rows (with > timestamps higher than the deletion), sstabledump will only show the deletion > and not the rows. -- This message was sent by Atlassian JIRA (v6.3.15#6346)
[2/6] cassandra git commit: Fix sstabledump handling of partition-level deletions
Fix sstabledump handling of partition-level deletions Patch by Tyler Hobbs; reviewed by Yuki Morishita for CASSANDRA-13177 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/883c9f0f Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/883c9f0f Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/883c9f0f Branch: refs/heads/cassandra-3.11 Commit: 883c9f0f743139d78996f5faf191508a9be338b5 Parents: a70b0d4 Author: Tyler HobbsAuthored: Fri Feb 3 13:12:33 2017 -0600 Committer: Tyler Hobbs Committed: Fri Feb 3 13:12:33 2017 -0600 -- CHANGES.txt | 2 ++ .../org/apache/cassandra/tools/JsonTransformer.java | 16 +++- 2 files changed, 9 insertions(+), 9 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/883c9f0f/CHANGES.txt -- diff --git a/CHANGES.txt b/CHANGES.txt index ade3d5a..dc10e1f 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -1,4 +1,6 @@ 3.0.11 + * Fix handling of partition with partition-level deletion plus + live rows in sstabledump (CASSANDRA-13177) * Provide user workaround when system_schema.columns does not contain entries for a table that's in system_schema.tables (CASSANDRA-13180) * Dump threads when unit tests time out (CASSANDRA-13117) http://git-wip-us.apache.org/repos/asf/cassandra/blob/883c9f0f/src/java/org/apache/cassandra/tools/JsonTransformer.java -- diff --git a/src/java/org/apache/cassandra/tools/JsonTransformer.java b/src/java/org/apache/cassandra/tools/JsonTransformer.java index 590e527..0a72583 100644 --- a/src/java/org/apache/cassandra/tools/JsonTransformer.java +++ b/src/java/org/apache/cassandra/tools/JsonTransformer.java @@ -191,20 +191,18 @@ public final class JsonTransformer json.writeNumberField("position", this.currentScanner.getCurrentPosition()); if (!partition.partitionLevelDeletion().isLive()) -{ serializeDeletion(partition.partitionLevelDeletion()); -json.writeEndObject(); -} -else + +json.writeEndObject(); + +if (partition.hasNext() || partition.staticRow() != null) { -json.writeEndObject(); json.writeFieldName("rows"); json.writeStartArray(); updatePosition(); if (!partition.staticRow().isEmpty()) -{ serializeRow(partition.staticRow()); -} + Unfiltered unfiltered; updatePosition(); while (partition.hasNext()) @@ -221,9 +219,9 @@ public final class JsonTransformer updatePosition(); } json.writeEndArray(); -} -json.writeEndObject(); +json.writeEndObject(); +} } catch (IOException e) {
[1/6] cassandra git commit: Fix sstabledump handling of partition-level deletions
Repository: cassandra Updated Branches: refs/heads/cassandra-3.0 a70b0d4d3 -> 883c9f0f7 refs/heads/cassandra-3.11 13f654e6e -> 48cfe7d28 refs/heads/trunk 31208d00d -> d0937cce9 Fix sstabledump handling of partition-level deletions Patch by Tyler Hobbs; reviewed by Yuki Morishita for CASSANDRA-13177 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/883c9f0f Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/883c9f0f Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/883c9f0f Branch: refs/heads/cassandra-3.0 Commit: 883c9f0f743139d78996f5faf191508a9be338b5 Parents: a70b0d4 Author: Tyler HobbsAuthored: Fri Feb 3 13:12:33 2017 -0600 Committer: Tyler Hobbs Committed: Fri Feb 3 13:12:33 2017 -0600 -- CHANGES.txt | 2 ++ .../org/apache/cassandra/tools/JsonTransformer.java | 16 +++- 2 files changed, 9 insertions(+), 9 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/883c9f0f/CHANGES.txt -- diff --git a/CHANGES.txt b/CHANGES.txt index ade3d5a..dc10e1f 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -1,4 +1,6 @@ 3.0.11 + * Fix handling of partition with partition-level deletion plus + live rows in sstabledump (CASSANDRA-13177) * Provide user workaround when system_schema.columns does not contain entries for a table that's in system_schema.tables (CASSANDRA-13180) * Dump threads when unit tests time out (CASSANDRA-13117) http://git-wip-us.apache.org/repos/asf/cassandra/blob/883c9f0f/src/java/org/apache/cassandra/tools/JsonTransformer.java -- diff --git a/src/java/org/apache/cassandra/tools/JsonTransformer.java b/src/java/org/apache/cassandra/tools/JsonTransformer.java index 590e527..0a72583 100644 --- a/src/java/org/apache/cassandra/tools/JsonTransformer.java +++ b/src/java/org/apache/cassandra/tools/JsonTransformer.java @@ -191,20 +191,18 @@ public final class JsonTransformer json.writeNumberField("position", this.currentScanner.getCurrentPosition()); if (!partition.partitionLevelDeletion().isLive()) -{ serializeDeletion(partition.partitionLevelDeletion()); -json.writeEndObject(); -} -else + +json.writeEndObject(); + +if (partition.hasNext() || partition.staticRow() != null) { -json.writeEndObject(); json.writeFieldName("rows"); json.writeStartArray(); updatePosition(); if (!partition.staticRow().isEmpty()) -{ serializeRow(partition.staticRow()); -} + Unfiltered unfiltered; updatePosition(); while (partition.hasNext()) @@ -221,9 +219,9 @@ public final class JsonTransformer updatePosition(); } json.writeEndArray(); -} -json.writeEndObject(); +json.writeEndObject(); +} } catch (IOException e) {
[6/6] cassandra git commit: Merge branch 'cassandra-3.11' into trunk
Merge branch 'cassandra-3.11' into trunk Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/d0937cce Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/d0937cce Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/d0937cce Branch: refs/heads/trunk Commit: d0937cce9c2a56c9eb612e96abc2e204fb59be53 Parents: 31208d0 48cfe7d Author: Tyler HobbsAuthored: Fri Feb 3 13:13:17 2017 -0600 Committer: Tyler Hobbs Committed: Fri Feb 3 13:13:17 2017 -0600 -- CHANGES.txt | 2 ++ .../org/apache/cassandra/tools/JsonTransformer.java | 16 +++- 2 files changed, 9 insertions(+), 9 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/d0937cce/CHANGES.txt -- diff --cc CHANGES.txt index 42e6b85,be749aa..90392b8 --- a/CHANGES.txt +++ b/CHANGES.txt @@@ -1,36 -1,7 +1,38 @@@ -3.11 +4.0 + * Make TableMetadata immutable, optimize Schema (CASSANDRA-9425) + * Refactor ColumnCondition (CASSANDRA-12981) + * Parallelize streaming of different keyspaces (CASSANDRA-4663) + * Improved compactions metrics (CASSANDRA-13015) + * Speed-up start-up sequence by avoiding un-needed flushes (CASSANDRA-13031) + * Use Caffeine (W-TinyLFU) for on-heap caches (CASSANDRA-10855) + * Thrift removal (CASSANDRA-5) + * Remove pre-3.0 compatibility code for 4.0 (CASSANDRA-12716) + * Add column definition kind to dropped columns in schema (CASSANDRA-12705) + * Add (automate) Nodetool Documentation (CASSANDRA-12672) + * Update bundled cqlsh python driver to 3.7.0 (CASSANDRA-12736) + * Reject invalid replication settings when creating or altering a keyspace (CASSANDRA-12681) + * Clean up the SSTableReader#getScanner API wrt removal of RateLimiter (CASSANDRA-12422) + * Use new token allocation for non bootstrap case as well (CASSANDRA-13080) + * Avoid byte-array copy when key cache is disabled (CASSANDRA-13084) + * More fixes to the TokenAllocator (CASSANDRA-12990) + * Require forceful decommission if number of nodes is less than replication factor (CASSANDRA-12510) + * Allow IN restrictions on column families with collections (CASSANDRA-12654) + * Move to FastThreadLocalThread and FastThreadLocal (CASSANDRA-13034) + * nodetool stopdaemon errors out (CASSANDRA-13030) + * Log message size in trace message in OutboundTcpConnection (CASSANDRA-13028) + * Add timeUnit Days for cassandra-stress (CASSANDRA-13029) + * Add mutation size and batch metrics (CASSANDRA-12649) + * Add method to get size of endpoints to TokenMetadata (CASSANDRA-12999) + * Fix primary index calculation for SASI (CASSANDRA-12910) + * Expose time spent waiting in thread pool queue (CASSANDRA-8398) + * Conditionally update index built status to avoid unnecessary flushes (CASSANDRA-12969) + * NoReplicationTokenAllocator should work with zero replication factor (CASSANDRA-12983) + * cqlsh auto completion: refactor definition of compaction strategy options (CASSANDRA-12946) + * Add support for arithmetic operators (CASSANDRA-11935) + * Tables in system_distributed should not use gcgs of 0 (CASSANDRA-12954) Merged from 3.0: + * Fix handling of partition with partition-level deletion plus +live rows in sstabledump (CASSANDRA-13177) * Provide user workaround when system_schema.columns does not contain entries for a table that's in system_schema.tables (CASSANDRA-13180) http://git-wip-us.apache.org/repos/asf/cassandra/blob/d0937cce/src/java/org/apache/cassandra/tools/JsonTransformer.java --
[4/6] cassandra git commit: Merge branch 'cassandra-3.0' into cassandra-3.11
Merge branch 'cassandra-3.0' into cassandra-3.11 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/48cfe7d2 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/48cfe7d2 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/48cfe7d2 Branch: refs/heads/trunk Commit: 48cfe7d2873f4a7fae7a9b2c622db210a47eaee7 Parents: 13f654e 883c9f0 Author: Tyler HobbsAuthored: Fri Feb 3 13:13:11 2017 -0600 Committer: Tyler Hobbs Committed: Fri Feb 3 13:13:11 2017 -0600 -- CHANGES.txt | 2 ++ .../org/apache/cassandra/tools/JsonTransformer.java | 16 +++- 2 files changed, 9 insertions(+), 9 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/48cfe7d2/CHANGES.txt -- diff --cc CHANGES.txt index 9274771,dc10e1f..be749aa --- a/CHANGES.txt +++ b/CHANGES.txt @@@ -1,125 -1,8 +1,127 @@@ -3.0.11 +3.11 +Merged from 3.0: + * Fix handling of partition with partition-level deletion plus +live rows in sstabledump (CASSANDRA-13177) * Provide user workaround when system_schema.columns does not contain entries for a table that's in system_schema.tables (CASSANDRA-13180) + +3.10 + * Fix secondary index queries regression (CASSANDRA-13013) + * Add duration type to the protocol V5 (CASSANDRA-12850) + * Fix duration type validation (CASSANDRA-13143) + * Fix flaky GcCompactionTest (CASSANDRA-12664) + * Fix TestHintedHandoff.hintedhandoff_decom_test (CASSANDRA-13058) + * Fixed query monitoring for range queries (CASSANDRA-13050) + * Remove outboundBindAny configuration property (CASSANDRA-12673) + * Use correct bounds for all-data range when filtering (CASSANDRA-12666) + * Remove timing window in test case (CASSANDRA-12875) + * Resolve unit testing without JCE security libraries installed (CASSANDRA-12945) + * Fix inconsistencies in cassandra-stress load balancing policy (CASSANDRA-12919) + * Fix validation of non-frozen UDT cells (CASSANDRA-12916) + * Don't shut down socket input/output on StreamSession (CASSANDRA-12903) + * Fix Murmur3PartitionerTest (CASSANDRA-12858) + * Move cqlsh syntax rules into separate module and allow easier customization (CASSANDRA-12897) + * Fix CommitLogSegmentManagerTest (CASSANDRA-12283) + * Fix cassandra-stress truncate option (CASSANDRA-12695) + * Fix crossNode value when receiving messages (CASSANDRA-12791) + * Don't load MX4J beans twice (CASSANDRA-12869) + * Extend native protocol request flags, add versions to SUPPORTED, and introduce ProtocolVersion enum (CASSANDRA-12838) + * Set JOINING mode when running pre-join tasks (CASSANDRA-12836) + * remove net.mintern.primitive library due to license issue (CASSANDRA-12845) + * Properly format IPv6 addresses when logging JMX service URL (CASSANDRA-12454) + * Optimize the vnode allocation for single replica per DC (CASSANDRA-12777) + * Use non-token restrictions for bounds when token restrictions are overridden (CASSANDRA-12419) + * Fix CQLSH auto completion for PER PARTITION LIMIT (CASSANDRA-12803) + * Use different build directories for Eclipse and Ant (CASSANDRA-12466) + * Avoid potential AttributeError in cqlsh due to no table metadata (CASSANDRA-12815) + * Fix RandomReplicationAwareTokenAllocatorTest.testExistingCluster (CASSANDRA-12812) + * Upgrade commons-codec to 1.9 (CASSANDRA-12790) + * Make the fanout size for LeveledCompactionStrategy to be configurable (CASSANDRA-11550) + * Add duration data type (CASSANDRA-11873) + * Fix timeout in ReplicationAwareTokenAllocatorTest (CASSANDRA-12784) + * Improve sum aggregate functions (CASSANDRA-12417) + * Make cassandra.yaml docs for batch_size_*_threshold_in_kb reflect changes in CASSANDRA-10876 (CASSANDRA-12761) + * cqlsh fails to format collections when using aliases (CASSANDRA-11534) + * Check for hash conflicts in prepared statements (CASSANDRA-12733) + * Exit query parsing upon first error (CASSANDRA-12598) + * Fix cassandra-stress to use single seed in UUID generation (CASSANDRA-12729) + * CQLSSTableWriter does not allow Update statement (CASSANDRA-12450) + * Config class uses boxed types but DD exposes primitive types (CASSANDRA-12199) + * Add pre- and post-shutdown hooks to Storage Service (CASSANDRA-12461) + * Add hint delivery metrics (CASSANDRA-12693) + * Remove IndexInfo cache from FileIndexInfoRetriever (CASSANDRA-12731) + * ColumnIndex does not reuse buffer (CASSANDRA-12502) + * cdc column addition still breaks schema migration tasks (CASSANDRA-12697) + * Upgrade metrics-reporter dependencies (CASSANDRA-12089) + * Tune compaction thread count via nodetool (CASSANDRA-12248) + * Add +=/-= shortcut syntax for update
[3/6] cassandra git commit: Fix sstabledump handling of partition-level deletions
Fix sstabledump handling of partition-level deletions Patch by Tyler Hobbs; reviewed by Yuki Morishita for CASSANDRA-13177 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/883c9f0f Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/883c9f0f Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/883c9f0f Branch: refs/heads/trunk Commit: 883c9f0f743139d78996f5faf191508a9be338b5 Parents: a70b0d4 Author: Tyler HobbsAuthored: Fri Feb 3 13:12:33 2017 -0600 Committer: Tyler Hobbs Committed: Fri Feb 3 13:12:33 2017 -0600 -- CHANGES.txt | 2 ++ .../org/apache/cassandra/tools/JsonTransformer.java | 16 +++- 2 files changed, 9 insertions(+), 9 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/883c9f0f/CHANGES.txt -- diff --git a/CHANGES.txt b/CHANGES.txt index ade3d5a..dc10e1f 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -1,4 +1,6 @@ 3.0.11 + * Fix handling of partition with partition-level deletion plus + live rows in sstabledump (CASSANDRA-13177) * Provide user workaround when system_schema.columns does not contain entries for a table that's in system_schema.tables (CASSANDRA-13180) * Dump threads when unit tests time out (CASSANDRA-13117) http://git-wip-us.apache.org/repos/asf/cassandra/blob/883c9f0f/src/java/org/apache/cassandra/tools/JsonTransformer.java -- diff --git a/src/java/org/apache/cassandra/tools/JsonTransformer.java b/src/java/org/apache/cassandra/tools/JsonTransformer.java index 590e527..0a72583 100644 --- a/src/java/org/apache/cassandra/tools/JsonTransformer.java +++ b/src/java/org/apache/cassandra/tools/JsonTransformer.java @@ -191,20 +191,18 @@ public final class JsonTransformer json.writeNumberField("position", this.currentScanner.getCurrentPosition()); if (!partition.partitionLevelDeletion().isLive()) -{ serializeDeletion(partition.partitionLevelDeletion()); -json.writeEndObject(); -} -else + +json.writeEndObject(); + +if (partition.hasNext() || partition.staticRow() != null) { -json.writeEndObject(); json.writeFieldName("rows"); json.writeStartArray(); updatePosition(); if (!partition.staticRow().isEmpty()) -{ serializeRow(partition.staticRow()); -} + Unfiltered unfiltered; updatePosition(); while (partition.hasNext()) @@ -221,9 +219,9 @@ public final class JsonTransformer updatePosition(); } json.writeEndArray(); -} -json.writeEndObject(); +json.writeEndObject(); +} } catch (IOException e) {
[5/6] cassandra git commit: Merge branch 'cassandra-3.0' into cassandra-3.11
Merge branch 'cassandra-3.0' into cassandra-3.11 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/48cfe7d2 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/48cfe7d2 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/48cfe7d2 Branch: refs/heads/cassandra-3.11 Commit: 48cfe7d2873f4a7fae7a9b2c622db210a47eaee7 Parents: 13f654e 883c9f0 Author: Tyler HobbsAuthored: Fri Feb 3 13:13:11 2017 -0600 Committer: Tyler Hobbs Committed: Fri Feb 3 13:13:11 2017 -0600 -- CHANGES.txt | 2 ++ .../org/apache/cassandra/tools/JsonTransformer.java | 16 +++- 2 files changed, 9 insertions(+), 9 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/48cfe7d2/CHANGES.txt -- diff --cc CHANGES.txt index 9274771,dc10e1f..be749aa --- a/CHANGES.txt +++ b/CHANGES.txt @@@ -1,125 -1,8 +1,127 @@@ -3.0.11 +3.11 +Merged from 3.0: + * Fix handling of partition with partition-level deletion plus +live rows in sstabledump (CASSANDRA-13177) * Provide user workaround when system_schema.columns does not contain entries for a table that's in system_schema.tables (CASSANDRA-13180) + +3.10 + * Fix secondary index queries regression (CASSANDRA-13013) + * Add duration type to the protocol V5 (CASSANDRA-12850) + * Fix duration type validation (CASSANDRA-13143) + * Fix flaky GcCompactionTest (CASSANDRA-12664) + * Fix TestHintedHandoff.hintedhandoff_decom_test (CASSANDRA-13058) + * Fixed query monitoring for range queries (CASSANDRA-13050) + * Remove outboundBindAny configuration property (CASSANDRA-12673) + * Use correct bounds for all-data range when filtering (CASSANDRA-12666) + * Remove timing window in test case (CASSANDRA-12875) + * Resolve unit testing without JCE security libraries installed (CASSANDRA-12945) + * Fix inconsistencies in cassandra-stress load balancing policy (CASSANDRA-12919) + * Fix validation of non-frozen UDT cells (CASSANDRA-12916) + * Don't shut down socket input/output on StreamSession (CASSANDRA-12903) + * Fix Murmur3PartitionerTest (CASSANDRA-12858) + * Move cqlsh syntax rules into separate module and allow easier customization (CASSANDRA-12897) + * Fix CommitLogSegmentManagerTest (CASSANDRA-12283) + * Fix cassandra-stress truncate option (CASSANDRA-12695) + * Fix crossNode value when receiving messages (CASSANDRA-12791) + * Don't load MX4J beans twice (CASSANDRA-12869) + * Extend native protocol request flags, add versions to SUPPORTED, and introduce ProtocolVersion enum (CASSANDRA-12838) + * Set JOINING mode when running pre-join tasks (CASSANDRA-12836) + * remove net.mintern.primitive library due to license issue (CASSANDRA-12845) + * Properly format IPv6 addresses when logging JMX service URL (CASSANDRA-12454) + * Optimize the vnode allocation for single replica per DC (CASSANDRA-12777) + * Use non-token restrictions for bounds when token restrictions are overridden (CASSANDRA-12419) + * Fix CQLSH auto completion for PER PARTITION LIMIT (CASSANDRA-12803) + * Use different build directories for Eclipse and Ant (CASSANDRA-12466) + * Avoid potential AttributeError in cqlsh due to no table metadata (CASSANDRA-12815) + * Fix RandomReplicationAwareTokenAllocatorTest.testExistingCluster (CASSANDRA-12812) + * Upgrade commons-codec to 1.9 (CASSANDRA-12790) + * Make the fanout size for LeveledCompactionStrategy to be configurable (CASSANDRA-11550) + * Add duration data type (CASSANDRA-11873) + * Fix timeout in ReplicationAwareTokenAllocatorTest (CASSANDRA-12784) + * Improve sum aggregate functions (CASSANDRA-12417) + * Make cassandra.yaml docs for batch_size_*_threshold_in_kb reflect changes in CASSANDRA-10876 (CASSANDRA-12761) + * cqlsh fails to format collections when using aliases (CASSANDRA-11534) + * Check for hash conflicts in prepared statements (CASSANDRA-12733) + * Exit query parsing upon first error (CASSANDRA-12598) + * Fix cassandra-stress to use single seed in UUID generation (CASSANDRA-12729) + * CQLSSTableWriter does not allow Update statement (CASSANDRA-12450) + * Config class uses boxed types but DD exposes primitive types (CASSANDRA-12199) + * Add pre- and post-shutdown hooks to Storage Service (CASSANDRA-12461) + * Add hint delivery metrics (CASSANDRA-12693) + * Remove IndexInfo cache from FileIndexInfoRetriever (CASSANDRA-12731) + * ColumnIndex does not reuse buffer (CASSANDRA-12502) + * cdc column addition still breaks schema migration tasks (CASSANDRA-12697) + * Upgrade metrics-reporter dependencies (CASSANDRA-12089) + * Tune compaction thread count via nodetool (CASSANDRA-12248) + * Add +=/-= shortcut syntax for
[jira] [Updated] (CASSANDRA-13180) Better handling of missing entries in system_schema.columns during startup
[ https://issues.apache.org/jira/browse/CASSANDRA-13180?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Tyler Hobbs updated CASSANDRA-13180: Resolution: Fixed Fix Version/s: (was: 3.0.x) (was: 3.x) 3.11 3.0.11 Status: Resolved (was: Ready to Commit) Thank you, committed as {{a70b0d4d37851891ec1c8af96063985a5122edda}} to {{cassandra-3.0}} and merged up to {{cassandra-3.11}} and {{trunk}}. > Better handling of missing entries in system_schema.columns during startup > -- > > Key: CASSANDRA-13180 > URL: https://issues.apache.org/jira/browse/CASSANDRA-13180 > Project: Cassandra > Issue Type: Improvement > Components: Distributed Metadata >Reporter: Tyler Hobbs >Assignee: Tyler Hobbs > Fix For: 3.0.11, 3.11 > > > Like the error in CASSANDRA-12213 and CASSANDRA-12165, it's possible for > {{system_schema.keyspaces}} and {{tables}} to contain entries for a table > while {{system_schema.columns}} has none. This produces an error during > startup, and there's no way for a user to recover from this without restoring > from backups. > Although this has been seen in the wild on one occasion, the cause is still > not entirely known. (It may be due to a concurrent DROP TABLE and ALTER > TABLE where a table property is altered.) Until we know the root cause, it > makes sense to give users a way to recover from that situation. -- This message was sent by Atlassian JIRA (v6.3.15#6346)
[jira] [Updated] (CASSANDRA-13184) Document un-revokable SELECT on certain system key-spaces
[ https://issues.apache.org/jira/browse/CASSANDRA-13184?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Russell Spitzer updated CASSANDRA-13184: Status: Patch Available (was: Open) > Document un-revokable SELECT on certain system key-spaces > - > > Key: CASSANDRA-13184 > URL: https://issues.apache.org/jira/browse/CASSANDRA-13184 > Project: Cassandra > Issue Type: Improvement >Reporter: Russell Spitzer >Assignee: Russell Spitzer > Attachments: 13184-trunk.txt > > > The documentation currently does not have a section describing certain tables > which are accessible to all authorized users. > https://github.com/apache/cassandra/blob/c1fa21458777b51a9b21795330ed6f298103b436/src/java/org/apache/cassandra/service/ClientState.java#L63-L85 > I believe this should be described here > https://cassandra.apache.org/doc/latest/cql/security.html#revoke-permission -- This message was sent by Atlassian JIRA (v6.3.15#6346)
[jira] [Updated] (CASSANDRA-13184) Document un-revokable SELECT on certain system key-spaces
[ https://issues.apache.org/jira/browse/CASSANDRA-13184?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Russell Spitzer updated CASSANDRA-13184: Attachment: 13184-trunk.txt > Document un-revokable SELECT on certain system key-spaces > - > > Key: CASSANDRA-13184 > URL: https://issues.apache.org/jira/browse/CASSANDRA-13184 > Project: Cassandra > Issue Type: Improvement >Reporter: Russell Spitzer >Assignee: Russell Spitzer > Attachments: 13184-trunk.txt > > > The documentation currently does not have a section describing certain tables > which are accessible to all authorized users. > https://github.com/apache/cassandra/blob/c1fa21458777b51a9b21795330ed6f298103b436/src/java/org/apache/cassandra/service/ClientState.java#L63-L85 > I believe this should be described here > https://cassandra.apache.org/doc/latest/cql/security.html#revoke-permission -- This message was sent by Atlassian JIRA (v6.3.15#6346)
[jira] [Created] (CASSANDRA-13184) Document un-revokable SELECT on certain system key-spaces
Russell Spitzer created CASSANDRA-13184: --- Summary: Document un-revokable SELECT on certain system key-spaces Key: CASSANDRA-13184 URL: https://issues.apache.org/jira/browse/CASSANDRA-13184 Project: Cassandra Issue Type: Improvement Reporter: Russell Spitzer The documentation currently does not have a section describing certain tables which are accessible to all authorized users. https://github.com/apache/cassandra/blob/c1fa21458777b51a9b21795330ed6f298103b436/src/java/org/apache/cassandra/service/ClientState.java#L63-L85 I believe this should be described here https://cassandra.apache.org/doc/latest/cql/security.html#revoke-permission -- This message was sent by Atlassian JIRA (v6.3.15#6346)
[jira] [Assigned] (CASSANDRA-13184) Document un-revokable SELECT on certain system key-spaces
[ https://issues.apache.org/jira/browse/CASSANDRA-13184?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Russell Spitzer reassigned CASSANDRA-13184: --- Assignee: Russell Spitzer > Document un-revokable SELECT on certain system key-spaces > - > > Key: CASSANDRA-13184 > URL: https://issues.apache.org/jira/browse/CASSANDRA-13184 > Project: Cassandra > Issue Type: Improvement >Reporter: Russell Spitzer >Assignee: Russell Spitzer > > The documentation currently does not have a section describing certain tables > which are accessible to all authorized users. > https://github.com/apache/cassandra/blob/c1fa21458777b51a9b21795330ed6f298103b436/src/java/org/apache/cassandra/service/ClientState.java#L63-L85 > I believe this should be described here > https://cassandra.apache.org/doc/latest/cql/security.html#revoke-permission -- This message was sent by Atlassian JIRA (v6.3.15#6346)
[jira] [Created] (CASSANDRA-13183) test failure in compaction_test.TestCompaction_with_*CompactionStrategy.compaction_throughput_test
Michael Shuler created CASSANDRA-13183: -- Summary: test failure in compaction_test.TestCompaction_with_*CompactionStrategy.compaction_throughput_test Key: CASSANDRA-13183 URL: https://issues.apache.org/jira/browse/CASSANDRA-13183 Project: Cassandra Issue Type: Bug Reporter: Michael Shuler Attachments: logs.tar.gz This test failed on both Leveled and DateTiered. example failures: http://cassci.datastax.com/job/trunk_novnode_dtest/506/testReport/compaction_test/TestCompaction_with_LeveledCompactionStrategy/compaction_throughput_test http://cassci.datastax.com/job/trunk_novnode_dtest/506/testReport/compaction_test/TestCompaction_with_DateTieredCompactionStrategy/compaction_throughput_test/ Leveled: {noformat} Error Message 5.5 not greater than or equal to 6.316 >> begin captured logging << dtest: DEBUG: cluster ccm directory: /tmp/dtest-lhjy7D dtest: DEBUG: Done setting configuration options: { 'num_tokens': None, 'phi_convict_threshold': 5, 'range_request_timeout_in_ms': 1, 'read_request_timeout_in_ms': 1, 'request_timeout_in_ms': 1, 'truncate_request_timeout_in_ms': 1, 'write_request_timeout_in_ms': 1} parse: DEBUG: format '{}={avgthroughput:f}{units}/s' -> '(.+?)=(?P[-+ ]?\\d+\\.\\d+)(?P.+?)/s' dtest: DEBUG: 6.316 - >> end captured logging << - Stacktrace File "/usr/lib/python2.7/unittest/case.py", line 329, in run testMethod() File "/home/automaton/cassandra-dtest/compaction_test.py", line 280, in compaction_throughput_test self.assertGreaterEqual(float(threshold) + 0.5, float(avgthroughput)) File "/usr/lib/python2.7/unittest/case.py", line 948, in assertGreaterEqual self.fail(self._formatMessage(msg, standardMsg)) File "/usr/lib/python2.7/unittest/case.py", line 410, in fail raise self.failureException(msg) "5.5 not greater than or equal to 6.316\n >> begin captured logging << \ndtest: DEBUG: cluster ccm directory: /tmp/dtest-lhjy7D\ndtest: DEBUG: Done setting configuration options:\n{ 'num_tokens': None,\n'phi_convict_threshold': 5,\n 'range_request_timeout_in_ms': 1,\n'read_request_timeout_in_ms': 1,\n'request_timeout_in_ms': 1,\n 'truncate_request_timeout_in_ms': 1,\n'write_request_timeout_in_ms': 1}\nparse: DEBUG: format '{}={avgthroughput:f}{units}/s' -> '(.+?)=(?P[-+ ]?d+.d+)(?P.+?)/s'\ndtest: DEBUG: 6.316\n- >> end captured logging << -" {noformat} DateTiered: {noformat} Error Message 5.5 not greater than or equal to 5.681 >> begin captured logging << dtest: DEBUG: cluster ccm directory: /tmp/dtest-FXOwMR dtest: DEBUG: Done setting configuration options: { 'num_tokens': None, 'phi_convict_threshold': 5, 'range_request_timeout_in_ms': 1, 'read_request_timeout_in_ms': 1, 'request_timeout_in_ms': 1, 'truncate_request_timeout_in_ms': 1, 'write_request_timeout_in_ms': 1} parse: DEBUG: format '{}={avgthroughput:f}{units}/s' -> '(.+?)=(?P[-+ ]?\\d+\\.\\d+)(?P.+?)/s' dtest: DEBUG: 5.681 - >> end captured logging << - Stacktrace File "/usr/lib/python2.7/unittest/case.py", line 329, in run testMethod() File "/home/automaton/cassandra-dtest/compaction_test.py", line 280, in compaction_throughput_test self.assertGreaterEqual(float(threshold) + 0.5, float(avgthroughput)) File "/usr/lib/python2.7/unittest/case.py", line 948, in assertGreaterEqual self.fail(self._formatMessage(msg, standardMsg)) File "/usr/lib/python2.7/unittest/case.py", line 410, in fail raise self.failureException(msg) "5.5 not greater than or equal to 5.681\n >> begin captured logging << \ndtest: DEBUG: cluster ccm directory: /tmp/dtest-FXOwMR\ndtest: DEBUG: Done setting configuration options:\n{ 'num_tokens': None,\n'phi_convict_threshold': 5,\n 'range_request_timeout_in_ms': 1,\n'read_request_timeout_in_ms': 1,\n'request_timeout_in_ms': 1,\n 'truncate_request_timeout_in_ms': 1,\n'write_request_timeout_in_ms': 1}\nparse: DEBUG: format '{}={avgthroughput:f}{units}/s' -> '(.+?)=(?P[-+ ]?d+.d+)(?P.+?)/s'\ndtest: DEBUG: 5.681\n- >> end captured logging << -" {noformat} -- This message was sent by Atlassian JIRA (v6.3.15#6346)
[jira] [Created] (CASSANDRA-13182) test failure in sstableutil_test.SSTableUtilTest.compaction_test
Michael Shuler created CASSANDRA-13182: -- Summary: test failure in sstableutil_test.SSTableUtilTest.compaction_test Key: CASSANDRA-13182 URL: https://issues.apache.org/jira/browse/CASSANDRA-13182 Project: Cassandra Issue Type: Bug Reporter: Michael Shuler Attachments: node1_debug.log, node1_gc.log, node1.log example failure: http://cassci.datastax.com/job/trunk_novnode_dtest/506/testReport/sstableutil_test/SSTableUtilTest/compaction_test {noformat} Error Message Lists differ: ['/tmp/dtest-Rk_3Cs/test/node1... != ['/tmp/dtest-Rk_3Cs/test/node1... First differing element 8: '/tmp/dtest-Rk_3Cs/test/node1/data1/keyspace1/standard1-11ee2450e8ab11e6b5a68de39eb517c4/mc-2-big-CRC.db' '/tmp/dtest-Rk_3Cs/test/node1/data1/keyspace1/standard1-11ee2450e8ab11e6b5a68de39eb517c4/mc-6-big-CRC.db' First list contains 7 additional elements. First extra element 24: '/tmp/dtest-Rk_3Cs/test/node1/data2/keyspace1/standard1-11ee2450e8ab11e6b5a68de39eb517c4/mc-5-big-Data.db' ['/tmp/dtest-Rk_3Cs/test/node1/data0/keyspace1/standard1-11ee2450e8ab11e6b5a68de39eb517c4/mc-4-big-CRC.db', '/tmp/dtest-Rk_3Cs/test/node1/data0/keyspace1/standard1-11ee2450e8ab11e6b5a68de39eb517c4/mc-4-big-Data.db', '/tmp/dtest-Rk_3Cs/test/node1/data0/keyspace1/standard1-11ee2450e8ab11e6b5a68de39eb517c4/mc-4-big-Digest.crc32', '/tmp/dtest-Rk_3Cs/test/node1/data0/keyspace1/standard1-11ee2450e8ab11e6b5a68de39eb517c4/mc-4-big-Filter.db', '/tmp/dtest-Rk_3Cs/test/node1/data0/keyspace1/standard1-11ee2450e8ab11e6b5a68de39eb517c4/mc-4-big-Index.db', '/tmp/dtest-Rk_3Cs/test/node1/data0/keyspace1/standard1-11ee2450e8ab11e6b5a68de39eb517c4/mc-4-big-Statistics.db', '/tmp/dtest-Rk_3Cs/test/node1/data0/keyspace1/standard1-11ee2450e8ab11e6b5a68de39eb517c4/mc-4-big-Summary.db', '/tmp/dtest-Rk_3Cs/test/node1/data0/keyspace1/standard1-11ee2450e8ab11e6b5a68de39eb517c4/mc-4-big-TOC.txt', - '/tmp/dtest-Rk_3Cs/test/node1/data1/keyspace1/standard1-11ee2450e8ab11e6b5a68de39eb517c4/mc-2-big-CRC.db', - '/tmp/dtest-Rk_3Cs/test/node1/data1/keyspace1/standard1-11ee2450e8ab11e6b5a68de39eb517c4/mc-2-big-Digest.crc32', - '/tmp/dtest-Rk_3Cs/test/node1/data1/keyspace1/standard1-11ee2450e8ab11e6b5a68de39eb517c4/mc-2-big-Filter.db', - '/tmp/dtest-Rk_3Cs/test/node1/data1/keyspace1/standard1-11ee2450e8ab11e6b5a68de39eb517c4/mc-2-big-Index.db', - '/tmp/dtest-Rk_3Cs/test/node1/data1/keyspace1/standard1-11ee2450e8ab11e6b5a68de39eb517c4/mc-2-big-Statistics.db', - '/tmp/dtest-Rk_3Cs/test/node1/data1/keyspace1/standard1-11ee2450e8ab11e6b5a68de39eb517c4/mc-2-big-Summary.db', - '/tmp/dtest-Rk_3Cs/test/node1/data1/keyspace1/standard1-11ee2450e8ab11e6b5a68de39eb517c4/mc-2-big-TOC.txt', '/tmp/dtest-Rk_3Cs/test/node1/data1/keyspace1/standard1-11ee2450e8ab11e6b5a68de39eb517c4/mc-6-big-CRC.db', '/tmp/dtest-Rk_3Cs/test/node1/data1/keyspace1/standard1-11ee2450e8ab11e6b5a68de39eb517c4/mc-6-big-Data.db', '/tmp/dtest-Rk_3Cs/test/node1/data1/keyspace1/standard1-11ee2450e8ab11e6b5a68de39eb517c4/mc-6-big-Digest.crc32', '/tmp/dtest-Rk_3Cs/test/node1/data1/keyspace1/standard1-11ee2450e8ab11e6b5a68de39eb517c4/mc-6-big-Filter.db', '/tmp/dtest-Rk_3Cs/test/node1/data1/keyspace1/standard1-11ee2450e8ab11e6b5a68de39eb517c4/mc-6-big-Index.db', '/tmp/dtest-Rk_3Cs/test/node1/data1/keyspace1/standard1-11ee2450e8ab11e6b5a68de39eb517c4/mc-6-big-Statistics.db', '/tmp/dtest-Rk_3Cs/test/node1/data1/keyspace1/standard1-11ee2450e8ab11e6b5a68de39eb517c4/mc-6-big-Summary.db', '/tmp/dtest-Rk_3Cs/test/node1/data1/keyspace1/standard1-11ee2450e8ab11e6b5a68de39eb517c4/mc-6-big-TOC.txt', '/tmp/dtest-Rk_3Cs/test/node1/data2/keyspace1/standard1-11ee2450e8ab11e6b5a68de39eb517c4/mc-5-big-CRC.db', '/tmp/dtest-Rk_3Cs/test/node1/data2/keyspace1/standard1-11ee2450e8ab11e6b5a68de39eb517c4/mc-5-big-Data.db', '/tmp/dtest-Rk_3Cs/test/node1/data2/keyspace1/standard1-11ee2450e8ab11e6b5a68de39eb517c4/mc-5-big-Digest.crc32', '/tmp/dtest-Rk_3Cs/test/node1/data2/keyspace1/standard1-11ee2450e8ab11e6b5a68de39eb517c4/mc-5-big-Filter.db', '/tmp/dtest-Rk_3Cs/test/node1/data2/keyspace1/standard1-11ee2450e8ab11e6b5a68de39eb517c4/mc-5-big-Index.db', '/tmp/dtest-Rk_3Cs/test/node1/data2/keyspace1/standard1-11ee2450e8ab11e6b5a68de39eb517c4/mc-5-big-Statistics.db', '/tmp/dtest-Rk_3Cs/test/node1/data2/keyspace1/standard1-11ee2450e8ab11e6b5a68de39eb517c4/mc-5-big-Summary.db', '/tmp/dtest-Rk_3Cs/test/node1/data2/keyspace1/standard1-11ee2450e8ab11e6b5a68de39eb517c4/mc-5-big-TOC.txt'] >> begin captured logging << {noformat} -- This message was sent by Atlassian JIRA (v6.3.15#6346)
[3/6] cassandra git commit: Provide user workaround for partially corrupt schema tables
Provide user workaround for partially corrupt schema tables Patch by Tyler Hobbs; reviewed by Aleksey Yeschenko for CASSANDRA-13180 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/a70b0d4d Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/a70b0d4d Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/a70b0d4d Branch: refs/heads/trunk Commit: a70b0d4d37851891ec1c8af96063985a5122edda Parents: 6caf3c4 Author: Tyler HobbsAuthored: Fri Feb 3 11:25:27 2017 -0600 Committer: Tyler Hobbs Committed: Fri Feb 3 11:25:27 2017 -0600 -- CHANGES.txt | 2 ++ .../apache/cassandra/schema/SchemaKeyspace.java | 36 ++-- 2 files changed, 36 insertions(+), 2 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/a70b0d4d/CHANGES.txt -- diff --git a/CHANGES.txt b/CHANGES.txt index e3bda6c..ade3d5a 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -1,4 +1,6 @@ 3.0.11 + * Provide user workaround when system_schema.columns does not contain entries + for a table that's in system_schema.tables (CASSANDRA-13180) * Dump threads when unit tests time out (CASSANDRA-13117) * Better error when modifying function permissions without explicit keyspace (CASSANDRA-12925) * Indexer is not correctly invoked when building indexes over sstables (CASSANDRA-13075) http://git-wip-us.apache.org/repos/asf/cassandra/blob/a70b0d4d/src/java/org/apache/cassandra/schema/SchemaKeyspace.java -- diff --git a/src/java/org/apache/cassandra/schema/SchemaKeyspace.java b/src/java/org/apache/cassandra/schema/SchemaKeyspace.java index 84a5e13..eee4fbb 100644 --- a/src/java/org/apache/cassandra/schema/SchemaKeyspace.java +++ b/src/java/org/apache/cassandra/schema/SchemaKeyspace.java @@ -67,6 +67,7 @@ public final class SchemaKeyspace private static final Logger logger = LoggerFactory.getLogger(SchemaKeyspace.class); private static final boolean FLUSH_SCHEMA_TABLES = Boolean.valueOf(System.getProperty("cassandra.test.flush_local_schema_changes", "true")); +private static final boolean IGNORE_CORRUPTED_SCHEMA_TABLES = Boolean.valueOf(System.getProperty("cassandra.ignore_corrupted_schema_tables", "false")); public static final String NAME = "system_schema"; @@ -925,7 +926,26 @@ public final class SchemaKeyspace Tables.Builder tables = org.apache.cassandra.schema.Tables.builder(); for (UntypedResultSet.Row row : query(query, keyspaceName)) -tables.add(fetchTable(keyspaceName, row.getString("table_name"), types)); +{ +String tableName = row.getString("table_name"); +try +{ +tables.add(fetchTable(keyspaceName, tableName, types)); +} +catch (MissingColumns exc) +{ +if (!IGNORE_CORRUPTED_SCHEMA_TABLES) +{ +logger.error("No columns found for table {}.{} in {}.{}. This may be due to " + + "corruption or concurrent dropping and altering of a table. If this table " + + "is supposed to be dropped, restart cassandra with -Dcassandra.ignore_corrupted_schema_tables=true " + + "and run the following query: \"DELETE FROM {}.{} WHERE keyspace_name = '{}' AND table_name = '{}';\"." + + "If the table is not supposed to be dropped, restore {}.{} sstables from backups.", + keyspaceName, tableName, NAME, COLUMNS, NAME, TABLES, keyspaceName, tableName, NAME, COLUMNS); +throw exc; +} +} +} return tables.build(); } @@ -991,8 +1011,12 @@ public final class SchemaKeyspace private static List fetchColumns(String keyspace, String table, Types types) { String query = format("SELECT * FROM %s.%s WHERE keyspace_name = ? AND table_name = ?", NAME, COLUMNS); +UntypedResultSet columnRows = query(query, keyspace, table); +if (columnRows.isEmpty()) +throw new MissingColumns("Columns not found in schema table for " + keyspace + "." + table); + List columns = new ArrayList<>(); -query(query, keyspace, table).forEach(row -> columns.add(createColumnFromRow(row, types))); +columnRows.forEach(row -> columns.add(createColumnFromRow(row, types))); return columns; } @@ -1399,4 +1423,12 @@ public final class SchemaKeyspace .map(SchemaKeyspace::expandUserTypes)
[6/6] cassandra git commit: Merge branch 'cassandra-3.11' into trunk
Merge branch 'cassandra-3.11' into trunk Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/31208d00 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/31208d00 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/31208d00 Branch: refs/heads/trunk Commit: 31208d00d4d3e3d055dc544a30e71875aa3ccfd1 Parents: 546df00 13f654e Author: Tyler HobbsAuthored: Fri Feb 3 11:33:47 2017 -0600 Committer: Tyler Hobbs Committed: Fri Feb 3 11:33:47 2017 -0600 -- CHANGES.txt | 3 ++ .../apache/cassandra/schema/SchemaKeyspace.java | 40 +++- 2 files changed, 41 insertions(+), 2 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/31208d00/CHANGES.txt -- diff --cc CHANGES.txt index 63dc803,9274771..42e6b85 --- a/CHANGES.txt +++ b/CHANGES.txt @@@ -1,37 -1,8 +1,40 @@@ -3.11 +4.0 + * Make TableMetadata immutable, optimize Schema (CASSANDRA-9425) + * Refactor ColumnCondition (CASSANDRA-12981) + * Parallelize streaming of different keyspaces (CASSANDRA-4663) + * Improved compactions metrics (CASSANDRA-13015) + * Speed-up start-up sequence by avoiding un-needed flushes (CASSANDRA-13031) + * Use Caffeine (W-TinyLFU) for on-heap caches (CASSANDRA-10855) + * Thrift removal (CASSANDRA-5) + * Remove pre-3.0 compatibility code for 4.0 (CASSANDRA-12716) + * Add column definition kind to dropped columns in schema (CASSANDRA-12705) + * Add (automate) Nodetool Documentation (CASSANDRA-12672) + * Update bundled cqlsh python driver to 3.7.0 (CASSANDRA-12736) + * Reject invalid replication settings when creating or altering a keyspace (CASSANDRA-12681) + * Clean up the SSTableReader#getScanner API wrt removal of RateLimiter (CASSANDRA-12422) + * Use new token allocation for non bootstrap case as well (CASSANDRA-13080) + * Avoid byte-array copy when key cache is disabled (CASSANDRA-13084) + * More fixes to the TokenAllocator (CASSANDRA-12990) + * Require forceful decommission if number of nodes is less than replication factor (CASSANDRA-12510) + * Allow IN restrictions on column families with collections (CASSANDRA-12654) + * Move to FastThreadLocalThread and FastThreadLocal (CASSANDRA-13034) + * nodetool stopdaemon errors out (CASSANDRA-13030) + * Log message size in trace message in OutboundTcpConnection (CASSANDRA-13028) + * Add timeUnit Days for cassandra-stress (CASSANDRA-13029) + * Add mutation size and batch metrics (CASSANDRA-12649) + * Add method to get size of endpoints to TokenMetadata (CASSANDRA-12999) + * Fix primary index calculation for SASI (CASSANDRA-12910) + * Expose time spent waiting in thread pool queue (CASSANDRA-8398) + * Conditionally update index built status to avoid unnecessary flushes (CASSANDRA-12969) + * NoReplicationTokenAllocator should work with zero replication factor (CASSANDRA-12983) + * cqlsh auto completion: refactor definition of compaction strategy options (CASSANDRA-12946) + * Add support for arithmetic operators (CASSANDRA-11935) + * Tables in system_distributed should not use gcgs of 0 (CASSANDRA-12954) + Merged from 3.0: + * Provide user workaround when system_schema.columns does not contain entries +for a table that's in system_schema.tables (CASSANDRA-13180) + 3.10 * Fix secondary index queries regression (CASSANDRA-13013) * Add duration type to the protocol V5 (CASSANDRA-12850) http://git-wip-us.apache.org/repos/asf/cassandra/blob/31208d00/src/java/org/apache/cassandra/schema/SchemaKeyspace.java -- diff --cc src/java/org/apache/cassandra/schema/SchemaKeyspace.java index 6716652,58580b9..5e5ba34 --- a/src/java/org/apache/cassandra/schema/SchemaKeyspace.java +++ b/src/java/org/apache/cassandra/schema/SchemaKeyspace.java @@@ -961,11 -1040,15 +985,15 @@@ public final class SchemaKeyspac .build(); } -private static List fetchColumns(String keyspace, String table, Types types) +private static List fetchColumns(String keyspace, String table, Types types) { String query = format("SELECT * FROM %s.%s WHERE keyspace_name = ? AND table_name = ?", SchemaConstants.SCHEMA_KEYSPACE_NAME, COLUMNS); + UntypedResultSet columnRows = query(query, keyspace, table); + if (columnRows.isEmpty()) + throw new MissingColumns("Columns not found in schema table for " + keyspace + "." + table); + -List columns = new ArrayList<>(); +List columns = new ArrayList<>(); - query(query, keyspace, table).forEach(row -> columns.add(createColumnFromRow(row, types))); +
[2/6] cassandra git commit: Provide user workaround for partially corrupt schema tables
Provide user workaround for partially corrupt schema tables Patch by Tyler Hobbs; reviewed by Aleksey Yeschenko for CASSANDRA-13180 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/a70b0d4d Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/a70b0d4d Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/a70b0d4d Branch: refs/heads/cassandra-3.11 Commit: a70b0d4d37851891ec1c8af96063985a5122edda Parents: 6caf3c4 Author: Tyler HobbsAuthored: Fri Feb 3 11:25:27 2017 -0600 Committer: Tyler Hobbs Committed: Fri Feb 3 11:25:27 2017 -0600 -- CHANGES.txt | 2 ++ .../apache/cassandra/schema/SchemaKeyspace.java | 36 ++-- 2 files changed, 36 insertions(+), 2 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/a70b0d4d/CHANGES.txt -- diff --git a/CHANGES.txt b/CHANGES.txt index e3bda6c..ade3d5a 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -1,4 +1,6 @@ 3.0.11 + * Provide user workaround when system_schema.columns does not contain entries + for a table that's in system_schema.tables (CASSANDRA-13180) * Dump threads when unit tests time out (CASSANDRA-13117) * Better error when modifying function permissions without explicit keyspace (CASSANDRA-12925) * Indexer is not correctly invoked when building indexes over sstables (CASSANDRA-13075) http://git-wip-us.apache.org/repos/asf/cassandra/blob/a70b0d4d/src/java/org/apache/cassandra/schema/SchemaKeyspace.java -- diff --git a/src/java/org/apache/cassandra/schema/SchemaKeyspace.java b/src/java/org/apache/cassandra/schema/SchemaKeyspace.java index 84a5e13..eee4fbb 100644 --- a/src/java/org/apache/cassandra/schema/SchemaKeyspace.java +++ b/src/java/org/apache/cassandra/schema/SchemaKeyspace.java @@ -67,6 +67,7 @@ public final class SchemaKeyspace private static final Logger logger = LoggerFactory.getLogger(SchemaKeyspace.class); private static final boolean FLUSH_SCHEMA_TABLES = Boolean.valueOf(System.getProperty("cassandra.test.flush_local_schema_changes", "true")); +private static final boolean IGNORE_CORRUPTED_SCHEMA_TABLES = Boolean.valueOf(System.getProperty("cassandra.ignore_corrupted_schema_tables", "false")); public static final String NAME = "system_schema"; @@ -925,7 +926,26 @@ public final class SchemaKeyspace Tables.Builder tables = org.apache.cassandra.schema.Tables.builder(); for (UntypedResultSet.Row row : query(query, keyspaceName)) -tables.add(fetchTable(keyspaceName, row.getString("table_name"), types)); +{ +String tableName = row.getString("table_name"); +try +{ +tables.add(fetchTable(keyspaceName, tableName, types)); +} +catch (MissingColumns exc) +{ +if (!IGNORE_CORRUPTED_SCHEMA_TABLES) +{ +logger.error("No columns found for table {}.{} in {}.{}. This may be due to " + + "corruption or concurrent dropping and altering of a table. If this table " + + "is supposed to be dropped, restart cassandra with -Dcassandra.ignore_corrupted_schema_tables=true " + + "and run the following query: \"DELETE FROM {}.{} WHERE keyspace_name = '{}' AND table_name = '{}';\"." + + "If the table is not supposed to be dropped, restore {}.{} sstables from backups.", + keyspaceName, tableName, NAME, COLUMNS, NAME, TABLES, keyspaceName, tableName, NAME, COLUMNS); +throw exc; +} +} +} return tables.build(); } @@ -991,8 +1011,12 @@ public final class SchemaKeyspace private static List fetchColumns(String keyspace, String table, Types types) { String query = format("SELECT * FROM %s.%s WHERE keyspace_name = ? AND table_name = ?", NAME, COLUMNS); +UntypedResultSet columnRows = query(query, keyspace, table); +if (columnRows.isEmpty()) +throw new MissingColumns("Columns not found in schema table for " + keyspace + "." + table); + List columns = new ArrayList<>(); -query(query, keyspace, table).forEach(row -> columns.add(createColumnFromRow(row, types))); +columnRows.forEach(row -> columns.add(createColumnFromRow(row, types))); return columns; } @@ -1399,4 +1423,12 @@ public final class SchemaKeyspace .map(SchemaKeyspace::expandUserTypes)
[1/6] cassandra git commit: Provide user workaround for partially corrupt schema tables
Repository: cassandra Updated Branches: refs/heads/cassandra-3.0 6caf3c4f1 -> a70b0d4d3 refs/heads/cassandra-3.11 2a0acfa64 -> 13f654e6e refs/heads/trunk 546df00bc -> 31208d00d Provide user workaround for partially corrupt schema tables Patch by Tyler Hobbs; reviewed by Aleksey Yeschenko for CASSANDRA-13180 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/a70b0d4d Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/a70b0d4d Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/a70b0d4d Branch: refs/heads/cassandra-3.0 Commit: a70b0d4d37851891ec1c8af96063985a5122edda Parents: 6caf3c4 Author: Tyler HobbsAuthored: Fri Feb 3 11:25:27 2017 -0600 Committer: Tyler Hobbs Committed: Fri Feb 3 11:25:27 2017 -0600 -- CHANGES.txt | 2 ++ .../apache/cassandra/schema/SchemaKeyspace.java | 36 ++-- 2 files changed, 36 insertions(+), 2 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/a70b0d4d/CHANGES.txt -- diff --git a/CHANGES.txt b/CHANGES.txt index e3bda6c..ade3d5a 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -1,4 +1,6 @@ 3.0.11 + * Provide user workaround when system_schema.columns does not contain entries + for a table that's in system_schema.tables (CASSANDRA-13180) * Dump threads when unit tests time out (CASSANDRA-13117) * Better error when modifying function permissions without explicit keyspace (CASSANDRA-12925) * Indexer is not correctly invoked when building indexes over sstables (CASSANDRA-13075) http://git-wip-us.apache.org/repos/asf/cassandra/blob/a70b0d4d/src/java/org/apache/cassandra/schema/SchemaKeyspace.java -- diff --git a/src/java/org/apache/cassandra/schema/SchemaKeyspace.java b/src/java/org/apache/cassandra/schema/SchemaKeyspace.java index 84a5e13..eee4fbb 100644 --- a/src/java/org/apache/cassandra/schema/SchemaKeyspace.java +++ b/src/java/org/apache/cassandra/schema/SchemaKeyspace.java @@ -67,6 +67,7 @@ public final class SchemaKeyspace private static final Logger logger = LoggerFactory.getLogger(SchemaKeyspace.class); private static final boolean FLUSH_SCHEMA_TABLES = Boolean.valueOf(System.getProperty("cassandra.test.flush_local_schema_changes", "true")); +private static final boolean IGNORE_CORRUPTED_SCHEMA_TABLES = Boolean.valueOf(System.getProperty("cassandra.ignore_corrupted_schema_tables", "false")); public static final String NAME = "system_schema"; @@ -925,7 +926,26 @@ public final class SchemaKeyspace Tables.Builder tables = org.apache.cassandra.schema.Tables.builder(); for (UntypedResultSet.Row row : query(query, keyspaceName)) -tables.add(fetchTable(keyspaceName, row.getString("table_name"), types)); +{ +String tableName = row.getString("table_name"); +try +{ +tables.add(fetchTable(keyspaceName, tableName, types)); +} +catch (MissingColumns exc) +{ +if (!IGNORE_CORRUPTED_SCHEMA_TABLES) +{ +logger.error("No columns found for table {}.{} in {}.{}. This may be due to " + + "corruption or concurrent dropping and altering of a table. If this table " + + "is supposed to be dropped, restart cassandra with -Dcassandra.ignore_corrupted_schema_tables=true " + + "and run the following query: \"DELETE FROM {}.{} WHERE keyspace_name = '{}' AND table_name = '{}';\"." + + "If the table is not supposed to be dropped, restore {}.{} sstables from backups.", + keyspaceName, tableName, NAME, COLUMNS, NAME, TABLES, keyspaceName, tableName, NAME, COLUMNS); +throw exc; +} +} +} return tables.build(); } @@ -991,8 +1011,12 @@ public final class SchemaKeyspace private static List fetchColumns(String keyspace, String table, Types types) { String query = format("SELECT * FROM %s.%s WHERE keyspace_name = ? AND table_name = ?", NAME, COLUMNS); +UntypedResultSet columnRows = query(query, keyspace, table); +if (columnRows.isEmpty()) +throw new MissingColumns("Columns not found in schema table for " + keyspace + "." + table); + List columns = new ArrayList<>(); -query(query, keyspace, table).forEach(row -> columns.add(createColumnFromRow(row, types))); +columnRows.forEach(row ->
[4/6] cassandra git commit: Merge branch 'cassandra-3.0' into cassandra-3.11
Merge branch 'cassandra-3.0' into cassandra-3.11 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/13f654e6 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/13f654e6 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/13f654e6 Branch: refs/heads/trunk Commit: 13f654e6eeb910a87e8e56fd12b5422ccf48f84b Parents: 2a0acfa a70b0d4 Author: Tyler HobbsAuthored: Fri Feb 3 11:31:45 2017 -0600 Committer: Tyler Hobbs Committed: Fri Feb 3 11:31:45 2017 -0600 -- CHANGES.txt | 5 +++ .../apache/cassandra/schema/SchemaKeyspace.java | 40 +++- 2 files changed, 43 insertions(+), 2 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/13f654e6/CHANGES.txt -- diff --cc CHANGES.txt index 8da4bc0,ade3d5a..9274771 --- a/CHANGES.txt +++ b/CHANGES.txt @@@ -1,120 -1,6 +1,125 @@@ -3.0.11 ++3.11 ++Merged from 3.0: + * Provide user workaround when system_schema.columns does not contain entries +for a table that's in system_schema.tables (CASSANDRA-13180) ++ +3.10 + * Fix secondary index queries regression (CASSANDRA-13013) + * Add duration type to the protocol V5 (CASSANDRA-12850) + * Fix duration type validation (CASSANDRA-13143) + * Fix flaky GcCompactionTest (CASSANDRA-12664) + * Fix TestHintedHandoff.hintedhandoff_decom_test (CASSANDRA-13058) + * Fixed query monitoring for range queries (CASSANDRA-13050) + * Remove outboundBindAny configuration property (CASSANDRA-12673) + * Use correct bounds for all-data range when filtering (CASSANDRA-12666) + * Remove timing window in test case (CASSANDRA-12875) + * Resolve unit testing without JCE security libraries installed (CASSANDRA-12945) + * Fix inconsistencies in cassandra-stress load balancing policy (CASSANDRA-12919) + * Fix validation of non-frozen UDT cells (CASSANDRA-12916) + * Don't shut down socket input/output on StreamSession (CASSANDRA-12903) + * Fix Murmur3PartitionerTest (CASSANDRA-12858) + * Move cqlsh syntax rules into separate module and allow easier customization (CASSANDRA-12897) + * Fix CommitLogSegmentManagerTest (CASSANDRA-12283) + * Fix cassandra-stress truncate option (CASSANDRA-12695) + * Fix crossNode value when receiving messages (CASSANDRA-12791) + * Don't load MX4J beans twice (CASSANDRA-12869) + * Extend native protocol request flags, add versions to SUPPORTED, and introduce ProtocolVersion enum (CASSANDRA-12838) + * Set JOINING mode when running pre-join tasks (CASSANDRA-12836) + * remove net.mintern.primitive library due to license issue (CASSANDRA-12845) + * Properly format IPv6 addresses when logging JMX service URL (CASSANDRA-12454) + * Optimize the vnode allocation for single replica per DC (CASSANDRA-12777) + * Use non-token restrictions for bounds when token restrictions are overridden (CASSANDRA-12419) + * Fix CQLSH auto completion for PER PARTITION LIMIT (CASSANDRA-12803) + * Use different build directories for Eclipse and Ant (CASSANDRA-12466) + * Avoid potential AttributeError in cqlsh due to no table metadata (CASSANDRA-12815) + * Fix RandomReplicationAwareTokenAllocatorTest.testExistingCluster (CASSANDRA-12812) + * Upgrade commons-codec to 1.9 (CASSANDRA-12790) + * Make the fanout size for LeveledCompactionStrategy to be configurable (CASSANDRA-11550) + * Add duration data type (CASSANDRA-11873) + * Fix timeout in ReplicationAwareTokenAllocatorTest (CASSANDRA-12784) + * Improve sum aggregate functions (CASSANDRA-12417) + * Make cassandra.yaml docs for batch_size_*_threshold_in_kb reflect changes in CASSANDRA-10876 (CASSANDRA-12761) + * cqlsh fails to format collections when using aliases (CASSANDRA-11534) + * Check for hash conflicts in prepared statements (CASSANDRA-12733) + * Exit query parsing upon first error (CASSANDRA-12598) + * Fix cassandra-stress to use single seed in UUID generation (CASSANDRA-12729) + * CQLSSTableWriter does not allow Update statement (CASSANDRA-12450) + * Config class uses boxed types but DD exposes primitive types (CASSANDRA-12199) + * Add pre- and post-shutdown hooks to Storage Service (CASSANDRA-12461) + * Add hint delivery metrics (CASSANDRA-12693) + * Remove IndexInfo cache from FileIndexInfoRetriever (CASSANDRA-12731) + * ColumnIndex does not reuse buffer (CASSANDRA-12502) + * cdc column addition still breaks schema migration tasks (CASSANDRA-12697) + * Upgrade metrics-reporter dependencies (CASSANDRA-12089) + * Tune compaction thread count via nodetool (CASSANDRA-12248) + * Add +=/-= shortcut syntax for update queries (CASSANDRA-12232) + * Include repair session IDs in repair start message (CASSANDRA-12532) + * Add a
[5/6] cassandra git commit: Merge branch 'cassandra-3.0' into cassandra-3.11
Merge branch 'cassandra-3.0' into cassandra-3.11 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/13f654e6 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/13f654e6 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/13f654e6 Branch: refs/heads/cassandra-3.11 Commit: 13f654e6eeb910a87e8e56fd12b5422ccf48f84b Parents: 2a0acfa a70b0d4 Author: Tyler HobbsAuthored: Fri Feb 3 11:31:45 2017 -0600 Committer: Tyler Hobbs Committed: Fri Feb 3 11:31:45 2017 -0600 -- CHANGES.txt | 5 +++ .../apache/cassandra/schema/SchemaKeyspace.java | 40 +++- 2 files changed, 43 insertions(+), 2 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/13f654e6/CHANGES.txt -- diff --cc CHANGES.txt index 8da4bc0,ade3d5a..9274771 --- a/CHANGES.txt +++ b/CHANGES.txt @@@ -1,120 -1,6 +1,125 @@@ -3.0.11 ++3.11 ++Merged from 3.0: + * Provide user workaround when system_schema.columns does not contain entries +for a table that's in system_schema.tables (CASSANDRA-13180) ++ +3.10 + * Fix secondary index queries regression (CASSANDRA-13013) + * Add duration type to the protocol V5 (CASSANDRA-12850) + * Fix duration type validation (CASSANDRA-13143) + * Fix flaky GcCompactionTest (CASSANDRA-12664) + * Fix TestHintedHandoff.hintedhandoff_decom_test (CASSANDRA-13058) + * Fixed query monitoring for range queries (CASSANDRA-13050) + * Remove outboundBindAny configuration property (CASSANDRA-12673) + * Use correct bounds for all-data range when filtering (CASSANDRA-12666) + * Remove timing window in test case (CASSANDRA-12875) + * Resolve unit testing without JCE security libraries installed (CASSANDRA-12945) + * Fix inconsistencies in cassandra-stress load balancing policy (CASSANDRA-12919) + * Fix validation of non-frozen UDT cells (CASSANDRA-12916) + * Don't shut down socket input/output on StreamSession (CASSANDRA-12903) + * Fix Murmur3PartitionerTest (CASSANDRA-12858) + * Move cqlsh syntax rules into separate module and allow easier customization (CASSANDRA-12897) + * Fix CommitLogSegmentManagerTest (CASSANDRA-12283) + * Fix cassandra-stress truncate option (CASSANDRA-12695) + * Fix crossNode value when receiving messages (CASSANDRA-12791) + * Don't load MX4J beans twice (CASSANDRA-12869) + * Extend native protocol request flags, add versions to SUPPORTED, and introduce ProtocolVersion enum (CASSANDRA-12838) + * Set JOINING mode when running pre-join tasks (CASSANDRA-12836) + * remove net.mintern.primitive library due to license issue (CASSANDRA-12845) + * Properly format IPv6 addresses when logging JMX service URL (CASSANDRA-12454) + * Optimize the vnode allocation for single replica per DC (CASSANDRA-12777) + * Use non-token restrictions for bounds when token restrictions are overridden (CASSANDRA-12419) + * Fix CQLSH auto completion for PER PARTITION LIMIT (CASSANDRA-12803) + * Use different build directories for Eclipse and Ant (CASSANDRA-12466) + * Avoid potential AttributeError in cqlsh due to no table metadata (CASSANDRA-12815) + * Fix RandomReplicationAwareTokenAllocatorTest.testExistingCluster (CASSANDRA-12812) + * Upgrade commons-codec to 1.9 (CASSANDRA-12790) + * Make the fanout size for LeveledCompactionStrategy to be configurable (CASSANDRA-11550) + * Add duration data type (CASSANDRA-11873) + * Fix timeout in ReplicationAwareTokenAllocatorTest (CASSANDRA-12784) + * Improve sum aggregate functions (CASSANDRA-12417) + * Make cassandra.yaml docs for batch_size_*_threshold_in_kb reflect changes in CASSANDRA-10876 (CASSANDRA-12761) + * cqlsh fails to format collections when using aliases (CASSANDRA-11534) + * Check for hash conflicts in prepared statements (CASSANDRA-12733) + * Exit query parsing upon first error (CASSANDRA-12598) + * Fix cassandra-stress to use single seed in UUID generation (CASSANDRA-12729) + * CQLSSTableWriter does not allow Update statement (CASSANDRA-12450) + * Config class uses boxed types but DD exposes primitive types (CASSANDRA-12199) + * Add pre- and post-shutdown hooks to Storage Service (CASSANDRA-12461) + * Add hint delivery metrics (CASSANDRA-12693) + * Remove IndexInfo cache from FileIndexInfoRetriever (CASSANDRA-12731) + * ColumnIndex does not reuse buffer (CASSANDRA-12502) + * cdc column addition still breaks schema migration tasks (CASSANDRA-12697) + * Upgrade metrics-reporter dependencies (CASSANDRA-12089) + * Tune compaction thread count via nodetool (CASSANDRA-12248) + * Add +=/-= shortcut syntax for update queries (CASSANDRA-12232) + * Include repair session IDs in repair start message (CASSANDRA-12532) + * Add
[jira] [Comment Edited] (CASSANDRA-7544) Allow storage port to be configurable per node
[ https://issues.apache.org/jira/browse/CASSANDRA-7544?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15849339#comment-15849339 ] Ariel Weisberg edited comment on CASSANDRA-7544 at 2/3/17 4:50 PM: --- ||Code|utests|dtests|| |[trunk|https://github.com/apache/cassandra/compare/trunk...aweisberg:cassandra-7544-rebased?expand=1]|[utests|https://cassci.datastax.com/view/Dev/view/aweisberg/job/aweisberg-cassandra-7544-rebased-testall/4/]|[dtests|https://cassci.datastax.com/view/Dev/view/aweisberg/job/aweisberg-cassandra-7544-rebased-dtest/9]| [dtest changes|https://github.com/riptano/cassandra-dtest/compare/master...aweisberg:master] Ignore the upgrade_manifest.py I will back those out once I have stabilized the upgrade tests. There are several bugs unrelated to this change that cause the upgrade tests to fail. They also test released versions with bugs which won't start passing until more releases happen. was (Author: aweisberg): ||Code|utests|dtests|| |[trunk|https://github.com/apache/cassandra/compare/trunk...aweisberg:cassandra-7544-rebased?expand=1]|[utests|https://cassci.datastax.com/view/Dev/view/aweisberg/job/aweisberg-cassandra-7544-rebased-testall/4/]|[dtests|https://cassci.datastax.com/view/Dev/view/aweisberg/job/aweisberg-cassandra-7544-rebased-dtest/8]| [dtest changes|https://github.com/riptano/cassandra-dtest/compare/master...aweisberg:master] Ignore the upgrade_manifest.py I will back those out once I have stabilized the upgrade tests. There are several bugs unrelated to this change that cause the upgrade tests to fail. They also test released versions with bugs which won't start passing until more releases happen. > Allow storage port to be configurable per node > -- > > Key: CASSANDRA-7544 > URL: https://issues.apache.org/jira/browse/CASSANDRA-7544 > Project: Cassandra > Issue Type: Improvement >Reporter: Sam Overton >Assignee: Ariel Weisberg > Fix For: 3.x > > > Currently storage_port must be configured identically on all nodes in a > cluster and it is assumed that this is the case when connecting to a remote > node. > This prevents running in any environment that requires multiple nodes to be > able to bind to the same network interface, such as with many automatic > provisioning/deployment frameworks. > The current solutions seems to be > * use a separate network interface for each node deployed to the same box. > This puts a big requirement on IP allocation at large scale. > * allow multiple clusters to be provisioned from the same resource pool, but > restrict allocation to a maximum of one node per host from each cluster, > assuming each cluster is running on a different storage port. > It would make operations much simpler in these kind of environments if the > environment provisioning the resources could assign the ports to be used when > bringing up a new node on shared hardware. > The changes required would be at least the following: > 1. configure seeds as IP:port instead of just IP > 2. gossip the storage port as part of a node's ApplicationState > 3. refer internally to nodes by hostID instead of IP, since there will be > multiple nodes with the same IP > (1) & (2) are mostly trivial and I already have a patch for these. The bulk > of the work to enable this is (3), and I would structure this as a separate > pre-requisite patch. -- This message was sent by Atlassian JIRA (v6.3.15#6346)
[jira] [Created] (CASSANDRA-13181) test failure in paging_test.TestPagingData.test_select_in_clause_with_duplicate_keys
Michael Shuler created CASSANDRA-13181: -- Summary: test failure in paging_test.TestPagingData.test_select_in_clause_with_duplicate_keys Key: CASSANDRA-13181 URL: https://issues.apache.org/jira/browse/CASSANDRA-13181 Project: Cassandra Issue Type: Bug Reporter: Michael Shuler example failure: http://cassci.datastax.com/job/cassandra-2.2_novnode_dtest/352/testReport/paging_test/TestPagingData/test_select_in_clause_with_duplicate_keys {noformat} Error Message 'TestPagingData' object has no attribute 'create_ks' >> begin captured logging << dtest: DEBUG: cluster ccm directory: /tmp/dtest-I7zCAw dtest: DEBUG: Done setting configuration options: { 'num_tokens': None, 'phi_convict_threshold': 5, 'range_request_timeout_in_ms': 1, 'read_request_timeout_in_ms': 1, 'request_timeout_in_ms': 1, 'truncate_request_timeout_in_ms': 1, 'write_request_timeout_in_ms': 1} cassandra.policies: INFO: Using datacenter 'datacenter1' for DCAwareRoundRobinPolicy (via host '127.0.0.1'); if incorrect, please specify a local_dc to the constructor, or limit contact points to local cluster nodes cassandra.cluster: INFO: New Cassandra host discovered cassandra.cluster: INFO: New Cassandra host discovered - >> end captured logging << - Stacktrace File "/usr/lib/python2.7/unittest/case.py", line 329, in run testMethod() File "/home/automaton/cassandra-dtest/paging_test.py", line 1721, in test_select_in_clause_with_duplicate_keys self.create_ks(session, 'test_paging_static_cols', 2) "'TestPagingData' object has no attribute 'create_ks'\n >> begin captured logging << \ndtest: DEBUG: cluster ccm directory: /tmp/dtest-I7zCAw\ndtest: DEBUG: Done setting configuration options:\n{ 'num_tokens': None,\n'phi_convict_threshold': 5,\n 'range_request_timeout_in_ms': 1,\n'read_request_timeout_in_ms': 1,\n'request_timeout_in_ms': 1,\n 'truncate_request_timeout_in_ms': 1,\n'write_request_timeout_in_ms': 1}\ncassandra.policies: INFO: Using datacenter 'datacenter1' for DCAwareRoundRobinPolicy (via host '127.0.0.1'); if incorrect, please specify a local_dc to the constructor, or limit contact points to local cluster nodes\ncassandra.cluster: INFO: New Cassandra host discovered\ncassandra.cluster: INFO: New Cassandra host discovered\n- >> end captured logging << -" {noformat} -- This message was sent by Atlassian JIRA (v6.3.15#6346)
[jira] [Commented] (CASSANDRA-13152) UPDATE on counter columns with empty list as argument in IN disables cluster
[ https://issues.apache.org/jira/browse/CASSANDRA-13152?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15851594#comment-15851594 ] Alex Petrov commented on CASSANDRA-13152: - +1 Thanks for the patch! > UPDATE on counter columns with empty list as argument in IN disables cluster > > > Key: CASSANDRA-13152 > URL: https://issues.apache.org/jira/browse/CASSANDRA-13152 > Project: Cassandra > Issue Type: Bug > Environment: Linux Ubuntu 16 > 3 Virtual machines >Reporter: jorge collinet >Assignee: Benjamin Lerer > Fix For: 3.0.x, 3.x, 4.x > > > On a 3 node cluster > with this table (replication factor of 2): > {code} > CREATE TABLE tracking.item_items_rec_history ( > reference_id bigint, > country text, > portal text, > app_name text, > recommended_id bigint, > counter counter, > PRIMARY KEY (reference_id, country, portal, app_name, recommended_id) > ); > {code} > If I execute > {code} > UPDATE user_items_rec_history > SET counter = counter + 1 > WHERE reference_id = 1 AND country = '' AND portal = '' AND app_name = '' AND > recommended_id IN (); > {code} > Take note that the IN is empty > The cluster starts to malfunction and responds a lot of timeouts to any query. > After resetting some of the nodes, the cluster starts to function normally > again. -- This message was sent by Atlassian JIRA (v6.3.15#6346)
[jira] [Updated] (CASSANDRA-13152) UPDATE on counter columns with empty list as argument in IN disables cluster
[ https://issues.apache.org/jira/browse/CASSANDRA-13152?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Alex Petrov updated CASSANDRA-13152: Status: Ready to Commit (was: Patch Available) > UPDATE on counter columns with empty list as argument in IN disables cluster > > > Key: CASSANDRA-13152 > URL: https://issues.apache.org/jira/browse/CASSANDRA-13152 > Project: Cassandra > Issue Type: Bug > Environment: Linux Ubuntu 16 > 3 Virtual machines >Reporter: jorge collinet >Assignee: Benjamin Lerer > Fix For: 3.0.x, 3.x, 4.x > > > On a 3 node cluster > with this table (replication factor of 2): > {code} > CREATE TABLE tracking.item_items_rec_history ( > reference_id bigint, > country text, > portal text, > app_name text, > recommended_id bigint, > counter counter, > PRIMARY KEY (reference_id, country, portal, app_name, recommended_id) > ); > {code} > If I execute > {code} > UPDATE user_items_rec_history > SET counter = counter + 1 > WHERE reference_id = 1 AND country = '' AND portal = '' AND app_name = '' AND > recommended_id IN (); > {code} > Take note that the IN is empty > The cluster starts to malfunction and responds a lot of timeouts to any query. > After resetting some of the nodes, the cluster starts to function normally > again. -- This message was sent by Atlassian JIRA (v6.3.15#6346)
[jira] [Updated] (CASSANDRA-13152) UPDATE on counter columns with empty list as argument in IN disables cluster
[ https://issues.apache.org/jira/browse/CASSANDRA-13152?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Alex Petrov updated CASSANDRA-13152: Description: On a 3 node cluster with this table (replication factor of 2): {code} CREATE TABLE tracking.item_items_rec_history ( reference_id bigint, country text, portal text, app_name text, recommended_id bigint, counter counter, PRIMARY KEY (reference_id, country, portal, app_name, recommended_id) ); {code} If I execute {code} UPDATE user_items_rec_history SET counter = counter + 1 WHERE reference_id = 1 AND country = '' AND portal = '' AND app_name = '' AND recommended_id IN (); {code} Take note that the IN is empty The cluster starts to malfunction and responds a lot of timeouts to any query. After resetting some of the nodes, the cluster starts to function normally again. was: On a 3 node cluster with this table (replication factor of 2): CREATE TABLE tracking.item_items_rec_history ( reference_id bigint, country text, portal text, app_name text, recommended_id bigint, counter counter, PRIMARY KEY (reference_id, country, portal, app_name, recommended_id) ); If I execute UPDATE user_items_rec_history SET counter = counter + 1 WHERE reference_id = 1 AND country = '' AND portal = '' AND app_name = '' AND recommended_id IN (); Take note that the IN is empty The cluster starts to malfunction and responds a lot of timeouts to any query. After resetting some of the nodes, the cluster starts to function normally again. > UPDATE on counter columns with empty list as argument in IN disables cluster > > > Key: CASSANDRA-13152 > URL: https://issues.apache.org/jira/browse/CASSANDRA-13152 > Project: Cassandra > Issue Type: Bug > Environment: Linux Ubuntu 16 > 3 Virtual machines >Reporter: jorge collinet >Assignee: Benjamin Lerer > Fix For: 3.0.x, 3.x, 4.x > > > On a 3 node cluster > with this table (replication factor of 2): > {code} > CREATE TABLE tracking.item_items_rec_history ( > reference_id bigint, > country text, > portal text, > app_name text, > recommended_id bigint, > counter counter, > PRIMARY KEY (reference_id, country, portal, app_name, recommended_id) > ); > {code} > If I execute > {code} > UPDATE user_items_rec_history > SET counter = counter + 1 > WHERE reference_id = 1 AND country = '' AND portal = '' AND app_name = '' AND > recommended_id IN (); > {code} > Take note that the IN is empty > The cluster starts to malfunction and responds a lot of timeouts to any query. > After resetting some of the nodes, the cluster starts to function normally > again. -- This message was sent by Atlassian JIRA (v6.3.15#6346)
[jira] [Commented] (CASSANDRA-13114) 3.0.x: update netty
[ https://issues.apache.org/jira/browse/CASSANDRA-13114?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15851522#comment-15851522 ] Tom van der Woerdt commented on CASSANDRA-13114: I've deployed [~mshuler]'s snapshot build to most nodes in the cluster that previously experienced this issue, and re-enabled TLS on a few hundred clients. The nodes still on 3.0.10 quickly showed memory issues, while the nodes on 3.0.11-SNAPSHOT were happy. So I upgraded the remaining nodes and enabled TLS on another ~5 clients, many many more than I originally needed to cause problems. Nothing broke. So basically I can confirm that this patch fixes the problem, and at least for my test cases (one involves fairly heavy use of QUORUM reads and writes) doesn't appear to introduce new ones. I wouldn't take that over good dtests/utests, but it's a useful data point to have. > 3.0.x: update netty > --- > > Key: CASSANDRA-13114 > URL: https://issues.apache.org/jira/browse/CASSANDRA-13114 > Project: Cassandra > Issue Type: Bug >Reporter: Tom van der Woerdt >Assignee: Stefan Podkowinski > Attachments: 13114_netty-4.0.44_2.x-3.0.patch, > 13114_netty-4.0.44_3.11.patch > > > https://issues.apache.org/jira/browse/CASSANDRA-12032 updated netty for > Cassandra 3.8, but this wasn't backported. Netty 4.0.23, which ships with > Cassandra 3.0.x, has some serious bugs around memory handling for SSL > connections. > It would be nice if both were updated to 4.0.42, a version released this year. > 4.0.23 makes it impossible for me to run SSL, because nodes run out of memory > every ~30 minutes. This was fixed in 4.0.27. -- This message was sent by Atlassian JIRA (v6.3.15#6346)
[jira] [Updated] (CASSANDRA-13180) Better handling of missing entries in system_schema.columns during startup
[ https://issues.apache.org/jira/browse/CASSANDRA-13180?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Aleksey Yeschenko updated CASSANDRA-13180: -- Status: Ready to Commit (was: Patch Available) > Better handling of missing entries in system_schema.columns during startup > -- > > Key: CASSANDRA-13180 > URL: https://issues.apache.org/jira/browse/CASSANDRA-13180 > Project: Cassandra > Issue Type: Improvement > Components: Distributed Metadata >Reporter: Tyler Hobbs >Assignee: Tyler Hobbs > Fix For: 3.0.x, 3.x > > > Like the error in CASSANDRA-12213 and CASSANDRA-12165, it's possible for > {{system_schema.keyspaces}} and {{tables}} to contain entries for a table > while {{system_schema.columns}} has none. This produces an error during > startup, and there's no way for a user to recover from this without restoring > from backups. > Although this has been seen in the wild on one occasion, the cause is still > not entirely known. (It may be due to a concurrent DROP TABLE and ALTER > TABLE where a table property is altered.) Until we know the root cause, it > makes sense to give users a way to recover from that situation. -- This message was sent by Atlassian JIRA (v6.3.15#6346)
[jira] [Commented] (CASSANDRA-13180) Better handling of missing entries in system_schema.columns during startup
[ https://issues.apache.org/jira/browse/CASSANDRA-13180?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15851503#comment-15851503 ] Aleksey Yeschenko commented on CASSANDRA-13180: --- +1 > Better handling of missing entries in system_schema.columns during startup > -- > > Key: CASSANDRA-13180 > URL: https://issues.apache.org/jira/browse/CASSANDRA-13180 > Project: Cassandra > Issue Type: Improvement > Components: Distributed Metadata >Reporter: Tyler Hobbs >Assignee: Tyler Hobbs > Fix For: 3.0.x, 3.x > > > Like the error in CASSANDRA-12213 and CASSANDRA-12165, it's possible for > {{system_schema.keyspaces}} and {{tables}} to contain entries for a table > while {{system_schema.columns}} has none. This produces an error during > startup, and there's no way for a user to recover from this without restoring > from backups. > Although this has been seen in the wild on one occasion, the cause is still > not entirely known. (It may be due to a concurrent DROP TABLE and ALTER > TABLE where a table property is altered.) Until we know the root cause, it > makes sense to give users a way to recover from that situation. -- This message was sent by Atlassian JIRA (v6.3.15#6346)
[jira] [Commented] (CASSANDRA-13171) Setting -Dcassandra.join_ring=false is ambiguous
[ https://issues.apache.org/jira/browse/CASSANDRA-13171?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15851495#comment-15851495 ] Joe Olson commented on CASSANDRA-13171: --- That does not help. See attached log #2. Exec summary: INFO [main] 2017-02-03 07:20:55,840 YamlConfigurationLoader.java:89 - Configuration location: file:/etc/cassandra/cassandra.yaml INFO [RequestResponseStage-2] 2017-02-03 07:25:58,067 Gossiper.java:1014 - InetAddress /192.168.211.83 is now UP INFO [main] 2017-02-03 07:25:59,194 StorageService.java:677 - Not joining ring as requested. Use JMX (StorageService->joinRing()) to initiate ring joining WARN [RMI TCP Connection(2)-127.0.0.1] 2017-02-03 07:26:24,551 StorageService.java:299 - Stopping gossip by operator request WARN [RMI TCP Connection(2)-127.0.0.1] 2017-02-03 07:26:25,772 Gossiper.java:1508 - No local state or state is in silent shutdown, not announcing shutdown INFO [STREAM-INIT-/192.168.211.88:48434] 2017-02-03 07:27:35,719 StreamResultFuture.java:117 - [Stream #77603ca0-ea14-11e6-b631-2b05339d4220 ID#0] Creating new streaming plan for Bulk Load INFO [STREAM-INIT-/192.168.211.88:48434] 2017-02-03 07:27:35,721 StreamResultFuture.java:124 - [Stream #77603ca0-ea14-11e6-b631-2b05339d4220, ID#0] Received streaming plan for Bulk Load INFO [STREAM-INIT-/192.168.211.88:48454] 2017-02-03 07:27:35,722 StreamResultFuture.java:124 - [Stream #77603ca0-ea14-11e6-b631-2b05339d4220, ID#1] Received streaming plan for Bulk Load INFO [STREAM-INIT-/192.168.211.88:48470] 2017-02-03 07:27:35,723 StreamResultFuture.java:124 - [Stream #77603ca0-ea14-11e6-b631-2b05339d4220, ID#2] Received streaming plan for Bulk Load INFO [STREAM-INIT-/192.168.211.88:48490] 2017-02-03 07:27:35,723 StreamResultFuture.java:124 - [Stream #77603ca0-ea14-11e6-b631-2b05339d4220, ID#1] Received streaming plan for Bulk Load INFO [StreamReceiveTask:2] 2017-02-03 07:27:35,724 StreamResultFuture.java:188 - [Stream #501c5b60-ea14-11e6-b5e4-cd415f0a30ea] Session with /192.168.111.83 is complete INFO [STREAM-INIT-/192.168.211.88:48500] 2017-02-03 07:27:35,724 StreamResultFuture.java:124 - [Stream #77603ca0-ea14-11e6-b631-2b05339d4220, ID#2] Received streaming plan for Bulk Load INFO [STREAM-IN-/192.168.211.88:48490] 2017-02-03 07:27:35,724 StreamResultFuture.java:174 - [Stream #77603ca0-ea14-11e6-b631-2b05339d4220 ID#1] Prepare completed. Receiving 72 files(1.135GiB), sending 0 files(0.000KiB) INFO [STREAM-IN-/192.168.211.88:48500] 2017-02-03 07:27:35,724 StreamResultFuture.java:174 - [Stream #77603ca0-ea14-11e6-b631-2b05339d4220 ID#2] Prepare completed. Receiving 72 files(1.133GiB), sending 0 files(0.000KiB) INFO [STREAM-INIT-/192.168.211.88:48496] 2017-02-03 07:27:35,725 StreamResultFuture.java:124 - [Stream #77603ca0-ea14-11e6-b631-2b05339d4220, ID#0] Received streaming plan for Bulk Load INFO [STREAM-IN-/192.168.211.88:48496] 2017-02-03 07:27:35,725 StreamResultFuture.java:174 - [Stream #77603ca0-ea14-11e6-b631-2b05339d4220 ID#0] Prepare completed. Receiving 72 files(1.131GiB), sending 0 files(0.000KiB) INFO [RMI TCP Connection(8)-127.0.0.1] 2017-02-03 07:28:49,422 ThriftServer.java:142 - Stop listening to thrift clients INFO [STREAM-INIT-/192.168.211.83:58486] 2017-02-03 07:30:32,300 StreamResultFuture.java:117 - [Stream #eac73c70-ea14-11e6-9f8a-2b193fd9e689 ID#2] Creating new streaming plan for Bulk Load INFO [STREAM-INIT-/192.168.211.83:58486] 2017-02-03 07:30:32,302 StreamResultFuture.java:124 - [Stream #eac73c70-ea14-11e6-9f8a-2b193fd9e689, ID#2] Received streaming plan for Bulk Load INFO [STREAM-INIT-/192.168.211.83:58506] 2017-02-03 07:30:32,302 StreamResultFuture.java:124 - [Stream #eac73c70-ea14-11e6-9f8a-2b193fd9e689, ID#1] Received streaming plan for Bulk Load INFO [STREAM-INIT-/192.168.211.83:58484] 2017-02-03 07:30:32,303 StreamResultFuture.java:124 - [Stream #eac73c70-ea14-11e6-9f8a-2b193fd9e689, ID#1] Received streaming plan for Bulk Load INFO [STREAM-INIT-/192.168.211.83:58482] 2017-02-03 07:30:32,303 StreamResultFuture.java:124 - [Stream #eac73c70-ea14-11e6-9f8a-2b193fd9e689, ID#0] Received streaming plan for Bulk Load INFO [STREAM-INIT-/192.168.211.83:58540] 2017-02-03 07:30:32,303 StreamResultFuture.java:124 - [Stream #eac73c70-ea14-11e6-9f8a-2b193fd9e689, ID#2] Received streaming plan for Bulk Load INFO [STREAM-INIT-/192.168.211.83:58546] 2017-02-03 07:30:32,304 StreamResultFuture.java:124 - [Stream #eac73c70-ea14-11e6-9f8a-2b193fd9e689, ID#0] Received streaming plan for Bulk Load INFO [STREAM-IN-/192.168.211.83:58506] 2017-02-03 07:30:32,305 StreamResultFuture.java:174 - [Stream #eac73c70-ea14-11e6-9f8a-2b193fd9e689 ID#1] Prepare completed. Receiving 36 files(595.069MiB), sending 0 files(0.000KiB) > Setting -Dcassandra.join_ring=false is ambiguous > > > Key: CASSANDRA-13171 >
[jira] [Updated] (CASSANDRA-13171) Setting -Dcassandra.join_ring=false is ambiguous
[ https://issues.apache.org/jira/browse/CASSANDRA-13171?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Joe Olson updated CASSANDRA-13171: -- Attachment: log2.txt > Setting -Dcassandra.join_ring=false is ambiguous > > > Key: CASSANDRA-13171 > URL: https://issues.apache.org/jira/browse/CASSANDRA-13171 > Project: Cassandra > Issue Type: Bug >Reporter: Joe Olson > Attachments: log2.txt, log.txt > > > Setting -Dcassandra.join_ring=false in /etc/cassandra/jvm.options has > questionable results. From the log snippet below, the value is set to false, > and read. However, everything seems to happen as if it weren'tgossip > occurs, and streaming data via a bulk load comes in. > (see attached log) > I really need this node not to join the cluster, because it is behind on its > compaction, and will immediately crash (too many files open - OS ulimit is > already set to 30 temporarily). I know of no other way to do an "offline > compaction" -- This message was sent by Atlassian JIRA (v6.3.15#6346)
[jira] [Updated] (CASSANDRA-13103) incorrect jvm metric names
[ https://issues.apache.org/jira/browse/CASSANDRA-13103?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Stefan Podkowinski updated CASSANDRA-13103: --- Reviewer: Stefan Podkowinski > incorrect jvm metric names > -- > > Key: CASSANDRA-13103 > URL: https://issues.apache.org/jira/browse/CASSANDRA-13103 > Project: Cassandra > Issue Type: Bug > Components: Observability >Reporter: Alain Rastoul >Assignee: Alain Rastoul >Priority: Minor > Labels: lhf > Fix For: 3.9, 3.x > > Attachments: Fix-incorrect-jvm-metric-names-CASSANDRA-13103.patch > > > Some jvm metrics have a double dot in name like: > jvm.memory..total.max , jvm.memory..total.init (etc). > it seems that an extra dot is added at the end of the name in > CassandraDaemon.java, around line 367 (in 3.0.10): > ... > // enable metrics provided by metrics-jvm.jar > CassandraMetricsRegistry.Metrics.register("jvm.buffers.", new > BufferPoolMetricSet(ManagementFactory.getPlatformMBeanServer())); > CassandraMetricsRegistry.Metrics.register("jvm.gc.", new > GarbageCollectorMetricSet()); > CassandraMetricsRegistry.Metrics.register("jvm.memory.", new > MemoryUsageGaugeSet()); > and also added in append method of MetricRegistry. > Call stack is: > MetricRegistry>>registerAll(String prefix, MetricSet metrics) > MetricRegistry>>static String name(String name, String... names) > MetricRegistry>>static void append(StringBuilder builder, String part) > and in append the dot is also added: > ... > if(builder.length() > 0) { > builder.append('.'); > } > builder.append(part); > ... > The codahale MetricRegistry class seems to have no recent modification of > name or append methods, so it look like a small bug. > May be the fix could be to simply not to add the final dot in the metric > name, ie "jvm.buffers" instead of "jvm.buffers." -- This message was sent by Atlassian JIRA (v6.3.15#6346)
[jira] [Updated] (CASSANDRA-13180) Better handling of missing entries in system_schema.columns during startup
[ https://issues.apache.org/jira/browse/CASSANDRA-13180?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Joshua McKenzie updated CASSANDRA-13180: Reviewer: Aleksey Yeschenko > Better handling of missing entries in system_schema.columns during startup > -- > > Key: CASSANDRA-13180 > URL: https://issues.apache.org/jira/browse/CASSANDRA-13180 > Project: Cassandra > Issue Type: Improvement > Components: Distributed Metadata >Reporter: Tyler Hobbs >Assignee: Tyler Hobbs > Fix For: 3.0.x, 3.x > > > Like the error in CASSANDRA-12213 and CASSANDRA-12165, it's possible for > {{system_schema.keyspaces}} and {{tables}} to contain entries for a table > while {{system_schema.columns}} has none. This produces an error during > startup, and there's no way for a user to recover from this without restoring > from backups. > Although this has been seen in the wild on one occasion, the cause is still > not entirely known. (It may be due to a concurrent DROP TABLE and ALTER > TABLE where a table property is altered.) Until we know the root cause, it > makes sense to give users a way to recover from that situation. -- This message was sent by Atlassian JIRA (v6.3.15#6346)
[jira] [Commented] (CASSANDRA-13114) 3.0.x: update netty
[ https://issues.apache.org/jira/browse/CASSANDRA-13114?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15851442#comment-15851442 ] Robert Stupp commented on CASSANDRA-13114: -- Ah - logging takes place in the {{apply}} method. OK, makes sense. > 3.0.x: update netty > --- > > Key: CASSANDRA-13114 > URL: https://issues.apache.org/jira/browse/CASSANDRA-13114 > Project: Cassandra > Issue Type: Bug >Reporter: Tom van der Woerdt >Assignee: Stefan Podkowinski > Attachments: 13114_netty-4.0.44_2.x-3.0.patch, > 13114_netty-4.0.44_3.11.patch > > > https://issues.apache.org/jira/browse/CASSANDRA-12032 updated netty for > Cassandra 3.8, but this wasn't backported. Netty 4.0.23, which ships with > Cassandra 3.0.x, has some serious bugs around memory handling for SSL > connections. > It would be nice if both were updated to 4.0.42, a version released this year. > 4.0.23 makes it impossible for me to run SSL, because nodes run out of memory > every ~30 minutes. This was fixed in 4.0.27. -- This message was sent by Atlassian JIRA (v6.3.15#6346)
[jira] [Comment Edited] (CASSANDRA-13114) 3.0.x: update netty
[ https://issues.apache.org/jira/browse/CASSANDRA-13114?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15851430#comment-15851430 ] Stefan Podkowinski edited comment on CASSANDRA-13114 at 2/3/17 12:37 PM: - Any exceptions caught by Netty will be logged by {{UnexpectedChannelExceptionHandler}}. Before the changes to {{Message}}, this would only happen when the channel would still be open. In Netty 4.0.23 this seems to be the case, in 4.0.44 the channel is now closed (at least for handshake errors, which makes sense) when {{exceptionCaught}} is called. What the patch does is simply to log the exception in both cases, while leaving the error reply sending case as it was (keep sending reply only in case channel is still open). I've noticed the changed behaviour through a dtest, [see results|http://cassci.datastax.com/view/Dev/view/spodkowinski/job/spodkowinski-CASSANDRA-13114-3.11-dtest/1/testReport/junit/native_transport_ssl_test/NativeTransportSSL/connect_to_ssl_test/]. As for the mentioned performance regression tests, I've only have a single physical host available for cstar_perf, so I can't really stress test multi-node setups. A single node tests with and without ssl didn't show any significant changes, but the results are little meaningful. Besides I also can't find any way to test the actual memory leak issue at hand by simulating lots of connecting and deconnecting clients. was (Author: spo...@gmail.com): Any exceptions caught be Netty will be logged by {{UnexpectedChannelExceptionHandler}}. Before the changes to {{Message}}, this would only happen when the channel would still be open. In Netty 4.0.23 this seems to be the case, in 4.0.44 the channel is now closed when {{exceptionCaught}} is called. What the patch does is simply to log the exception in both cases, while leaving the error reply sending case as it was (keep sending reply only in case channel is still open). I've noticed the changed behaviour through a dtest, [see results|http://cassci.datastax.com/view/Dev/view/spodkowinski/job/spodkowinski-CASSANDRA-13114-3.11-dtest/1/testReport/junit/native_transport_ssl_test/NativeTransportSSL/connect_to_ssl_test/]. As for the mentioned performance regression tests, I've only have a single physical host available for cstar_perf, so I can't really stress test multi-node setups. A single node tests with and without ssl didn't show any significant changes, but the results are little meaningful. Besides I also can't find any way to test the actual memory leak issue at hand by simulating lots of connecting and deconnecting clients. > 3.0.x: update netty > --- > > Key: CASSANDRA-13114 > URL: https://issues.apache.org/jira/browse/CASSANDRA-13114 > Project: Cassandra > Issue Type: Bug >Reporter: Tom van der Woerdt >Assignee: Stefan Podkowinski > Attachments: 13114_netty-4.0.44_2.x-3.0.patch, > 13114_netty-4.0.44_3.11.patch > > > https://issues.apache.org/jira/browse/CASSANDRA-12032 updated netty for > Cassandra 3.8, but this wasn't backported. Netty 4.0.23, which ships with > Cassandra 3.0.x, has some serious bugs around memory handling for SSL > connections. > It would be nice if both were updated to 4.0.42, a version released this year. > 4.0.23 makes it impossible for me to run SSL, because nodes run out of memory > every ~30 minutes. This was fixed in 4.0.27. -- This message was sent by Atlassian JIRA (v6.3.15#6346)
[jira] [Commented] (CASSANDRA-13114) 3.0.x: update netty
[ https://issues.apache.org/jira/browse/CASSANDRA-13114?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15851430#comment-15851430 ] Stefan Podkowinski commented on CASSANDRA-13114: Any exceptions caught be Netty will be logged by {{UnexpectedChannelExceptionHandler}}. Before the changes to {{Message}}, this would only happen when the channel would still be open. In Netty 4.0.23 this seems to be the case, in 4.0.44 the channel is now closed when {{exceptionCaught}} is called. What the patch does is simply to log the exception in both cases, while leaving the error reply sending case as it was (keep sending reply only in case channel is still open). I've noticed the changed behaviour through a dtest, [see results|http://cassci.datastax.com/view/Dev/view/spodkowinski/job/spodkowinski-CASSANDRA-13114-3.11-dtest/1/testReport/junit/native_transport_ssl_test/NativeTransportSSL/connect_to_ssl_test/]. As for the mentioned performance regression tests, I've only have a single physical host available for cstar_perf, so I can't really stress test multi-node setups. A single node tests with and without ssl didn't show any significant changes, but the results are little meaningful. Besides I also can't find any way to test the actual memory leak issue at hand by simulating lots of connecting and deconnecting clients. > 3.0.x: update netty > --- > > Key: CASSANDRA-13114 > URL: https://issues.apache.org/jira/browse/CASSANDRA-13114 > Project: Cassandra > Issue Type: Bug >Reporter: Tom van der Woerdt >Assignee: Stefan Podkowinski > Attachments: 13114_netty-4.0.44_2.x-3.0.patch, > 13114_netty-4.0.44_3.11.patch > > > https://issues.apache.org/jira/browse/CASSANDRA-12032 updated netty for > Cassandra 3.8, but this wasn't backported. Netty 4.0.23, which ships with > Cassandra 3.0.x, has some serious bugs around memory handling for SSL > connections. > It would be nice if both were updated to 4.0.42, a version released this year. > 4.0.23 makes it impossible for me to run SSL, because nodes run out of memory > every ~30 minutes. This was fixed in 4.0.27. -- This message was sent by Atlassian JIRA (v6.3.15#6346)
[jira] [Commented] (CASSANDRA-11871) Allow to aggregate by time intervals
[ https://issues.apache.org/jira/browse/CASSANDRA-11871?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15851407#comment-15851407 ] Benjamin Lerer commented on CASSANDRA-11871: A {{ResultSet}} has a fix limit which is the {{pageSize}}. If the amount of results that need to be returned to the user is greater than this size your request will be paginated. Filtering do not imply that you load all the rows in memory, it just means that you can read some rows from the disk that you will not return to the user or even to the coordinator (as filtering is performed on the replicas side). {quote} I don't see why not allow building a lot of buckets simultaneously rather than just one at a time. {quote} Take the following table: {code} CREATE TABLE myTable ( pk int, clustering_1 int, clustering_2 int, value int, PRIMARY KEY (pk, clustering_1, clustering_2)) {code} And the following query: {{SELECT value, max(clustering_1), max(clustering_2) FROM myTable GROUP BY value}} If your table was containing 2 million rows and 250 different values for the {{value}} column, you will have to fetch 2 million rows and use 250 buckets. If your table was containing 2 million rows and 250 000 different values for the {{value}} column, you will have to fetch 2 million rows and use 250 000 buckets. In which case your node might simply died from an OOM error. The problem is that there is a direct link between your number of buckets and the cardinality of you data and C* does not know your data cardinality. Filtering suffer from a similar problem but filtering will not kill your cluster as efficently as a wrong {{GROUP BY}}. Another problem is the efficiency of the queries. If your query was: {{SELECT value, max(clustering_1), max(clustering_2) FROM myTable GROUP BY value LIMIT 2}} C* will still have to fetch the 2 millions rows even if it will return only the result of the aggregation of a small number of them. > Allow to aggregate by time intervals > > > Key: CASSANDRA-11871 > URL: https://issues.apache.org/jira/browse/CASSANDRA-11871 > Project: Cassandra > Issue Type: Improvement > Components: CQL >Reporter: Benjamin Lerer >Assignee: Benjamin Lerer > Fix For: 3.x > > > For time series data it can be usefull to aggregate by time intervals. > The idea would be to add support for one or several functions in the {{GROUP > BY}} clause. > Regarding the implementation, even if in general I also prefer to follow the > SQL syntax, I do not believe it will be a good fit for Cassandra. > If we have a table like: > {code} > CREATE TABLE trades > { > symbol text, > date date, > time time, > priceMantissa int, > priceExponent tinyint, > volume int, > PRIMARY KEY ((symbol, date), time) > }; > {code} > The trades will be inserted with an increasing time and sorted in the same > order. As we can have to process a large amount of data, we want to try to > limit ourself to the cases where we can build the groups on the flight (which > is not a requirement in the SQL world). > If we want to get the number of trades per minutes with the SQL syntax we > will have to write: > {{SELECT hour(time), minute(time), count() FROM Trades WHERE symbol = 'AAPL' > AND date = '2016-01-11' GROUP BY hour(time), minute(time);}} > which is fine. The problem is that if the user invert by mistake the > functions like that: > {{SELECT hour(time), minute(time), count() FROM Trades WHERE symbol = 'AAPL' > AND date = '2016-01-11' GROUP BY minute(time), hour(time);}} > the query will return weird results. > The only way to prevent that would be to check the function order and make > sure that we do not allow to skip functions (e.g. {{GROUP BY hour(time), > second(time)}}). > In my opinion a function like {{floor(, )}} will be > much better as it does not allow for this type of mistakes and is much more > flexible (you can create 5 minutes buckets if you want to). > {{SELECT floor(time, m), count() FROM Trades WHERE symbol = 'AAPL' AND date = > '2016-01-11' GROUP BY floor(time, m);}} > An important aspect to keep in mind with a function like {{floor}} is the > starting point. For a query like: {{SELECT floor(time, m), count() FROM > Trades WHERE symbol = 'AAPL' AND date = '2016-01-11' AND time >= '01:30:00' > AND time =< '07:30:00' GROUP BY floor(time, 2h);}}, I think that ideally the > result should return 3 groups: {{01:30:00}}, {{03:30:00}} and {{05:30:00}}. > -- This message was sent by Atlassian JIRA (v6.3.15#6346)
[jira] [Updated] (CASSANDRA-11105) cassandra-stress tool - InvalidQueryException: Batch too large
[ https://issues.apache.org/jira/browse/CASSANDRA-11105?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Alexander Dejanovski updated CASSANDRA-11105: - Status: Patch Available (was: Open) > cassandra-stress tool - InvalidQueryException: Batch too large > -- > > Key: CASSANDRA-11105 > URL: https://issues.apache.org/jira/browse/CASSANDRA-11105 > Project: Cassandra > Issue Type: Bug > Components: Tools > Environment: Cassandra 2.2.4, Java 8, CentOS 6.5 >Reporter: Ralf Steppacher > Attachments: 11105-trunk.txt, batch_too_large.yaml > > > I am using Cassandra 2.2.4 and I am struggling to get the cassandra-stress > tool to work for my test scenario. I have followed the example on > http://www.datastax.com/dev/blog/improved-cassandra-2-1-stress-tool-benchmark-any-schema > to create a yaml file describing my test (attached). > I am collecting events per user id (text, partition key). Events have a > session type (text), event type (text), and creation time (timestamp) > (clustering keys, in that order). Plus some more attributes required for > rendering the events in a UI. For testing purposes I ended up with the > following column spec and insert distribution: > {noformat} > columnspec: > - name: created_at > cluster: uniform(10..1) > - name: event_type > size: uniform(5..10) > population: uniform(1..30) > cluster: uniform(1..30) > - name: session_type > size: fixed(5) > population: uniform(1..4) > cluster: uniform(1..4) > - name: user_id > size: fixed(15) > population: uniform(1..100) > - name: message > size: uniform(10..100) > population: uniform(1..100B) > insert: > partitions: fixed(1) > batchtype: UNLOGGED > select: fixed(1)/120 > {noformat} > Running stress tool for just the insert prints > {noformat} > Generating batches with [1..1] partitions and [0..1] rows (of [10..120] > total rows in the partitions) > {noformat} > and then immediately starts flooding me with > {{com.datastax.driver.core.exceptions.InvalidQueryException: Batch too > large}}. > Why I should be exceeding the {{batch_size_fail_threshold_in_kb: 50}} in the > {{cassandra.yaml}} I do not understand. My understanding is that the stress > tool should generate one row per batch. The size of a single row should not > exceed {{8+10*3+5*3+15*3+100*3 = 398 bytes}}. Assuming a worst case of all > text characters being 3 byte unicode characters. > This is how I start the attached user scenario: > {noformat} > [rsteppac@centos bin]$ ./cassandra-stress user > profile=../batch_too_large.yaml ops\(insert=1\) -log level=verbose > file=~/centos_event_by_patient_session_event_timestamp_insert_only.log -node > 10.211.55.8 > INFO 08:00:07 Did not find Netty's native epoll transport in the classpath, > defaulting to NIO. > INFO 08:00:08 Using data-center name 'datacenter1' for > DCAwareRoundRobinPolicy (if this is incorrect, please provide the correct > datacenter name with DCAwareRoundRobinPolicy constructor) > INFO 08:00:08 New Cassandra host /10.211.55.8:9042 added > Connected to cluster: Titan_DEV > Datatacenter: datacenter1; Host: /10.211.55.8; Rack: rack1 > Created schema. Sleeping 1s for propagation. > Generating batches with [1..1] partitions and [0..1] rows (of [10..120] > total rows in the partitions) > com.datastax.driver.core.exceptions.InvalidQueryException: Batch too large > at > com.datastax.driver.core.exceptions.InvalidQueryException.copy(InvalidQueryException.java:35) > at > com.datastax.driver.core.DefaultResultSetFuture.extractCauseFromExecutionException(DefaultResultSetFuture.java:271) > at > com.datastax.driver.core.DefaultResultSetFuture.getUninterruptibly(DefaultResultSetFuture.java:185) > at > com.datastax.driver.core.AbstractSession.execute(AbstractSession.java:55) > at > org.apache.cassandra.stress.operations.userdefined.SchemaInsert$JavaDriverRun.run(SchemaInsert.java:87) > at > org.apache.cassandra.stress.Operation.timeWithRetry(Operation.java:159) > at > org.apache.cassandra.stress.operations.userdefined.SchemaInsert.run(SchemaInsert.java:119) > at > org.apache.cassandra.stress.StressAction$Consumer.run(StressAction.java:309) > Caused by: com.datastax.driver.core.exceptions.InvalidQueryException: Batch > too large > at > com.datastax.driver.core.Responses$Error.asException(Responses.java:125) > at > com.datastax.driver.core.DefaultResultSetFuture.onSet(DefaultResultSetFuture.java:120) > at > com.datastax.driver.core.RequestHandler.setFinalResult(RequestHandler.java:186) > at > com.datastax.driver.core.RequestHandler.access$2300(RequestHandler.java:45) > at >
[jira] [Updated] (CASSANDRA-11105) cassandra-stress tool - InvalidQueryException: Batch too large
[ https://issues.apache.org/jira/browse/CASSANDRA-11105?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Alexander Dejanovski updated CASSANDRA-11105: - Attachment: 11105-trunk.txt Here's a patch for trunk that fixes cassandra-stress usage of batches. Currently there's indeed a problem as all rows that are part of an operation will get batched together (limited to 65k queries at once), whatever select distribution has been defined in the yaml file. It is also contradictory with the output at the beginning of the stress runs that gives the batch size distribution. Even when it states that it will generate single row batches, it still batches all rows together. The patch sends the batch size from StressProfile to SchemaInsert and computes a new batch size within the bounds for each operation (given batch size is a distribution, not a fixed value). It also uses asynchronous queries instead of synchronous ones in order to match performance best practices. > cassandra-stress tool - InvalidQueryException: Batch too large > -- > > Key: CASSANDRA-11105 > URL: https://issues.apache.org/jira/browse/CASSANDRA-11105 > Project: Cassandra > Issue Type: Bug > Components: Tools > Environment: Cassandra 2.2.4, Java 8, CentOS 6.5 >Reporter: Ralf Steppacher > Attachments: 11105-trunk.txt, batch_too_large.yaml > > > I am using Cassandra 2.2.4 and I am struggling to get the cassandra-stress > tool to work for my test scenario. I have followed the example on > http://www.datastax.com/dev/blog/improved-cassandra-2-1-stress-tool-benchmark-any-schema > to create a yaml file describing my test (attached). > I am collecting events per user id (text, partition key). Events have a > session type (text), event type (text), and creation time (timestamp) > (clustering keys, in that order). Plus some more attributes required for > rendering the events in a UI. For testing purposes I ended up with the > following column spec and insert distribution: > {noformat} > columnspec: > - name: created_at > cluster: uniform(10..1) > - name: event_type > size: uniform(5..10) > population: uniform(1..30) > cluster: uniform(1..30) > - name: session_type > size: fixed(5) > population: uniform(1..4) > cluster: uniform(1..4) > - name: user_id > size: fixed(15) > population: uniform(1..100) > - name: message > size: uniform(10..100) > population: uniform(1..100B) > insert: > partitions: fixed(1) > batchtype: UNLOGGED > select: fixed(1)/120 > {noformat} > Running stress tool for just the insert prints > {noformat} > Generating batches with [1..1] partitions and [0..1] rows (of [10..120] > total rows in the partitions) > {noformat} > and then immediately starts flooding me with > {{com.datastax.driver.core.exceptions.InvalidQueryException: Batch too > large}}. > Why I should be exceeding the {{batch_size_fail_threshold_in_kb: 50}} in the > {{cassandra.yaml}} I do not understand. My understanding is that the stress > tool should generate one row per batch. The size of a single row should not > exceed {{8+10*3+5*3+15*3+100*3 = 398 bytes}}. Assuming a worst case of all > text characters being 3 byte unicode characters. > This is how I start the attached user scenario: > {noformat} > [rsteppac@centos bin]$ ./cassandra-stress user > profile=../batch_too_large.yaml ops\(insert=1\) -log level=verbose > file=~/centos_event_by_patient_session_event_timestamp_insert_only.log -node > 10.211.55.8 > INFO 08:00:07 Did not find Netty's native epoll transport in the classpath, > defaulting to NIO. > INFO 08:00:08 Using data-center name 'datacenter1' for > DCAwareRoundRobinPolicy (if this is incorrect, please provide the correct > datacenter name with DCAwareRoundRobinPolicy constructor) > INFO 08:00:08 New Cassandra host /10.211.55.8:9042 added > Connected to cluster: Titan_DEV > Datatacenter: datacenter1; Host: /10.211.55.8; Rack: rack1 > Created schema. Sleeping 1s for propagation. > Generating batches with [1..1] partitions and [0..1] rows (of [10..120] > total rows in the partitions) > com.datastax.driver.core.exceptions.InvalidQueryException: Batch too large > at > com.datastax.driver.core.exceptions.InvalidQueryException.copy(InvalidQueryException.java:35) > at > com.datastax.driver.core.DefaultResultSetFuture.extractCauseFromExecutionException(DefaultResultSetFuture.java:271) > at > com.datastax.driver.core.DefaultResultSetFuture.getUninterruptibly(DefaultResultSetFuture.java:185) > at > com.datastax.driver.core.AbstractSession.execute(AbstractSession.java:55) > at > org.apache.cassandra.stress.operations.userdefined.SchemaInsert$JavaDriverRun.run(SchemaInsert.java:87) > at >
[jira] [Commented] (CASSANDRA-13114) 3.0.x: update netty
[ https://issues.apache.org/jira/browse/CASSANDRA-13114?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15851357#comment-15851357 ] Robert Stupp commented on CASSANDRA-13114: -- [~spo...@gmail.com] can you explain the code change in {{Message}}? It looks like it doesn't change anything. > 3.0.x: update netty > --- > > Key: CASSANDRA-13114 > URL: https://issues.apache.org/jira/browse/CASSANDRA-13114 > Project: Cassandra > Issue Type: Bug >Reporter: Tom van der Woerdt >Assignee: Stefan Podkowinski > Attachments: 13114_netty-4.0.44_2.x-3.0.patch, > 13114_netty-4.0.44_3.11.patch > > > https://issues.apache.org/jira/browse/CASSANDRA-12032 updated netty for > Cassandra 3.8, but this wasn't backported. Netty 4.0.23, which ships with > Cassandra 3.0.x, has some serious bugs around memory handling for SSL > connections. > It would be nice if both were updated to 4.0.42, a version released this year. > 4.0.23 makes it impossible for me to run SSL, because nodes run out of memory > every ~30 minutes. This was fixed in 4.0.27. -- This message was sent by Atlassian JIRA (v6.3.15#6346)
[jira] [Commented] (CASSANDRA-11871) Allow to aggregate by time intervals
[ https://issues.apache.org/jira/browse/CASSANDRA-11871?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15851256#comment-15851256 ] Pavel Trukhanov commented on CASSANDRA-11871: - Thanks for clarification. Isn't that ResultSet is built in memory anyways? And it could be big in some cases like {{allow filtering}}? I don't see why not allow building a lot of buckets simultaneously rather than just one at a time. > Allow to aggregate by time intervals > > > Key: CASSANDRA-11871 > URL: https://issues.apache.org/jira/browse/CASSANDRA-11871 > Project: Cassandra > Issue Type: Improvement > Components: CQL >Reporter: Benjamin Lerer >Assignee: Benjamin Lerer > Fix For: 3.x > > > For time series data it can be usefull to aggregate by time intervals. > The idea would be to add support for one or several functions in the {{GROUP > BY}} clause. > Regarding the implementation, even if in general I also prefer to follow the > SQL syntax, I do not believe it will be a good fit for Cassandra. > If we have a table like: > {code} > CREATE TABLE trades > { > symbol text, > date date, > time time, > priceMantissa int, > priceExponent tinyint, > volume int, > PRIMARY KEY ((symbol, date), time) > }; > {code} > The trades will be inserted with an increasing time and sorted in the same > order. As we can have to process a large amount of data, we want to try to > limit ourself to the cases where we can build the groups on the flight (which > is not a requirement in the SQL world). > If we want to get the number of trades per minutes with the SQL syntax we > will have to write: > {{SELECT hour(time), minute(time), count() FROM Trades WHERE symbol = 'AAPL' > AND date = '2016-01-11' GROUP BY hour(time), minute(time);}} > which is fine. The problem is that if the user invert by mistake the > functions like that: > {{SELECT hour(time), minute(time), count() FROM Trades WHERE symbol = 'AAPL' > AND date = '2016-01-11' GROUP BY minute(time), hour(time);}} > the query will return weird results. > The only way to prevent that would be to check the function order and make > sure that we do not allow to skip functions (e.g. {{GROUP BY hour(time), > second(time)}}). > In my opinion a function like {{floor(, )}} will be > much better as it does not allow for this type of mistakes and is much more > flexible (you can create 5 minutes buckets if you want to). > {{SELECT floor(time, m), count() FROM Trades WHERE symbol = 'AAPL' AND date = > '2016-01-11' GROUP BY floor(time, m);}} > An important aspect to keep in mind with a function like {{floor}} is the > starting point. For a query like: {{SELECT floor(time, m), count() FROM > Trades WHERE symbol = 'AAPL' AND date = '2016-01-11' AND time >= '01:30:00' > AND time =< '07:30:00' GROUP BY floor(time, 2h);}}, I think that ideally the > result should return 3 groups: {{01:30:00}}, {{03:30:00}} and {{05:30:00}}. > -- This message was sent by Atlassian JIRA (v6.3.15#6346)