[jira] [Updated] (CASSANDRA-4448) CQL3: allow to define a per-cf default consistency level
[ https://issues.apache.org/jira/browse/CASSANDRA-4448?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Sylvain Lebresne updated CASSANDRA-4448: Attachment: 4448.txt Attaching patch (against trunk). One slight difficulty is BATCH statements, where all statements are executed with the same CL, so it is unclear what to pick as a default consistency level for the batch unless all statement have the same default write CL. The patch takes the approach of simply refusing the batch unless either 1) the batch explicitly sets a CL or 2) all the statements of the batch have the same CL. I believe this to be a reasonable behavior, that won't limit in any way the APIs that sets the CL for you, or even people that never use those new settings. I'll note that this problem of 'batch can only have one CL' is not specific to those new options. I haven't checked how existing client library that allow to set a per-CF default CL deal with it. CQL3: allow to define a per-cf default consistency level Key: CASSANDRA-4448 URL: https://issues.apache.org/jira/browse/CASSANDRA-4448 Project: Cassandra Issue Type: New Feature Reporter: Sylvain Lebresne Labels: cql3 Fix For: 1.2 Attachments: 4448.txt One of the goal of CQL3 is that client library should not have to parse queries to provide a good experience. In particular, that means such client (that don't want to parse queries) won't be able to allow the user to define a specific default read/write consistency level per-CF, forcing user to specific the consistency level with every query, which is not very user friendly. This ticket suggests the addition of per-cf default read/write consitency level. Typically the syntax would be: {noformat} CREATE TABLE foo (...) WITH DEFAULT_READ_CONSISTENCY = QUORUM AND DEFAULT_WRITE_CONSISTENCY = QUORUM {noformat} -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (CASSANDRA-3636) cassandra 1.0.x breakes APT on debian OpenVZ
[ https://issues.apache.org/jira/browse/CASSANDRA-3636?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13420515#comment-13420515 ] Jochen Schalanda commented on CASSANDRA-3636: - The fix seems to have been lost during a merge. The [trunk version of debian/cassandra.postinst|https://git-wip-us.apache.org/repos/asf?p=cassandra.git;a=blob;f=debian/cassandra.postinst] doesn't contain the changes from Paul's fix in commit [48438ffc61bce2396fa2eac2f88fa66a6e6a69cd|https://git-wip-us.apache.org/repos/asf?p=cassandra.git;a=commitdiff;h=48438ffc61bce2396fa2eac2f88fa66a6e6a69cd]. cassandra 1.0.x breakes APT on debian OpenVZ Key: CASSANDRA-3636 URL: https://issues.apache.org/jira/browse/CASSANDRA-3636 Project: Cassandra Issue Type: Bug Components: Packaging Affects Versions: 1.0.0 Environment: Debian Linux (stable), OpenVZ container Reporter: Zenek Kraweznik Assignee: paul cannon Priority: Minor Fix For: 1.0.11, 1.1.1 Attachments: 3636.patch.txt During upgrade from 1.0.6 {code}Setting up cassandra (1.0.6) ... *error: permission denied on key 'vm.max_map_count'* dpkg: error processing cassandra (--configure): subprocess installed post-installation script returned error exit status 255 Errors were encountered while processing: cassandra {code} -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Reopened] (CASSANDRA-3636) cassandra 1.0.x breakes APT on debian OpenVZ
[ https://issues.apache.org/jira/browse/CASSANDRA-3636?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Dave Brosius reopened CASSANDRA-3636: - cassandra 1.0.x breakes APT on debian OpenVZ Key: CASSANDRA-3636 URL: https://issues.apache.org/jira/browse/CASSANDRA-3636 Project: Cassandra Issue Type: Bug Components: Packaging Affects Versions: 1.0.0 Environment: Debian Linux (stable), OpenVZ container Reporter: Zenek Kraweznik Assignee: paul cannon Priority: Minor Fix For: 1.0.11, 1.1.1 Attachments: 3636.patch.txt During upgrade from 1.0.6 {code}Setting up cassandra (1.0.6) ... *error: permission denied on key 'vm.max_map_count'* dpkg: error processing cassandra (--configure): subprocess installed post-installation script returned error exit status 255 Errors were encountered while processing: cassandra {code} -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa For more information on JIRA, see: http://www.atlassian.com/software/jira
git commit: merge CASSANDRA-3636 from 1.0 to 1.1 cassandra 1.0.x breakes APT on debian OpenVZ
Updated Branches: refs/heads/cassandra-1.1 bfdfe9014 - ff64c5d11 merge CASSANDRA-3636 from 1.0 to 1.1 cassandra 1.0.x breakes APT on debian OpenVZ Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/ff64c5d1 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/ff64c5d1 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/ff64c5d1 Branch: refs/heads/cassandra-1.1 Commit: ff64c5d11e9e66dfa42a1ca72572a65fb7480f37 Parents: bfdfe90 Author: Dave Brosius dbros...@apache.org Authored: Mon Jul 23 07:03:52 2012 -0400 Committer: Dave Brosius dbros...@apache.org Committed: Mon Jul 23 07:03:52 2012 -0400 -- debian/cassandra.postinst | 10 +- 1 files changed, 9 insertions(+), 1 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/ff64c5d1/debian/cassandra.postinst -- diff --git a/debian/cassandra.postinst b/debian/cassandra.postinst index 86adecb..9591459 100644 --- a/debian/cassandra.postinst +++ b/debian/cassandra.postinst @@ -38,7 +38,15 @@ case $1 in chown -R cassandra: /var/lib/cassandra chown -R cassandra: /var/log/cassandra fi -sysctl -p /etc/sysctl.d/cassandra.conf +if ! sysctl -p /etc/sysctl.d/cassandra.conf; then +echo 2 +echo Warning: unable to set vm.max_map_count; is this an OpenVZ 2 +echo instance? If so, it is highly recommended that you set 2 +echo vm.max_map_count to 1048575 in the host. 2 +echo 2 +echo Deleting the local sysctl.d/cassandra.conf. 2 +rm -v /etc/sysctl.d/cassandra.conf +fi ;; abort-upgrade|abort-remove|abort-deconfigure)
git commit: Be kind to potential client libraries reusing some of the binary transport code
Updated Branches: refs/heads/trunk d74103735 - 864e03671 Be kind to potential client libraries reusing some of the binary transport code Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/864e0367 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/864e0367 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/864e0367 Branch: refs/heads/trunk Commit: 864e03671abf3e99410175df21106efa1a463772 Parents: d741037 Author: Sylvain Lebresne sylv...@datastax.com Authored: Mon Jul 23 15:17:14 2012 +0200 Committer: Sylvain Lebresne sylv...@datastax.com Committed: Mon Jul 23 15:17:20 2012 +0200 -- .../transport/messages/ResultMessage.java |4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/864e0367/src/java/org/apache/cassandra/transport/messages/ResultMessage.java -- diff --git a/src/java/org/apache/cassandra/transport/messages/ResultMessage.java b/src/java/org/apache/cassandra/transport/messages/ResultMessage.java index 35f8207..3d1d7c1 100644 --- a/src/java/org/apache/cassandra/transport/messages/ResultMessage.java +++ b/src/java/org/apache/cassandra/transport/messages/ResultMessage.java @@ -57,7 +57,7 @@ public abstract class ResultMessage extends Message.Response } }; -private enum Kind +public enum Kind { VOID (1, Void.subcodec), ROWS (2, Rows.subcodec), @@ -97,7 +97,7 @@ public abstract class ResultMessage extends Message.Response } } -private final Kind kind; +public final Kind kind; protected ResultMessage(Kind kind) {
[jira] [Updated] (CASSANDRA-4448) CQL3: allow to define a per-cf default consistency level
[ https://issues.apache.org/jira/browse/CASSANDRA-4448?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Jonathan Ellis updated CASSANDRA-4448: -- Reviewer: yukim CQL3: allow to define a per-cf default consistency level Key: CASSANDRA-4448 URL: https://issues.apache.org/jira/browse/CASSANDRA-4448 Project: Cassandra Issue Type: New Feature Reporter: Sylvain Lebresne Assignee: Sylvain Lebresne Labels: cql3 Fix For: 1.2 Attachments: 4448.txt One of the goal of CQL3 is that client library should not have to parse queries to provide a good experience. In particular, that means such client (that don't want to parse queries) won't be able to allow the user to define a specific default read/write consistency level per-CF, forcing user to specific the consistency level with every query, which is not very user friendly. This ticket suggests the addition of per-cf default read/write consitency level. Typically the syntax would be: {noformat} CREATE TABLE foo (...) WITH DEFAULT_READ_CONSISTENCY = QUORUM AND DEFAULT_WRITE_CONSISTENCY = QUORUM {noformat} -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (CASSANDRA-4237) Add back 0.8-style memtable_lifetime feature
[ https://issues.apache.org/jira/browse/CASSANDRA-4237?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13420671#comment-13420671 ] Jonathan Ellis commented on CASSANDRA-4237: --- I don't think this is quite what we want, since it will flush the memtable every {{period}} regardless of whether it has already been recently flushed by normal request volume. (FWIW, the 0.8 brute force approach was to loop over each CFS in the KS every 10s, and flush it if it was expired -- see callers of CFS.forceFlushIfExpired.) Add back 0.8-style memtable_lifetime feature Key: CASSANDRA-4237 URL: https://issues.apache.org/jira/browse/CASSANDRA-4237 Project: Cassandra Issue Type: New Feature Components: Core Affects Versions: 1.0.0 Reporter: Jonathan Ellis Assignee: Yuki Morishita Priority: Minor Fix For: 1.2 Attachments: 4237.txt Back in 0.8 we had a memtable_lifetime_in_minutes setting. We got rid of it in 1.0 when we added CASSANDRA-2427, which is a better way to ensure flushing on low-activity memtables. However, at the same time we also added the ability to disable durable writes. So it's entirely possible to configure a low-activity memtable, that isn't part of the commitlog. So, we should add back a memtable lifetime setting. An additional motive is pointed out by http://www.fsl.cs.sunysb.edu/~pshetty/socc11-gtssl.pdf: if you have a *high* activity columnfamily, and don't require absolute durability, the commitlog is redundant if you are flushing faster than the commitlog sync period. So, disabling durable writes but setting memtable lifetime to the same as the commitlog sync would be a reasonable optimization. Thus, when we add back memtable lifetime, I think we should measure it in seconds or possibly even milliseconds (to match commitlog_sync_period) rather than minutes. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa For more information on JIRA, see: http://www.atlassian.com/software/jira
git commit: remove unused import
Updated Branches: refs/heads/trunk 864e03671 - 8d6fe24ce remove unused import Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/8d6fe24c Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/8d6fe24c Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/8d6fe24c Branch: refs/heads/trunk Commit: 8d6fe24ce490847aaf3fdb472095279850bbfbd8 Parents: 864e036 Author: Yuki Morishita yu...@apache.org Authored: Mon Jul 23 09:44:08 2012 -0500 Committer: Yuki Morishita yu...@apache.org Committed: Mon Jul 23 09:44:08 2012 -0500 -- src/java/org/apache/cassandra/tools/NodeCmd.java |1 - 1 files changed, 0 insertions(+), 1 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/8d6fe24c/src/java/org/apache/cassandra/tools/NodeCmd.java -- diff --git a/src/java/org/apache/cassandra/tools/NodeCmd.java b/src/java/org/apache/cassandra/tools/NodeCmd.java index 9fff6c5..49893a1 100644 --- a/src/java/org/apache/cassandra/tools/NodeCmd.java +++ b/src/java/org/apache/cassandra/tools/NodeCmd.java @@ -46,7 +46,6 @@ import org.apache.cassandra.service.StorageProxyMBean; import org.apache.cassandra.thrift.InvalidRequestException; import org.apache.cassandra.utils.EstimatedHistogram; import org.apache.cassandra.utils.Pair; -import org.apache.rat.document.UnreadableArchiveException; public class NodeCmd {
[jira] [Commented] (CASSANDRA-4456) AssertionError in ColumnFamilyStore.getOverlappingSSTables() during repair
[ https://issues.apache.org/jira/browse/CASSANDRA-4456?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13420685#comment-13420685 ] Jonathan Ellis commented on CASSANDRA-4456: --- I think this was introduced by CASSANDRA-3721: getOverlappingSSTables assumes that the sstables we check for overlaps are part of the live set, but now we can validate over a snapshot instead. AssertionError in ColumnFamilyStore.getOverlappingSSTables() during repair -- Key: CASSANDRA-4456 URL: https://issues.apache.org/jira/browse/CASSANDRA-4456 Project: Cassandra Issue Type: Bug Components: Core Affects Versions: 1.1.2 Environment: Ubuntu 11.04 64-bit Reporter: Mike Heffner Assignee: Sylvain Lebresne We have hit the following exception on several nodes while running repairs across our 1.1.2 ring. We've observed it happen on either the node executing the repair or a participating replica in the repair operation. The result in either case is that the repair hangs. ERROR [ValidationExecutor:9] 2012-07-21 01:54:03,019 AbstractCassandraDaemon.java (line 134) Exception in thread Thread[ValidationExecutor:9,1,main] java.lang.AssertionError at org.apache.cassandra.db.ColumnFamilyStore.getOverlappingSSTables(ColumnFamilyStore.java:874) at org.apache.cassandra.db.compaction.CompactionController.init(CompactionController.java:69) at org.apache.cassandra.db.compaction.CompactionManager$ValidationCompactionIterable.init(CompactionManager.java:834) at org.apache.cassandra.db.compaction.CompactionManager.doValidationCompaction(CompactionManager.java:698) at org.apache.cassandra.db.compaction.CompactionManager.access$600(CompactionManager.java:68) at org.apache.cassandra.db.compaction.CompactionManager$8.call(CompactionManager.java:438) at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303) at java.util.concurrent.FutureTask.run(FutureTask.java:138) at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) at java.lang.Thread.run(Thread.java:662) In building this ring we migrated sstables from an identical 0.8.8 ring by: 1. Creating the schema on our new 1.1.2 ring. 2. Rsyncing over sstables from 0.8.8 ring. 3. Renaming the sstables to match the directory and file naming structure of 1.1.x. 4. Ran nodetool refresh keyspace cf for each CF across each node. 5. Ran nodetool upgradesstables for each CF across each node. When those steps had completed, we began rolling repairs. Not all of the repair operations have hit the exception -- some of the repairs have completed successfully. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Updated] (CASSANDRA-4456) AssertionError in ColumnFamilyStore.getOverlappingSSTables() during repair
[ https://issues.apache.org/jira/browse/CASSANDRA-4456?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Jonathan Ellis updated CASSANDRA-4456: -- Assignee: Sylvain Lebresne I think this was introduced by CASSANDRA-3721: getOverlappingSSTables assumes that the sstables we check for overlaps are part of the live set, but now we can validate over a snapshot instead. AssertionError in ColumnFamilyStore.getOverlappingSSTables() during repair -- Key: CASSANDRA-4456 URL: https://issues.apache.org/jira/browse/CASSANDRA-4456 Project: Cassandra Issue Type: Bug Components: Core Affects Versions: 1.1.2 Environment: Ubuntu 11.04 64-bit Reporter: Mike Heffner Assignee: Sylvain Lebresne We have hit the following exception on several nodes while running repairs across our 1.1.2 ring. We've observed it happen on either the node executing the repair or a participating replica in the repair operation. The result in either case is that the repair hangs. ERROR [ValidationExecutor:9] 2012-07-21 01:54:03,019 AbstractCassandraDaemon.java (line 134) Exception in thread Thread[ValidationExecutor:9,1,main] java.lang.AssertionError at org.apache.cassandra.db.ColumnFamilyStore.getOverlappingSSTables(ColumnFamilyStore.java:874) at org.apache.cassandra.db.compaction.CompactionController.init(CompactionController.java:69) at org.apache.cassandra.db.compaction.CompactionManager$ValidationCompactionIterable.init(CompactionManager.java:834) at org.apache.cassandra.db.compaction.CompactionManager.doValidationCompaction(CompactionManager.java:698) at org.apache.cassandra.db.compaction.CompactionManager.access$600(CompactionManager.java:68) at org.apache.cassandra.db.compaction.CompactionManager$8.call(CompactionManager.java:438) at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303) at java.util.concurrent.FutureTask.run(FutureTask.java:138) at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) at java.lang.Thread.run(Thread.java:662) In building this ring we migrated sstables from an identical 0.8.8 ring by: 1. Creating the schema on our new 1.1.2 ring. 2. Rsyncing over sstables from 0.8.8 ring. 3. Renaming the sstables to match the directory and file naming structure of 1.1.x. 4. Ran nodetool refresh keyspace cf for each CF across each node. 5. Ran nodetool upgradesstables for each CF across each node. When those steps had completed, we began rolling repairs. Not all of the repair operations have hit the exception -- some of the repairs have completed successfully. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Updated] (CASSANDRA-2522) Record latencies for the replicate-on-write stage
[ https://issues.apache.org/jira/browse/CASSANDRA-2522?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Jonathan Ellis updated CASSANDRA-2522: -- Fix Version/s: (was: 1.1.3) Record latencies for the replicate-on-write stage - Key: CASSANDRA-2522 URL: https://issues.apache.org/jira/browse/CASSANDRA-2522 Project: Cassandra Issue Type: New Feature Components: Core Reporter: Stu Hood Assignee: Vladimir Sverzhinsky Priority: Minor Labels: lhf Like the read and write stages, we should record per-cf latencies for the replicate-on-write stage: it doesn't fit cleanly into any of our existing monitors. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Updated] (CASSANDRA-3930) CommitLogSegment uses RandomAccessFile which doesnt have fadvice
[ https://issues.apache.org/jira/browse/CASSANDRA-3930?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Jonathan Ellis updated CASSANDRA-3930: -- Fix Version/s: (was: 1.1.3) 1.2 CommitLogSegment uses RandomAccessFile which doesnt have fadvice Key: CASSANDRA-3930 URL: https://issues.apache.org/jira/browse/CASSANDRA-3930 Project: Cassandra Issue Type: Improvement Affects Versions: 1.0.7 Reporter: Vijay Assignee: Vijay Priority: Minor Fix For: 1.2 Wondering if we even need MMap file in this case as it is always sequential. If yes, we need it we might want to replace logFileAccessor = new RandomAccessFile(logFile, rw); to logFileAccessor = SequentialWriter.open(logFile, true); in CommitLogSegment -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Updated] (CASSANDRA-4385) bug when trying to describe a cf in a pre cql3 case sensitive keyspace
[ https://issues.apache.org/jira/browse/CASSANDRA-4385?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Jonathan Ellis updated CASSANDRA-4385: -- Reviewer: brandon.williams bug when trying to describe a cf in a pre cql3 case sensitive keyspace -- Key: CASSANDRA-4385 URL: https://issues.apache.org/jira/browse/CASSANDRA-4385 Project: Cassandra Issue Type: Bug Components: Drivers Affects Versions: 1.1.0 Environment: Linux, Hotspot JDK6, Cassandra 1.1.0 from tarball unmodified, stock config. Reporter: Al Tobey Assignee: paul cannon Priority: Minor Labels: cqlsh Fix For: 1.1.3 Attachments: 0001-cqlsh-Fix-error-reporting-for-unknown-CFs.patch I can't describe column families in my schema defined via cassandra-cli. Update also seems to fail for the same CF's. CREATE KEYSPACE Hastur with placement_strategy = 'org.apache.cassandra.locator.SimpleStrategy' and strategy_options = {replication_factor:2}; CREATE COLUMN FAMILY LookupByKey with compaction_strategy = 'LeveledCompactionStrategy' and compression_options = null; Then later, https://gist.github.com/3006886 -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Updated] (CASSANDRA-3072) Add a wide-row slice system test
[ https://issues.apache.org/jira/browse/CASSANDRA-3072?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Jonathan Ellis updated CASSANDRA-3072: -- Fix Version/s: (was: 1.1.3) 1.1.4 Add a wide-row slice system test Key: CASSANDRA-3072 URL: https://issues.apache.org/jira/browse/CASSANDRA-3072 Project: Cassandra Issue Type: Test Components: Tests Reporter: Stu Hood Assignee: Brandon Williams Priority: Minor Fix For: 1.1.4 Attachments: 0001-CASSANDRA-3072-Add-a-wide-row-slice-system-test.txt -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Updated] (CASSANDRA-4271) Exit status of bin/cassandra without -f is wrong
[ https://issues.apache.org/jira/browse/CASSANDRA-4271?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Jonathan Ellis updated CASSANDRA-4271: -- Reviewer: brandon.williams (was: thobbs) Exit status of bin/cassandra without -f is wrong Key: CASSANDRA-4271 URL: https://issues.apache.org/jira/browse/CASSANDRA-4271 Project: Cassandra Issue Type: Bug Components: Core Reporter: Tyler Hobbs Assignee: paul cannon Priority: Minor Fix For: 1.1.3 Attachments: 0001-startup-script-returns-0-after-backgrounding.patch The launch_service() function returns {{$?}} after exec'ing java, and the script then exits with that same status. The problem is that we do a {{[ ! -z $pidpath] ...}} conditional statment after exec'ing when the foreground flag isn't set. The value of {{$?}} then depends on that conditional and the statement, typically returning 1, because {{$pidpath}} isn't set. So, even if everything appears to execute normally, you will get an exit status of 1 for the whole script. I suspect the right thing to do is just return 0 when backgrounding. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Assigned] (CASSANDRA-3072) Add a wide-row slice system test
[ https://issues.apache.org/jira/browse/CASSANDRA-3072?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Jonathan Ellis reassigned CASSANDRA-3072: - Assignee: Brandon Williams (was: Stu Hood) +1 add to dtests. Brandon, can you take care of that? Add a wide-row slice system test Key: CASSANDRA-3072 URL: https://issues.apache.org/jira/browse/CASSANDRA-3072 Project: Cassandra Issue Type: Test Components: Tests Reporter: Stu Hood Assignee: Brandon Williams Priority: Minor Fix For: 1.1.4 Attachments: 0001-CASSANDRA-3072-Add-a-wide-row-slice-system-test.txt -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Updated] (CASSANDRA-4454) Add a notice on cqlsh startup about CQL2/3 switches
[ https://issues.apache.org/jira/browse/CASSANDRA-4454?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Jonathan Ellis updated CASSANDRA-4454: -- Fix Version/s: (was: 1.1.3) 1.1.4 Add a notice on cqlsh startup about CQL2/3 switches --- Key: CASSANDRA-4454 URL: https://issues.apache.org/jira/browse/CASSANDRA-4454 Project: Cassandra Issue Type: Improvement Components: Tools Affects Versions: 1.1.0 Reporter: Michaël Figuière Assignee: paul cannon Priority: Minor Labels: cqlsh Fix For: 1.1.4 Several developers I've talked with seem not to have noticed the {{-3}} switch immediately to run in CQL3 mode. If missing, cqlsh can obviously appear buggy in its way to handle CQL3. I guess it would be worth to add a notice at startup about this important detail. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (CASSANDRA-4240) Only check the size of indexed column values when they are of type KEYS
[ https://issues.apache.org/jira/browse/CASSANDRA-4240?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13420705#comment-13420705 ] T Jake Luciani commented on CASSANDRA-4240: --- Patch 4 is missing the unit test and overall the patch has tab-space issues. please re-submit once more. Only check the size of indexed column values when they are of type KEYS --- Key: CASSANDRA-4240 URL: https://issues.apache.org/jira/browse/CASSANDRA-4240 Project: Cassandra Issue Type: Improvement Affects Versions: 1.0.0 Reporter: Joaquin Casares Priority: Minor Labels: datastax_qa Attachments: CASSANDRA-4240.patch, CASSANDRA-4240.patch1, cassandra-1.0.8-CASSANDRA-4240-patch2.txt, cassandra-1.0.8-CASSANDRA-4240-patch3.txt, cassandra-1.0.8-CASSANDRA-4240-patch4.txt, cassandra-1.0.8-CASSANDRA-4240.txt https://github.com/apache/cassandra/blob/cassandra-1.0.8/src/java/org/apache/cassandra/thrift/ThriftValidation.java#L431 That line states that: Indexed column values cannot be larger than 64K. But in some cases we would want the column values to be able to be larger than 64k, specifically if the index_type is not of type KEYS. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (CASSANDRA-3706) Back up configuration files on startup
[ https://issues.apache.org/jira/browse/CASSANDRA-3706?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13420729#comment-13420729 ] David Alves commented on CASSANDRA-3706: How far is this from going in? Any thing I can do to help? CASSANDRA-1123 will also need distributed system tables and I'd like to minimize duplicate code. I can split the patch into generic dist system tables and specific configuration backup + rebase and use the common part in 1123. wdyt? Back up configuration files on startup -- Key: CASSANDRA-3706 URL: https://issues.apache.org/jira/browse/CASSANDRA-3706 Project: Cassandra Issue Type: New Feature Components: Tools Reporter: Jonathan Ellis Assignee: Dave Brosius Priority: Minor Labels: lhf Fix For: 1.2 Attachments: save_configuration.diff, save_configuration_2.diff, save_configuration_3.diff, save_configuration_4.diff, save_configuration_6.diff, save_configuration_7.diff, save_configuration_8.diff, save_configuration_9.diff Snapshot can backup user data, but it's also nice to be able to have known-good configurations saved as well in case of accidental snafus or even catastrophic loss of a cluster. If we check for changes to cassandra.yaml, cassandra-env.sh, and maybe log4j-server.properties on startup, we can back them up to a columnfamily that can then be handled by normal snapshot/backup procedures. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (CASSANDRA-4427) Restarting a failed bootstrap instajoins the ring
[ https://issues.apache.org/jira/browse/CASSANDRA-4427?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13420736#comment-13420736 ] Jonathan Ellis commented on CASSANDRA-4427: --- bq. there is still one behavior that the patch changes, that is it will always boobstrap non seeds node You're right. Okay, take five: https://github.com/jbellis/cassandra/tree/4427-5 4 patches here on top of Brandon's work. The main ones are the 1st and 4th. In the first, I remove the seed special case since it's a subset of the empty schema case. (Unless you're Doing It Wrong and adding seed nodes directly to an active cluster, which always surprises people when it burns them. So I say good riddance.) The first also adds a 2-gossip-round sleep so that (always assuming seeds are set correctly) we eliminate the risk of thinking schema is empty incorrectly due to a race w/ gossip. The fourth patch follows this up by making the schema check based on other peers' schema uuids instead of local data. Which is unlikely to be a problem today, but is is still a race-y approach and the correct alternative was straightforward. Restarting a failed bootstrap instajoins the ring - Key: CASSANDRA-4427 URL: https://issues.apache.org/jira/browse/CASSANDRA-4427 Project: Cassandra Issue Type: Bug Components: Core Affects Versions: 1.0.0 Reporter: Brandon Williams Assignee: Jonathan Ellis Fix For: 1.0.11, 1.1.3 Attachments: 4427-v2.txt, 4427-v3.txt, 4427.txt I think when we made auto_bootstrap = true the default, we broke the check for the bootstrap flag, creating a dangerous situation. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (CASSANDRA-3706) Back up configuration files on startup
[ https://issues.apache.org/jira/browse/CASSANDRA-3706?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13420738#comment-13420738 ] Jonathan Ellis commented on CASSANDRA-3706: --- I'd just go ahead and build the generic distributed system keyspace in 1123 and we'll rebase this on top. Back up configuration files on startup -- Key: CASSANDRA-3706 URL: https://issues.apache.org/jira/browse/CASSANDRA-3706 Project: Cassandra Issue Type: New Feature Components: Tools Reporter: Jonathan Ellis Assignee: Dave Brosius Priority: Minor Labels: lhf Fix For: 1.2 Attachments: save_configuration.diff, save_configuration_2.diff, save_configuration_3.diff, save_configuration_4.diff, save_configuration_6.diff, save_configuration_7.diff, save_configuration_8.diff, save_configuration_9.diff Snapshot can backup user data, but it's also nice to be able to have known-good configurations saved as well in case of accidental snafus or even catastrophic loss of a cluster. If we check for changes to cassandra.yaml, cassandra-env.sh, and maybe log4j-server.properties on startup, we can back them up to a columnfamily that can then be handled by normal snapshot/backup procedures. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Updated] (CASSANDRA-4456) AssertionError in ColumnFamilyStore.getOverlappingSSTables() during repair
[ https://issues.apache.org/jira/browse/CASSANDRA-4456?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Sylvain Lebresne updated CASSANDRA-4456: Attachment: 4456.txt AssertionError in ColumnFamilyStore.getOverlappingSSTables() during repair -- Key: CASSANDRA-4456 URL: https://issues.apache.org/jira/browse/CASSANDRA-4456 Project: Cassandra Issue Type: Bug Components: Core Affects Versions: 1.1.2 Environment: Ubuntu 11.04 64-bit Reporter: Mike Heffner Assignee: Sylvain Lebresne Fix For: 1.1.3 Attachments: 4456.txt We have hit the following exception on several nodes while running repairs across our 1.1.2 ring. We've observed it happen on either the node executing the repair or a participating replica in the repair operation. The result in either case is that the repair hangs. ERROR [ValidationExecutor:9] 2012-07-21 01:54:03,019 AbstractCassandraDaemon.java (line 134) Exception in thread Thread[ValidationExecutor:9,1,main] java.lang.AssertionError at org.apache.cassandra.db.ColumnFamilyStore.getOverlappingSSTables(ColumnFamilyStore.java:874) at org.apache.cassandra.db.compaction.CompactionController.init(CompactionController.java:69) at org.apache.cassandra.db.compaction.CompactionManager$ValidationCompactionIterable.init(CompactionManager.java:834) at org.apache.cassandra.db.compaction.CompactionManager.doValidationCompaction(CompactionManager.java:698) at org.apache.cassandra.db.compaction.CompactionManager.access$600(CompactionManager.java:68) at org.apache.cassandra.db.compaction.CompactionManager$8.call(CompactionManager.java:438) at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303) at java.util.concurrent.FutureTask.run(FutureTask.java:138) at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) at java.lang.Thread.run(Thread.java:662) In building this ring we migrated sstables from an identical 0.8.8 ring by: 1. Creating the schema on our new 1.1.2 ring. 2. Rsyncing over sstables from 0.8.8 ring. 3. Renaming the sstables to match the directory and file naming structure of 1.1.x. 4. Ran nodetool refresh keyspace cf for each CF across each node. 5. Ran nodetool upgradesstables for each CF across each node. When those steps had completed, we began rolling repairs. Not all of the repair operations have hit the exception -- some of the repairs have completed successfully. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (CASSANDRA-4456) AssertionError in ColumnFamilyStore.getOverlappingSSTables() during repair
[ https://issues.apache.org/jira/browse/CASSANDRA-4456?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13420746#comment-13420746 ] Sylvain Lebresne commented on CASSANDRA-4456: - Actually I think this can happen even when snapshots are not used since a sstable can finish to be compacted just between when we chose sstable for repair and when we create the CompactionController for the validation compaction. In particular, I wonder if Michael and Mike have used -snapshot for their compaction. Though it's true that repair on snapshot will make that way more likely to happen. But actually I don't think we need to call getOverlappingSStables at all in the first place for repair, since this is used only to decide if we can purge but repair does not do purging. Attaching a simple patch to skip the call entirely. AssertionError in ColumnFamilyStore.getOverlappingSSTables() during repair -- Key: CASSANDRA-4456 URL: https://issues.apache.org/jira/browse/CASSANDRA-4456 Project: Cassandra Issue Type: Bug Components: Core Affects Versions: 1.1.2 Environment: Ubuntu 11.04 64-bit Reporter: Mike Heffner Assignee: Sylvain Lebresne Fix For: 1.1.3 Attachments: 4456.txt We have hit the following exception on several nodes while running repairs across our 1.1.2 ring. We've observed it happen on either the node executing the repair or a participating replica in the repair operation. The result in either case is that the repair hangs. ERROR [ValidationExecutor:9] 2012-07-21 01:54:03,019 AbstractCassandraDaemon.java (line 134) Exception in thread Thread[ValidationExecutor:9,1,main] java.lang.AssertionError at org.apache.cassandra.db.ColumnFamilyStore.getOverlappingSSTables(ColumnFamilyStore.java:874) at org.apache.cassandra.db.compaction.CompactionController.init(CompactionController.java:69) at org.apache.cassandra.db.compaction.CompactionManager$ValidationCompactionIterable.init(CompactionManager.java:834) at org.apache.cassandra.db.compaction.CompactionManager.doValidationCompaction(CompactionManager.java:698) at org.apache.cassandra.db.compaction.CompactionManager.access$600(CompactionManager.java:68) at org.apache.cassandra.db.compaction.CompactionManager$8.call(CompactionManager.java:438) at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303) at java.util.concurrent.FutureTask.run(FutureTask.java:138) at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) at java.lang.Thread.run(Thread.java:662) In building this ring we migrated sstables from an identical 0.8.8 ring by: 1. Creating the schema on our new 1.1.2 ring. 2. Rsyncing over sstables from 0.8.8 ring. 3. Renaming the sstables to match the directory and file naming structure of 1.1.x. 4. Ran nodetool refresh keyspace cf for each CF across each node. 5. Ran nodetool upgradesstables for each CF across each node. When those steps had completed, we began rolling repairs. Not all of the repair operations have hit the exception -- some of the repairs have completed successfully. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa For more information on JIRA, see: http://www.atlassian.com/software/jira
[1/12] git commit: Merge #4427 to trunk
Updated Branches: refs/heads/trunk 8d6fe24ce - 34cd6912b Merge #4427 to trunk Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/34cd6912 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/34cd6912 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/34cd6912 Branch: refs/heads/trunk Commit: 34cd6912b0e506f923ef33329fc9966d79222e77 Parents: 8d6fe24 ff64c5d Author: Brandon Williams brandonwilli...@apache.org Authored: Mon Jul 23 11:22:37 2012 -0500 Committer: Brandon Williams brandonwilli...@apache.org Committed: Mon Jul 23 11:22:37 2012 -0500 -- CHANGES.txt|6 +++ debian/cassandra.postinst | 10 +- doc/cql3/CQL.textile |7 +++- .../org/apache/cassandra/config/CFMetaData.java| 25 + src/java/org/apache/cassandra/db/SystemTable.java | 28 --- src/java/org/apache/cassandra/dht/Bounds.java |5 ++- .../apache/cassandra/service/StorageService.java | 25 + test/unit/org/apache/cassandra/cli/CliTest.java|8 8 files changed, 97 insertions(+), 17 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/34cd6912/CHANGES.txt -- diff --cc CHANGES.txt index e9fdbf4,b2a9faf..55d0bcd --- a/CHANGES.txt +++ b/CHANGES.txt @@@ -1,38 -1,6 +1,40 @@@ +1.2-dev + * Introduce new json format with row level deletion (CASSANDRA-4054) + * remove redundant name column from schema_keyspaces (CASSANDRA-4433) + * improve nodetool ring handling of multi-dc clusters (CASSANDRA-3047) + * update NTS calculateNaturalEndpoints to be O(N log N) (CASSANDRA-3881) + * add UseCondCardMark XX jvm settings on jdk 1.7 (CASSANDRA-4366) + * split up rpc timeout by operation type (CASSANDRA-2819) + * rewrite key cache save/load to use only sequential i/o (CASSANDRA-3762) + * update MS protocol with a version handshake + broadcast address id + (CASSANDRA-4311) + * multithreaded hint replay (CASSANDRA-4189) + * add inter-node message compression (CASSANDRA-3127) + * remove COPP (CASSANDRA-2479) + * Track tombstone expiration and compact when tombstone content is + higher than a configurable threshold, default 20% (CASSANDRA-3442, 4234) + * update MurmurHash to version 3 (CASSANDRA-2975) + * (CLI) track elapsed time for `delete' operation (CASSANDRA-4060) + * (CLI) jline version is bumped to 1.0 to properly support + 'delete' key function (CASSANDRA-4132) + * Save IndexSummary into new SSTable 'Summary' component (CASSANDRA-2392, 4289) + * Add support for range tombstones (CASSANDRA-3708) + * Improve MessagingService efficiency (CASSANDRA-3617) + * Avoid ID conflicts from concurrent schema changes (CASSANDRA-3794) + * Set thrift HSHA server thread limit to unlimited by default (CASSANDRA-4277) + * Avoids double serialization of CF id in RowMutation messages + (CASSANDRA-4293) + * stream compressed sstables directly with java nio (CASSANDRA-4297) + * Support multiple ranges in SliceQueryFilter (CASSANDRA-3885) + * Add column metadata to system column families (CASSANDRA-4018) + * (cql3) Always use composite types by default (CASSANDRA-4329) + * (cql3) Add support for set, map and list (CASSANDRA-3647) + * Validate date type correctly (CASSANDRA-4441) + + 1.1.3 + * flush based on data size, not throughput; overwritten columns no +longer artificially inflate liveRatio (CASSANDRA-4399) * update default commitlog segment size to 32MB and total commitlog size to 32/1024 MB for 32/64 bit JVMs, respectively (CASSANDRA-4422) * avoid using global partitioner to estimate ranges in index sstables http://git-wip-us.apache.org/repos/asf/cassandra/blob/34cd6912/src/java/org/apache/cassandra/config/CFMetaData.java -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/34cd6912/src/java/org/apache/cassandra/db/SystemTable.java -- diff --cc src/java/org/apache/cassandra/db/SystemTable.java index 48d9151,af07156..e852003 --- a/src/java/org/apache/cassandra/db/SystemTable.java +++ b/src/java/org/apache/cassandra/db/SystemTable.java @@@ -358,20 -359,45 +365,31 @@@ public class SystemTabl return generation; } - public static boolean isBootstrapped() + public static BootstrapState getBootstrapState() { -Table table = Table.open(Table.SYSTEM_TABLE); -QueryFilter filter = QueryFilter.getNamesFilter(decorate(BOOTSTRAP_KEY), -new QueryPath(STATUS_CF), -
[4/12] git commit: Query the JVM for the minimum stack size. Patch by Trevor Robinson, reviewed by brandonwilliams for CASSANDRA-4442
Query the JVM for the minimum stack size. Patch by Trevor Robinson, reviewed by brandonwilliams for CASSANDRA-4442 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/5bde2a6d Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/5bde2a6d Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/5bde2a6d Branch: refs/heads/trunk Commit: 5bde2a6d5d6bed3ff15ec6caf20524717a130ecb Parents: e220efa Author: Brandon Williams brandonwilli...@apache.org Authored: Fri Jul 20 15:01:51 2012 -0500 Committer: Brandon Williams brandonwilli...@apache.org Committed: Fri Jul 20 15:01:51 2012 -0500 -- conf/cassandra-env.sh | 11 ++- 1 files changed, 6 insertions(+), 5 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/5bde2a6d/conf/cassandra-env.sh -- diff --git a/conf/cassandra-env.sh b/conf/cassandra-env.sh index cef0efb..17c2fb8 100644 --- a/conf/cassandra-env.sh +++ b/conf/cassandra-env.sh @@ -151,18 +151,19 @@ if [ x$CASSANDRA_HEAPDUMP_DIR != x ]; then JVM_OPTS=$JVM_OPTS -XX:HeapDumpPath=$CASSANDRA_HEAPDUMP_DIR/cassandra-`date +%s`-pid$$.hprof fi +java_version=`${JAVA:-java} -version 21 | awk '/version/ {print $3}' | egrep -o '[0-9]+\.[0-9]+'` if [ `uname` = Linux ] ; then -java_version=`${JAVA:-java} -version 21 | awk '/version/ {print $3}' | egrep -o '[0-9]+\.[0-9]+'` +# try to determine JVM stack minimum by using too-small stack +# (note that 16k causes segfault and smaller prints invalid size error) +java_min_stack=`${JAVA:-java} -Xss32k 21 | sed -nr 's/The stack size specified is too small, Specify at least ([0-9]+k)/\1/p'` # reduce the per-thread stack size to minimize the impact of Thrift # thread-per-client. (Best practice is for client connections to # be pooled anyway.) Only do so on Linux where it is known to be # supported. -if [ $java_version = 1.7 ] +if [ -n $java_min_stack ] then -JVM_OPTS=$JVM_OPTS -Xss160k -else -JVM_OPTS=$JVM_OPTS -Xss128k +JVM_OPTS=$JVM_OPTS -Xss$java_min_stack fi fi echo xss = $JVM_OPTS
[5/12] git commit: fixes small bug introduced by CASSANDRA-4439
fixes small bug introduced by CASSANDRA-4439 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/e220efa2 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/e220efa2 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/e220efa2 Branch: refs/heads/trunk Commit: e220efa2a87c8232d87bdca9f2a02cfcef9f1a4c Parents: 202f394 Author: Pavel Yaskevich xe...@apache.org Authored: Thu Jul 19 01:49:46 2012 +0300 Committer: Pavel Yaskevich xe...@apache.org Committed: Thu Jul 19 01:49:46 2012 +0300 -- .../org/apache/cassandra/config/CFMetaData.java|3 +++ 1 files changed, 3 insertions(+), 0 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/e220efa2/src/java/org/apache/cassandra/config/CFMetaData.java -- diff --git a/src/java/org/apache/cassandra/config/CFMetaData.java b/src/java/org/apache/cassandra/config/CFMetaData.java index 5b3f227..9d77912 100644 --- a/src/java/org/apache/cassandra/config/CFMetaData.java +++ b/src/java/org/apache/cassandra/config/CFMetaData.java @@ -877,6 +877,9 @@ public final class CFMetaData String oldIndexName = cfm.column_metadata.get(entry.getKey()).getIndexName(); +if (oldIndexName == null) +continue; + if (newDef.getIndexName() != null !oldIndexName.equals(newDef.getIndexName())) throw new ConfigurationException(Can't modify index name: was ' + oldIndexName + ' changed to ' + newDef.getIndexName() + '.);
[2/12] git commit: merge CASSANDRA-3636 from 1.0 to 1.1 cassandra 1.0.x breakes APT on debian OpenVZ
merge CASSANDRA-3636 from 1.0 to 1.1 cassandra 1.0.x breakes APT on debian OpenVZ Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/ff64c5d1 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/ff64c5d1 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/ff64c5d1 Branch: refs/heads/trunk Commit: ff64c5d11e9e66dfa42a1ca72572a65fb7480f37 Parents: bfdfe90 Author: Dave Brosius dbros...@apache.org Authored: Mon Jul 23 07:03:52 2012 -0400 Committer: Dave Brosius dbros...@apache.org Committed: Mon Jul 23 07:03:52 2012 -0400 -- debian/cassandra.postinst | 10 +- 1 files changed, 9 insertions(+), 1 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/ff64c5d1/debian/cassandra.postinst -- diff --git a/debian/cassandra.postinst b/debian/cassandra.postinst index 86adecb..9591459 100644 --- a/debian/cassandra.postinst +++ b/debian/cassandra.postinst @@ -38,7 +38,15 @@ case $1 in chown -R cassandra: /var/lib/cassandra chown -R cassandra: /var/log/cassandra fi -sysctl -p /etc/sysctl.d/cassandra.conf +if ! sysctl -p /etc/sysctl.d/cassandra.conf; then +echo 2 +echo Warning: unable to set vm.max_map_count; is this an OpenVZ 2 +echo instance? If so, it is highly recommended that you set 2 +echo vm.max_map_count to 1048575 in the host. 2 +echo 2 +echo Deleting the local sysctl.d/cassandra.conf. 2 +rm -v /etc/sysctl.d/cassandra.conf +fi ;; abort-upgrade|abort-remove|abort-deconfigure)
[11/12] git commit: Follow up to #4411
Follow up to #4411 patch by slebresne; reviewed by jbellis for CASSANDRA-4411 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/35335caa Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/35335caa Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/35335caa Branch: refs/heads/trunk Commit: 35335caa034d5a22dd27058d011b1454fcc87850 Parents: 02030dd Author: Sylvain Lebresne sylv...@datastax.com Authored: Mon Jul 16 17:31:55 2012 +0200 Committer: Sylvain Lebresne sylv...@datastax.com Committed: Mon Jul 16 17:31:55 2012 +0200 -- src/java/org/apache/cassandra/dht/Bounds.java |8 1 files changed, 4 insertions(+), 4 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/35335caa/src/java/org/apache/cassandra/dht/Bounds.java -- diff --git a/src/java/org/apache/cassandra/dht/Bounds.java b/src/java/org/apache/cassandra/dht/Bounds.java index b5633c8..c6378a7 100644 --- a/src/java/org/apache/cassandra/dht/Bounds.java +++ b/src/java/org/apache/cassandra/dht/Bounds.java @@ -47,10 +47,10 @@ public class BoundsT extends RingPosition extends AbstractBoundsT public boolean contains(T position) { -// Range.contains doesnt work correctly if left == right because for -// Range that means a wrapping range that select the whole ring. So we -// must explicitely handle this case -return left.equals(position) || (!left.equals(right) Range.contains(left, right, position)); +// Range.contains doesnt work correctly if left == right (unless both +// are minimum) because for Range that means a wrapping range that select +// the whole ring. So we must explicitely handle this case +return left.equals(position) || ((right.isMinimum(partitioner) || !left.equals(right)) Range.contains(left, right, position)); } public PairAbstractBoundsT, AbstractBoundsT split(T position)
[3/12] git commit: Revert Query the JVM for the minimum stack size.
Revert Query the JVM for the minimum stack size. This reverts commit 5bde2a6d5d6bed3ff15ec6caf20524717a130ecb. Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/bfdfe901 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/bfdfe901 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/bfdfe901 Branch: refs/heads/trunk Commit: bfdfe9014af788fc9f84ad1283165d9730b999a5 Parents: 5bde2a6 Author: Brandon Williams brandonwilli...@apache.org Authored: Fri Jul 20 15:41:57 2012 -0500 Committer: Brandon Williams brandonwilli...@apache.org Committed: Fri Jul 20 15:41:57 2012 -0500 -- conf/cassandra-env.sh | 11 +-- 1 files changed, 5 insertions(+), 6 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/bfdfe901/conf/cassandra-env.sh -- diff --git a/conf/cassandra-env.sh b/conf/cassandra-env.sh index 17c2fb8..cef0efb 100644 --- a/conf/cassandra-env.sh +++ b/conf/cassandra-env.sh @@ -151,19 +151,18 @@ if [ x$CASSANDRA_HEAPDUMP_DIR != x ]; then JVM_OPTS=$JVM_OPTS -XX:HeapDumpPath=$CASSANDRA_HEAPDUMP_DIR/cassandra-`date +%s`-pid$$.hprof fi -java_version=`${JAVA:-java} -version 21 | awk '/version/ {print $3}' | egrep -o '[0-9]+\.[0-9]+'` if [ `uname` = Linux ] ; then -# try to determine JVM stack minimum by using too-small stack -# (note that 16k causes segfault and smaller prints invalid size error) -java_min_stack=`${JAVA:-java} -Xss32k 21 | sed -nr 's/The stack size specified is too small, Specify at least ([0-9]+k)/\1/p'` +java_version=`${JAVA:-java} -version 21 | awk '/version/ {print $3}' | egrep -o '[0-9]+\.[0-9]+'` # reduce the per-thread stack size to minimize the impact of Thrift # thread-per-client. (Best practice is for client connections to # be pooled anyway.) Only do so on Linux where it is known to be # supported. -if [ -n $java_min_stack ] +if [ $java_version = 1.7 ] then -JVM_OPTS=$JVM_OPTS -Xss$java_min_stack +JVM_OPTS=$JVM_OPTS -Xss160k +else +JVM_OPTS=$JVM_OPTS -Xss128k fi fi echo xss = $JVM_OPTS
[8/12] git commit: Update changes
Update changes Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/ae13debd Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/ae13debd Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/ae13debd Branch: refs/heads/trunk Commit: ae13debd39c788dd2aaeef97fd61f60158d4 Parents: ff1ba87 Author: Brandon Williams brandonwilli...@apache.org Authored: Mon Jul 16 16:54:29 2012 -0500 Committer: Brandon Williams brandonwilli...@apache.org Committed: Mon Jul 16 16:54:29 2012 -0500 -- CHANGES.txt |2 ++ 1 files changed, 2 insertions(+), 0 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/ae13debd/CHANGES.txt -- diff --git a/CHANGES.txt b/CHANGES.txt index a3ba123..a525ad8 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -17,6 +17,8 @@ Merged from 1.0: tombstones in PrecompactedRow (CASSANDRA-4396) * fix 1.0.x node join to mixed version cluster, other nodes = 1.1 (CASSANDRA-4195) * Fix LCS splitting sstable base on uncompressed size (CASSANDRA-4419) + * Bootstraps that fail are detected upon restart and will retry safely without + needing to delete existing data first (CASSANDRA-4427) 1.1.2
[6/12] git commit: fix Can't Modify Index Name problem on CF update patch by Pavel Yaskevich; reviewed by Yuki Morishita for CASSANDRA-4439
fix Can't Modify Index Name problem on CF update patch by Pavel Yaskevich; reviewed by Yuki Morishita for CASSANDRA-4439 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/202f3940 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/202f3940 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/202f3940 Branch: refs/heads/trunk Commit: 202f3940dc35411f9b2351a026e859e487b94591 Parents: 7c98271 Author: Pavel Yaskevich xe...@apache.org Authored: Tue Jul 17 17:18:46 2012 +0300 Committer: Pavel Yaskevich xe...@apache.org Committed: Thu Jul 19 01:15:28 2012 +0300 -- CHANGES.txt|1 + .../org/apache/cassandra/config/CFMetaData.java| 22 +++ test/unit/org/apache/cassandra/cli/CliTest.java|8 + 3 files changed, 31 insertions(+), 0 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/202f3940/CHANGES.txt -- diff --git a/CHANGES.txt b/CHANGES.txt index 67b5410..b2a9faf 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -14,6 +14,7 @@ * change nanoTime() to currentTimeInMillis() in schema related code (CASSANDRA-4432) * add a token generation tool (CASSANDRA-3709) * Fix LCS bug with sstable containing only 1 row (CASSANDRA-4411) + * fix Can't Modify Index Name problem on CF update (CASSANDRA-4439) Merged from 1.0: * allow dropping columns shadowed by not-yet-expired supercolumn or row tombstones in PrecompactedRow (CASSANDRA-4396) http://git-wip-us.apache.org/repos/asf/cassandra/blob/202f3940/src/java/org/apache/cassandra/config/CFMetaData.java -- diff --git a/src/java/org/apache/cassandra/config/CFMetaData.java b/src/java/org/apache/cassandra/config/CFMetaData.java index c6411af..5b3f227 100644 --- a/src/java/org/apache/cassandra/config/CFMetaData.java +++ b/src/java/org/apache/cassandra/config/CFMetaData.java @@ -862,6 +862,28 @@ public final class CFMetaData */ public void addDefaultIndexNames() throws ConfigurationException { +// if this is ColumnFamily update we need to add previously defined index names to the existing columns first +Integer cfId = Schema.instance.getId(ksName, cfName); +if (cfId != null) +{ +CFMetaData cfm = Schema.instance.getCFMetaData(cfId); + +for (Map.EntryByteBuffer, ColumnDefinition entry : column_metadata.entrySet()) +{ +ColumnDefinition newDef = entry.getValue(); + +if (!cfm.column_metadata.containsKey(entry.getKey()) || newDef.getIndexType() == null) +continue; + +String oldIndexName = cfm.column_metadata.get(entry.getKey()).getIndexName(); + +if (newDef.getIndexName() != null !oldIndexName.equals(newDef.getIndexName())) +throw new ConfigurationException(Can't modify index name: was ' + oldIndexName + ' changed to ' + newDef.getIndexName() + '.); + +newDef.setIndexName(oldIndexName); +} +} + SetString existingNames = existingIndexNames(null); for (ColumnDefinition column : column_metadata.values()) { http://git-wip-us.apache.org/repos/asf/cassandra/blob/202f3940/test/unit/org/apache/cassandra/cli/CliTest.java -- diff --git a/test/unit/org/apache/cassandra/cli/CliTest.java b/test/unit/org/apache/cassandra/cli/CliTest.java index 756dc7f..c13cf01 100644 --- a/test/unit/org/apache/cassandra/cli/CliTest.java +++ b/test/unit/org/apache/cassandra/cli/CliTest.java @@ -39,6 +39,14 @@ public class CliTest extends SchemaLoader // please add new statements here so they could be auto-runned by this test. private String[] statements = { use TestKeySpace;, +create column family SecondaryIndicesWithoutIdxName + + with comparator = UTF8Type + + and default_validation_class = UTF8Type + + and column_metadata = [{column_name: profileId, validation_class: UTF8Type, index_type: KEYS}];, +update column family SecondaryIndicesWithoutIdxName + + with column_metadata = + +[{column_name: profileId, validation_class: UTF8Type, index_type: KEYS}, + + {column_name: postedDate, validation_class: LongType}];, create column family 123 with comparator=UTF8Type and column_metadata=[{ column_name:world, validation_class:IntegerType, index_type:0, index_name:IdxName }, + { column_name:world2,
[12/12] git commit: Fix LCS bug with sstables containing only 1 row
Fix LCS bug with sstables containing only 1 row patch by slebresne; reviewed by jbellis for CASSANDRA-4411 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/02030dd6 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/02030dd6 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/02030dd6 Branch: refs/heads/trunk Commit: 02030dd658e6ca0cdb8987fd72e0454066e1b6d6 Parents: 9f32efa Author: Sylvain Lebresne sylv...@datastax.com Authored: Mon Jul 16 15:34:33 2012 +0200 Committer: Sylvain Lebresne sylv...@datastax.com Committed: Mon Jul 16 15:34:33 2012 +0200 -- CHANGES.txt |1 + src/java/org/apache/cassandra/dht/Bounds.java |5 - 2 files changed, 5 insertions(+), 1 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/02030dd6/CHANGES.txt -- diff --git a/CHANGES.txt b/CHANGES.txt index f9b45d6..a3ba123 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -11,6 +11,7 @@ * (cql3) delete component_index column on DROP TABLE call (CASSANDRA-4420) * change nanoTime() to currentTimeInMillis() in schema related code (CASSANDRA-4432) * add a token generation tool (CASSANDRA-3709) + * Fix LCS bug with sstable containing only 1 row (CASSANDRA-4411) Merged from 1.0: * allow dropping columns shadowed by not-yet-expired supercolumn or row tombstones in PrecompactedRow (CASSANDRA-4396) http://git-wip-us.apache.org/repos/asf/cassandra/blob/02030dd6/src/java/org/apache/cassandra/dht/Bounds.java -- diff --git a/src/java/org/apache/cassandra/dht/Bounds.java b/src/java/org/apache/cassandra/dht/Bounds.java index 0e4dbdf..b5633c8 100644 --- a/src/java/org/apache/cassandra/dht/Bounds.java +++ b/src/java/org/apache/cassandra/dht/Bounds.java @@ -47,7 +47,10 @@ public class BoundsT extends RingPosition extends AbstractBoundsT public boolean contains(T position) { -return Range.contains(left, right, position) || left.equals(position); +// Range.contains doesnt work correctly if left == right because for +// Range that means a wrapping range that select the whole ring. So we +// must explicitely handle this case +return left.equals(position) || (!left.equals(right) Range.contains(left, right, position)); } public PairAbstractBoundsT, AbstractBoundsT split(T position)
[9/12] git commit: Convert bootstrap state from boolean to 3-way value; detect and retry partial bootstraps on restart. Patch by brandonwilliams, reviewed by jbellis for CASSANDRA-4427
Convert bootstrap state from boolean to 3-way value; detect and retry partial bootstraps on restart. Patch by brandonwilliams, reviewed by jbellis for CASSANDRA-4427 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/ff1ba870 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/ff1ba870 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/ff1ba870 Branch: refs/heads/trunk Commit: ff1ba870726d9c0de24ff8dad3e23aa96465290e Parents: 4a002a5 Author: Brandon Williams brandonwilli...@apache.org Authored: Mon Jul 16 16:13:53 2012 -0500 Committer: Brandon Williams brandonwilli...@apache.org Committed: Mon Jul 16 16:18:55 2012 -0500 -- src/java/org/apache/cassandra/db/SystemTable.java | 27 --- .../apache/cassandra/service/StorageService.java | 25 + 2 files changed, 39 insertions(+), 13 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/ff1ba870/src/java/org/apache/cassandra/db/SystemTable.java -- diff --git a/src/java/org/apache/cassandra/db/SystemTable.java b/src/java/org/apache/cassandra/db/SystemTable.java index f673ecf..af07156 100644 --- a/src/java/org/apache/cassandra/db/SystemTable.java +++ b/src/java/org/apache/cassandra/db/SystemTable.java @@ -69,6 +69,13 @@ public class SystemTable private static final ByteBuffer CURRENT_LOCAL_NODE_ID_KEY = ByteBufferUtil.bytes(CurrentLocal); private static final ByteBuffer ALL_LOCAL_NODE_ID_KEY = ByteBufferUtil.bytes(Local); +public enum BootstrapState +{ +NEEDS_BOOTSTRAP, // ordered for boolean backward compatibility, false +COMPLETED, // true +IN_PROGRESS +} + private static DecoratedKey decorate(ByteBuffer key) { return StorageService.getPartitioner().decorateKey(key); @@ -352,7 +359,7 @@ public class SystemTable return generation; } -public static boolean isBootstrapped() +public static BootstrapState getBootstrapState() { Table table = Table.open(Table.SYSTEM_TABLE); QueryFilter filter = QueryFilter.getNamesFilter(decorate(BOOTSTRAP_KEY), @@ -360,16 +367,26 @@ public class SystemTable BOOTSTRAP); ColumnFamily cf = table.getColumnFamilyStore(STATUS_CF).getColumnFamily(filter); if (cf == null) -return false; +return BootstrapState.NEEDS_BOOTSTRAP; IColumn c = cf.getColumn(BOOTSTRAP); -return c.value().get(c.value().position()) == 1; +return BootstrapState.values()[c.value().get(c.value().position())]; +} + +public static boolean bootstrapComplete() +{ +return getBootstrapState() == BootstrapState.COMPLETED; +} + +public static boolean bootstrapInProgress() +{ +return getBootstrapState() == BootstrapState.IN_PROGRESS; } -public static void setBootstrapped(boolean isBootstrapped) +public static void setBootstrapState(BootstrapState state) { ColumnFamily cf = ColumnFamily.create(Table.SYSTEM_TABLE, STATUS_CF); cf.addColumn(new Column(BOOTSTRAP, -ByteBuffer.wrap(new byte[] { (byte) (isBootstrapped ? 1 : 0) }), +ByteBuffer.wrap(new byte[] { (byte) (state.ordinal()) }), FBUtilities.timestampMicros())); RowMutation rm = new RowMutation(Table.SYSTEM_TABLE, BOOTSTRAP_KEY); rm.add(cf); http://git-wip-us.apache.org/repos/asf/cassandra/blob/ff1ba870/src/java/org/apache/cassandra/service/StorageService.java -- diff --git a/src/java/org/apache/cassandra/service/StorageService.java b/src/java/org/apache/cassandra/service/StorageService.java index 9d9690a..28a3551 100644 --- a/src/java/org/apache/cassandra/service/StorageService.java +++ b/src/java/org/apache/cassandra/service/StorageService.java @@ -559,17 +559,26 @@ public class StorageService implements IEndpointStateChangeSubscriber, StorageSe if (DatabaseDescriptor.isAutoBootstrap() DatabaseDescriptor.getSeeds().contains(FBUtilities.getBroadcastAddress()) - !SystemTable.isBootstrapped()) + !SystemTable.bootstrapComplete()) logger_.info(This node will not auto bootstrap because it is configured to be a seed node.); InetAddress current = null; -// first startup is only chance to bootstrap +// we can bootstrap at startup, or if we detect a previous attempt that failed, which is to say: +// DD.isAutoBootstrap must be true AND: +// bootstrap is not recorded as complete,
[10/12] git commit: Minor edit to CQL3 doc
Minor edit to CQL3 doc Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/4a002a57 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/4a002a57 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/4a002a57 Branch: refs/heads/trunk Commit: 4a002a5792d36eef38952cc7921bf4af904e142a Parents: 35335ca Author: Sylvain Lebresne sylv...@datastax.com Authored: Mon Jul 16 19:24:03 2012 +0200 Committer: Sylvain Lebresne sylv...@datastax.com Committed: Mon Jul 16 19:24:03 2012 +0200 -- doc/cql3/CQL.textile |7 +-- 1 files changed, 5 insertions(+), 2 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/4a002a57/doc/cql3/CQL.textile -- diff --git a/doc/cql3/CQL.textile b/doc/cql3/CQL.textile index 2255e0b..e0f25da 100644 --- a/doc/cql3/CQL.textile +++ b/doc/cql3/CQL.textile @@ -596,8 +596,6 @@ The @where-clause@ specifies which rows must be queried. It is composed of rel Not all relations are allowed in a query. For instance, non-equal relations (where @IN@ is considered as an equal relation) on a partition key is only supported if the partitioner for the keyspace is an ordered one. Moreover, for a given partition key, the clustering keys induce an ordering of rows and relations on them is restricted to the relations that allow to select a *contiguous* (for the ordering) set of rows. For instance, given -When specifying relations, the @TOKEN@ function can be used on the @PARTITION KEY@ column to query. In that case, rows will be selected based on the token of their @PARTITION_KEY@ rather than on the value (note that the token of a key depends on the partitioner in use). - bc(sample). CREATE TABLE posts ( userid text, @@ -620,6 +618,11 @@ bc(sample). // Needs a blog_title to be set to select ranges of posted_at SELECT entry_title, content FROM posts WHERE userid='john doe' AND posted_at = 2012-01-01 AND posted_at 2012-01-31 +When specifying relations, the @TOKEN@ function can be used on the @PARTITION KEY@ column to query. In that case, rows will be selected based on the token of their @PARTITION_KEY@ rather than on the value (note that the token of a key depends on the partitioner in use, and that in particular the RandomPartitioner won't yeld a meaningful order). Example: + +bc(sample). +SELECT * FROM posts WHERE token(userid) token('tom') AND token(userid) token('bob') + h4(#selectOrderBy). @order-by@ The @ORDER BY@ option allows to select the order of the returned results. It takes as argument a list of column names along with the order for the column (@ASC@ for ascendant and @DESC@ for descendant, omitting the order being equivalent to @ASC@). Currently the possible orderings are limited (which depends on the table @CLUSTERING ORDER@:#createTableOptions):
[7/12] git commit: add #4399 to CHANGES
add #4399 to CHANGES Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/7c982717 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/7c982717 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/7c982717 Branch: refs/heads/trunk Commit: 7c982717a370f39907ce4ebe46359b1ea2cc9c3b Parents: ae13deb Author: Jonathan Ellis jbel...@apache.org Authored: Tue Jul 17 14:02:55 2012 -0500 Committer: Jonathan Ellis jbel...@apache.org Committed: Tue Jul 17 14:03:42 2012 -0500 -- CHANGES.txt |2 ++ 1 files changed, 2 insertions(+), 0 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/7c982717/CHANGES.txt -- diff --git a/CHANGES.txt b/CHANGES.txt index a525ad8..67b5410 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -1,4 +1,6 @@ 1.1.3 + * flush based on data size, not throughput; overwritten columns no + longer artificially inflate liveRatio (CASSANDRA-4399) * update default commitlog segment size to 32MB and total commitlog size to 32/1024 MB for 32/64 bit JVMs, respectively (CASSANDRA-4422) * avoid using global partitioner to estimate ranges in index sstables
[jira] [Commented] (CASSANDRA-4456) AssertionError in ColumnFamilyStore.getOverlappingSSTables() during repair
[ https://issues.apache.org/jira/browse/CASSANDRA-4456?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13420755#comment-13420755 ] Jonathan Ellis commented on CASSANDRA-4456: --- You need to wire VCC in to ValidationCompactionIterable, but otherwise +1. AssertionError in ColumnFamilyStore.getOverlappingSSTables() during repair -- Key: CASSANDRA-4456 URL: https://issues.apache.org/jira/browse/CASSANDRA-4456 Project: Cassandra Issue Type: Bug Components: Core Affects Versions: 1.1.2 Environment: Ubuntu 11.04 64-bit Reporter: Mike Heffner Assignee: Sylvain Lebresne Fix For: 1.1.3 Attachments: 4456.txt We have hit the following exception on several nodes while running repairs across our 1.1.2 ring. We've observed it happen on either the node executing the repair or a participating replica in the repair operation. The result in either case is that the repair hangs. ERROR [ValidationExecutor:9] 2012-07-21 01:54:03,019 AbstractCassandraDaemon.java (line 134) Exception in thread Thread[ValidationExecutor:9,1,main] java.lang.AssertionError at org.apache.cassandra.db.ColumnFamilyStore.getOverlappingSSTables(ColumnFamilyStore.java:874) at org.apache.cassandra.db.compaction.CompactionController.init(CompactionController.java:69) at org.apache.cassandra.db.compaction.CompactionManager$ValidationCompactionIterable.init(CompactionManager.java:834) at org.apache.cassandra.db.compaction.CompactionManager.doValidationCompaction(CompactionManager.java:698) at org.apache.cassandra.db.compaction.CompactionManager.access$600(CompactionManager.java:68) at org.apache.cassandra.db.compaction.CompactionManager$8.call(CompactionManager.java:438) at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303) at java.util.concurrent.FutureTask.run(FutureTask.java:138) at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) at java.lang.Thread.run(Thread.java:662) In building this ring we migrated sstables from an identical 0.8.8 ring by: 1. Creating the schema on our new 1.1.2 ring. 2. Rsyncing over sstables from 0.8.8 ring. 3. Renaming the sstables to match the directory and file naming structure of 1.1.x. 4. Ran nodetool refresh keyspace cf for each CF across each node. 5. Ran nodetool upgradesstables for each CF across each node. When those steps had completed, we began rolling repairs. Not all of the repair operations have hit the exception -- some of the repairs have completed successfully. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa For more information on JIRA, see: http://www.atlassian.com/software/jira
git commit: fix merge from 1.1 to use UUID instead of Integer for CF identifier.
Updated Branches: refs/heads/trunk 34cd6912b - 655a76fac fix merge from 1.1 to use UUID instead of Integer for CF identifier. Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/655a76fa Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/655a76fa Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/655a76fa Branch: refs/heads/trunk Commit: 655a76face34c18370d49c4fb0a1232395187ea1 Parents: 34cd691 Author: Pavel Yaskevich xe...@apache.org Authored: Mon Jul 23 19:33:45 2012 +0300 Committer: Pavel Yaskevich xe...@apache.org Committed: Mon Jul 23 19:33:45 2012 +0300 -- .../org/apache/cassandra/config/CFMetaData.java|2 +- 1 files changed, 1 insertions(+), 1 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/655a76fa/src/java/org/apache/cassandra/config/CFMetaData.java -- diff --git a/src/java/org/apache/cassandra/config/CFMetaData.java b/src/java/org/apache/cassandra/config/CFMetaData.java index a54b4ff..3cf41d7 100644 --- a/src/java/org/apache/cassandra/config/CFMetaData.java +++ b/src/java/org/apache/cassandra/config/CFMetaData.java @@ -886,7 +886,7 @@ public final class CFMetaData public void addDefaultIndexNames() throws ConfigurationException { // if this is ColumnFamily update we need to add previously defined index names to the existing columns first -Integer cfId = Schema.instance.getId(ksName, cfName); +UUID cfId = Schema.instance.getId(ksName, cfName); if (cfId != null) { CFMetaData cfm = Schema.instance.getCFMetaData(cfId);
[jira] [Commented] (CASSANDRA-4447) enable jamm for OpenJDK = 1.6.0.23
[ https://issues.apache.org/jira/browse/CASSANDRA-4447?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13420771#comment-13420771 ] Brandon Williams commented on CASSANDRA-4447: - Can you attach this diff to the ticket? enable jamm for OpenJDK = 1.6.0.23 --- Key: CASSANDRA-4447 URL: https://issues.apache.org/jira/browse/CASSANDRA-4447 Project: Cassandra Issue Type: Improvement Components: Packaging Environment: openjdk Reporter: Ilya Shipitsin Priority: Trivial Fix For: 1.1.3 we tested jamm with OpenJDK, it works well starting at 1.6.0.23, so I suggest --- cassandra-env.sh.dist 2012-07-19 12:24:44.938886154 +0600 +++ cassandra-env.sh2012-07-19 12:28:34.913886847 +0600 @@ -119,8 +119,10 @@ # add the jamm javaagent check_openjdk=`${JAVA:-java} -version 21 | awk '{if (NR == 2) {print $1}}'` -if [ $check_openjdk != OpenJDK ] +check_openjdk_is_good_for_jamm=`${JAVA:-java} -version 21 | awk -F _|\ '/1\.6\.0/ $3 23 {print bad }'` +if [ $check_openjdk = OpenJDK ] [ $check_openjdk_is_good_for_jamm = bad ] then +else JVM_OPTS=$JVM_OPTS -javaagent:$CASSANDRA_HOME/lib/jamm-0.2.5.jar fi -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa For more information on JIRA, see: http://www.atlassian.com/software/jira
[2/3] git commit: Fix startup script return code. Patch by paul cannon, reviewed by brandonwilliams for CASSANDRA-4271
Fix startup script return code. Patch by paul cannon, reviewed by brandonwilliams for CASSANDRA-4271 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/29379a52 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/29379a52 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/29379a52 Branch: refs/heads/trunk Commit: 29379a525420147203777a403f7675232f927a53 Parents: ff64c5d Author: Brandon Williams brandonwilli...@apache.org Authored: Mon Jul 23 11:44:52 2012 -0500 Committer: Brandon Williams brandonwilli...@apache.org Committed: Mon Jul 23 11:44:52 2012 -0500 -- bin/cassandra |1 + 1 files changed, 1 insertions(+), 0 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/29379a52/bin/cassandra -- diff --git a/bin/cassandra b/bin/cassandra index 638e41c..f20fc76 100755 --- a/bin/cassandra +++ b/bin/cassandra @@ -139,6 +139,7 @@ launch_service() else exec $NUMACTL $JAVA $JVM_OPTS $cassandra_parms -cp $CLASSPATH $props $class - [ ! -z $pidpath ] printf %d $! $pidpath +true fi return $?
[1/3] git commit: Merge branch 'cassandra-1.1' into trunk
Updated Branches: refs/heads/cassandra-1.1 ff64c5d11 - 29379a525 refs/heads/trunk 655a76fac - d6b7dd60f Merge branch 'cassandra-1.1' into trunk Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/d6b7dd60 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/d6b7dd60 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/d6b7dd60 Branch: refs/heads/trunk Commit: d6b7dd60fe826f2d66f8f38e0e44c4857a6e967d Parents: 655a76f 29379a5 Author: Brandon Williams brandonwilli...@apache.org Authored: Mon Jul 23 11:46:29 2012 -0500 Committer: Brandon Williams brandonwilli...@apache.org Committed: Mon Jul 23 11:46:29 2012 -0500 -- bin/cassandra |1 + 1 files changed, 1 insertions(+), 0 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/d6b7dd60/bin/cassandra --
[3/3] git commit: Fix startup script return code. Patch by paul cannon, reviewed by brandonwilliams for CASSANDRA-4271
Fix startup script return code. Patch by paul cannon, reviewed by brandonwilliams for CASSANDRA-4271 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/29379a52 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/29379a52 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/29379a52 Branch: refs/heads/cassandra-1.1 Commit: 29379a525420147203777a403f7675232f927a53 Parents: ff64c5d Author: Brandon Williams brandonwilli...@apache.org Authored: Mon Jul 23 11:44:52 2012 -0500 Committer: Brandon Williams brandonwilli...@apache.org Committed: Mon Jul 23 11:44:52 2012 -0500 -- bin/cassandra |1 + 1 files changed, 1 insertions(+), 0 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/29379a52/bin/cassandra -- diff --git a/bin/cassandra b/bin/cassandra index 638e41c..f20fc76 100755 --- a/bin/cassandra +++ b/bin/cassandra @@ -139,6 +139,7 @@ launch_service() else exec $NUMACTL $JAVA $JVM_OPTS $cassandra_parms -cp $CLASSPATH $props $class - [ ! -z $pidpath ] printf %d $! $pidpath +true fi return $?
[jira] [Updated] (CASSANDRA-4240) Only check the size of indexed column values when they are of type KEYS
[ https://issues.apache.org/jira/browse/CASSANDRA-4240?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Alex Liu updated CASSANDRA-4240: Attachment: cassandra-1.0.8-CASSANDRA-4240-patch5.txt attach re-format the patch and include unit test Only check the size of indexed column values when they are of type KEYS --- Key: CASSANDRA-4240 URL: https://issues.apache.org/jira/browse/CASSANDRA-4240 Project: Cassandra Issue Type: Improvement Affects Versions: 1.0.0 Reporter: Joaquin Casares Priority: Minor Labels: datastax_qa Attachments: CASSANDRA-4240.patch, CASSANDRA-4240.patch1, cassandra-1.0.8-CASSANDRA-4240-patch2.txt, cassandra-1.0.8-CASSANDRA-4240-patch3.txt, cassandra-1.0.8-CASSANDRA-4240-patch4.txt, cassandra-1.0.8-CASSANDRA-4240-patch5.txt, cassandra-1.0.8-CASSANDRA-4240.txt https://github.com/apache/cassandra/blob/cassandra-1.0.8/src/java/org/apache/cassandra/thrift/ThriftValidation.java#L431 That line states that: Indexed column values cannot be larger than 64K. But in some cases we would want the column values to be able to be larger than 64k, specifically if the index_type is not of type KEYS. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (CASSANDRA-4439) Updating column family using cassandra-cli results in Cannot modify index name
[ https://issues.apache.org/jira/browse/CASSANDRA-4439?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13420787#comment-13420787 ] Hudson commented on CASSANDRA-4439: --- Integrated in Cassandra #1768 (See [https://builds.apache.org/job/Cassandra/1768/]) fixes small bug introduced by CASSANDRA-4439 (Revision e220efa2a87c8232d87bdca9f2a02cfcef9f1a4c) Result = ABORTED xedin : Files : * src/java/org/apache/cassandra/config/CFMetaData.java Updating column family using cassandra-cli results in Cannot modify index name Key: CASSANDRA-4439 URL: https://issues.apache.org/jira/browse/CASSANDRA-4439 Project: Cassandra Issue Type: Bug Components: Core, Tools Affects Versions: 1.1.2 Environment: cassandra 1.1.2, RHEL6.3, running under java-1.6.0-sun Reporter: Alex Schultz Assignee: Pavel Yaskevich Priority: Minor Labels: cli, schema Fix For: 1.1.3 Attachments: CASSANDRA-4439.patch Using cassandra-cli the following update to a column family worked in 1.1.0: {code} create keyspace testing; use testing; create column family Album with comparator = UTF8Type and default_validation_class = UTF8Type and column_metadata = [ {column_name: profileId, validation_class: UTF8Type, index_type: KEYS} ]; update column family Album and column_metadata = [ {column_name: profileId, validation_class: UTF8Type, index_type: KEYS}, {column_name: postedDate, validation_class: LongType} ]; {code} After upgrading to 1.1.2, the update statement fails with the following exception in system.log: {quote} ERROR [Thrift:16] 2012-07-13 14:51:54,558 CustomTThreadPoolServer.java (line 204) Error occurred during processing of message. java.lang.RuntimeException: java.util.concurrent.ExecutionException: java.io.IOException: org.apache.cassandra.config.ConfigurationException: Cannot modify index name at org.apache.cassandra.utils.FBUtilities.waitOnFuture(FBUtilities.java:373) at org.apache.cassandra.service.MigrationManager.announce(MigrationManager.java:188) at org.apache.cassandra.service.MigrationManager.announceColumnFamilyUpdate(MigrationManager.java:161) at org.apache.cassandra.thrift.CassandraServer.system_update_column_family(CassandraServer.java:1063) at org.apache.cassandra.thrift.Cassandra$Processor$system_update_column_family.getResult(Cassandra.java:3520) at org.apache.cassandra.thrift.Cassandra$Processor$system_update_column_family.getResult(Cassandra.java:3508) at org.apache.thrift.ProcessFunction.process(ProcessFunction.java:32) at org.apache.thrift.TBaseProcessor.process(TBaseProcessor.java:34) at org.apache.cassandra.thrift.CustomTThreadPoolServer$WorkerProcess.run(CustomTThreadPoolServer.java:186) at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) at java.lang.Thread.run(Thread.java:662) Caused by: java.util.concurrent.ExecutionException: java.io.IOException: org.apache.cassandra.config.ConfigurationException: Cannot modify index name at java.util.concurrent.FutureTask$Sync.innerGet(FutureTask.java:222) at java.util.concurrent.FutureTask.get(FutureTask.java:83) at org.apache.cassandra.utils.FBUtilities.waitOnFuture(FBUtilities.java:369) ... 11 more Caused by: java.io.IOException: org.apache.cassandra.config.ConfigurationException: Cannot modify index name at org.apache.cassandra.config.CFMetaData.reload(CFMetaData.java:676) at org.apache.cassandra.db.DefsTable.updateColumnFamily(DefsTable.java:463) at org.apache.cassandra.db.DefsTable.mergeColumnFamilies(DefsTable.java:407) at org.apache.cassandra.db.DefsTable.mergeSchema(DefsTable.java:271) at org.apache.cassandra.service.MigrationManager$1.call(MigrationManager.java:211) at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303) at java.util.concurrent.FutureTask.run(FutureTask.java:138) ... 3 more Caused by: org.apache.cassandra.config.ConfigurationException: Cannot modify index name at org.apache.cassandra.config.ColumnDefinition.apply(ColumnDefinition.java:214) at org.apache.cassandra.config.CFMetaData.apply(CFMetaData.java:758) at org.apache.cassandra.config.CFMetaData.reload(CFMetaData.java:672) ... 9 more ERROR [MigrationStage:1] 2012-07-13 14:51:54,561 AbstractCassandraDaemon.java (line 134) Exception in thread Thread[MigrationStage:1,5,main] java.io.IOException:
[jira] [Commented] (CASSANDRA-3636) cassandra 1.0.x breakes APT on debian OpenVZ
[ https://issues.apache.org/jira/browse/CASSANDRA-3636?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13420786#comment-13420786 ] Hudson commented on CASSANDRA-3636: --- Integrated in Cassandra #1768 (See [https://builds.apache.org/job/Cassandra/1768/]) merge CASSANDRA-3636 from 1.0 to 1.1 cassandra 1.0.x breakes APT on debian OpenVZ (Revision ff64c5d11e9e66dfa42a1ca72572a65fb7480f37) Result = ABORTED dbrosius : Files : * debian/cassandra.postinst cassandra 1.0.x breakes APT on debian OpenVZ Key: CASSANDRA-3636 URL: https://issues.apache.org/jira/browse/CASSANDRA-3636 Project: Cassandra Issue Type: Bug Components: Packaging Affects Versions: 1.0.0 Environment: Debian Linux (stable), OpenVZ container Reporter: Zenek Kraweznik Assignee: paul cannon Priority: Minor Fix For: 1.0.11, 1.1.1 Attachments: 3636.patch.txt During upgrade from 1.0.6 {code}Setting up cassandra (1.0.6) ... *error: permission denied on key 'vm.max_map_count'* dpkg: error processing cassandra (--configure): subprocess installed post-installation script returned error exit status 255 Errors were encountered while processing: cassandra {code} -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Resolved] (CASSANDRA-3636) cassandra 1.0.x breakes APT on debian OpenVZ
[ https://issues.apache.org/jira/browse/CASSANDRA-3636?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Brandon Williams resolved CASSANDRA-3636. - Resolution: Fixed bq. The trunk version of debian/cassandra.postinst doesn't contain the changes from Paul's fix in commit 48438ffc61bce2396fa2eac2f88fa66a6e6a69cd. Yes it does. cassandra 1.0.x breakes APT on debian OpenVZ Key: CASSANDRA-3636 URL: https://issues.apache.org/jira/browse/CASSANDRA-3636 Project: Cassandra Issue Type: Bug Components: Packaging Affects Versions: 1.0.0 Environment: Debian Linux (stable), OpenVZ container Reporter: Zenek Kraweznik Assignee: paul cannon Priority: Minor Fix For: 1.0.11, 1.1.1 Attachments: 3636.patch.txt During upgrade from 1.0.6 {code}Setting up cassandra (1.0.6) ... *error: permission denied on key 'vm.max_map_count'* dpkg: error processing cassandra (--configure): subprocess installed post-installation script returned error exit status 255 Errors were encountered while processing: cassandra {code} -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa For more information on JIRA, see: http://www.atlassian.com/software/jira
git commit: Fix assertion error in getOverlappingSSTable during repair
Updated Branches: refs/heads/cassandra-1.1 29379a525 - aba1f16be Fix assertion error in getOverlappingSSTable during repair patch by slebresne; reviewed by jbellis for CASSANDRA-4456 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/aba1f16b Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/aba1f16b Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/aba1f16b Branch: refs/heads/cassandra-1.1 Commit: aba1f16be8bf45b3efefe4a42d604dea155b2595 Parents: 29379a5 Author: Sylvain Lebresne sylv...@datastax.com Authored: Mon Jul 23 17:25:49 2012 +0200 Committer: Sylvain Lebresne sylv...@datastax.com Committed: Mon Jul 23 19:17:36 2012 +0200 -- CHANGES.txt|1 + .../cassandra/db/compaction/CompactionManager.java | 27 ++- 2 files changed, 27 insertions(+), 1 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/aba1f16b/CHANGES.txt -- diff --git a/CHANGES.txt b/CHANGES.txt index b2a9faf..0885387 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -15,6 +15,7 @@ * add a token generation tool (CASSANDRA-3709) * Fix LCS bug with sstable containing only 1 row (CASSANDRA-4411) * fix Can't Modify Index Name problem on CF update (CASSANDRA-4439) + * Fix assertion error in getOverlappingSSTables during repair (CASSANDRA-4456) Merged from 1.0: * allow dropping columns shadowed by not-yet-expired supercolumn or row tombstones in PrecompactedRow (CASSANDRA-4396) http://git-wip-us.apache.org/repos/asf/cassandra/blob/aba1f16b/src/java/org/apache/cassandra/db/compaction/CompactionManager.java -- diff --git a/src/java/org/apache/cassandra/db/compaction/CompactionManager.java b/src/java/org/apache/cassandra/db/compaction/CompactionManager.java index 3c50a09..4b39280 100644 --- a/src/java/org/apache/cassandra/db/compaction/CompactionManager.java +++ b/src/java/org/apache/cassandra/db/compaction/CompactionManager.java @@ -55,6 +55,7 @@ import org.slf4j.LoggerFactory; import com.google.common.base.Predicates; import com.google.common.collect.Iterators; +import com.google.common.collect.ImmutableSet; /** * A singleton which manages a private executor of ongoing compactions. A readwrite lock @@ -833,7 +834,31 @@ public class CompactionManager implements CompactionManagerMBean { super(OperationType.VALIDATION, cfs.getCompactionStrategy().getScanners(sstables, range), - new CompactionController(cfs, sstables, getDefaultGcBefore(cfs), true)); + new ValidationCompactionController(cfs, sstables)); +} +} + +/* + * Controller for validation compaction that never purges. + * Note that we should not call cfs.getOverlappingSSTables on the provided + * sstables because those sstables are not guaranteed to be active sstables + * (since we can run repair on a snapshot). + */ +private static class ValidationCompactionController extends CompactionController +{ +public ValidationCompactionController(ColumnFamilyStore cfs, CollectionSSTableReader sstables) +{ +super(cfs, + Integer.MAX_VALUE, + true, + null, + cfs.getCompactionStrategy().isKeyExistenceExpensive(ImmutableSet.copyOf(sstables))); +} + +@Override +public boolean shouldPurge(DecoratedKey key) +{ +return false; } }
[1/2] git commit: Merge branch 'cassandra-1.1' into trunk
Updated Branches: refs/heads/trunk d6b7dd60f - 49f297417 Merge branch 'cassandra-1.1' into trunk Conflicts: src/java/org/apache/cassandra/db/compaction/CompactionManager.java Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/49f29741 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/49f29741 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/49f29741 Branch: refs/heads/trunk Commit: 49f297417d121354851faf7a820e56243e49f15c Parents: d6b7dd6 aba1f16 Author: Sylvain Lebresne sylv...@datastax.com Authored: Mon Jul 23 19:21:12 2012 +0200 Committer: Sylvain Lebresne sylv...@datastax.com Committed: Mon Jul 23 19:21:12 2012 +0200 -- CHANGES.txt|1 + .../cassandra/db/compaction/CompactionManager.java | 24 ++- 2 files changed, 24 insertions(+), 1 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/49f29741/CHANGES.txt -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/49f29741/src/java/org/apache/cassandra/db/compaction/CompactionManager.java -- diff --cc src/java/org/apache/cassandra/db/compaction/CompactionManager.java index 6a1c850,4b39280..c9a3823 --- a/src/java/org/apache/cassandra/db/compaction/CompactionManager.java +++ b/src/java/org/apache/cassandra/db/compaction/CompactionManager.java @@@ -844,7 -834,31 +844,29 @@@ public class CompactionManager implemen { super(OperationType.VALIDATION, cfs.getCompactionStrategy().getScanners(sstables, range), - new CompactionController(cfs, sstables, getDefaultGcBefore(cfs), true)); + new ValidationCompactionController(cfs, sstables)); + } + } + + /* + * Controller for validation compaction that never purges. + * Note that we should not call cfs.getOverlappingSSTables on the provided + * sstables because those sstables are not guaranteed to be active sstables + * (since we can run repair on a snapshot). + */ + private static class ValidationCompactionController extends CompactionController + { + public ValidationCompactionController(ColumnFamilyStore cfs, CollectionSSTableReader sstables) + { + super(cfs, + Integer.MAX_VALUE, - true, - null, - cfs.getCompactionStrategy().isKeyExistenceExpensive(ImmutableSet.copyOf(sstables))); ++ null); + } + + @Override + public boolean shouldPurge(DecoratedKey key) + { + return false; } }
[2/2] git commit: Fix assertion error in getOverlappingSSTable during repair
Fix assertion error in getOverlappingSSTable during repair patch by slebresne; reviewed by jbellis for CASSANDRA-4456 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/aba1f16b Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/aba1f16b Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/aba1f16b Branch: refs/heads/trunk Commit: aba1f16be8bf45b3efefe4a42d604dea155b2595 Parents: 29379a5 Author: Sylvain Lebresne sylv...@datastax.com Authored: Mon Jul 23 17:25:49 2012 +0200 Committer: Sylvain Lebresne sylv...@datastax.com Committed: Mon Jul 23 19:17:36 2012 +0200 -- CHANGES.txt|1 + .../cassandra/db/compaction/CompactionManager.java | 27 ++- 2 files changed, 27 insertions(+), 1 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/aba1f16b/CHANGES.txt -- diff --git a/CHANGES.txt b/CHANGES.txt index b2a9faf..0885387 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -15,6 +15,7 @@ * add a token generation tool (CASSANDRA-3709) * Fix LCS bug with sstable containing only 1 row (CASSANDRA-4411) * fix Can't Modify Index Name problem on CF update (CASSANDRA-4439) + * Fix assertion error in getOverlappingSSTables during repair (CASSANDRA-4456) Merged from 1.0: * allow dropping columns shadowed by not-yet-expired supercolumn or row tombstones in PrecompactedRow (CASSANDRA-4396) http://git-wip-us.apache.org/repos/asf/cassandra/blob/aba1f16b/src/java/org/apache/cassandra/db/compaction/CompactionManager.java -- diff --git a/src/java/org/apache/cassandra/db/compaction/CompactionManager.java b/src/java/org/apache/cassandra/db/compaction/CompactionManager.java index 3c50a09..4b39280 100644 --- a/src/java/org/apache/cassandra/db/compaction/CompactionManager.java +++ b/src/java/org/apache/cassandra/db/compaction/CompactionManager.java @@ -55,6 +55,7 @@ import org.slf4j.LoggerFactory; import com.google.common.base.Predicates; import com.google.common.collect.Iterators; +import com.google.common.collect.ImmutableSet; /** * A singleton which manages a private executor of ongoing compactions. A readwrite lock @@ -833,7 +834,31 @@ public class CompactionManager implements CompactionManagerMBean { super(OperationType.VALIDATION, cfs.getCompactionStrategy().getScanners(sstables, range), - new CompactionController(cfs, sstables, getDefaultGcBefore(cfs), true)); + new ValidationCompactionController(cfs, sstables)); +} +} + +/* + * Controller for validation compaction that never purges. + * Note that we should not call cfs.getOverlappingSSTables on the provided + * sstables because those sstables are not guaranteed to be active sstables + * (since we can run repair on a snapshot). + */ +private static class ValidationCompactionController extends CompactionController +{ +public ValidationCompactionController(ColumnFamilyStore cfs, CollectionSSTableReader sstables) +{ +super(cfs, + Integer.MAX_VALUE, + true, + null, + cfs.getCompactionStrategy().isKeyExistenceExpensive(ImmutableSet.copyOf(sstables))); +} + +@Override +public boolean shouldPurge(DecoratedKey key) +{ +return false; } }
[jira] [Commented] (CASSANDRA-4411) Assertion with LCS compaction
[ https://issues.apache.org/jira/browse/CASSANDRA-4411?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13420838#comment-13420838 ] Jonathan Ellis commented on CASSANDRA-4411: --- The former. Assertion with LCS compaction - Key: CASSANDRA-4411 URL: https://issues.apache.org/jira/browse/CASSANDRA-4411 Project: Cassandra Issue Type: Bug Components: Core Affects Versions: 1.1.2 Reporter: Anton Winter Assignee: Sylvain Lebresne Fix For: 1.1.3 Attachments: 0001-Add-debugging-info-for-LCS.txt, 4411-followup.txt, 4411.txt, assertion-w-more-debugging-info-omid.log, assertion.moreinfo.system.log, system.log As instructed in CASSANDRA-4321 I have raised this issue as a continuation of that issue as it appears the problem still exists. I have repeatedly run sstablescrub across all my nodes after the 1.1.2 upgrade until sstablescrub shows no errors. The exceptions described in CASSANDRA-4321 do not occur as frequently now but the integrity check still throws exceptions on a number of nodes. Once those exceptions occur compactionstats shows a large number of pending tasks with no progression afterwards. {code} ERROR [CompactionExecutor:150] 2012-07-05 04:26:15,570 AbstractCassandraDaemon.java (line 134) Exception in thread Thread[CompactionExecutor:150,1,main] java.lang.AssertionError at org.apache.cassandra.db.compaction.LeveledManifest.promote(LeveledManifest.java:214) at org.apache.cassandra.db.compaction.LeveledCompactionStrategy.handleNotification(LeveledCompactionStrategy.java:158) at org.apache.cassandra.db.DataTracker.notifySSTablesChanged(DataTracker.java:531) at org.apache.cassandra.db.DataTracker.replaceCompactedSSTables(DataTracker.java:254) at org.apache.cassandra.db.ColumnFamilyStore.replaceCompactedSSTables(ColumnFamilyStore.java:978) at org.apache.cassandra.db.compaction.CompactionTask.execute(CompactionTask.java:200) at org.apache.cassandra.db.compaction.LeveledCompactionTask.execute(LeveledCompactionTask.java:50) at org.apache.cassandra.db.compaction.CompactionManager$1.runMayThrow(CompactionManager.java:150) at org.apache.cassandra.utils.WrappedRunnable.run(WrappedRunnable.java:30) at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471) at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334) at java.util.concurrent.FutureTask.run(FutureTask.java:166) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603) at java.lang.Thread.run(Thread.java:636) {code} -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Created] (CASSANDRA-4459) pig driver casts ints as bytearray
Cathy Daw created CASSANDRA-4459: Summary: pig driver casts ints as bytearray Key: CASSANDRA-4459 URL: https://issues.apache.org/jira/browse/CASSANDRA-4459 Project: Cassandra Issue Type: Bug Environment: C* 1.1.2 embedded in DSE Reporter: Cathy Daw Assignee: Brandon Williams we seem to be auto-mapping C* int columns to bytearray in Pig, and farther down I can't seem to find a way to cast that to int and do an average. {code} grunt cassandra_users = LOAD 'cassandra://cqldb/users' USING CassandraStorage(); grunt dump cassandra_users; (bobhatter,(act,22),(fname,bob),(gender,m),(highSchool,Cal High),(lname,hatter),(sat,500),(state,CA),{}) (alicesmith,(act,27),(fname,alice),(gender,f),(highSchool,Tuscon High),(lname,smith),(sat,650),(state,AZ),{}) // notice sat and act columns are bytearray values grunt describe cassandra_users; cassandra_users: {key: chararray,act: (name: chararray,value: bytearray),fname: (name: chararray,value: chararray), gender: (name: chararray,value: chararray),highSchool: (name: chararray,value: chararray),lname: (name: chararray,value: chararray), sat: (name: chararray,value: bytearray),state: (name: chararray,value: chararray),columns: {(name: chararray,value: chararray)}} grunt users_by_state = GROUP cassandra_users BY state; grunt dump users_by_state; ((state,AX),{(aoakley,(highSchool,Phoenix High),(lname,Oakley),state,(act,22),(sat,500),(gender,m),(fname,Anne),{})}) ((state,AZ),{(gjames,(highSchool,Tuscon High),(lname,James),state,(act,24),(sat,650),(gender,f),(fname,Geronomo),{})}) ((state,CA),{(philton,(highSchool,Beverly High),(lname,Hilton),state,(act,37),(sat,220),(gender,m),(fname,Paris),{}),(jbrown,(highSchool,Cal High),(lname,Brown),state,(act,20),(sat,700),(gender,m),(fname,Jerry),{})}) // Error - use explicit cast grunt user_avg = FOREACH users_by_state GENERATE cassandra_users.state, AVG(cassandra_users.sat); grunt dump user_avg; 2012-07-22 17:15:04,361 [main] ERROR org.apache.pig.tools.grunt.Grunt - ERROR 1045: Could not infer the matching function for org.apache.pig.builtin.AVG as multiple or none of them fit. Please use an explicit cast. // Unable to cast as int grunt user_avg = FOREACH users_by_state GENERATE cassandra_users.state, AVG((int)cassandra_users.sat); grunt dump user_avg; 2012-07-22 17:07:39,217 [main] ERROR org.apache.pig.tools.grunt.Grunt - ERROR 1052: Cannot cast bag with schema sat: bag({name: chararray,value: bytearray}) to int {code} *Seed data in CQL* {code} CREATE KEYSPACE cqldb with strategy_class = 'org.apache.cassandra.locator.SimpleStrategy' and strategy_options:replication_factor=3; use cqldb; CREATE COLUMNFAMILY users ( KEY text PRIMARY KEY, fname text, lname text, gender varchar, act int, sat int, highSchool text, state varchar); insert into users (KEY, fname, lname, gender, act, sat, highSchool, state) values (gjames, Geronomo, James, f, 24, 650, 'Tuscon High', 'AZ'); insert into users (KEY, fname, lname, gender, act, sat, highSchool, state) values (aoakley, Anne, Oakley, m , 22, 500, 'Phoenix High', 'AX'); insert into users (KEY, fname, lname, gender, act, sat, highSchool, state) values (jbrown, Jerry, Brown, m , 20, 700, 'Cal High', 'CA'); insert into users (KEY, fname, lname, gender, act, sat, highSchool, state) values (philton, Paris, Hilton, m , 37, 220, 'Beverly High', 'CA'); select * from users; {code} -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Updated] (CASSANDRA-4455) Nodetool fail to setcompactionthreshold
[ https://issues.apache.org/jira/browse/CASSANDRA-4455?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Jonathan Ellis updated CASSANDRA-4455: -- Reviewer: xedin Fix Version/s: 1.1.4 Assignee: Aleksey Yeschenko Nodetool fail to setcompactionthreshold --- Key: CASSANDRA-4455 URL: https://issues.apache.org/jira/browse/CASSANDRA-4455 Project: Cassandra Issue Type: Bug Components: Tools Affects Versions: 1.0.3 Environment: Cassandra 1.0.3 Reporter: Jason Tang Assignee: Aleksey Yeschenko Priority: Minor Fix For: 1.1.4 first change compaction threshold from 4/32 to 2/2 /opt/dve/cassandra/bin/nodetool -h 127.0.0.1 -p 7199 setcompactionthreshold ks cf 2 2 It successful /opt/dve/cassandra/bin/nodetool -h 127.0.0.1 -p 7199 setcompactionthreshold ks cf 4 32 Exception in thread main java.lang.RuntimeException: The min_compaction_threshold cannot be larger than the max. at org.apache.cassandra.db.ColumnFamilyStore.setMinimumCompactionThreshold(ColumnFamilyStore.java:1697) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at com.sun.jmx.mbeanserver.StandardMBeanIntrospector.invokeM2(StandardMBeanIntrospector.java:93) at com.sun.jmx.mbeanserver.StandardMBeanIntrospector.invokeM2(StandardMBeanIntrospector.java:27) at com.sun.jmx.mbeanserver.MBeanIntrospector.invokeSetter(MBeanIntrospector.java:238) at com.sun.jmx.mbeanserver.PerInterface.setAttribute(PerInterface.java:84) at com.sun.jmx.mbeanserver.MBeanSupport.setAttribute(MBeanSupport.java:240) at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.setAttribute(DefaultMBeanServerInterceptor.java:762) at com.sun.jmx.mbeanserver.JmxMBeanServer.setAttribute(JmxMBeanServer.java:699) at javax.management.remote.rmi.RMIConnectionImpl.doOperation(RMIConnectionImpl.java:1450) at javax.management.remote.rmi.RMIConnectionImpl.access$200(RMIConnectionImpl.java:72) at javax.management.remote.rmi.RMIConnectionImpl$PrivilegedOperation.run(RMIConnectionImpl.java:1265) at javax.management.remote.rmi.RMIConnectionImpl.doPrivilegedOperation(RMIConnectionImpl.java:1360) at javax.management.remote.rmi.RMIConnectionImpl.setAttribute(RMIConnectionImpl.java:683) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:303) at sun.rmi.transport.Transport$1.run(Transport.java:159) at java.security.AccessController.doPrivileged(Native Method) at sun.rmi.transport.Transport.serviceCall(Transport.java:155) at sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:535) at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:790) at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:649) at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) at java.lang.Thread.run(Thread.java:662) The tool first try to set min then max, so it failed, since orign max is smaller the new min. The work around is: /opt/dve/cassandra/bin/nodetool -h 127.0.0.1 -p 7199 setcompactionthreshold ks cf 2 32 /opt/dve/cassandra/bin/nodetool -h 127.0.0.1 -p 7199 setcompactionthreshold ks cf 4 32 -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (CASSANDRA-4295) move checkaccess into statement.prepare
[ https://issues.apache.org/jira/browse/CASSANDRA-4295?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13420874#comment-13420874 ] Jonathan Ellis commented on CASSANDRA-4295: --- Not a fan of splitting the API up. Feels like we're shoving implementation up to the client level. Not a fan of saying each provider should reimplement caching internally, either, since by doing it once at the server level we can do a better job of QA and DRY. move checkaccess into statement.prepare --- Key: CASSANDRA-4295 URL: https://issues.apache.org/jira/browse/CASSANDRA-4295 Project: Cassandra Issue Type: Improvement Components: API Affects Versions: 1.1.0 Reporter: Jonathan Ellis Assignee: Pavel Yaskevich Priority: Minor Fix For: 1.2 Attachments: CASSANDRA-4295.patch there's no need to redo this every execution since the schema, tables, and users involved should all be immutable -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Updated] (CASSANDRA-4459) pig driver casts ints as bytearray
[ https://issues.apache.org/jira/browse/CASSANDRA-4459?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Brandon Williams updated CASSANDRA-4459: Attachment: 4459.txt We actually have tests in examples/pig/test that explicitly cover this, but we populate that data with the cli which uses IntegerType, but cql uses Int32Type. Trivial patch to cast both to pig's integer type. pig driver casts ints as bytearray -- Key: CASSANDRA-4459 URL: https://issues.apache.org/jira/browse/CASSANDRA-4459 Project: Cassandra Issue Type: Bug Environment: C* 1.1.2 embedded in DSE Reporter: Cathy Daw Assignee: Brandon Williams Fix For: 1.1.3 Attachments: 4459.txt we seem to be auto-mapping C* int columns to bytearray in Pig, and farther down I can't seem to find a way to cast that to int and do an average. {code} grunt cassandra_users = LOAD 'cassandra://cqldb/users' USING CassandraStorage(); grunt dump cassandra_users; (bobhatter,(act,22),(fname,bob),(gender,m),(highSchool,Cal High),(lname,hatter),(sat,500),(state,CA),{}) (alicesmith,(act,27),(fname,alice),(gender,f),(highSchool,Tuscon High),(lname,smith),(sat,650),(state,AZ),{}) // notice sat and act columns are bytearray values grunt describe cassandra_users; cassandra_users: {key: chararray,act: (name: chararray,value: bytearray),fname: (name: chararray,value: chararray), gender: (name: chararray,value: chararray),highSchool: (name: chararray,value: chararray),lname: (name: chararray,value: chararray), sat: (name: chararray,value: bytearray),state: (name: chararray,value: chararray),columns: {(name: chararray,value: chararray)}} grunt users_by_state = GROUP cassandra_users BY state; grunt dump users_by_state; ((state,AX),{(aoakley,(highSchool,Phoenix High),(lname,Oakley),state,(act,22),(sat,500),(gender,m),(fname,Anne),{})}) ((state,AZ),{(gjames,(highSchool,Tuscon High),(lname,James),state,(act,24),(sat,650),(gender,f),(fname,Geronomo),{})}) ((state,CA),{(philton,(highSchool,Beverly High),(lname,Hilton),state,(act,37),(sat,220),(gender,m),(fname,Paris),{}),(jbrown,(highSchool,Cal High),(lname,Brown),state,(act,20),(sat,700),(gender,m),(fname,Jerry),{})}) // Error - use explicit cast grunt user_avg = FOREACH users_by_state GENERATE cassandra_users.state, AVG(cassandra_users.sat); grunt dump user_avg; 2012-07-22 17:15:04,361 [main] ERROR org.apache.pig.tools.grunt.Grunt - ERROR 1045: Could not infer the matching function for org.apache.pig.builtin.AVG as multiple or none of them fit. Please use an explicit cast. // Unable to cast as int grunt user_avg = FOREACH users_by_state GENERATE cassandra_users.state, AVG((int)cassandra_users.sat); grunt dump user_avg; 2012-07-22 17:07:39,217 [main] ERROR org.apache.pig.tools.grunt.Grunt - ERROR 1052: Cannot cast bag with schema sat: bag({name: chararray,value: bytearray}) to int {code} *Seed data in CQL* {code} CREATE KEYSPACE cqldb with strategy_class = 'org.apache.cassandra.locator.SimpleStrategy' and strategy_options:replication_factor=3; use cqldb; CREATE COLUMNFAMILY users ( KEY text PRIMARY KEY, fname text, lname text, gender varchar, act int, sat int, highSchool text, state varchar); insert into users (KEY, fname, lname, gender, act, sat, highSchool, state) values (gjames, Geronomo, James, f, 24, 650, 'Tuscon High', 'AZ'); insert into users (KEY, fname, lname, gender, act, sat, highSchool, state) values (aoakley, Anne, Oakley, m , 22, 500, 'Phoenix High', 'AX'); insert into users (KEY, fname, lname, gender, act, sat, highSchool, state) values (jbrown, Jerry, Brown, m , 20, 700, 'Cal High', 'CA'); insert into users (KEY, fname, lname, gender, act, sat, highSchool, state) values (philton, Paris, Hilton, m , 37, 220, 'Beverly High', 'CA'); select * from users; {code} -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (CASSANDRA-4295) move checkaccess into statement.prepare
[ https://issues.apache.org/jira/browse/CASSANDRA-4295?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13420897#comment-13420897 ] Sylvain Lebresne commented on CASSANDRA-4295: - Maybe doing the caching on our side with a configurable cache expiration time setting would be good enough. move checkaccess into statement.prepare --- Key: CASSANDRA-4295 URL: https://issues.apache.org/jira/browse/CASSANDRA-4295 Project: Cassandra Issue Type: Improvement Components: API Affects Versions: 1.1.0 Reporter: Jonathan Ellis Assignee: Pavel Yaskevich Priority: Minor Fix For: 1.2 Attachments: CASSANDRA-4295.patch there's no need to redo this every execution since the schema, tables, and users involved should all be immutable -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (CASSANDRA-4292) Per-disk I/O queues
[ https://issues.apache.org/jira/browse/CASSANDRA-4292?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13420904#comment-13420904 ] Jonathan Ellis commented on CASSANDRA-4292: --- Looks reasonable to me so far. A couple points: - we'll want to prefer (1) disks that have no current writes, then (2) disks with the least projected data (including the estimated size of currently active writes) - compaction should use this executor as well Nit: probably cleaner to use a Map for the new getLocationForDisk method Per-disk I/O queues --- Key: CASSANDRA-4292 URL: https://issues.apache.org/jira/browse/CASSANDRA-4292 Project: Cassandra Issue Type: Improvement Components: Core Reporter: Jonathan Ellis Assignee: Yuki Morishita Fix For: 1.2 Attachments: 4292.txt As noted in CASSANDRA-809, we have a certain amount of flush (and compaction) threads, which mix and match disk volumes indiscriminately. It may be worth creating a tight thread - disk affinity, to prevent unnecessary conflict at that level. OTOH as SSDs become more prevalent this becomes a non-issue. Unclear how much pain this actually causes in practice in the meantime. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (CASSANDRA-4459) pig driver casts ints as bytearray
[ https://issues.apache.org/jira/browse/CASSANDRA-4459?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13420909#comment-13420909 ] Jonathan Ellis commented on CASSANDRA-4459: --- casting IntegerType to pig's [32bit] int sounds broken to me. shouldn't we fix the population script to use int32 as well? pig driver casts ints as bytearray -- Key: CASSANDRA-4459 URL: https://issues.apache.org/jira/browse/CASSANDRA-4459 Project: Cassandra Issue Type: Bug Environment: C* 1.1.2 embedded in DSE Reporter: Cathy Daw Assignee: Brandon Williams Fix For: 1.1.3 Attachments: 4459.txt we seem to be auto-mapping C* int columns to bytearray in Pig, and farther down I can't seem to find a way to cast that to int and do an average. {code} grunt cassandra_users = LOAD 'cassandra://cqldb/users' USING CassandraStorage(); grunt dump cassandra_users; (bobhatter,(act,22),(fname,bob),(gender,m),(highSchool,Cal High),(lname,hatter),(sat,500),(state,CA),{}) (alicesmith,(act,27),(fname,alice),(gender,f),(highSchool,Tuscon High),(lname,smith),(sat,650),(state,AZ),{}) // notice sat and act columns are bytearray values grunt describe cassandra_users; cassandra_users: {key: chararray,act: (name: chararray,value: bytearray),fname: (name: chararray,value: chararray), gender: (name: chararray,value: chararray),highSchool: (name: chararray,value: chararray),lname: (name: chararray,value: chararray), sat: (name: chararray,value: bytearray),state: (name: chararray,value: chararray),columns: {(name: chararray,value: chararray)}} grunt users_by_state = GROUP cassandra_users BY state; grunt dump users_by_state; ((state,AX),{(aoakley,(highSchool,Phoenix High),(lname,Oakley),state,(act,22),(sat,500),(gender,m),(fname,Anne),{})}) ((state,AZ),{(gjames,(highSchool,Tuscon High),(lname,James),state,(act,24),(sat,650),(gender,f),(fname,Geronomo),{})}) ((state,CA),{(philton,(highSchool,Beverly High),(lname,Hilton),state,(act,37),(sat,220),(gender,m),(fname,Paris),{}),(jbrown,(highSchool,Cal High),(lname,Brown),state,(act,20),(sat,700),(gender,m),(fname,Jerry),{})}) // Error - use explicit cast grunt user_avg = FOREACH users_by_state GENERATE cassandra_users.state, AVG(cassandra_users.sat); grunt dump user_avg; 2012-07-22 17:15:04,361 [main] ERROR org.apache.pig.tools.grunt.Grunt - ERROR 1045: Could not infer the matching function for org.apache.pig.builtin.AVG as multiple or none of them fit. Please use an explicit cast. // Unable to cast as int grunt user_avg = FOREACH users_by_state GENERATE cassandra_users.state, AVG((int)cassandra_users.sat); grunt dump user_avg; 2012-07-22 17:07:39,217 [main] ERROR org.apache.pig.tools.grunt.Grunt - ERROR 1052: Cannot cast bag with schema sat: bag({name: chararray,value: bytearray}) to int {code} *Seed data in CQL* {code} CREATE KEYSPACE cqldb with strategy_class = 'org.apache.cassandra.locator.SimpleStrategy' and strategy_options:replication_factor=3; use cqldb; CREATE COLUMNFAMILY users ( KEY text PRIMARY KEY, fname text, lname text, gender varchar, act int, sat int, highSchool text, state varchar); insert into users (KEY, fname, lname, gender, act, sat, highSchool, state) values (gjames, Geronomo, James, f, 24, 650, 'Tuscon High', 'AZ'); insert into users (KEY, fname, lname, gender, act, sat, highSchool, state) values (aoakley, Anne, Oakley, m , 22, 500, 'Phoenix High', 'AX'); insert into users (KEY, fname, lname, gender, act, sat, highSchool, state) values (jbrown, Jerry, Brown, m , 20, 700, 'Cal High', 'CA'); insert into users (KEY, fname, lname, gender, act, sat, highSchool, state) values (philton, Paris, Hilton, m , 37, 220, 'Beverly High', 'CA'); select * from users; {code} -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (CASSANDRA-4295) move checkaccess into statement.prepare
[ https://issues.apache.org/jira/browse/CASSANDRA-4295?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13420911#comment-13420911 ] Jonathan Ellis commented on CASSANDRA-4295: --- That's probably reasonable to start with. Could we add an invalidation hook to the API so that when permissions are changed, it can notify us and we can go through the cache and throw out obsolete entries? move checkaccess into statement.prepare --- Key: CASSANDRA-4295 URL: https://issues.apache.org/jira/browse/CASSANDRA-4295 Project: Cassandra Issue Type: Improvement Components: API Affects Versions: 1.1.0 Reporter: Jonathan Ellis Assignee: Pavel Yaskevich Priority: Minor Fix For: 1.2 Attachments: CASSANDRA-4295.patch there's no need to redo this every execution since the schema, tables, and users involved should all be immutable -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (CASSANDRA-4436) Counters in columns don't preserve correct values after cluster restart
[ https://issues.apache.org/jira/browse/CASSANDRA-4436?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13420930#comment-13420930 ] Jonathan Ellis commented on CASSANDRA-4436: --- Looks like skipCompacted in Directories.SSTableLister can be removed (since we scrubDataDirectories on startup and no new compacted components will be created). Using a List means we can add an ancestor multiple times. Suggest using a Set instead. Nits: - would prefer Ancestor to LiveAncestor, since we only check liveness at creation time, so Live is misleading when iterating over them later. - the deleting code feels more at home in CFS constructor than addInitialSSTables. - tracker parameter is unused now in SSTR.open Counters in columns don't preserve correct values after cluster restart --- Key: CASSANDRA-4436 URL: https://issues.apache.org/jira/browse/CASSANDRA-4436 Project: Cassandra Issue Type: Bug Components: Core Affects Versions: 1.0.10 Reporter: Peter Velas Assignee: Sylvain Lebresne Fix For: 1.1.3 Attachments: 4436-1.0.txt, 4436-1.1.txt, increments.cql.gz Similar to #3821. but affecting normal columns. Set up a 2-node cluster with rf=2. 1. Create a counter column family and increment a 100 keys in loop 5000 times. 2. Then make a rolling restart to cluster. 3. Again increment another 5000 times. 4. Make a rolling restart to cluster. 5. Again increment another 5000 times. 6. Make a rolling restart to cluster. After step 6 we were able to reproduce bug with bad counter values. Expected values were 15 000. Values returned from cluster are higher then 15000 + some random number. Rolling restarts are done with nodetool drain. Always waiting until second node discover its down then kill java process. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Updated] (CASSANDRA-4179) Add more general support for composites (to row key, column value)
[ https://issues.apache.org/jira/browse/CASSANDRA-4179?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Jonathan Ellis updated CASSANDRA-4179: -- Reviewer: xedin Add more general support for composites (to row key, column value) -- Key: CASSANDRA-4179 URL: https://issues.apache.org/jira/browse/CASSANDRA-4179 Project: Cassandra Issue Type: Sub-task Components: API Reporter: Sylvain Lebresne Assignee: Sylvain Lebresne Priority: Minor Labels: cql3 Fix For: 1.2 Attachments: 4179-2.txt, 4179.txt Currently CQL3 have a nice syntax for using composites in the column name (it's more than that in fact, it creates a whole new abstraction but let's say I'm talking implementation here). There is however 2 other place where composites could be used (again implementation wise): the row key and the column value. This ticket proposes to explore which of those make sense for CQL3 and how. For the row key, I really think that CQL support makes sense. It's very common (and useful) to want to stuff composite information in a row key. Sharding a time serie (CASSANDRA-4176) is probably the best example but there is other. For the column value it is less clear. CQL3 makes it very transparent and convenient to store multiple related values into multiple columns so maybe composites in a column value is much less needed. I do still see two cases for which it could be handy: # to save some disk/memory space, if you do know it makes no sense to insert/read two value separatly. # if you want to enforce that two values should not be inserted separatly. I.e. to enforce a form of constraint to avoid programatic error. Those are not widely useful things, but my reasoning is that if whatever syntax we come up for grouping row key in a composite trivially extends to column values, why not support it. As for syntax I have 3 suggestions (that are just that, suggestions): # If we only care about allowing grouping for row keys: {noformat} CREATE TABLE timeline ( name text, month int, ts timestamp, value text, PRIMARY KEY ((name, month), ts) ) {noformat} # A syntax that could work for both grouping in row key and colum value: {noformat} CREATE TABLE timeline ( name text, month int, ts timestamp, value1 text, value2 text, GROUP (name, month) as key, GROUP (value1, value2), PRIMARY KEY (key, ts) ) {noformat} # An alternative to the preceding one: {noformat} CREATE TABLE timeline ( name text, month int, ts timestamp, value1 text, value2 text, GROUP (name, month) as key, GROUP (value1, value2), PRIMARY KEY (key, ts) ) WITH GROUP (name, month) AS key AND GROUP (value1, value2) {noformat} -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (CASSANDRA-4361) CQL3: allow definition with only a PK
[ https://issues.apache.org/jira/browse/CASSANDRA-4361?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13420955#comment-13420955 ] Jonathan Ellis commented on CASSANDRA-4361: --- LGTM, +1 CQL3: allow definition with only a PK - Key: CASSANDRA-4361 URL: https://issues.apache.org/jira/browse/CASSANDRA-4361 Project: Cassandra Issue Type: Improvement Components: API Reporter: Sylvain Lebresne Assignee: Sylvain Lebresne Labels: cql3 Fix For: 1.2 Attachments: 4361.txt Currently, in CQL3 and contrarily to SQL, one cannot define a table having only a PK but no other columns. Related to that, a CQL always needs at least one column outside of the PK to be inserted to exist. All that may force people to add 'fake' value that they don't really need. The goal of this ticket is to lift that limitation and allow table definition to have only a PK, and to have CQL rows exist even if only the PK has been inserted (in other words, to have CQL rows behave like SQL rows). Following CASSANDRA-4329, one way to do that with the sparse-composite encoding CQL3 uses would be to insert as marker of the CQL row presence a CQL column with an empty name (the underlying column name won't be empty though since it's a composite). The drawback though is that we will need to insert that marker with every insert to the CQL row (in other word, we'll add a slight overhead to the size of each write). The pros is that if we have such marker for the CQL row presence, we will be able to reoptimize back queries that select only a few columns (since following CASSANDRA-3982 we query all columns of a CQL row every time). -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Updated] (CASSANDRA-4434) add COPY TO
[ https://issues.apache.org/jira/browse/CASSANDRA-4434?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] paul cannon updated CASSANDRA-4434: --- Attachment: 0002-cqlsh-COPY-TO-fix-output-file-closing.patch Gah, dumb, I only tested with STDOUT. Fixed that. Extra one-line patch attached, 4434 branch updated, new tag pending/4434-2. add COPY TO --- Key: CASSANDRA-4434 URL: https://issues.apache.org/jira/browse/CASSANDRA-4434 Project: Cassandra Issue Type: New Feature Reporter: Jonathan Ellis Assignee: paul cannon Labels: cqlsh Fix For: 1.1.3 Attachments: 0001-cqlsh-implement-COPY-TO.patch, 0002-cqlsh-COPY-TO-fix-output-file-closing.patch CASSANDRA-4012 added COPY FROM; this is a ticket to add the inverse. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa For more information on JIRA, see: http://www.atlassian.com/software/jira
git commit: Fix scary message about secondaries always being created at startup
Updated Branches: refs/heads/trunk 49f297417 - d0d1b2cf3 Fix scary message about secondaries always being created at startup Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/d0d1b2cf Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/d0d1b2cf Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/d0d1b2cf Branch: refs/heads/trunk Commit: d0d1b2cf3cd2bb2ddf66aa9fcdab5566954683ab Parents: 49f2974 Author: Brandon Williams brandonwilli...@apache.org Authored: Mon Jul 23 18:30:13 2012 -0500 Committer: Brandon Williams brandonwilli...@apache.org Committed: Mon Jul 23 18:31:09 2012 -0500 -- .../cassandra/db/index/SecondaryIndexManager.java |2 +- 1 files changed, 1 insertions(+), 1 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/d0d1b2cf/src/java/org/apache/cassandra/db/index/SecondaryIndexManager.java -- diff --git a/src/java/org/apache/cassandra/db/index/SecondaryIndexManager.java b/src/java/org/apache/cassandra/db/index/SecondaryIndexManager.java index f1d6268..c57f580 100644 --- a/src/java/org/apache/cassandra/db/index/SecondaryIndexManager.java +++ b/src/java/org/apache/cassandra/db/index/SecondaryIndexManager.java @@ -205,7 +205,6 @@ public class SecondaryIndexManager return null; assert cdef.getIndexType() != null; -logger.info(Creating new index : {},cdef); SecondaryIndex index; try @@ -231,6 +230,7 @@ public class SecondaryIndexManager { index = currentIndex; index.addColumnDef(cdef); +logger.info(Creating new index : {},cdef); } } else
git commit: Fix scary message about secondaries always being created at startup
Updated Branches: refs/heads/cassandra-1.1 aba1f16be - 41c9ba63d Fix scary message about secondaries always being created at startup Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/41c9ba63 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/41c9ba63 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/41c9ba63 Branch: refs/heads/cassandra-1.1 Commit: 41c9ba63d624d1d6863b67a0cbcf4144bfbea29c Parents: aba1f16 Author: Brandon Williams brandonwilli...@apache.org Authored: Mon Jul 23 18:30:13 2012 -0500 Committer: Brandon Williams brandonwilli...@apache.org Committed: Mon Jul 23 18:32:00 2012 -0500 -- .../cassandra/db/index/SecondaryIndexManager.java |2 +- 1 files changed, 1 insertions(+), 1 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/41c9ba63/src/java/org/apache/cassandra/db/index/SecondaryIndexManager.java -- diff --git a/src/java/org/apache/cassandra/db/index/SecondaryIndexManager.java b/src/java/org/apache/cassandra/db/index/SecondaryIndexManager.java index 6733c90..ba066e2 100644 --- a/src/java/org/apache/cassandra/db/index/SecondaryIndexManager.java +++ b/src/java/org/apache/cassandra/db/index/SecondaryIndexManager.java @@ -205,7 +205,6 @@ public class SecondaryIndexManager return null; assert cdef.getIndexType() != null; -logger.info(Creating new index : {},cdef); SecondaryIndex index; try @@ -231,6 +230,7 @@ public class SecondaryIndexManager { index = currentIndex; index.addColumnDef(cdef); +logger.info(Creating new index : {},cdef); } } else
[jira] [Commented] (CASSANDRA-4411) Assertion with LCS compaction
[ https://issues.apache.org/jira/browse/CASSANDRA-4411?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13421049#comment-13421049 ] Mina Naguib commented on CASSANDRA-4411: Unfortunately the problem did not go away after scrubbing. I scrubbed 2 of the problematic nodes. Immediately after the scrub (5 hours) finished, a compaction was attempted and again failed: {code} ERROR [CompactionExecutor:47] 2012-07-23 19:48:52,500 AbstractCassandraDaemon.java (line 134) Exception in thread Thread[CompactionExecutor:47,1,main] java.lang.AssertionError at org.apache.cassandra.db.compaction.LeveledManifest.promote(LeveledManifest.java:214) at org.apache.cassandra.db.compaction.LeveledCompactionStrategy.handleNotification(LeveledCompactionStrategy.java:158) at org.apache.cassandra.db.DataTracker.notifySSTablesChanged(DataTracker.java:531) at org.apache.cassandra.db.DataTracker.replaceCompactedSSTables(DataTracker.java:254) at org.apache.cassandra.db.ColumnFamilyStore.replaceCompactedSSTables(ColumnFamilyStore.java:978) at org.apache.cassandra.db.compaction.CompactionTask.execute(CompactionTask.java:200) at org.apache.cassandra.db.compaction.LeveledCompactionTask.execute(LeveledCompactionTask.java:50) at org.apache.cassandra.db.compaction.CompactionManager$1.runMayThrow(CompactionManager.java:150) at org.apache.cassandra.utils.WrappedRunnable.run(WrappedRunnable.java:30) at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441) at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303) at java.util.concurrent.FutureTask.run(FutureTask.java:138) at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) at java.lang.Thread.run(Thread.java:662) {code} I've verified (using ls and the timestamps of *-Data.db sstables) that there are no old sstables and all of the sstables in the CF are the ones generated during the 5 hours of scrubbing. I've also stopped and restarted one of these nodes, and again shortly after restart the compaction failed with a different stack trace: {code} java.lang.RuntimeException: Last written key DecoratedKey(225595347341523546110318866012608496, 64313635626665302d333764372d313165302d393933622d303032366239333763386531) = current key DecoratedKey(221078382620949716286900834756484795, 37303538643361662d616362662d343030312d313565382d633662303030303030336131) writing into /var/lib/cassandra/data/MYKS/MYCF/MYKS-MYCF-tmp-hd-520277-Data.db at org.apache.cassandra.io.sstable.SSTableWriter.beforeAppend(SSTableWriter.java:134) at org.apache.cassandra.io.sstable.SSTableWriter.append(SSTableWriter.java:153) at org.apache.cassandra.db.compaction.CompactionTask.execute(CompactionTask.java:159) at org.apache.cassandra.db.compaction.LeveledCompactionTask.execute(LeveledCompactionTask.java:50) at org.apache.cassandra.db.compaction.CompactionManager$1.runMayThrow(CompactionManager.java:150) at org.apache.cassandra.utils.WrappedRunnable.run(WrappedRunnable.java:30) at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441) at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303) at java.util.concurrent.FutureTask.run(FutureTask.java:138) at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) at java.lang.Thread.run(Thread.java:662) {code} Is the fix for this ticket contained in some other code beyond the 2 posted patches (4411.txt, 4411-followup.txt) ? That's what I'm running with on top of 1.1.2. Assertion with LCS compaction - Key: CASSANDRA-4411 URL: https://issues.apache.org/jira/browse/CASSANDRA-4411 Project: Cassandra Issue Type: Bug Components: Core Affects Versions: 1.1.2 Reporter: Anton Winter Assignee: Sylvain Lebresne Fix For: 1.1.3 Attachments: 0001-Add-debugging-info-for-LCS.txt, 4411-followup.txt, 4411.txt, assertion-w-more-debugging-info-omid.log, assertion.moreinfo.system.log, system.log As instructed in CASSANDRA-4321 I have raised this issue as a continuation of that issue as it appears the problem still exists. I have repeatedly run sstablescrub across all my nodes after the 1.1.2 upgrade until sstablescrub shows no errors. The exceptions described in CASSANDRA-4321 do not occur as frequently now but the integrity check still throws exceptions on a number of nodes. Once those exceptions occur
[jira] [Commented] (CASSANDRA-4411) Assertion with LCS compaction
[ https://issues.apache.org/jira/browse/CASSANDRA-4411?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13421061#comment-13421061 ] Anton Winter commented on CASSANDRA-4411: - I can also confirm that after multiple offline sstablescrubs across all nodes that I still had several nodes (but not all) spread across multiple DC's still exhibiting this problem as described above by Mina. In an attempt to work around the problem I shut down the affected instances, deleted all data and re-bootstrapped them as if they were dead nodes. Since doing so I haven't had the problem return however it is still early days. Assertion with LCS compaction - Key: CASSANDRA-4411 URL: https://issues.apache.org/jira/browse/CASSANDRA-4411 Project: Cassandra Issue Type: Bug Components: Core Affects Versions: 1.1.2 Reporter: Anton Winter Assignee: Sylvain Lebresne Fix For: 1.1.3 Attachments: 0001-Add-debugging-info-for-LCS.txt, 4411-followup.txt, 4411.txt, assertion-w-more-debugging-info-omid.log, assertion.moreinfo.system.log, system.log As instructed in CASSANDRA-4321 I have raised this issue as a continuation of that issue as it appears the problem still exists. I have repeatedly run sstablescrub across all my nodes after the 1.1.2 upgrade until sstablescrub shows no errors. The exceptions described in CASSANDRA-4321 do not occur as frequently now but the integrity check still throws exceptions on a number of nodes. Once those exceptions occur compactionstats shows a large number of pending tasks with no progression afterwards. {code} ERROR [CompactionExecutor:150] 2012-07-05 04:26:15,570 AbstractCassandraDaemon.java (line 134) Exception in thread Thread[CompactionExecutor:150,1,main] java.lang.AssertionError at org.apache.cassandra.db.compaction.LeveledManifest.promote(LeveledManifest.java:214) at org.apache.cassandra.db.compaction.LeveledCompactionStrategy.handleNotification(LeveledCompactionStrategy.java:158) at org.apache.cassandra.db.DataTracker.notifySSTablesChanged(DataTracker.java:531) at org.apache.cassandra.db.DataTracker.replaceCompactedSSTables(DataTracker.java:254) at org.apache.cassandra.db.ColumnFamilyStore.replaceCompactedSSTables(ColumnFamilyStore.java:978) at org.apache.cassandra.db.compaction.CompactionTask.execute(CompactionTask.java:200) at org.apache.cassandra.db.compaction.LeveledCompactionTask.execute(LeveledCompactionTask.java:50) at org.apache.cassandra.db.compaction.CompactionManager$1.runMayThrow(CompactionManager.java:150) at org.apache.cassandra.utils.WrappedRunnable.run(WrappedRunnable.java:30) at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471) at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334) at java.util.concurrent.FutureTask.run(FutureTask.java:166) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603) at java.lang.Thread.run(Thread.java:636) {code} -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Created] (CASSANDRA-4460) SystemTable.setBootstrapState always sets bootstrap state to true
Dave Brosius created CASSANDRA-4460: --- Summary: SystemTable.setBootstrapState always sets bootstrap state to true Key: CASSANDRA-4460 URL: https://issues.apache.org/jira/browse/CASSANDRA-4460 Project: Cassandra Issue Type: Bug Components: Core Affects Versions: 1.2 Reporter: Dave Brosius Priority: Trivial public static void setBootstrapState(BootstrapState state) { String req = INSERT INTO system.%s (key, bootstrapped) VALUES ('%s', '%b'); processInternal(String.format(req, LOCAL_CF, LOCAL_KEY, getBootstrapState())); forceBlockingFlush(LOCAL_CF); } Third parameter %b is set from getBootstrapState() which returns an enum, thus %b collapses to null/non null checks. This would seem then to always set it to true. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (CASSANDRA-4036) cqlsh: EOF during multiline statement
[ https://issues.apache.org/jira/browse/CASSANDRA-4036?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13421162#comment-13421162 ] paul cannon commented on CASSANDRA-4036: Can't reproduce. Possibly fixed by something else since March? Can you retry, Tyler? cqlsh: EOF during multiline statement - Key: CASSANDRA-4036 URL: https://issues.apache.org/jira/browse/CASSANDRA-4036 Project: Cassandra Issue Type: Bug Reporter: Tyler Patterson Assignee: paul cannon Priority: Trivial Labels: cql, cqlsh press CTRL-d while at the beginning of a line in a multi-line statement. It should exit cqlsh or the multiline statement, but instead it only prints another.... -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (CASSANDRA-4075) Dropped keyspaces and cfs do not get deleted
[ https://issues.apache.org/jira/browse/CASSANDRA-4075?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13421193#comment-13421193 ] sunjian commented on CASSANDRA-4075: this issues exists in 1.1.2 as well . keyspace and column family can't to be modified when the cluster have run for a while (such as one day , with not too much data(less than 1G per node)) . nothing will be happen if some operation fire at the nodes , such as drop keyspace / create coulumn family / delete column family . BUT add/delete/edit/query data is OK . Dropped keyspaces and cfs do not get deleted Key: CASSANDRA-4075 URL: https://issues.apache.org/jira/browse/CASSANDRA-4075 Project: Cassandra Issue Type: Bug Affects Versions: 0.8.1 Reporter: Joaquin Casares Labels: datastax_qa Tested in 0.8.10, reported in 0.8.1. Dropped keyspaces and column families have their sstables marked as Compacted, but will not disappear, even on restart. Worked correctly in 1.0.8 where the sstables get deleted almost immediately following the column family drop. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa For more information on JIRA, see: http://www.atlassian.com/software/jira