[jira] [Updated] (CASSANDRA-6774) Cleanup fails with assertion error after stopping previous run

2014-03-17 Thread Marcus Eriksson (JIRA)

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

Marcus Eriksson updated CASSANDRA-6774:
---

Attachment: 0001-6774-wip.patch

hmm, i think we should throw an exception if we fail, so that the nodetool user 
gets some feedback without having to check logs, attached

 Cleanup fails with assertion error after stopping previous run
 --

 Key: CASSANDRA-6774
 URL: https://issues.apache.org/jira/browse/CASSANDRA-6774
 Project: Cassandra
  Issue Type: Bug
  Components: Core
 Environment: 2.0.5
Reporter: Keith Wright
Assignee: Marcus Eriksson
 Fix For: 2.0.7

 Attachments: 0001-6774-wip.patch, 
 0001-Dont-continue-after-failing-to-cancel-in-progress-co.patch, 6774-v2.txt


 I am stress testing a new 2.0.5 cluster and did the following:
 - start decommission during heavy write, moderate read load
 - trigger cleanup on non-decommissioning node (nodetool cleanup)
 - Started to see higher GC load stop stopped cleanup via nodetool stop CLEANUP
 - attempt to launch cleanup now fails with the following message in console.
 Cassandra log shows: 
 http://aep.appspot.com/display/cKmlMcDuKD72iYAcBykDuVZkRWY/



--
This message was sent by Atlassian JIRA
(v6.2#6252)


[jira] [Comment Edited] (CASSANDRA-6774) Cleanup fails with assertion error after stopping previous run

2014-03-17 Thread Marcus Eriksson (JIRA)

[ 
https://issues.apache.org/jira/browse/CASSANDRA-6774?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13937541#comment-13937541
 ] 

Marcus Eriksson edited comment on CASSANDRA-6774 at 3/17/14 8:31 AM:
-

hmm, i actually think we should throw an exception if we fail, so that the 
nodetool user gets some feedback without having to check logs, attached


was (Author: krummas):
hmm, i think we should throw an exception if we fail, so that the nodetool user 
gets some feedback without having to check logs, attached

 Cleanup fails with assertion error after stopping previous run
 --

 Key: CASSANDRA-6774
 URL: https://issues.apache.org/jira/browse/CASSANDRA-6774
 Project: Cassandra
  Issue Type: Bug
  Components: Core
 Environment: 2.0.5
Reporter: Keith Wright
Assignee: Marcus Eriksson
 Fix For: 2.0.7

 Attachments: 0001-6774-wip.patch, 
 0001-Dont-continue-after-failing-to-cancel-in-progress-co.patch, 6774-v2.txt


 I am stress testing a new 2.0.5 cluster and did the following:
 - start decommission during heavy write, moderate read load
 - trigger cleanup on non-decommissioning node (nodetool cleanup)
 - Started to see higher GC load stop stopped cleanup via nodetool stop CLEANUP
 - attempt to launch cleanup now fails with the following message in console.
 Cassandra log shows: 
 http://aep.appspot.com/display/cKmlMcDuKD72iYAcBykDuVZkRWY/



--
This message was sent by Atlassian JIRA
(v6.2#6252)


[jira] [Commented] (CASSANDRA-6774) Cleanup fails with assertion error after stopping previous run

2014-03-17 Thread Marcus Eriksson (JIRA)

[ 
https://issues.apache.org/jira/browse/CASSANDRA-6774?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13937550#comment-13937550
 ] 

Marcus Eriksson commented on CASSANDRA-6774:


or.. maybe we should return a status code from scrub/upgradesstables/cleanup 
instead... i'll fix

 Cleanup fails with assertion error after stopping previous run
 --

 Key: CASSANDRA-6774
 URL: https://issues.apache.org/jira/browse/CASSANDRA-6774
 Project: Cassandra
  Issue Type: Bug
  Components: Core
 Environment: 2.0.5
Reporter: Keith Wright
Assignee: Marcus Eriksson
 Fix For: 2.0.7

 Attachments: 0001-6774-wip.patch, 
 0001-Dont-continue-after-failing-to-cancel-in-progress-co.patch, 6774-v2.txt


 I am stress testing a new 2.0.5 cluster and did the following:
 - start decommission during heavy write, moderate read load
 - trigger cleanup on non-decommissioning node (nodetool cleanup)
 - Started to see higher GC load stop stopped cleanup via nodetool stop CLEANUP
 - attempt to launch cleanup now fails with the following message in console.
 Cassandra log shows: 
 http://aep.appspot.com/display/cKmlMcDuKD72iYAcBykDuVZkRWY/



--
This message was sent by Atlassian JIRA
(v6.2#6252)


[jira] [Created] (CASSANDRA-6873) Static columns with IF NOT EXISTS don't always work as expected

2014-03-17 Thread Sylvain Lebresne (JIRA)
Sylvain Lebresne created CASSANDRA-6873:
---

 Summary: Static columns with IF NOT EXISTS don't always work as 
expected
 Key: CASSANDRA-6873
 URL: https://issues.apache.org/jira/browse/CASSANDRA-6873
 Project: Cassandra
  Issue Type: Bug
Reporter: Sylvain Lebresne
Assignee: Sylvain Lebresne
Priority: Minor


Given:
{noformat}
CREATE TABLE test (
id int,
k text,
version int static,
v int,
PRIMARY KEY (id, k)
)

INSERT INTO test(id, k, v) VALUES (1, 'foo', 'foo')
{noformat}
the following conditional update should not apply:
{noformat}
INSERT INTO test(id, k, version) VALUES (1, 'foo', 1) IF NOT EXISTS
{noformat}
since said query involves the clustering column and the CQL row with said 
clustering column already exists. It does currently apply however.



--
This message was sent by Atlassian JIRA
(v6.2#6252)


[jira] [Updated] (CASSANDRA-6873) Static columns with IF NOT EXISTS don't always work as expected

2014-03-17 Thread Sylvain Lebresne (JIRA)

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

Sylvain Lebresne updated CASSANDRA-6873:


Attachment: 6873.txt

Patch attached to fix this and clean somewhat the relevant logic. I've 
basically [pushed the test of the 
description|https://github.com/riptano/cassandra-dtest/commit/c3644ca97f6c240137ed9791b84a0bc424f21626]
 to dtest.

 Static columns with IF NOT EXISTS don't always work as expected
 ---

 Key: CASSANDRA-6873
 URL: https://issues.apache.org/jira/browse/CASSANDRA-6873
 Project: Cassandra
  Issue Type: Bug
Reporter: Sylvain Lebresne
Assignee: Sylvain Lebresne
Priority: Minor
 Fix For: 2.0.7

 Attachments: 6873.txt


 Given:
 {noformat}
 CREATE TABLE test (
 id int,
 k text,
 version int static,
 v int,
 PRIMARY KEY (id, k)
 )
 INSERT INTO test(id, k, v) VALUES (1, 'foo', 'foo')
 {noformat}
 the following conditional update should not apply:
 {noformat}
 INSERT INTO test(id, k, version) VALUES (1, 'foo', 1) IF NOT EXISTS
 {noformat}
 since said query involves the clustering column and the CQL row with said 
 clustering column already exists. It does currently apply however.



--
This message was sent by Atlassian JIRA
(v6.2#6252)


git commit: Properly use the paxos consistency for (non-protocol) batches

2014-03-17 Thread slebresne
Repository: cassandra
Updated Branches:
  refs/heads/cassandra-2.0 245038fd2 - 9527b17f1


Properly use the paxos consistency for (non-protocol) batches

patch by slebresne; reviewed by jbellis for CASSANDRA-6837


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/9527b17f
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/9527b17f
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/9527b17f

Branch: refs/heads/cassandra-2.0
Commit: 9527b17f1f1eaa572b036ce2c33300b36fc533e6
Parents: 245038f
Author: Sylvain Lebresne sylv...@datastax.com
Authored: Mon Mar 17 11:01:28 2014 +0100
Committer: Sylvain Lebresne sylv...@datastax.com
Committed: Mon Mar 17 11:01:28 2014 +0100

--
 CHANGES.txt  | 1 +
 .../org/apache/cassandra/cql3/statements/BatchStatement.java | 8 
 2 files changed, 5 insertions(+), 4 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/9527b17f/CHANGES.txt
--
diff --git a/CHANGES.txt b/CHANGES.txt
index 61b1ee1..c4e1bd4 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -11,6 +11,7 @@
  * Fix CompactionManager.needsCleanup (CASSANDRA-6845)
  * Correctly compare BooleanType values other than 0 and 1 (CASSANDRA-6779)
  * Read message id as string from earlier versions (CASSANDRA-6840)
+ * Properly use the Paxos consistency for (non-protocol) batch (CASSANDRA-6837)
 Merged from 1.2:
  * fix nodetool getsstables for blob PK (CASSANDRA-6803)
 

http://git-wip-us.apache.org/repos/asf/cassandra/blob/9527b17f/src/java/org/apache/cassandra/cql3/statements/BatchStatement.java
--
diff --git a/src/java/org/apache/cassandra/cql3/statements/BatchStatement.java 
b/src/java/org/apache/cassandra/cql3/statements/BatchStatement.java
index b1dbb31..675ce7a 100644
--- a/src/java/org/apache/cassandra/cql3/statements/BatchStatement.java
+++ b/src/java/org/apache/cassandra/cql3/statements/BatchStatement.java
@@ -181,7 +181,7 @@ public class BatchStatement implements CQLStatement, 
MeasurableForPreparedCache
 if (options.getConsistency() == null)
 throw new InvalidRequestException(Invalid empty consistency 
level);
 
-return execute(new PreparedBatchVariables(options.getValues()), false, 
options.getConsistency(), queryState.getTimestamp());
+return execute(new PreparedBatchVariables(options.getValues()), false, 
options.getConsistency(), options.getSerialConsistency(), 
queryState.getTimestamp());
 }
 
 public ResultMessage executeWithPerStatementVariables(ConsistencyLevel cl, 
QueryState queryState, ListListByteBuffer variables) throws 
RequestExecutionException, RequestValidationException
@@ -189,16 +189,16 @@ public class BatchStatement implements CQLStatement, 
MeasurableForPreparedCache
 if (cl == null)
 throw new InvalidRequestException(Invalid empty consistency 
level);
 
-return execute(new BatchOfPreparedVariables(variables), false, cl, 
queryState.getTimestamp());
+return execute(new BatchOfPreparedVariables(variables), false, cl, 
ConsistencyLevel.SERIAL, queryState.getTimestamp());
 }
 
-public ResultMessage execute(BatchVariables variables, boolean local, 
ConsistencyLevel cl, long now)
+public ResultMessage execute(BatchVariables variables, boolean local, 
ConsistencyLevel cl, ConsistencyLevel serialCl, long now)
 throws RequestExecutionException, RequestValidationException
 {
 // TODO: we don't support a serial consistency for batches in the 
protocol so defaulting to SERIAL for now.
 // We'll need to fix that.
 if (hasConditions)
-return executeWithConditions(variables, cl, 
ConsistencyLevel.SERIAL, now);
+return executeWithConditions(variables, cl, serialCl, now);
 
 executeWithoutConditions(getMutations(variables, local, cl, now), cl);
 return null;



git commit: Update copyright date in NOTICE file

2014-03-17 Thread slebresne
Repository: cassandra
Updated Branches:
  refs/heads/cassandra-1.2 8c52cc0e7 - 8526347ca


Update copyright date in NOTICE file


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/8526347c
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/8526347c
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/8526347c

Branch: refs/heads/cassandra-1.2
Commit: 8526347cad86037ce0caefa711e0568f88c87da0
Parents: 8c52cc0
Author: Sylvain Lebresne sylv...@datastax.com
Authored: Mon Mar 17 11:03:32 2014 +0100
Committer: Sylvain Lebresne sylv...@datastax.com
Committed: Mon Mar 17 11:03:32 2014 +0100

--
 NOTICE.txt | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/8526347c/NOTICE.txt
--
diff --git a/NOTICE.txt b/NOTICE.txt
index 9826990..36cacce 100644
--- a/NOTICE.txt
+++ b/NOTICE.txt
@@ -1,5 +1,5 @@
 Apache Cassandra
-Copyright 2009, 2010 The Apache Software Foundation
+Copyright 2009-2014 The Apache Software Foundation
 
 This product includes software developed by The Apache Software
 Foundation (http://www.apache.org/).



[1/2] git commit: Update copyright date in NOTICE file

2014-03-17 Thread slebresne
Repository: cassandra
Updated Branches:
  refs/heads/cassandra-2.0 9527b17f1 - 1e64972be


Update copyright date in NOTICE file


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/8526347c
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/8526347c
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/8526347c

Branch: refs/heads/cassandra-2.0
Commit: 8526347cad86037ce0caefa711e0568f88c87da0
Parents: 8c52cc0
Author: Sylvain Lebresne sylv...@datastax.com
Authored: Mon Mar 17 11:03:32 2014 +0100
Committer: Sylvain Lebresne sylv...@datastax.com
Committed: Mon Mar 17 11:03:32 2014 +0100

--
 NOTICE.txt | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/8526347c/NOTICE.txt
--
diff --git a/NOTICE.txt b/NOTICE.txt
index 9826990..36cacce 100644
--- a/NOTICE.txt
+++ b/NOTICE.txt
@@ -1,5 +1,5 @@
 Apache Cassandra
-Copyright 2009, 2010 The Apache Software Foundation
+Copyright 2009-2014 The Apache Software Foundation
 
 This product includes software developed by The Apache Software
 Foundation (http://www.apache.org/).



[2/2] git commit: Merge branch 'cassandra-1.2' into cassandra-2.0

2014-03-17 Thread slebresne
Merge branch 'cassandra-1.2' into cassandra-2.0


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/1e64972b
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/1e64972b
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/1e64972b

Branch: refs/heads/cassandra-2.0
Commit: 1e64972be5c9237a10b4b2635206b0790d7489ff
Parents: 9527b17 8526347
Author: Sylvain Lebresne sylv...@datastax.com
Authored: Mon Mar 17 11:03:47 2014 +0100
Committer: Sylvain Lebresne sylv...@datastax.com
Committed: Mon Mar 17 11:03:47 2014 +0100

--
 NOTICE.txt | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/1e64972b/NOTICE.txt
--



[2/4] git commit: Update copyright date in NOTICE file

2014-03-17 Thread slebresne
Update copyright date in NOTICE file


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/8526347c
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/8526347c
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/8526347c

Branch: refs/heads/cassandra-2.1
Commit: 8526347cad86037ce0caefa711e0568f88c87da0
Parents: 8c52cc0
Author: Sylvain Lebresne sylv...@datastax.com
Authored: Mon Mar 17 11:03:32 2014 +0100
Committer: Sylvain Lebresne sylv...@datastax.com
Committed: Mon Mar 17 11:03:32 2014 +0100

--
 NOTICE.txt | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/8526347c/NOTICE.txt
--
diff --git a/NOTICE.txt b/NOTICE.txt
index 9826990..36cacce 100644
--- a/NOTICE.txt
+++ b/NOTICE.txt
@@ -1,5 +1,5 @@
 Apache Cassandra
-Copyright 2009, 2010 The Apache Software Foundation
+Copyright 2009-2014 The Apache Software Foundation
 
 This product includes software developed by The Apache Software
 Foundation (http://www.apache.org/).



[1/4] git commit: Properly use the paxos consistency for (non-protocol) batches

2014-03-17 Thread slebresne
Repository: cassandra
Updated Branches:
  refs/heads/cassandra-2.1 4bed978ae - 67119a5ab


Properly use the paxos consistency for (non-protocol) batches

patch by slebresne; reviewed by jbellis for CASSANDRA-6837


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/9527b17f
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/9527b17f
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/9527b17f

Branch: refs/heads/cassandra-2.1
Commit: 9527b17f1f1eaa572b036ce2c33300b36fc533e6
Parents: 245038f
Author: Sylvain Lebresne sylv...@datastax.com
Authored: Mon Mar 17 11:01:28 2014 +0100
Committer: Sylvain Lebresne sylv...@datastax.com
Committed: Mon Mar 17 11:01:28 2014 +0100

--
 CHANGES.txt  | 1 +
 .../org/apache/cassandra/cql3/statements/BatchStatement.java | 8 
 2 files changed, 5 insertions(+), 4 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/9527b17f/CHANGES.txt
--
diff --git a/CHANGES.txt b/CHANGES.txt
index 61b1ee1..c4e1bd4 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -11,6 +11,7 @@
  * Fix CompactionManager.needsCleanup (CASSANDRA-6845)
  * Correctly compare BooleanType values other than 0 and 1 (CASSANDRA-6779)
  * Read message id as string from earlier versions (CASSANDRA-6840)
+ * Properly use the Paxos consistency for (non-protocol) batch (CASSANDRA-6837)
 Merged from 1.2:
  * fix nodetool getsstables for blob PK (CASSANDRA-6803)
 

http://git-wip-us.apache.org/repos/asf/cassandra/blob/9527b17f/src/java/org/apache/cassandra/cql3/statements/BatchStatement.java
--
diff --git a/src/java/org/apache/cassandra/cql3/statements/BatchStatement.java 
b/src/java/org/apache/cassandra/cql3/statements/BatchStatement.java
index b1dbb31..675ce7a 100644
--- a/src/java/org/apache/cassandra/cql3/statements/BatchStatement.java
+++ b/src/java/org/apache/cassandra/cql3/statements/BatchStatement.java
@@ -181,7 +181,7 @@ public class BatchStatement implements CQLStatement, 
MeasurableForPreparedCache
 if (options.getConsistency() == null)
 throw new InvalidRequestException(Invalid empty consistency 
level);
 
-return execute(new PreparedBatchVariables(options.getValues()), false, 
options.getConsistency(), queryState.getTimestamp());
+return execute(new PreparedBatchVariables(options.getValues()), false, 
options.getConsistency(), options.getSerialConsistency(), 
queryState.getTimestamp());
 }
 
 public ResultMessage executeWithPerStatementVariables(ConsistencyLevel cl, 
QueryState queryState, ListListByteBuffer variables) throws 
RequestExecutionException, RequestValidationException
@@ -189,16 +189,16 @@ public class BatchStatement implements CQLStatement, 
MeasurableForPreparedCache
 if (cl == null)
 throw new InvalidRequestException(Invalid empty consistency 
level);
 
-return execute(new BatchOfPreparedVariables(variables), false, cl, 
queryState.getTimestamp());
+return execute(new BatchOfPreparedVariables(variables), false, cl, 
ConsistencyLevel.SERIAL, queryState.getTimestamp());
 }
 
-public ResultMessage execute(BatchVariables variables, boolean local, 
ConsistencyLevel cl, long now)
+public ResultMessage execute(BatchVariables variables, boolean local, 
ConsistencyLevel cl, ConsistencyLevel serialCl, long now)
 throws RequestExecutionException, RequestValidationException
 {
 // TODO: we don't support a serial consistency for batches in the 
protocol so defaulting to SERIAL for now.
 // We'll need to fix that.
 if (hasConditions)
-return executeWithConditions(variables, cl, 
ConsistencyLevel.SERIAL, now);
+return executeWithConditions(variables, cl, serialCl, now);
 
 executeWithoutConditions(getMutations(variables, local, cl, now), cl);
 return null;



[4/4] git commit: Merge branch 'cassandra-2.0' into cassandra-2.1

2014-03-17 Thread slebresne
Merge branch 'cassandra-2.0' into cassandra-2.1

Conflicts:
CHANGES.txt


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/67119a5a
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/67119a5a
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/67119a5a

Branch: refs/heads/cassandra-2.1
Commit: 67119a5ab57eb254fea4e78133a63bf28644c01f
Parents: 4bed978 1e64972
Author: Sylvain Lebresne sylv...@datastax.com
Authored: Mon Mar 17 11:08:47 2014 +0100
Committer: Sylvain Lebresne sylv...@datastax.com
Committed: Mon Mar 17 11:08:47 2014 +0100

--
 CHANGES.txt  | 2 ++
 NOTICE.txt   | 2 +-
 .../org/apache/cassandra/cql3/statements/BatchStatement.java | 8 
 3 files changed, 7 insertions(+), 5 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/67119a5a/CHANGES.txt
--
diff --cc CHANGES.txt
index ea436f0,c4e1bd4..0cd9d4a
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@@ -75,51 -55,23 +75,53 @@@ Merged from 2.0
   * Fix CQLSStableWriter.addRow(MapString, Object) (CASSANDRA-6526)
   * Fix HSHA server introducing corrupt data (CASSANDRA-6285)
   * Fix CAS conditions for COMPACT STORAGE tables (CASSANDRA-6813)
 -Merged from 1.2:
 - * Add CMSClassUnloadingEnabled JVM option (CASSANDRA-6541)
 - * Catch memtable flush exceptions during shutdown (CASSANDRA-6735)
 - * Fix broken streams when replacing with same IP (CASSANDRA-6622)
 - * Fix upgradesstables NPE for non-CF-based indexes (CASSANDRA-6645)
 - * Fix partition and range deletes not triggering flush (CASSANDRA-6655)
 - * Fix mean cells and mean row size per sstable calculations (CASSANDRA-6667)
 - * Compact hints after partial replay to clean out tombstones (CASSANDRA-)
 - * Log USING TTL/TIMESTAMP in a counter update warning (CASSANDRA-6649)
 - * Don't exchange schema between nodes with different versions 
(CASSANDRA-6695)
 - * Use real node messaging versions for schema exchange decisions 
(CASSANDRA-6700)
 - * IN on the last clustering columns + ORDER BY DESC yield no results 
(CASSANDRA-6701)
 - * Fix SecondaryIndexManager#deleteFromIndexes() (CASSANDRA-6711)
 - * Fix snapshot repair not snapshotting coordinator itself (CASSANDRA-6713)
 - * Support negative timestamps for CQL3 dates in query string (CASSANDRA-6718)
 - * Avoid NPEs when receiving table changes for an unknown keyspace 
(CASSANDRA-5631)
 - * Fix bootstrapping when there is no schema (CASSANDRA-6685)
 + * Fix saving triggers to schema (CASSANDRA-6789)
 + * Fix trigger mutations when base mutation list is immutable (CASSANDRA-6790)
 + * Fix accounting in FileCacheService to allow re-using RAR (CASSANDRA-6838)
 + * Fix static counter columns (CASSANDRA-6827)
 + * Restore expiring-deleted (cell) compaction optimization (CASSANDRA-6844)
 + * Fix CompactionManager.needsCleanup (CASSANDRA-6845)
 + * Correctly compare BooleanType values other than 0 and 1 (CASSANDRA-6779)
++ * Read message id as string from earlier versions (CASSANDRA-6840)
++ * Properly use the Paxos consistency for (non-protocol) batch 
(CASSANDRA-6837)
 +
 +
 +2.1.0-beta1
 + * Add flush directory distinct from compaction directories (CASSANDRA-6357)
 + * Require JNA by default (CASSANDRA-6575)
 + * add listsnapshots command to nodetool (CASSANDRA-5742)
 + * Introduce AtomicBTreeColumns (CASSANDRA-6271, 6692)
 + * Multithreaded commitlog (CASSANDRA-3578)
 + * allocate fixed index summary memory pool and resample cold index summaries 
 +   to use less memory (CASSANDRA-5519)
 + * Removed multithreaded compaction (CASSANDRA-6142)
 + * Parallelize fetching rows for low-cardinality indexes (CASSANDRA-1337)
 + * change logging from log4j to logback (CASSANDRA-5883)
 + * switch to LZ4 compression for internode communication (CASSANDRA-5887)
 + * Stop using Thrift-generated Index* classes internally (CASSANDRA-5971)
 + * Remove 1.2 network compatibility code (CASSANDRA-5960)
 + * Remove leveled json manifest migration code (CASSANDRA-5996)
 + * Remove CFDefinition (CASSANDRA-6253)
 + * Use AtomicIntegerFieldUpdater in RefCountedMemory (CASSANDRA-6278)
 + * User-defined types for CQL3 (CASSANDRA-5590)
 + * Use of o.a.c.metrics in nodetool (CASSANDRA-5871, 6406)
 + * Batch read from OTC's queue and cleanup (CASSANDRA-1632)
 + * Secondary index support for collections (CASSANDRA-4511, 6383)
 + * SSTable metadata(Stats.db) format change (CASSANDRA-6356)
 + * Push composites support in the storage engine
 +   (CASSANDRA-5417, CASSANDRA-6520)
 + * Add snapshot space used to cfstats (CASSANDRA-6231)
 + * Add cardinality estimator for key count estimation (CASSANDRA-5906)
 + * CF id is changed to be non-deterministic. Data dir/key cache are 

[3/4] git commit: Merge branch 'cassandra-1.2' into cassandra-2.0

2014-03-17 Thread slebresne
Merge branch 'cassandra-1.2' into cassandra-2.0


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/1e64972b
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/1e64972b
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/1e64972b

Branch: refs/heads/cassandra-2.1
Commit: 1e64972be5c9237a10b4b2635206b0790d7489ff
Parents: 9527b17 8526347
Author: Sylvain Lebresne sylv...@datastax.com
Authored: Mon Mar 17 11:03:47 2014 +0100
Committer: Sylvain Lebresne sylv...@datastax.com
Committed: Mon Mar 17 11:03:47 2014 +0100

--
 NOTICE.txt | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/1e64972b/NOTICE.txt
--



[2/5] git commit: Update copyright date in NOTICE file

2014-03-17 Thread slebresne
Update copyright date in NOTICE file


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/8526347c
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/8526347c
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/8526347c

Branch: refs/heads/trunk
Commit: 8526347cad86037ce0caefa711e0568f88c87da0
Parents: 8c52cc0
Author: Sylvain Lebresne sylv...@datastax.com
Authored: Mon Mar 17 11:03:32 2014 +0100
Committer: Sylvain Lebresne sylv...@datastax.com
Committed: Mon Mar 17 11:03:32 2014 +0100

--
 NOTICE.txt | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/8526347c/NOTICE.txt
--
diff --git a/NOTICE.txt b/NOTICE.txt
index 9826990..36cacce 100644
--- a/NOTICE.txt
+++ b/NOTICE.txt
@@ -1,5 +1,5 @@
 Apache Cassandra
-Copyright 2009, 2010 The Apache Software Foundation
+Copyright 2009-2014 The Apache Software Foundation
 
 This product includes software developed by The Apache Software
 Foundation (http://www.apache.org/).



[1/5] git commit: Properly use the paxos consistency for (non-protocol) batches

2014-03-17 Thread slebresne
Repository: cassandra
Updated Branches:
  refs/heads/trunk b74c2ade5 - 67b852182


Properly use the paxos consistency for (non-protocol) batches

patch by slebresne; reviewed by jbellis for CASSANDRA-6837


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/9527b17f
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/9527b17f
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/9527b17f

Branch: refs/heads/trunk
Commit: 9527b17f1f1eaa572b036ce2c33300b36fc533e6
Parents: 245038f
Author: Sylvain Lebresne sylv...@datastax.com
Authored: Mon Mar 17 11:01:28 2014 +0100
Committer: Sylvain Lebresne sylv...@datastax.com
Committed: Mon Mar 17 11:01:28 2014 +0100

--
 CHANGES.txt  | 1 +
 .../org/apache/cassandra/cql3/statements/BatchStatement.java | 8 
 2 files changed, 5 insertions(+), 4 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/9527b17f/CHANGES.txt
--
diff --git a/CHANGES.txt b/CHANGES.txt
index 61b1ee1..c4e1bd4 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -11,6 +11,7 @@
  * Fix CompactionManager.needsCleanup (CASSANDRA-6845)
  * Correctly compare BooleanType values other than 0 and 1 (CASSANDRA-6779)
  * Read message id as string from earlier versions (CASSANDRA-6840)
+ * Properly use the Paxos consistency for (non-protocol) batch (CASSANDRA-6837)
 Merged from 1.2:
  * fix nodetool getsstables for blob PK (CASSANDRA-6803)
 

http://git-wip-us.apache.org/repos/asf/cassandra/blob/9527b17f/src/java/org/apache/cassandra/cql3/statements/BatchStatement.java
--
diff --git a/src/java/org/apache/cassandra/cql3/statements/BatchStatement.java 
b/src/java/org/apache/cassandra/cql3/statements/BatchStatement.java
index b1dbb31..675ce7a 100644
--- a/src/java/org/apache/cassandra/cql3/statements/BatchStatement.java
+++ b/src/java/org/apache/cassandra/cql3/statements/BatchStatement.java
@@ -181,7 +181,7 @@ public class BatchStatement implements CQLStatement, 
MeasurableForPreparedCache
 if (options.getConsistency() == null)
 throw new InvalidRequestException(Invalid empty consistency 
level);
 
-return execute(new PreparedBatchVariables(options.getValues()), false, 
options.getConsistency(), queryState.getTimestamp());
+return execute(new PreparedBatchVariables(options.getValues()), false, 
options.getConsistency(), options.getSerialConsistency(), 
queryState.getTimestamp());
 }
 
 public ResultMessage executeWithPerStatementVariables(ConsistencyLevel cl, 
QueryState queryState, ListListByteBuffer variables) throws 
RequestExecutionException, RequestValidationException
@@ -189,16 +189,16 @@ public class BatchStatement implements CQLStatement, 
MeasurableForPreparedCache
 if (cl == null)
 throw new InvalidRequestException(Invalid empty consistency 
level);
 
-return execute(new BatchOfPreparedVariables(variables), false, cl, 
queryState.getTimestamp());
+return execute(new BatchOfPreparedVariables(variables), false, cl, 
ConsistencyLevel.SERIAL, queryState.getTimestamp());
 }
 
-public ResultMessage execute(BatchVariables variables, boolean local, 
ConsistencyLevel cl, long now)
+public ResultMessage execute(BatchVariables variables, boolean local, 
ConsistencyLevel cl, ConsistencyLevel serialCl, long now)
 throws RequestExecutionException, RequestValidationException
 {
 // TODO: we don't support a serial consistency for batches in the 
protocol so defaulting to SERIAL for now.
 // We'll need to fix that.
 if (hasConditions)
-return executeWithConditions(variables, cl, 
ConsistencyLevel.SERIAL, now);
+return executeWithConditions(variables, cl, serialCl, now);
 
 executeWithoutConditions(getMutations(variables, local, cl, now), cl);
 return null;



[3/5] git commit: Merge branch 'cassandra-1.2' into cassandra-2.0

2014-03-17 Thread slebresne
Merge branch 'cassandra-1.2' into cassandra-2.0


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/1e64972b
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/1e64972b
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/1e64972b

Branch: refs/heads/trunk
Commit: 1e64972be5c9237a10b4b2635206b0790d7489ff
Parents: 9527b17 8526347
Author: Sylvain Lebresne sylv...@datastax.com
Authored: Mon Mar 17 11:03:47 2014 +0100
Committer: Sylvain Lebresne sylv...@datastax.com
Committed: Mon Mar 17 11:03:47 2014 +0100

--
 NOTICE.txt | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/1e64972b/NOTICE.txt
--



[4/5] git commit: Merge branch 'cassandra-2.0' into cassandra-2.1

2014-03-17 Thread slebresne
Merge branch 'cassandra-2.0' into cassandra-2.1

Conflicts:
CHANGES.txt


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/67119a5a
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/67119a5a
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/67119a5a

Branch: refs/heads/trunk
Commit: 67119a5ab57eb254fea4e78133a63bf28644c01f
Parents: 4bed978 1e64972
Author: Sylvain Lebresne sylv...@datastax.com
Authored: Mon Mar 17 11:08:47 2014 +0100
Committer: Sylvain Lebresne sylv...@datastax.com
Committed: Mon Mar 17 11:08:47 2014 +0100

--
 CHANGES.txt  | 2 ++
 NOTICE.txt   | 2 +-
 .../org/apache/cassandra/cql3/statements/BatchStatement.java | 8 
 3 files changed, 7 insertions(+), 5 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/67119a5a/CHANGES.txt
--
diff --cc CHANGES.txt
index ea436f0,c4e1bd4..0cd9d4a
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@@ -75,51 -55,23 +75,53 @@@ Merged from 2.0
   * Fix CQLSStableWriter.addRow(MapString, Object) (CASSANDRA-6526)
   * Fix HSHA server introducing corrupt data (CASSANDRA-6285)
   * Fix CAS conditions for COMPACT STORAGE tables (CASSANDRA-6813)
 -Merged from 1.2:
 - * Add CMSClassUnloadingEnabled JVM option (CASSANDRA-6541)
 - * Catch memtable flush exceptions during shutdown (CASSANDRA-6735)
 - * Fix broken streams when replacing with same IP (CASSANDRA-6622)
 - * Fix upgradesstables NPE for non-CF-based indexes (CASSANDRA-6645)
 - * Fix partition and range deletes not triggering flush (CASSANDRA-6655)
 - * Fix mean cells and mean row size per sstable calculations (CASSANDRA-6667)
 - * Compact hints after partial replay to clean out tombstones (CASSANDRA-)
 - * Log USING TTL/TIMESTAMP in a counter update warning (CASSANDRA-6649)
 - * Don't exchange schema between nodes with different versions 
(CASSANDRA-6695)
 - * Use real node messaging versions for schema exchange decisions 
(CASSANDRA-6700)
 - * IN on the last clustering columns + ORDER BY DESC yield no results 
(CASSANDRA-6701)
 - * Fix SecondaryIndexManager#deleteFromIndexes() (CASSANDRA-6711)
 - * Fix snapshot repair not snapshotting coordinator itself (CASSANDRA-6713)
 - * Support negative timestamps for CQL3 dates in query string (CASSANDRA-6718)
 - * Avoid NPEs when receiving table changes for an unknown keyspace 
(CASSANDRA-5631)
 - * Fix bootstrapping when there is no schema (CASSANDRA-6685)
 + * Fix saving triggers to schema (CASSANDRA-6789)
 + * Fix trigger mutations when base mutation list is immutable (CASSANDRA-6790)
 + * Fix accounting in FileCacheService to allow re-using RAR (CASSANDRA-6838)
 + * Fix static counter columns (CASSANDRA-6827)
 + * Restore expiring-deleted (cell) compaction optimization (CASSANDRA-6844)
 + * Fix CompactionManager.needsCleanup (CASSANDRA-6845)
 + * Correctly compare BooleanType values other than 0 and 1 (CASSANDRA-6779)
++ * Read message id as string from earlier versions (CASSANDRA-6840)
++ * Properly use the Paxos consistency for (non-protocol) batch 
(CASSANDRA-6837)
 +
 +
 +2.1.0-beta1
 + * Add flush directory distinct from compaction directories (CASSANDRA-6357)
 + * Require JNA by default (CASSANDRA-6575)
 + * add listsnapshots command to nodetool (CASSANDRA-5742)
 + * Introduce AtomicBTreeColumns (CASSANDRA-6271, 6692)
 + * Multithreaded commitlog (CASSANDRA-3578)
 + * allocate fixed index summary memory pool and resample cold index summaries 
 +   to use less memory (CASSANDRA-5519)
 + * Removed multithreaded compaction (CASSANDRA-6142)
 + * Parallelize fetching rows for low-cardinality indexes (CASSANDRA-1337)
 + * change logging from log4j to logback (CASSANDRA-5883)
 + * switch to LZ4 compression for internode communication (CASSANDRA-5887)
 + * Stop using Thrift-generated Index* classes internally (CASSANDRA-5971)
 + * Remove 1.2 network compatibility code (CASSANDRA-5960)
 + * Remove leveled json manifest migration code (CASSANDRA-5996)
 + * Remove CFDefinition (CASSANDRA-6253)
 + * Use AtomicIntegerFieldUpdater in RefCountedMemory (CASSANDRA-6278)
 + * User-defined types for CQL3 (CASSANDRA-5590)
 + * Use of o.a.c.metrics in nodetool (CASSANDRA-5871, 6406)
 + * Batch read from OTC's queue and cleanup (CASSANDRA-1632)
 + * Secondary index support for collections (CASSANDRA-4511, 6383)
 + * SSTable metadata(Stats.db) format change (CASSANDRA-6356)
 + * Push composites support in the storage engine
 +   (CASSANDRA-5417, CASSANDRA-6520)
 + * Add snapshot space used to cfstats (CASSANDRA-6231)
 + * Add cardinality estimator for key count estimation (CASSANDRA-5906)
 + * CF id is changed to be non-deterministic. Data dir/key cache are created

[5/5] git commit: Merge branch 'cassandra-2.1' into trunk

2014-03-17 Thread slebresne
Merge branch 'cassandra-2.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/67b85218
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/67b85218
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/67b85218

Branch: refs/heads/trunk
Commit: 67b852182b73b3ac95f496209c97f5957cc248bf
Parents: b74c2ad 67119a5
Author: Sylvain Lebresne sylv...@datastax.com
Authored: Mon Mar 17 11:09:02 2014 +0100
Committer: Sylvain Lebresne sylv...@datastax.com
Committed: Mon Mar 17 11:09:02 2014 +0100

--
 CHANGES.txt  | 2 ++
 NOTICE.txt   | 2 +-
 .../org/apache/cassandra/cql3/statements/BatchStatement.java | 8 
 3 files changed, 7 insertions(+), 5 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/67b85218/CHANGES.txt
--



[jira] [Commented] (CASSANDRA-6837) Batch CAS does not support LOCAL_SERIAL

2014-03-17 Thread Sylvain Lebresne (JIRA)

[ 
https://issues.apache.org/jira/browse/CASSANDRA-6837?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13937631#comment-13937631
 ] 

Sylvain Lebresne commented on CASSANDRA-6837:
-

Committed, thanks.

bq. but can we rename to commitCL instead of serialCL?

Hum, the thing is that serialCL is the CL for the paxos phase, not the one use 
during the commit (it corresponds to the consistencyForPaxos argument of 
SP.cas(), not to consistencyForCommit), so renaming it commitCL is probably a 
bad idea. I'm fine renaming it to paxosCL or something though, I don't really 
care much (though we use serialConsistency in other places already like the 
native protocol, QueryOptions and in thrift/CassandraServer so if it was just 
me, I'd leave it be).

 Batch CAS does not support LOCAL_SERIAL
 ---

 Key: CASSANDRA-6837
 URL: https://issues.apache.org/jira/browse/CASSANDRA-6837
 Project: Cassandra
  Issue Type: Bug
  Components: Core
Reporter: Nicolas Favre-Felix
Assignee: Sylvain Lebresne
 Fix For: 2.0.7

 Attachments: 6837.txt


 The batch CAS feature introduced in Cassandra 2.0.6 does not support the 
 LOCAL_SERIAL consistency level, and always uses SERIAL.
 Create a cluster with 4 nodes with the following topology:
 {code}
 Datacenter: DC2
 ===
 Status=Up/Down
 |/ State=Normal/Leaving/Joining/Moving
 --  AddressLoad   Tokens  Owns   Host ID  
  Rack
 UN  127.0.0.3  269 KB 256 26.3%  ae92d997-6042-42d9-b447-943080569742 
  RAC1
 UN  127.0.0.4  197.81 KB  256 25.1%  3edc92d7-9d1b-472a-8452-24dddbc4502c 
  RAC1
 Datacenter: DC1
 ===
 Status=Up/Down
 |/ State=Normal/Leaving/Joining/Moving
 --  AddressLoad   Tokens  Owns   Host ID  
  Rack
 UN  127.0.0.1  226.92 KB  256 24.8%  dbc17bd7-1ede-47a2-9b31-6063752d6eb3 
  RAC1
 UN  127.0.0.2  179.27 KB  256 23.7%  bb0ad285-34d2-4989-a664-b068986ab6fa 
  RAC1
 {code}
 In cqlsh:
 {code}
 cqlsh CREATE KEYSPACE foo WITH replication = {'class': 
 'NetworkTopologyStrategy', 'DC1': 2, 'DC2': 2};
 cqlsh USE foo;
 cqlsh:foo CREATE TABLE bar (x text, y bigint, z bigint, t bigint, PRIMARY 
 KEY(x,y));
 {code}
 Kill nodes 127.0.0.3 and 127.0.0.4:
 {code}
 Datacenter: DC2
 ===
 Status=Up/Down
 |/ State=Normal/Leaving/Joining/Moving
 --  AddressLoad   Tokens  Owns   Host ID  
  Rack
 DN  127.0.0.3  262.37 KB  256 26.3%  ae92d997-6042-42d9-b447-943080569742 
  RAC1
 DN  127.0.0.4  208.04 KB  256 25.1%  3edc92d7-9d1b-472a-8452-24dddbc4502c 
  RAC1
 Datacenter: DC1
 ===
 Status=Up/Down
 |/ State=Normal/Leaving/Joining/Moving
 --  AddressLoad   Tokens  Owns   Host ID  
  Rack
 UN  127.0.0.1  214.82 KB  256 24.8%  dbc17bd7-1ede-47a2-9b31-6063752d6eb3 
  RAC1
 UN  127.0.0.2  178.23 KB  256 23.7%  bb0ad285-34d2-4989-a664-b068986ab6fa 
  RAC1
 {code}
 Connect to 127.0.0.1 in DC1 and run a CAS batch at 
 CL.LOCAL_SERIAL+LOCAL_QUORUM:
 {code}
 final Cluster cluster = new Cluster.Builder()
 .addContactPoint(127.0.0.1)
 .withLoadBalancingPolicy(new DCAwareRoundRobinPolicy(DC1))
 .build();
 final Session session = cluster.connect(foo);
 Batch batch = QueryBuilder.batch();
 batch.add(new SimpleStatement(INSERT INTO bar (x,y,z) VALUES ('abc', 
 123, 1) IF NOT EXISTS));
 batch.add(new SimpleStatement(UPDATE bar SET t=2 WHERE x='abc' AND 
 y=123));
 batch.setConsistencyLevel(ConsistencyLevel.LOCAL_QUORUM);
 batch.setSerialConsistencyLevel(ConsistencyLevel.LOCAL_SERIAL);
 session.execute(batch);
 {code}
 The batch fails with:
 {code}
 Caused by: com.datastax.driver.core.exceptions.UnavailableException: Not 
 enough replica available for query at consistency SERIAL (3 required but only 
 2 alive)
   at com.datastax.driver.core.Responses$Error$1.decode(Responses.java:44)
   at com.datastax.driver.core.Responses$Error$1.decode(Responses.java:33)
   at 
 com.datastax.driver.core.Message$ProtocolDecoder.decode(Message.java:182)
   at 
 org.jboss.netty.handler.codec.oneone.OneToOneDecoder.handleUpstream(OneToOneDecoder.java:66)
   ... 21 more
 {code}



--
This message was sent by Atlassian JIRA
(v6.2#6252)


[jira] [Resolved] (CASSANDRA-6872) Update Notice for 2014

2014-03-17 Thread Sylvain Lebresne (JIRA)

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

Sylvain Lebresne resolved CASSANDRA-6872.
-

Resolution: Fixed

Committed.

 Update Notice for 2014
 --

 Key: CASSANDRA-6872
 URL: https://issues.apache.org/jira/browse/CASSANDRA-6872
 Project: Cassandra
  Issue Type: Task
Reporter: Edward Capriolo
Assignee: Edward Capriolo

 [edward@jackintosh cassandra]$ git diff NOTICE.txt
 diff --git a/NOTICE.txt b/NOTICE.txt
 index 14ffad2..cf7b8dc 100644
 --- a/NOTICE.txt
 +++ b/NOTICE.txt
 @@ -1,5 +1,5 @@
  Apache Cassandra
 -Copyright 2009, 2010 The Apache Software Foundation
 +Copyright 2009-2014 The Apache Software Foundation
  
  This product includes software developed by The Apache Software
  Foundation (http://www.apache.org/).



--
This message was sent by Atlassian JIRA
(v6.2#6252)


[jira] [Commented] (CASSANDRA-6869) Broken 1.2 sstables support in 2.1

2014-03-17 Thread Sylvain Lebresne (JIRA)

[ 
https://issues.apache.org/jira/browse/CASSANDRA-6869?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13937650#comment-13937650
 ] 

Sylvain Lebresne commented on CASSANDRA-6869:
-

Truth is, when we said we would make 2.0 a mandatory stop to upgrade to 2.1, I 
kind of expected that would include asking people to upgrade their sstables 
too. To put it another way, since we do make 2.0 a mandatory stop (even 2.0.6+ 
in fact), I wonder if this is not the right time to additionally force an 
updatesstables while we're at it, and thus drop old sstable compat code. In a 
majority of case, upgrading to 2.0 will mean doing an updatesstables anyway 
since you can't stream without that (i.e. updatesstables is almost implied by 
an upgrade to a major), so I don't think that's a big additional burden.

So anyway, we can indeed add back code to handle the pre-2.0 format, but my 
vote goes to extending the make 2.0 a mandatory stop definition to include 
sstables. 

 Broken 1.2 sstables support in 2.1
 --

 Key: CASSANDRA-6869
 URL: https://issues.apache.org/jira/browse/CASSANDRA-6869
 Project: Cassandra
  Issue Type: Bug
Reporter: Aleksey Yeschenko
Assignee: Sylvain Lebresne
 Fix For: 2.1 beta2


 CASSANDRA-5417 has broken 1.2 (ic) sstables support in at least two ways.
 1. CFMetaData.getOnDiskSerializer(), used by SSTableNamesIterator and 
 IndexedSliceReader, doesn't account for pre-2.0 supercolumn sstables
 2. More importantly, ACCNT.CompositeDeserializer doesn't handle ic tables' 
 cell counts, and maybeReadNext() might throw EOFException while expecting the 
 partition end marker. SimpleDeserializer is likely just as broken.
 I'd expect more issues like this, but less obvious, in the code, and thus am 
 torn between forcing people to run upgradesstables on 2.0 and actually fixing 
 these issues, and hoping that we haven't missed anything.
 Implementing a supercolumn aware AtomDeserializer is not hard, fixing 
 CompositeDeserializer and SimpleDeserializer isn't very hard either, but I 
 really am worried about stuff that's less obvious. Plus, if we drop that 
 support, we can get rid of some legacy supercolumn code in 2.1. Minus, 
 obviously, is a bit of extra pain for 2.0-2.1 upgraders still having 1.2- 
 sstables around.



--
This message was sent by Atlassian JIRA
(v6.2#6252)


[jira] [Commented] (CASSANDRA-6869) Broken 1.2 sstables support in 2.1

2014-03-17 Thread Aleksey Yeschenko (JIRA)

[ 
https://issues.apache.org/jira/browse/CASSANDRA-6869?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13937701#comment-13937701
 ] 

Aleksey Yeschenko commented on CASSANDRA-6869:
--

For the record, I'm also leaning towards making upgradesstables mandatory in 
2.0.

 Broken 1.2 sstables support in 2.1
 --

 Key: CASSANDRA-6869
 URL: https://issues.apache.org/jira/browse/CASSANDRA-6869
 Project: Cassandra
  Issue Type: Bug
Reporter: Aleksey Yeschenko
Assignee: Sylvain Lebresne
 Fix For: 2.1 beta2


 CASSANDRA-5417 has broken 1.2 (ic) sstables support in at least two ways.
 1. CFMetaData.getOnDiskSerializer(), used by SSTableNamesIterator and 
 IndexedSliceReader, doesn't account for pre-2.0 supercolumn sstables
 2. More importantly, ACCNT.CompositeDeserializer doesn't handle ic tables' 
 cell counts, and maybeReadNext() might throw EOFException while expecting the 
 partition end marker. SimpleDeserializer is likely just as broken.
 I'd expect more issues like this, but less obvious, in the code, and thus am 
 torn between forcing people to run upgradesstables on 2.0 and actually fixing 
 these issues, and hoping that we haven't missed anything.
 Implementing a supercolumn aware AtomDeserializer is not hard, fixing 
 CompositeDeserializer and SimpleDeserializer isn't very hard either, but I 
 really am worried about stuff that's less obvious. Plus, if we drop that 
 support, we can get rid of some legacy supercolumn code in 2.1. Minus, 
 obviously, is a bit of extra pain for 2.0-2.1 upgraders still having 1.2- 
 sstables around.



--
This message was sent by Atlassian JIRA
(v6.2#6252)


git commit: Fix typo

2014-03-17 Thread slebresne
Repository: cassandra
Updated Branches:
  refs/heads/cassandra-2.1 67119a5ab - 7abfbab72


Fix typo


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/7abfbab7
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/7abfbab7
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/7abfbab7

Branch: refs/heads/cassandra-2.1
Commit: 7abfbab7284648164ee511252197b31b3c5eb509
Parents: 67119a5
Author: Sylvain Lebresne sylv...@datastax.com
Authored: Mon Mar 17 12:50:19 2014 +0100
Committer: Sylvain Lebresne sylv...@datastax.com
Committed: Mon Mar 17 12:50:19 2014 +0100

--
 .../org/apache/cassandra/db/columniterator/IndexedSliceReader.java | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/7abfbab7/src/java/org/apache/cassandra/db/columniterator/IndexedSliceReader.java
--
diff --git 
a/src/java/org/apache/cassandra/db/columniterator/IndexedSliceReader.java 
b/src/java/org/apache/cassandra/db/columniterator/IndexedSliceReader.java
index 9c1fece..2a22cc6 100644
--- a/src/java/org/apache/cassandra/db/columniterator/IndexedSliceReader.java
+++ b/src/java/org/apache/cassandra/db/columniterator/IndexedSliceReader.java
@@ -196,7 +196,7 @@ class IndexedSliceReader extends 
AbstractIteratorOnDiskAtom implements OnDiskA
 {
 // See indexFor above.
 return sstable.metadata.isSuper()  
sstable.descriptor.version.hasSuperColumns
- ? CellNames.compositeDense(SuperColumns.scName(name))
+ ? CellNames.simpleDense(SuperColumns.scName(name))
  : name;
 }
 



[1/2] git commit: Fix typo

2014-03-17 Thread slebresne
Repository: cassandra
Updated Branches:
  refs/heads/trunk 67b852182 - 6a97a9c94


Fix typo


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/7abfbab7
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/7abfbab7
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/7abfbab7

Branch: refs/heads/trunk
Commit: 7abfbab7284648164ee511252197b31b3c5eb509
Parents: 67119a5
Author: Sylvain Lebresne sylv...@datastax.com
Authored: Mon Mar 17 12:50:19 2014 +0100
Committer: Sylvain Lebresne sylv...@datastax.com
Committed: Mon Mar 17 12:50:19 2014 +0100

--
 .../org/apache/cassandra/db/columniterator/IndexedSliceReader.java | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/7abfbab7/src/java/org/apache/cassandra/db/columniterator/IndexedSliceReader.java
--
diff --git 
a/src/java/org/apache/cassandra/db/columniterator/IndexedSliceReader.java 
b/src/java/org/apache/cassandra/db/columniterator/IndexedSliceReader.java
index 9c1fece..2a22cc6 100644
--- a/src/java/org/apache/cassandra/db/columniterator/IndexedSliceReader.java
+++ b/src/java/org/apache/cassandra/db/columniterator/IndexedSliceReader.java
@@ -196,7 +196,7 @@ class IndexedSliceReader extends 
AbstractIteratorOnDiskAtom implements OnDiskA
 {
 // See indexFor above.
 return sstable.metadata.isSuper()  
sstable.descriptor.version.hasSuperColumns
- ? CellNames.compositeDense(SuperColumns.scName(name))
+ ? CellNames.simpleDense(SuperColumns.scName(name))
  : name;
 }
 



[2/2] git commit: Merge branch 'cassandra-2.1' into trunk

2014-03-17 Thread slebresne
Merge branch 'cassandra-2.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/6a97a9c9
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/6a97a9c9
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/6a97a9c9

Branch: refs/heads/trunk
Commit: 6a97a9c946ff9731f8c5070ab50db8e75e02a336
Parents: 67b8521 7abfbab
Author: Sylvain Lebresne sylv...@datastax.com
Authored: Mon Mar 17 12:50:29 2014 +0100
Committer: Sylvain Lebresne sylv...@datastax.com
Committed: Mon Mar 17 12:50:29 2014 +0100

--
 .../org/apache/cassandra/db/columniterator/IndexedSliceReader.java | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
--




[jira] [Commented] (CASSANDRA-6869) Broken 1.2 sstables support in 2.1

2014-03-17 Thread Jonathan Ellis (JIRA)

[ 
https://issues.apache.org/jira/browse/CASSANDRA-6869?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13937713#comment-13937713
 ] 

Jonathan Ellis commented on CASSANDRA-6869:
---

wfm

 Broken 1.2 sstables support in 2.1
 --

 Key: CASSANDRA-6869
 URL: https://issues.apache.org/jira/browse/CASSANDRA-6869
 Project: Cassandra
  Issue Type: Bug
Reporter: Aleksey Yeschenko
Assignee: Sylvain Lebresne
 Fix For: 2.1 beta2


 CASSANDRA-5417 has broken 1.2 (ic) sstables support in at least two ways.
 1. CFMetaData.getOnDiskSerializer(), used by SSTableNamesIterator and 
 IndexedSliceReader, doesn't account for pre-2.0 supercolumn sstables
 2. More importantly, ACCNT.CompositeDeserializer doesn't handle ic tables' 
 cell counts, and maybeReadNext() might throw EOFException while expecting the 
 partition end marker. SimpleDeserializer is likely just as broken.
 I'd expect more issues like this, but less obvious, in the code, and thus am 
 torn between forcing people to run upgradesstables on 2.0 and actually fixing 
 these issues, and hoping that we haven't missed anything.
 Implementing a supercolumn aware AtomDeserializer is not hard, fixing 
 CompositeDeserializer and SimpleDeserializer isn't very hard either, but I 
 really am worried about stuff that's less obvious. Plus, if we drop that 
 support, we can get rid of some legacy supercolumn code in 2.1. Minus, 
 obviously, is a bit of extra pain for 2.0-2.1 upgraders still having 1.2- 
 sstables around.



--
This message was sent by Atlassian JIRA
(v6.2#6252)


[jira] [Updated] (CASSANDRA-6774) Cleanup fails with assertion error after stopping previous run

2014-03-17 Thread Marcus Eriksson (JIRA)

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

Marcus Eriksson updated CASSANDRA-6774:
---

Attachment: (was: 0001-6774-wip.patch)

 Cleanup fails with assertion error after stopping previous run
 --

 Key: CASSANDRA-6774
 URL: https://issues.apache.org/jira/browse/CASSANDRA-6774
 Project: Cassandra
  Issue Type: Bug
  Components: Core
 Environment: 2.0.5
Reporter: Keith Wright
Assignee: Marcus Eriksson
 Fix For: 2.0.7

 Attachments: 
 0001-Dont-continue-after-failing-to-cancel-in-progress-co.patch, 6774-v2.txt


 I am stress testing a new 2.0.5 cluster and did the following:
 - start decommission during heavy write, moderate read load
 - trigger cleanup on non-decommissioning node (nodetool cleanup)
 - Started to see higher GC load stop stopped cleanup via nodetool stop CLEANUP
 - attempt to launch cleanup now fails with the following message in console.
 Cassandra log shows: 
 http://aep.appspot.com/display/cKmlMcDuKD72iYAcBykDuVZkRWY/



--
This message was sent by Atlassian JIRA
(v6.2#6252)


[jira] [Updated] (CASSANDRA-6774) Cleanup fails with assertion error after stopping previous run

2014-03-17 Thread Marcus Eriksson (JIRA)

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

Marcus Eriksson updated CASSANDRA-6774:
---

Attachment: 0001-6774-wip.patch

Attaching patch that;
* Introduces an enum with the status for the operation (currently only 
aborted/successful)
* Makes cfs.markAllCompacting() return empty list if there are no sstables to 
execute the operation on and null if we failed cancelling
* Make nodetool output an error message and set exit code to 1 if we fail

 Cleanup fails with assertion error after stopping previous run
 --

 Key: CASSANDRA-6774
 URL: https://issues.apache.org/jira/browse/CASSANDRA-6774
 Project: Cassandra
  Issue Type: Bug
  Components: Core
 Environment: 2.0.5
Reporter: Keith Wright
Assignee: Marcus Eriksson
 Fix For: 2.0.7

 Attachments: 0001-6774-wip.patch, 
 0001-Dont-continue-after-failing-to-cancel-in-progress-co.patch, 6774-v2.txt


 I am stress testing a new 2.0.5 cluster and did the following:
 - start decommission during heavy write, moderate read load
 - trigger cleanup on non-decommissioning node (nodetool cleanup)
 - Started to see higher GC load stop stopped cleanup via nodetool stop CLEANUP
 - attempt to launch cleanup now fails with the following message in console.
 Cassandra log shows: 
 http://aep.appspot.com/display/cKmlMcDuKD72iYAcBykDuVZkRWY/



--
This message was sent by Atlassian JIRA
(v6.2#6252)


[jira] [Commented] (CASSANDRA-6613) Java 7u51 breaks internode encryption

2014-03-17 Thread Ray Sinnema (JIRA)

[ 
https://issues.apache.org/jira/browse/CASSANDRA-6613?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13937730#comment-13937730
 ] 

Ray Sinnema commented on CASSANDRA-6613:


This patch works fine, thanks!

 Java 7u51 breaks internode encryption
 -

 Key: CASSANDRA-6613
 URL: https://issues.apache.org/jira/browse/CASSANDRA-6613
 Project: Cassandra
  Issue Type: Bug
  Components: Core
Reporter: Ray Sinnema
 Attachments: 6613.txt


 With the latest update of the Oracle JRE (7u51) internode encryption no 
 longer works, since none of the cipher suites 
 (TLS_RSA_WITH_AES_128_CBC_SHA,TLS_RSA_WITH_AES_256_CBC_SHA) that Cassandra 
 supports work anymore. 
 I see this in the log file:
 WARN  o.a.cassandra.security.SSLFactory - Filtering out 
 TLS_RSA_WITH_AES_256_CBC_SHA as it isnt supported by the socket
 See http://www.oracle.com/technetwork/java/javase/7u51-relnotes-2085002.html 
 (all the way at the bottom) for more information.



--
This message was sent by Atlassian JIRA
(v6.2#6252)


git commit: Fix another typo

2014-03-17 Thread aleksey
Repository: cassandra
Updated Branches:
  refs/heads/cassandra-2.1 7abfbab72 - 30554b725


Fix another typo


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/30554b72
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/30554b72
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/30554b72

Branch: refs/heads/cassandra-2.1
Commit: 30554b7252efa1cf544f12ee7923f4f9ad845b85
Parents: 7abfbab
Author: Aleksey Yeschenko alek...@apache.org
Authored: Mon Mar 17 15:49:03 2014 +0300
Committer: Aleksey Yeschenko alek...@apache.org
Committed: Mon Mar 17 15:49:03 2014 +0300

--
 .../org/apache/cassandra/db/columniterator/IndexedSliceReader.java | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/30554b72/src/java/org/apache/cassandra/db/columniterator/IndexedSliceReader.java
--
diff --git 
a/src/java/org/apache/cassandra/db/columniterator/IndexedSliceReader.java 
b/src/java/org/apache/cassandra/db/columniterator/IndexedSliceReader.java
index 2a22cc6..22fe5fa 100644
--- a/src/java/org/apache/cassandra/db/columniterator/IndexedSliceReader.java
+++ b/src/java/org/apache/cassandra/db/columniterator/IndexedSliceReader.java
@@ -186,7 +186,7 @@ class IndexedSliceReader extends 
AbstractIteratorOnDiskAtom implements OnDiskA
 if (sstable.metadata.isSuper()  
sstable.descriptor.version.hasSuperColumns)
 {
 CellNameType scComparator = SuperColumns.scNameType(comparator);
-Composite scName = 
CellNames.compositeDense(SuperColumns.scName(name));
+Composite scName = 
CellNames.simpleDense(SuperColumns.scName(name));
 return IndexHelper.indexFor(scName, indexes, scComparator, 
reversed, startIdx);
 }
 return IndexHelper.indexFor(name, indexes, comparator, reversed, 
startIdx);



[2/2] git commit: Merge branch 'cassandra-2.1' into trunk

2014-03-17 Thread aleksey
Merge branch 'cassandra-2.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/976f4010
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/976f4010
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/976f4010

Branch: refs/heads/trunk
Commit: 976f4010d6bbfa1694bda53e71a7a7afe637094e
Parents: 6a97a9c 30554b7
Author: Aleksey Yeschenko alek...@apache.org
Authored: Mon Mar 17 15:50:39 2014 +0300
Committer: Aleksey Yeschenko alek...@apache.org
Committed: Mon Mar 17 15:50:39 2014 +0300

--
 .../org/apache/cassandra/db/columniterator/IndexedSliceReader.java | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
--




[1/2] git commit: Fix another typo

2014-03-17 Thread aleksey
Repository: cassandra
Updated Branches:
  refs/heads/trunk 6a97a9c94 - 976f4010d


Fix another typo


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/30554b72
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/30554b72
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/30554b72

Branch: refs/heads/trunk
Commit: 30554b7252efa1cf544f12ee7923f4f9ad845b85
Parents: 7abfbab
Author: Aleksey Yeschenko alek...@apache.org
Authored: Mon Mar 17 15:49:03 2014 +0300
Committer: Aleksey Yeschenko alek...@apache.org
Committed: Mon Mar 17 15:49:03 2014 +0300

--
 .../org/apache/cassandra/db/columniterator/IndexedSliceReader.java | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/30554b72/src/java/org/apache/cassandra/db/columniterator/IndexedSliceReader.java
--
diff --git 
a/src/java/org/apache/cassandra/db/columniterator/IndexedSliceReader.java 
b/src/java/org/apache/cassandra/db/columniterator/IndexedSliceReader.java
index 2a22cc6..22fe5fa 100644
--- a/src/java/org/apache/cassandra/db/columniterator/IndexedSliceReader.java
+++ b/src/java/org/apache/cassandra/db/columniterator/IndexedSliceReader.java
@@ -186,7 +186,7 @@ class IndexedSliceReader extends 
AbstractIteratorOnDiskAtom implements OnDiskA
 if (sstable.metadata.isSuper()  
sstable.descriptor.version.hasSuperColumns)
 {
 CellNameType scComparator = SuperColumns.scNameType(comparator);
-Composite scName = 
CellNames.compositeDense(SuperColumns.scName(name));
+Composite scName = 
CellNames.simpleDense(SuperColumns.scName(name));
 return IndexHelper.indexFor(scName, indexes, scComparator, 
reversed, startIdx);
 }
 return IndexHelper.indexFor(name, indexes, comparator, reversed, 
startIdx);



[jira] [Commented] (CASSANDRA-6788) Race condition silently kills thrift server

2014-03-17 Thread Christian Rolf (JIRA)

[ 
https://issues.apache.org/jira/browse/CASSANDRA-6788?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13937776#comment-13937776
 ] 

Christian Rolf commented on CASSANDRA-6788:
---

Having read through the (somewhat horrendous) code of 
java.util.concurrent.ThreadPoolExecutor, I agree whole-heartedly with your 
version. It's the only way to be completely safe from the race; the contract 
for afterExecute simply isn't clear enough to rely on.
I see I put myself as the assignee, what do I need to do to subtmit the patch?

 Race condition silently kills thrift server
 ---

 Key: CASSANDRA-6788
 URL: https://issues.apache.org/jira/browse/CASSANDRA-6788
 Project: Cassandra
  Issue Type: Bug
Reporter: Christian Rolf
Assignee: Christian Rolf
 Attachments: 6788-v2.txt, 6788-v3.txt, 6793-v3-rebased.txt, 
 race_patch.diff


 There's a race condition in CustomTThreadPoolServer that can cause the thrift 
 server to silently stop listening for connections. 
 It happens when the executor service throws a RejectedExecutionException, 
 which is not caught.
  
 Silent in the sense that OpsCenter doesn't notice any problem since JMX is 
 still running fine.



--
This message was sent by Atlassian JIRA
(v6.2#6252)


[jira] [Commented] (CASSANDRA-6774) Cleanup fails with assertion error after stopping previous run

2014-03-17 Thread Jonathan Ellis (JIRA)

[ 
https://issues.apache.org/jira/browse/CASSANDRA-6774?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=1393#comment-1393
 ] 

Jonathan Ellis commented on CASSANDRA-6774:
---

LGTM.

Are you still comfortable with 2.0 for this or should we do it in 2.1?

 Cleanup fails with assertion error after stopping previous run
 --

 Key: CASSANDRA-6774
 URL: https://issues.apache.org/jira/browse/CASSANDRA-6774
 Project: Cassandra
  Issue Type: Bug
  Components: Core
 Environment: 2.0.5
Reporter: Keith Wright
Assignee: Marcus Eriksson
 Fix For: 2.0.7

 Attachments: 0001-6774-wip.patch, 
 0001-Dont-continue-after-failing-to-cancel-in-progress-co.patch, 6774-v2.txt


 I am stress testing a new 2.0.5 cluster and did the following:
 - start decommission during heavy write, moderate read load
 - trigger cleanup on non-decommissioning node (nodetool cleanup)
 - Started to see higher GC load stop stopped cleanup via nodetool stop CLEANUP
 - attempt to launch cleanup now fails with the following message in console.
 Cassandra log shows: 
 http://aep.appspot.com/display/cKmlMcDuKD72iYAcBykDuVZkRWY/



--
This message was sent by Atlassian JIRA
(v6.2#6252)


[jira] [Comment Edited] (CASSANDRA-6852) can't repair -pr part of data when not replicating data everywhere (multiDCs)

2014-03-17 Thread Cyril Scetbon (JIRA)

[ 
https://issues.apache.org/jira/browse/CASSANDRA-6852?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13935075#comment-13935075
 ] 

Cyril Scetbon edited comment on CASSANDRA-6852 at 3/17/14 1:42 PM:
---

Great ! Can you tell me how does it work internally or point me to a url where 
it is explained. Cause to check where a key is stored I have sorted all tokens 
to find ranges and searched where it's stored my key.

Here is what I find :
{code}
cqlsh:ks1 select str,token(str) from t1 where str='str46947' limit 10;

 str  | token(str)
--+
 str46947 | 936110467609605413

$ nodetool ring ks1 | grep Up | sort -k 8 -n | grep -C 1 936104068755107049
10.0.1.128  r01 Up Normal  163.72 KB   0.00%   
904295202895283495  
10.0.1.193  r01 Up Normal  44 MB   50.75%  
914026073010016644  
10.0.1.244  r01 Up Normal  44.05 MB50.89%  
924832200596750447  
10.0.1.244  r01 Up Normal  44.05 MB50.89%  
926119170189943733  
10.0.1.128  r01 Up Normal  163.72 KB   0.00%   
936104068755107049 -- 
10.0.1.128  r01 Up Normal  163.72 KB   0.00%   
943395402795400988 -- 
10.0.1.119  r01 Up Normal  42.08 MB48.58%  
947638296150677630  
10.0.1.128  r01 Up Normal  163.72 KB   0.00%   
948472585151216644  
10.0.1.69   r01 Up Normal  166.82 KB   0.00%   
956130981441305365
{code}
As token for key str46947 is between 936104068755107049 and 943395402795400988, 
I suppose this key should be stored on 10.0.1.128. Does the code checks it and 
as it knows it can't store data for that keyspace it stores it on the previous 
or the next range which is not owned by this node ? 

Thanks


was (Author: cscetbon):
Great ! Can you tell me how does it work internally or to point me to a url 
where is explained. Cause to check where a key is stored I have sorted all 
tokens to find ranges and searched where it's stored my key.

Here is what I find :
{code}
cqlsh:ks1 select str,token(str) from t1 where str='str46947' limit 10;

 str  | token(str)
--+
 str46947 | 936110467609605413

$ nodetool ring ks1 | grep Up | sort -k 8 -n | grep -C 1 936104068755107049
10.0.1.128  r01 Up Normal  163.72 KB   0.00%   
904295202895283495  
10.0.1.193  r01 Up Normal  44 MB   50.75%  
914026073010016644  
10.0.1.244  r01 Up Normal  44.05 MB50.89%  
924832200596750447  
10.0.1.244  r01 Up Normal  44.05 MB50.89%  
926119170189943733  
10.0.1.128  r01 Up Normal  163.72 KB   0.00%   
936104068755107049 -- 
10.0.1.128  r01 Up Normal  163.72 KB   0.00%   
943395402795400988 -- 
10.0.1.119  r01 Up Normal  42.08 MB48.58%  
947638296150677630  
10.0.1.128  r01 Up Normal  163.72 KB   0.00%   
948472585151216644  
10.0.1.69   r01 Up Normal  166.82 KB   0.00%   
956130981441305365
{code}
As token for key str46947 is between 936104068755107049 and 943395402795400988, 
I suppose this key should be stored on 10.0.1.128. Does the code checks it and 
as it knows it can't store data for that keyspace it stores it on the previous 
or the next range which is not owned by this node ? 

Thanks

 can't repair -pr part of data when not replicating data everywhere (multiDCs)
 -

 Key: CASSANDRA-6852
 URL: https://issues.apache.org/jira/browse/CASSANDRA-6852
 Project: Cassandra
  Issue Type: Bug
  Components: Core
Reporter: Cyril Scetbon
  Labels: multi-dcs, ranges, repair

 Our environment is as follows :
 - 3 DCS : dc1,dc2 and dc3
 - replicate all keyspaces to dc1 and dc2
 - replicate a few keyspaces to dc3 as we have less hardware and use it for 
 computing statistics
 We use repair -pr everywhere regularly. FYI, a full repair takes almost 20 
 hours per node. The matter is that we can't use repair -pr anymore for 
 tokens stored on dc3 concerning keyspaces not replicated. We should have a 
 way to repair those ranges without doing a FULL REPAIR everywhere




[jira] [Commented] (CASSANDRA-6863) Incorrect read repair of range thombstones

2014-03-17 Thread Oleg Anastasyev (JIRA)

[ 
https://issues.apache.org/jira/browse/CASSANDRA-6863?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13937884#comment-13937884
 ] 

Oleg Anastasyev commented on CASSANDRA-6863:


By the way, should not ColumnFamily.digest include range thombstones, so 
entropy in range thombstones is detected and read repaired ? Currently only 
cells and deleted cells are participate in digest response calculation as I can 
see in ColumnFamily.digest() and ReadVerbHandler.getResponse...

 Incorrect read repair of range thombstones
 --

 Key: CASSANDRA-6863
 URL: https://issues.apache.org/jira/browse/CASSANDRA-6863
 Project: Cassandra
  Issue Type: Bug
 Environment: 2.0
Reporter: Oleg Anastasyev
 Attachments: ReadRepairRangeThombstoneDiff.txt, 
 ReadRepairsDebugLogger.txt


 Rows with range thombstones are read repaired for every replica, if RR is 
 triggered (this is because CF.diff() returns non null if !isEmpty(), which in 
 turn returns false if range thombstones list is not empty). 
 Also, full rangethombstone list is send to all nodes, which could be a 
 problem if you have wide partition.
 Fixed this by evaluating diff on range thombstone lists as well as on 
 deteleInfo of endpoint CF versions. Also return null from CF.diff, if no diff 
 in RTL.
 A second patch (ReadRepairsDebugLogger.txt) adds some debug logging to look 
 at read repairs. You may find it useful as well.



--
This message was sent by Atlassian JIRA
(v6.2#6252)


[jira] [Updated] (CASSANDRA-5483) Repair tracing

2014-03-17 Thread Ben Chan (JIRA)

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

Ben Chan updated CASSANDRA-5483:


Attachment: 
5483-v08-15-Limit-trace-notifications.-Add-exponential-backoff.patch
5483-v08-14-Poll-system_traces.events.patch

5483-v08-13-sendNotification-of-local-traces-back-to-nodetool.patch

5483-v08-12-Trace-streaming-in-Differencer-StreamingRepairTask.patch
5483-v08-11-Shorten-trace-messages.-Use-Tracing-begin.patch

 Repair tracing
 --

 Key: CASSANDRA-5483
 URL: https://issues.apache.org/jira/browse/CASSANDRA-5483
 Project: Cassandra
  Issue Type: Improvement
  Components: Tools
Reporter: Yuki Morishita
Assignee: Ben Chan
Priority: Minor
  Labels: repair
 Attachments: 5483-full-trunk.txt, 
 5483-v06-04-Allow-tracing-ttl-to-be-configured.patch, 
 5483-v06-05-Add-a-command-column-to-system_traces.events.patch, 
 5483-v06-06-Fix-interruption-in-tracestate-propagation.patch, 
 5483-v07-07-Better-constructor-parameters-for-DebuggableThreadPoolExecutor.patch,
  5483-v07-08-Fix-brace-style.patch, 
 5483-v07-09-Add-trace-option-to-a-more-complete-set-of-repair-functions.patch,
  5483-v07-10-Correct-name-of-boolean-repairedAt-to-fullRepair.patch, 
 5483-v08-11-Shorten-trace-messages.-Use-Tracing-begin.patch, 
 5483-v08-12-Trace-streaming-in-Differencer-StreamingRepairTask.patch, 
 5483-v08-13-sendNotification-of-local-traces-back-to-nodetool.patch, 
 5483-v08-14-Poll-system_traces.events.patch, 
 5483-v08-15-Limit-trace-notifications.-Add-exponential-backoff.patch, 
 ccm-repair-test, cqlsh-left-justify-text-columns.patch, 
 test-5483-system_traces-events.txt, 
 trunk@4620823-5483-v02-0001-Trace-filtering-and-tracestate-propagation.patch, 
 trunk@4620823-5483-v02-0002-Put-a-few-traces-parallel-to-the-repair-logging.patch,
  tr...@8ebeee1-5483-v01-001-trace-filtering-and-tracestate-propagation.txt, 
 tr...@8ebeee1-5483-v01-002-simple-repair-tracing.txt, 
 v02p02-5483-v03-0003-Make-repair-tracing-controllable-via-nodetool.patch, 
 v02p02-5483-v04-0003-This-time-use-an-EnumSet-to-pass-boolean-repair-options.patch,
  v02p02-5483-v05-0003-Use-long-instead-of-EnumSet-to-work-with-JMX.patch


 I think it would be nice to log repair stats and results like query tracing 
 stores traces to system keyspace. With it, you don't have to lookup each log 
 file to see what was the status and how it performed the repair you invoked. 
 Instead, you can query the repair log with session ID to see the state and 
 stats of all nodes involved in that repair session.



--
This message was sent by Atlassian JIRA
(v6.2#6252)


[jira] [Commented] (CASSANDRA-6862) Schema versions mismatch on large ring

2014-03-17 Thread Jonathan Ellis (JIRA)

[ 
https://issues.apache.org/jira/browse/CASSANDRA-6862?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13937912#comment-13937912
 ] 

Jonathan Ellis commented on CASSANDRA-6862:
---

I think the right conclusion from that is we need to fix the digest to include 
row + range tombstones :)

 Schema versions mismatch on large ring
 --

 Key: CASSANDRA-6862
 URL: https://issues.apache.org/jira/browse/CASSANDRA-6862
 Project: Cassandra
  Issue Type: Bug
  Components: Core
 Environment: 2.0
Reporter: Oleg Anastasyev
Assignee: Oleg Anastasyev
 Fix For: 2.0.7

 Attachments: 6862-v2.txt, SchemaVersionLiveColumns.txt


 We have a large cluster with several hundreds nodes in 1 ring. Sometimes, 
 especially after massive restarts, schema versions reported on different 
 nodes mismatch.
 Investigated and found, that difference is not in schema itsself, but in 
 thombstones (different nodes have different set of thombstones applied to 
 system tables).
 Fixed by digesting schema with thombstones removed first.



--
This message was sent by Atlassian JIRA
(v6.2#6252)


[3/6] git commit: Fix handling of RejectedExecution in sync Thrift server patch by Christian Rolf and jbellis for CASSANDRA-6788

2014-03-17 Thread jbellis
Fix handling of RejectedExecution in sync Thrift server
patch by Christian Rolf and jbellis for CASSANDRA-6788


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/56e2b4ac
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/56e2b4ac
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/56e2b4ac

Branch: refs/heads/trunk
Commit: 56e2b4ac02f31ff14be36d73597cfcf95fb4815e
Parents: 1e64972
Author: Jonathan Ellis jbel...@apache.org
Authored: Mon Mar 17 10:50:08 2014 -0500
Committer: Jonathan Ellis jbel...@apache.org
Committed: Mon Mar 17 10:50:19 2014 -0500

--
 CHANGES.txt |  1 +
 .../thrift/CustomTThreadPoolServer.java | 25 ++--
 2 files changed, 14 insertions(+), 12 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/56e2b4ac/CHANGES.txt
--
diff --git a/CHANGES.txt b/CHANGES.txt
index c4e1bd4..2f708dc 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -1,4 +1,5 @@
 2.0.7
+ * Fix handling of RejectedExecution in sync Thrift server (CASSANDRA-6788)
  * Log more information when exceeding tombstone_warn_threshold 
(CASSANDRA-6865)
  * Fix truncate to not abort due to unreachable fat clients (CASSANDRA-6864)
  * Fix schema concurrency exceptions (CASSANDRA-6841)

http://git-wip-us.apache.org/repos/asf/cassandra/blob/56e2b4ac/src/java/org/apache/cassandra/thrift/CustomTThreadPoolServer.java
--
diff --git a/src/java/org/apache/cassandra/thrift/CustomTThreadPoolServer.java 
b/src/java/org/apache/cassandra/thrift/CustomTThreadPoolServer.java
index cf48502..d1a3304 100644
--- a/src/java/org/apache/cassandra/thrift/CustomTThreadPoolServer.java
+++ b/src/java/org/apache/cassandra/thrift/CustomTThreadPoolServer.java
@@ -21,6 +21,7 @@ import java.net.InetSocketAddress;
 import java.net.SocketAddress;
 import java.net.SocketTimeoutException;
 import java.util.concurrent.ExecutorService;
+import java.util.concurrent.RejectedExecutionException;
 import java.util.concurrent.SynchronousQueue;
 import java.util.concurrent.ThreadPoolExecutor;
 import java.util.concurrent.TimeUnit;
@@ -97,7 +98,7 @@ public class CustomTThreadPoolServer extends TServer
 // block until we are under max clients
 while (activeClients.get() = args.maxWorkerThreads)
 {
-Uninterruptibles.sleepUninterruptibly(100, 
TimeUnit.MILLISECONDS);
+Uninterruptibles.sleepUninterruptibly(10, 
TimeUnit.MILLISECONDS);
 }
 
 try
@@ -117,6 +118,12 @@ public class CustomTThreadPoolServer extends TServer
 logger.warn(Transport error occurred during acceptance of 
message., ttx);
 }
 }
+catch (RejectedExecutionException e)
+{
+// worker thread decremented activeClients but hadn't finished 
exiting
+logger.debug(Dropping client connection because our limit of 
{} has been reached, args.maxWorkerThreads);
+continue;
+}
 
 if (activeClients.get() = args.maxWorkerThreads)
 logger.warn(Maximum number of clients  + 
args.maxWorkerThreads +  reached);
@@ -213,19 +220,13 @@ public class CustomTThreadPoolServer extends TServer
 }
 finally
 {
-activeClients.decrementAndGet();
 if (socket != null)
 ThriftSessionManager.instance.connectionComplete(socket);
-}
-
-if (inputTransport != null)
-{
-inputTransport.close();
-}
-
-if (outputTransport != null)
-{
-outputTransport.close();
+if (inputTransport != null)
+inputTransport.close();
+if (outputTransport != null)
+outputTransport.close();
+activeClients.decrementAndGet();
 }
 }
 }



[2/6] git commit: Fix handling of RejectedExecution in sync Thrift server patch by Christian Rolf and jbellis for CASSANDRA-6788

2014-03-17 Thread jbellis
Fix handling of RejectedExecution in sync Thrift server
patch by Christian Rolf and jbellis for CASSANDRA-6788


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/56e2b4ac
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/56e2b4ac
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/56e2b4ac

Branch: refs/heads/cassandra-2.1
Commit: 56e2b4ac02f31ff14be36d73597cfcf95fb4815e
Parents: 1e64972
Author: Jonathan Ellis jbel...@apache.org
Authored: Mon Mar 17 10:50:08 2014 -0500
Committer: Jonathan Ellis jbel...@apache.org
Committed: Mon Mar 17 10:50:19 2014 -0500

--
 CHANGES.txt |  1 +
 .../thrift/CustomTThreadPoolServer.java | 25 ++--
 2 files changed, 14 insertions(+), 12 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/56e2b4ac/CHANGES.txt
--
diff --git a/CHANGES.txt b/CHANGES.txt
index c4e1bd4..2f708dc 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -1,4 +1,5 @@
 2.0.7
+ * Fix handling of RejectedExecution in sync Thrift server (CASSANDRA-6788)
  * Log more information when exceeding tombstone_warn_threshold 
(CASSANDRA-6865)
  * Fix truncate to not abort due to unreachable fat clients (CASSANDRA-6864)
  * Fix schema concurrency exceptions (CASSANDRA-6841)

http://git-wip-us.apache.org/repos/asf/cassandra/blob/56e2b4ac/src/java/org/apache/cassandra/thrift/CustomTThreadPoolServer.java
--
diff --git a/src/java/org/apache/cassandra/thrift/CustomTThreadPoolServer.java 
b/src/java/org/apache/cassandra/thrift/CustomTThreadPoolServer.java
index cf48502..d1a3304 100644
--- a/src/java/org/apache/cassandra/thrift/CustomTThreadPoolServer.java
+++ b/src/java/org/apache/cassandra/thrift/CustomTThreadPoolServer.java
@@ -21,6 +21,7 @@ import java.net.InetSocketAddress;
 import java.net.SocketAddress;
 import java.net.SocketTimeoutException;
 import java.util.concurrent.ExecutorService;
+import java.util.concurrent.RejectedExecutionException;
 import java.util.concurrent.SynchronousQueue;
 import java.util.concurrent.ThreadPoolExecutor;
 import java.util.concurrent.TimeUnit;
@@ -97,7 +98,7 @@ public class CustomTThreadPoolServer extends TServer
 // block until we are under max clients
 while (activeClients.get() = args.maxWorkerThreads)
 {
-Uninterruptibles.sleepUninterruptibly(100, 
TimeUnit.MILLISECONDS);
+Uninterruptibles.sleepUninterruptibly(10, 
TimeUnit.MILLISECONDS);
 }
 
 try
@@ -117,6 +118,12 @@ public class CustomTThreadPoolServer extends TServer
 logger.warn(Transport error occurred during acceptance of 
message., ttx);
 }
 }
+catch (RejectedExecutionException e)
+{
+// worker thread decremented activeClients but hadn't finished 
exiting
+logger.debug(Dropping client connection because our limit of 
{} has been reached, args.maxWorkerThreads);
+continue;
+}
 
 if (activeClients.get() = args.maxWorkerThreads)
 logger.warn(Maximum number of clients  + 
args.maxWorkerThreads +  reached);
@@ -213,19 +220,13 @@ public class CustomTThreadPoolServer extends TServer
 }
 finally
 {
-activeClients.decrementAndGet();
 if (socket != null)
 ThriftSessionManager.instance.connectionComplete(socket);
-}
-
-if (inputTransport != null)
-{
-inputTransport.close();
-}
-
-if (outputTransport != null)
-{
-outputTransport.close();
+if (inputTransport != null)
+inputTransport.close();
+if (outputTransport != null)
+outputTransport.close();
+activeClients.decrementAndGet();
 }
 }
 }



[5/6] git commit: merge from 2.0

2014-03-17 Thread jbellis
merge from 2.0


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/60882c15
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/60882c15
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/60882c15

Branch: refs/heads/cassandra-2.1
Commit: 60882c15c8c1ceba3bd491dfc4f2041f3b34bd14
Parents: 30554b7 56e2b4a
Author: Jonathan Ellis jbel...@apache.org
Authored: Mon Mar 17 10:51:35 2014 -0500
Committer: Jonathan Ellis jbel...@apache.org
Committed: Mon Mar 17 10:51:35 2014 -0500

--
 CHANGES.txt |  1 +
 .../thrift/CustomTThreadPoolServer.java | 25 ++--
 2 files changed, 14 insertions(+), 12 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/60882c15/CHANGES.txt
--
diff --cc CHANGES.txt
index 0cd9d4a,2f708dc..ca4bcfb
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@@ -1,28 -1,5 +1,29 @@@
 -2.0.7
 +2.1.0-beta2
 + * Eliminate possibility of CL segment appearing twice in active list 
 +   (CASSANDRA-6557)
 + * Apply DONTNEED fadvise to commitlog segments (CASSANDRA-6759)
 + * Switch CRC component to Adler and include it for compressed sstables 
 +   (CASSANDRA-4165)
 + * Allow cassandra-stress to set compaction strategy options (CASSANDRA-6451)
 + * Add broadcast_rpc_address option to cassandra.yaml (CASSANDRA-5899)
 + * Auto reload GossipingPropertyFileSnitch config (CASSANDRA-5897)
 + * Fix overflow of memtable_total_space_in_mb (CASSANDRA-6573)
 + * Fix ABTC NPE and apply update function correctly (CASSANDRA-6692)
 + * Allow nodetool to use a file or prompt for password (CASSANDRA-6660)
 + * Fix AIOOBE when concurrently accessing ABSC (CASSANDRA-6742)
 + * Fix assertion error in ALTER TYPE RENAME (CASSANDRA-6705)
 + * Scrub should not always clear out repaired status (CASSANDRA-5351)
 + * Improve handling of range tombstone for wide partitions (CASSANDRA-6446)
 + * Fix ClassCastException for compact table with composites (CASSANDRA-6738)
 + * Fix potentially repairing with wrong nodes (CASSANDRA-6808)
 + * Change caching option syntax (CASSANDRA-6745)
 + * Fix stress to do proper counter reads (CASSANDRA-6835)
 + * Fix help message for stress counter_write (CASSANDRA-6824)
 + * Fix stress smart Thrift client to pick servers correctly (CASSANDRA-6848)
 + * Add logging levels (minimal, normal or verbose) to stress tool 
(CASSANDRA-6849)
 + * Fix race condition in Batch CLE (CASSANDRA-6860)
 +Merged from 2.0:
+  * Fix handling of RejectedExecution in sync Thrift server (CASSANDRA-6788)
   * Log more information when exceeding tombstone_warn_threshold 
(CASSANDRA-6865)
   * Fix truncate to not abort due to unreachable fat clients (CASSANDRA-6864)
   * Fix schema concurrency exceptions (CASSANDRA-6841)

http://git-wip-us.apache.org/repos/asf/cassandra/blob/60882c15/src/java/org/apache/cassandra/thrift/CustomTThreadPoolServer.java
--
diff --cc src/java/org/apache/cassandra/thrift/CustomTThreadPoolServer.java
index 7bcfdf2,d1a3304..f7a602c
--- a/src/java/org/apache/cassandra/thrift/CustomTThreadPoolServer.java
+++ b/src/java/org/apache/cassandra/thrift/CustomTThreadPoolServer.java
@@@ -117,9 -118,15 +118,15 @@@ public class CustomTThreadPoolServer ex
  logger.warn(Transport error occurred during acceptance 
of message., ttx);
  }
  }
+ catch (RejectedExecutionException e)
+ {
+ // worker thread decremented activeClients but hadn't 
finished exiting
+ logger.debug(Dropping client connection because our limit of 
{} has been reached, args.maxWorkerThreads);
+ continue;
+ }
  
  if (activeClients.get() = args.maxWorkerThreads)
 -logger.warn(Maximum number of clients  + 
args.maxWorkerThreads +  reached);
 +logger.warn(Maximum number of clients {} reached, 
args.maxWorkerThreads);
  }
  
  executorService.shutdown();



[6/6] git commit: Merge branch 'cassandra-2.1' into trunk

2014-03-17 Thread jbellis
Merge branch 'cassandra-2.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/3d017f08
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/3d017f08
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/3d017f08

Branch: refs/heads/trunk
Commit: 3d017f08ffec767bfc3b41a060a7e49706f2f6d7
Parents: 976f401 60882c1
Author: Jonathan Ellis jbel...@apache.org
Authored: Mon Mar 17 10:51:43 2014 -0500
Committer: Jonathan Ellis jbel...@apache.org
Committed: Mon Mar 17 10:51:43 2014 -0500

--
 CHANGES.txt |  1 +
 .../thrift/CustomTThreadPoolServer.java | 25 ++--
 2 files changed, 14 insertions(+), 12 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/3d017f08/CHANGES.txt
--



[1/6] git commit: Fix handling of RejectedExecution in sync Thrift server patch by Christian Rolf and jbellis for CASSANDRA-6788

2014-03-17 Thread jbellis
Repository: cassandra
Updated Branches:
  refs/heads/cassandra-2.0 1e64972be - 56e2b4ac0
  refs/heads/cassandra-2.1 30554b725 - 60882c15c
  refs/heads/trunk 976f4010d - 3d017f08f


Fix handling of RejectedExecution in sync Thrift server
patch by Christian Rolf and jbellis for CASSANDRA-6788


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/56e2b4ac
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/56e2b4ac
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/56e2b4ac

Branch: refs/heads/cassandra-2.0
Commit: 56e2b4ac02f31ff14be36d73597cfcf95fb4815e
Parents: 1e64972
Author: Jonathan Ellis jbel...@apache.org
Authored: Mon Mar 17 10:50:08 2014 -0500
Committer: Jonathan Ellis jbel...@apache.org
Committed: Mon Mar 17 10:50:19 2014 -0500

--
 CHANGES.txt |  1 +
 .../thrift/CustomTThreadPoolServer.java | 25 ++--
 2 files changed, 14 insertions(+), 12 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/56e2b4ac/CHANGES.txt
--
diff --git a/CHANGES.txt b/CHANGES.txt
index c4e1bd4..2f708dc 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -1,4 +1,5 @@
 2.0.7
+ * Fix handling of RejectedExecution in sync Thrift server (CASSANDRA-6788)
  * Log more information when exceeding tombstone_warn_threshold 
(CASSANDRA-6865)
  * Fix truncate to not abort due to unreachable fat clients (CASSANDRA-6864)
  * Fix schema concurrency exceptions (CASSANDRA-6841)

http://git-wip-us.apache.org/repos/asf/cassandra/blob/56e2b4ac/src/java/org/apache/cassandra/thrift/CustomTThreadPoolServer.java
--
diff --git a/src/java/org/apache/cassandra/thrift/CustomTThreadPoolServer.java 
b/src/java/org/apache/cassandra/thrift/CustomTThreadPoolServer.java
index cf48502..d1a3304 100644
--- a/src/java/org/apache/cassandra/thrift/CustomTThreadPoolServer.java
+++ b/src/java/org/apache/cassandra/thrift/CustomTThreadPoolServer.java
@@ -21,6 +21,7 @@ import java.net.InetSocketAddress;
 import java.net.SocketAddress;
 import java.net.SocketTimeoutException;
 import java.util.concurrent.ExecutorService;
+import java.util.concurrent.RejectedExecutionException;
 import java.util.concurrent.SynchronousQueue;
 import java.util.concurrent.ThreadPoolExecutor;
 import java.util.concurrent.TimeUnit;
@@ -97,7 +98,7 @@ public class CustomTThreadPoolServer extends TServer
 // block until we are under max clients
 while (activeClients.get() = args.maxWorkerThreads)
 {
-Uninterruptibles.sleepUninterruptibly(100, 
TimeUnit.MILLISECONDS);
+Uninterruptibles.sleepUninterruptibly(10, 
TimeUnit.MILLISECONDS);
 }
 
 try
@@ -117,6 +118,12 @@ public class CustomTThreadPoolServer extends TServer
 logger.warn(Transport error occurred during acceptance of 
message., ttx);
 }
 }
+catch (RejectedExecutionException e)
+{
+// worker thread decremented activeClients but hadn't finished 
exiting
+logger.debug(Dropping client connection because our limit of 
{} has been reached, args.maxWorkerThreads);
+continue;
+}
 
 if (activeClients.get() = args.maxWorkerThreads)
 logger.warn(Maximum number of clients  + 
args.maxWorkerThreads +  reached);
@@ -213,19 +220,13 @@ public class CustomTThreadPoolServer extends TServer
 }
 finally
 {
-activeClients.decrementAndGet();
 if (socket != null)
 ThriftSessionManager.instance.connectionComplete(socket);
-}
-
-if (inputTransport != null)
-{
-inputTransport.close();
-}
-
-if (outputTransport != null)
-{
-outputTransport.close();
+if (inputTransport != null)
+inputTransport.close();
+if (outputTransport != null)
+outputTransport.close();
+activeClients.decrementAndGet();
 }
 }
 }



[4/6] git commit: merge from 2.0

2014-03-17 Thread jbellis
merge from 2.0


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/60882c15
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/60882c15
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/60882c15

Branch: refs/heads/trunk
Commit: 60882c15c8c1ceba3bd491dfc4f2041f3b34bd14
Parents: 30554b7 56e2b4a
Author: Jonathan Ellis jbel...@apache.org
Authored: Mon Mar 17 10:51:35 2014 -0500
Committer: Jonathan Ellis jbel...@apache.org
Committed: Mon Mar 17 10:51:35 2014 -0500

--
 CHANGES.txt |  1 +
 .../thrift/CustomTThreadPoolServer.java | 25 ++--
 2 files changed, 14 insertions(+), 12 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/60882c15/CHANGES.txt
--
diff --cc CHANGES.txt
index 0cd9d4a,2f708dc..ca4bcfb
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@@ -1,28 -1,5 +1,29 @@@
 -2.0.7
 +2.1.0-beta2
 + * Eliminate possibility of CL segment appearing twice in active list 
 +   (CASSANDRA-6557)
 + * Apply DONTNEED fadvise to commitlog segments (CASSANDRA-6759)
 + * Switch CRC component to Adler and include it for compressed sstables 
 +   (CASSANDRA-4165)
 + * Allow cassandra-stress to set compaction strategy options (CASSANDRA-6451)
 + * Add broadcast_rpc_address option to cassandra.yaml (CASSANDRA-5899)
 + * Auto reload GossipingPropertyFileSnitch config (CASSANDRA-5897)
 + * Fix overflow of memtable_total_space_in_mb (CASSANDRA-6573)
 + * Fix ABTC NPE and apply update function correctly (CASSANDRA-6692)
 + * Allow nodetool to use a file or prompt for password (CASSANDRA-6660)
 + * Fix AIOOBE when concurrently accessing ABSC (CASSANDRA-6742)
 + * Fix assertion error in ALTER TYPE RENAME (CASSANDRA-6705)
 + * Scrub should not always clear out repaired status (CASSANDRA-5351)
 + * Improve handling of range tombstone for wide partitions (CASSANDRA-6446)
 + * Fix ClassCastException for compact table with composites (CASSANDRA-6738)
 + * Fix potentially repairing with wrong nodes (CASSANDRA-6808)
 + * Change caching option syntax (CASSANDRA-6745)
 + * Fix stress to do proper counter reads (CASSANDRA-6835)
 + * Fix help message for stress counter_write (CASSANDRA-6824)
 + * Fix stress smart Thrift client to pick servers correctly (CASSANDRA-6848)
 + * Add logging levels (minimal, normal or verbose) to stress tool 
(CASSANDRA-6849)
 + * Fix race condition in Batch CLE (CASSANDRA-6860)
 +Merged from 2.0:
+  * Fix handling of RejectedExecution in sync Thrift server (CASSANDRA-6788)
   * Log more information when exceeding tombstone_warn_threshold 
(CASSANDRA-6865)
   * Fix truncate to not abort due to unreachable fat clients (CASSANDRA-6864)
   * Fix schema concurrency exceptions (CASSANDRA-6841)

http://git-wip-us.apache.org/repos/asf/cassandra/blob/60882c15/src/java/org/apache/cassandra/thrift/CustomTThreadPoolServer.java
--
diff --cc src/java/org/apache/cassandra/thrift/CustomTThreadPoolServer.java
index 7bcfdf2,d1a3304..f7a602c
--- a/src/java/org/apache/cassandra/thrift/CustomTThreadPoolServer.java
+++ b/src/java/org/apache/cassandra/thrift/CustomTThreadPoolServer.java
@@@ -117,9 -118,15 +118,15 @@@ public class CustomTThreadPoolServer ex
  logger.warn(Transport error occurred during acceptance 
of message., ttx);
  }
  }
+ catch (RejectedExecutionException e)
+ {
+ // worker thread decremented activeClients but hadn't 
finished exiting
+ logger.debug(Dropping client connection because our limit of 
{} has been reached, args.maxWorkerThreads);
+ continue;
+ }
  
  if (activeClients.get() = args.maxWorkerThreads)
 -logger.warn(Maximum number of clients  + 
args.maxWorkerThreads +  reached);
 +logger.warn(Maximum number of clients {} reached, 
args.maxWorkerThreads);
  }
  
  executorService.shutdown();



[jira] [Commented] (CASSANDRA-6788) Race condition silently kills thrift server

2014-03-17 Thread Jonathan Ellis (JIRA)

[ 
https://issues.apache.org/jira/browse/CASSANDRA-6788?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13937937#comment-13937937
 ] 

Jonathan Ellis commented on CASSANDRA-6788:
---

committed

 Race condition silently kills thrift server
 ---

 Key: CASSANDRA-6788
 URL: https://issues.apache.org/jira/browse/CASSANDRA-6788
 Project: Cassandra
  Issue Type: Bug
Reporter: Christian Rolf
Assignee: Christian Rolf
 Fix For: 2.0.7, 2.1 beta2

 Attachments: 6788-v2.txt, 6788-v3.txt, 6793-v3-rebased.txt, 
 race_patch.diff


 There's a race condition in CustomTThreadPoolServer that can cause the thrift 
 server to silently stop listening for connections. 
 It happens when the executor service throws a RejectedExecutionException, 
 which is not caught.
  
 Silent in the sense that OpsCenter doesn't notice any problem since JMX is 
 still running fine.



--
This message was sent by Atlassian JIRA
(v6.2#6252)


[jira] [Commented] (CASSANDRA-5483) Repair tracing

2014-03-17 Thread Ben Chan (JIRA)

[ 
https://issues.apache.org/jira/browse/CASSANDRA-5483?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13937976#comment-13937976
 ] 

Ben Chan commented on CASSANDRA-5483:
-

{noformat}
# tested with branch 5483 @ bce0c2c555a3; should also work following successful
#git apply 5483-full-trunk.txt
W=https://issues.apache.org/jira/secure/attachment
for url in \
  $W/12635094/5483-v08-11-Shorten-trace-messages.-Use-Tracing-begin.patch   
   \
  
$W/12635095/5483-v08-12-Trace-streaming-in-Differencer-StreamingRepairTask.patch
 \
  
$W/12635096/5483-v08-13-sendNotification-of-local-traces-back-to-nodetool.patch 
 \
  $W/12635097/5483-v08-14-Poll-system_traces.events.patch   
   \
  
$W/12635098/5483-v08-15-Limit-trace-notifications.-Add-exponential-backoff.patch
do [ -e $(basename $url) ] || curl -sO $url; done 
git apply 5483-v08-*.patch 
ant clean  ant

./ccm-repair-test -kR 
ccm node1 stop 
ccm node1 clear 
ccm node1 start 
./ccm-repair-test -rt
{noformat}

* {{v08-11}} There was an error in one of the log formats in Differencer, which 
made my grep for out of sync in the logs fruitless.
* {{v08-12}} I ended up using the handleStreamEvent of StreamingRepairTask 
instead of implementing and registering my own StreamEventHandler. The new 
trace messages may need adjusting, especially for ProgressEvent, which is 
essentially just a toString currently.
* {{v08-13}} This works by adding a guarded sendNotification to 
TraceState#trace.
* {{v08-14}} This works by starting a thread to poll {{system_traces.events}}, 
and by adding notify functionality to TraceState. There is some jitter in the 
ordering between local and remote traces. An easy fix would be to have the 
query thread handle all sendNotification of traces. You have to accept latency 
in sendNotification of local traces in order to get better ordering. It might 
be necessary to delay all trace sendNotification by a few seconds to make it 
more likely that remote traces have arrived.
* {{v08-15}} Even more added TraceState functionality. All to try to reduce the 
amount of polling without hurting latency too much. There are only a few local 
traces that you would expect to be followed by a remote trace, so only wake up 
for those. Poll with an exponential backoff after each notification.

---

Heuristics are messy, and I expect plenty of opinions on {{v08-14}} and 
{{v08-15}}. I'm not especially proud of that code, but I can't think of 
anything better at the moment, given the (self-imposed?) constraints.

I may have reinvented the wheel with synchronization primitives. I checked 
{{java.util.concurrent.*}} and {{SimpleCondition}}, but not much beyond that. I 
could have missed something; I don't fully understand some of the classes. What 
I wanted was to be woken up (with a timeout) if anything has changed since the 
last time I checked. Theoretically, it should work for multiple consumers (As 
long as no one waits for longer than {{Integer.MAX_VALUE}} updates), though 
that's not really necessary here, if that would simplify the code.

The code seems to work reasonably well for small-scale tests. I can convince 
myself that it won't blow up for long repairs, but haven't done a full test yet.


 Repair tracing
 --

 Key: CASSANDRA-5483
 URL: https://issues.apache.org/jira/browse/CASSANDRA-5483
 Project: Cassandra
  Issue Type: Improvement
  Components: Tools
Reporter: Yuki Morishita
Assignee: Ben Chan
Priority: Minor
  Labels: repair
 Attachments: 5483-full-trunk.txt, 
 5483-v06-04-Allow-tracing-ttl-to-be-configured.patch, 
 5483-v06-05-Add-a-command-column-to-system_traces.events.patch, 
 5483-v06-06-Fix-interruption-in-tracestate-propagation.patch, 
 5483-v07-07-Better-constructor-parameters-for-DebuggableThreadPoolExecutor.patch,
  5483-v07-08-Fix-brace-style.patch, 
 5483-v07-09-Add-trace-option-to-a-more-complete-set-of-repair-functions.patch,
  5483-v07-10-Correct-name-of-boolean-repairedAt-to-fullRepair.patch, 
 5483-v08-11-Shorten-trace-messages.-Use-Tracing-begin.patch, 
 5483-v08-12-Trace-streaming-in-Differencer-StreamingRepairTask.patch, 
 5483-v08-13-sendNotification-of-local-traces-back-to-nodetool.patch, 
 5483-v08-14-Poll-system_traces.events.patch, 
 5483-v08-15-Limit-trace-notifications.-Add-exponential-backoff.patch, 
 ccm-repair-test, cqlsh-left-justify-text-columns.patch, 
 test-5483-system_traces-events.txt, 
 trunk@4620823-5483-v02-0001-Trace-filtering-and-tracestate-propagation.patch, 
 trunk@4620823-5483-v02-0002-Put-a-few-traces-parallel-to-the-repair-logging.patch,
  tr...@8ebeee1-5483-v01-001-trace-filtering-and-tracestate-propagation.txt, 
 tr...@8ebeee1-5483-v01-002-simple-repair-tracing.txt, 
 v02p02-5483-v03-0003-Make-repair-tracing-controllable-via-nodetool.patch, 
 

[jira] [Commented] (CASSANDRA-6871) Dynamic class loading for triggers (and udfs)

2014-03-17 Thread Jonathan Ellis (JIRA)

[ 
https://issues.apache.org/jira/browse/CASSANDRA-6871?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13937978#comment-13937978
 ] 

Jonathan Ellis commented on CASSANDRA-6871:
---

Ultimately what I'd like to see is CREATE TRIGGER specify a UDF, with UDF 
support for multiple languages a la postgresql, but I'm not sure if this is a 
step in that direction.  It sounds like I'd still be shipping jars around, so 
I'm not sure what you're proposing besides some kind of groovy support.

Did you mean to provide a link to the branch above?

 Dynamic class loading for triggers (and udfs)
 -

 Key: CASSANDRA-6871
 URL: https://issues.apache.org/jira/browse/CASSANDRA-6871
 Project: Cassandra
  Issue Type: New Feature
Reporter: Edward Capriolo
Assignee: Edward Capriolo

 Currently the trigger feature requires out of band shipping jar files to 
 servers. In the near future users may be able to provide custom functions 
 like trim() dynamically like pig and hive do. In order to accomplish this 
 securely my suggestion is this.
 1. Add a new configuration knob to cassandra.yaml which controls how users 
 are allowed to load class definitions. 
 {code}
 dynamic_loading:
 - JAVA_LOCAL_CLASSPATH
 - GROOVY_CLASS_LOADER
 {code}
 2. Add the https://github.com/edwardcapriolo/nit-compiler to the project as a 
 dependency. 
 3. Profit: A follow on piece would allow triggers to be defined in a JVM 
 language. Features like https://issues.apache.org/jira/browse/CASSANDRA-6870 
 could use this. Users can also create different pluggable components to CQL 
 at runtime. 
 This issue would just be about brining the dynamic loading mechanism in the 
 project securely. Not implementing it in a user facincg way.



--
This message was sent by Atlassian JIRA
(v6.2#6252)


[jira] [Created] (CASSANDRA-6874) CQL3 docs doesn't document conditional DELETE

2014-03-17 Thread Mohica Jasha (JIRA)
Mohica Jasha created CASSANDRA-6874:
---

 Summary: CQL3 docs doesn't document conditional DELETE
 Key: CASSANDRA-6874
 URL: https://issues.apache.org/jira/browse/CASSANDRA-6874
 Project: Cassandra
  Issue Type: Bug
  Components: Documentation  website
Reporter: Mohica Jasha


http://cassandra.apache.org/doc/cql3/CQL.html#deleteStmt doesn't document 
conditional {{DELETE}}. But support for if clause for {{DELETE}} was there 
from C* 2.0



--
This message was sent by Atlassian JIRA
(v6.2#6252)


[1/3] git commit: fix CRLF in bash scripts when building on Windows patch by Peter; reviewed by Joshua McKenzie for CASSANDRA-6798

2014-03-17 Thread jbellis
Repository: cassandra
Updated Branches:
  refs/heads/cassandra-2.1 60882c15c - dd60ab474
  refs/heads/trunk 3d017f08f - c3d9280e4


fix CRLF in bash scripts when building on Windows
patch by Peter; reviewed by Joshua McKenzie for CASSANDRA-6798


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/dd60ab47
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/dd60ab47
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/dd60ab47

Branch: refs/heads/cassandra-2.1
Commit: dd60ab474053ebd4cc38ed857df355293ae2c491
Parents: 60882c1
Author: Jonathan Ellis jbel...@apache.org
Authored: Mon Mar 17 11:37:10 2014 -0500
Committer: Jonathan Ellis jbel...@apache.org
Committed: Mon Mar 17 11:37:10 2014 -0500

--
 build.xml | 4 
 1 file changed, 4 insertions(+)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/dd60ab47/build.xml
--
diff --git a/build.xml b/build.xml
index a938b25..83ce003 100644
--- a/build.xml
+++ b/build.xml
@@ -886,6 +886,10 @@
 target name=artifacts depends=jar,javadoc
 description=Create Cassandra release artifacts
   mkdir dir=${dist.dir}/
+  !-- fix the control linefeed so that builds on windows works on linux 
--
+  fixcrlf srcdir=bin includes=**/* excludes=**/*.bat eol=lf 
eof=remove /
+  fixcrlf srcdir=conf includes=**/* excludes=**/*.bat eol=lf 
eof=remove /
+  fixcrlf srcdir=tools/bin includes=**/* excludes=**/*.bat eol=lf 
eof=remove /
   copy todir=${dist.dir}/lib
 fileset dir=${build.lib}/
 fileset dir=${build.dir}



[2/3] git commit: fix CRLF in bash scripts when building on Windows patch by Peter; reviewed by Joshua McKenzie for CASSANDRA-6798

2014-03-17 Thread jbellis
fix CRLF in bash scripts when building on Windows
patch by Peter; reviewed by Joshua McKenzie for CASSANDRA-6798


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/dd60ab47
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/dd60ab47
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/dd60ab47

Branch: refs/heads/trunk
Commit: dd60ab474053ebd4cc38ed857df355293ae2c491
Parents: 60882c1
Author: Jonathan Ellis jbel...@apache.org
Authored: Mon Mar 17 11:37:10 2014 -0500
Committer: Jonathan Ellis jbel...@apache.org
Committed: Mon Mar 17 11:37:10 2014 -0500

--
 build.xml | 4 
 1 file changed, 4 insertions(+)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/dd60ab47/build.xml
--
diff --git a/build.xml b/build.xml
index a938b25..83ce003 100644
--- a/build.xml
+++ b/build.xml
@@ -886,6 +886,10 @@
 target name=artifacts depends=jar,javadoc
 description=Create Cassandra release artifacts
   mkdir dir=${dist.dir}/
+  !-- fix the control linefeed so that builds on windows works on linux 
--
+  fixcrlf srcdir=bin includes=**/* excludes=**/*.bat eol=lf 
eof=remove /
+  fixcrlf srcdir=conf includes=**/* excludes=**/*.bat eol=lf 
eof=remove /
+  fixcrlf srcdir=tools/bin includes=**/* excludes=**/*.bat eol=lf 
eof=remove /
   copy todir=${dist.dir}/lib
 fileset dir=${build.lib}/
 fileset dir=${build.dir}



[3/3] git commit: Merge branch 'cassandra-2.1' into trunk

2014-03-17 Thread jbellis
Merge branch 'cassandra-2.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/c3d9280e
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/c3d9280e
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/c3d9280e

Branch: refs/heads/trunk
Commit: c3d9280e453de90a27b01a27374ccb9ec56c69d5
Parents: 3d017f0 dd60ab4
Author: Jonathan Ellis jbel...@apache.org
Authored: Mon Mar 17 11:37:16 2014 -0500
Committer: Jonathan Ellis jbel...@apache.org
Committed: Mon Mar 17 11:37:16 2014 -0500

--
 build.xml | 4 
 1 file changed, 4 insertions(+)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/c3d9280e/build.xml
--



[jira] [Commented] (CASSANDRA-6798) fix artifacts task to strip out DOS crlf

2014-03-17 Thread Jonathan Ellis (JIRA)

[ 
https://issues.apache.org/jira/browse/CASSANDRA-6798?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13938005#comment-13938005
 ] 

Jonathan Ellis commented on CASSANDRA-6798:
---

committed

 fix artifacts task to strip out DOS crlf
 

 Key: CASSANDRA-6798
 URL: https://issues.apache.org/jira/browse/CASSANDRA-6798
 Project: Cassandra
  Issue Type: Bug
  Components: Packaging
 Environment: windows 7
Reporter: Peter
Assignee: Peter
Priority: Minor
 Fix For: 2.1

 Attachments: 6798.patch


 DOS builds end up with ^M in the unix shell scripts. updated the build to 
 strip them so that builds on windows will run fine on linux. My github fork 
 is https://github.com/woolfel/cassandra
 I can't figure out how to make a patch with github, so I'm lame. The fix is 
 checked in.



--
This message was sent by Atlassian JIRA
(v6.2#6252)


[jira] [Updated] (CASSANDRA-6798) fix artifacts task to strip out DOS crlf

2014-03-17 Thread Jonathan Ellis (JIRA)

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

Jonathan Ellis updated CASSANDRA-6798:
--

Component/s: (was: Core)
 Packaging
   Assignee: Peter
 Issue Type: Bug  (was: Improvement)

 fix artifacts task to strip out DOS crlf
 

 Key: CASSANDRA-6798
 URL: https://issues.apache.org/jira/browse/CASSANDRA-6798
 Project: Cassandra
  Issue Type: Bug
  Components: Packaging
 Environment: windows 7
Reporter: Peter
Assignee: Peter
Priority: Minor
 Fix For: 2.1

 Attachments: 6798.patch


 DOS builds end up with ^M in the unix shell scripts. updated the build to 
 strip them so that builds on windows will run fine on linux. My github fork 
 is https://github.com/woolfel/cassandra
 I can't figure out how to make a patch with github, so I'm lame. The fix is 
 checked in.



--
This message was sent by Atlassian JIRA
(v6.2#6252)


[jira] [Commented] (CASSANDRA-6793) NPE in Hadoop Word count example

2014-03-17 Thread Alex Liu (JIRA)

[ 
https://issues.apache.org/jira/browse/CASSANDRA-6793?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13938021#comment-13938021
 ] 

Alex Liu commented on CASSANDRA-6793:
-

+1 except for change bin/* file permission to executable.

 NPE in Hadoop Word count example
 

 Key: CASSANDRA-6793
 URL: https://issues.apache.org/jira/browse/CASSANDRA-6793
 Project: Cassandra
  Issue Type: Bug
  Components: Examples
Reporter: Chander S Pechetty
Assignee: Chander S Pechetty
Priority: Minor
  Labels: hadoop
 Fix For: 2.0.7, 2.1 beta2

 Attachments: trunk-6793-v2.txt, trunk-6793-v3.txt, trunk-6793.txt


 The partition keys requested in WordCount.java do not match the primary key 
 set up in the table output_words. It looks this patch was not merged properly 
 from 
 [CASSANDRA-5622|https://issues.apache.org/jira/browse/CASSANDRA-5622].The 
 attached patch addresses the NPE and uses the correct keys defined in #5622.
 I am assuming there is no need to fix the actual NPE like throwing an 
 InvalidRequestException back to user to fix the partition keys, as it would 
 be trivial to get the same from the TableMetadata using the driver API.
 java.lang.NullPointerException
   at 
 org.apache.cassandra.dht.Murmur3Partitioner.getToken(Murmur3Partitioner.java:92)
   at 
 org.apache.cassandra.dht.Murmur3Partitioner.getToken(Murmur3Partitioner.java:40)
   at org.apache.cassandra.client.RingCache.getRange(RingCache.java:117)
   at 
 org.apache.cassandra.hadoop.cql3.CqlRecordWriter.write(CqlRecordWriter.java:163)
   at 
 org.apache.cassandra.hadoop.cql3.CqlRecordWriter.write(CqlRecordWriter.java:63)
   at 
 org.apache.hadoop.mapred.ReduceTask$NewTrackingRecordWriter.write(ReduceTask.java:587)
   at 
 org.apache.hadoop.mapreduce.TaskInputOutputContext.write(TaskInputOutputContext.java:80)
   at WordCount$ReducerToCassandra.reduce(Unknown Source)
   at WordCount$ReducerToCassandra.reduce(Unknown Source)
   at org.apache.hadoop.mapreduce.Reducer.run(Reducer.java:176)
   at 
 org.apache.hadoop.mapred.ReduceTask.runNewReducer(ReduceTask.java:649)
   at org.apache.hadoop.mapred.ReduceTask.run(ReduceTask.java:417)
   at 
 org.apache.hadoop.mapred.LocalJobRunner$Job.run(LocalJobRunner.java:260)



--
This message was sent by Atlassian JIRA
(v6.2#6252)


[08/10] git commit: Merge branch 'cassandra-2.0' into cassandra-2.1

2014-03-17 Thread brandonwilliams
Merge branch 'cassandra-2.0' into cassandra-2.1

Conflicts:
CHANGES.txt


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/ceddff58
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/ceddff58
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/ceddff58

Branch: refs/heads/cassandra-2.1
Commit: ceddff58f316b2a04494918615d7240558e5c0d2
Parents: dd60ab4 98ed6a4
Author: Brandon Williams brandonwilli...@apache.org
Authored: Mon Mar 17 12:08:10 2014 -0500
Committer: Brandon Williams brandonwilli...@apache.org
Committed: Mon Mar 17 12:08:10 2014 -0500

--
 CHANGES.txt | 7 +++
 conf/cassandra.yaml | 5 +++--
 src/java/org/apache/cassandra/config/EncryptionOptions.java | 6 +-
 3 files changed, 15 insertions(+), 3 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/ceddff58/CHANGES.txt
--
diff --cc CHANGES.txt
index ca4bcfb,688a759..9682073
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@@ -36,6 -11,14 +36,13 @@@ Merged from 2.0
   * Restore expiring-deleted (cell) compaction optimization (CASSANDRA-6844)
   * Fix CompactionManager.needsCleanup (CASSANDRA-6845)
   * Correctly compare BooleanType values other than 0 and 1 (CASSANDRA-6779)
+  * Read message id as string from earlier versions (CASSANDRA-6840)
+  * Properly use the Paxos consistency for (non-protocol) batch 
(CASSANDRA-6837)
 -Merged from 1.2:
+  * add extra SSL cipher suites (CASSANDRA-6613)
+  * fix nodetool getsstables for blob PK (CASSANDRA-6803)
+ 
+ 
+ 2.0.6
   * Avoid race-prone second scrub of system keyspace (CASSANDRA-6797)
   * Pool CqlRecordWriter clients by inetaddress rather than Range 
 (CASSANDRA-6665)

http://git-wip-us.apache.org/repos/asf/cassandra/blob/ceddff58/conf/cassandra.yaml
--



[04/10] git commit: Add extra SSL cipher suites.

2014-03-17 Thread brandonwilliams
Add extra SSL cipher suites.

Patch by brandonwilliams, reviewed by Ray Sinnema for CASSANDRA-6613


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/3876eefd
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/3876eefd
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/3876eefd

Branch: refs/heads/trunk
Commit: 3876eefd11a849099150f19250f6c8fcd89579ee
Parents: 8526347
Author: Brandon Williams brandonwilli...@apache.org
Authored: Mon Mar 17 12:05:35 2014 -0500
Committer: Brandon Williams brandonwilli...@apache.org
Committed: Mon Mar 17 12:05:35 2014 -0500

--
 CHANGES.txt | 1 +
 conf/cassandra.yaml | 5 +++--
 src/java/org/apache/cassandra/config/EncryptionOptions.java | 6 +-
 3 files changed, 9 insertions(+), 3 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/3876eefd/CHANGES.txt
--
diff --git a/CHANGES.txt b/CHANGES.txt
index 325c623..f88345d 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -1,4 +1,5 @@
 1.2.16
+ * add extra SSL cipher suites (CASSANDRA-6613)
  * fix nodetool getsstables for blob PK (CASSANDRA-6803)
  * Add CMSClassUnloadingEnabled JVM option (CASSANDRA-6541)
  * Catch memtable flush exceptions during shutdown (CASSANDRA-6735)

http://git-wip-us.apache.org/repos/asf/cassandra/blob/3876eefd/conf/cassandra.yaml
--
diff --git a/conf/cassandra.yaml b/conf/cassandra.yaml
index 194a196..ecad3f0 100644
--- a/conf/cassandra.yaml
+++ b/conf/cassandra.yaml
@@ -651,6 +651,7 @@ index_interval: 128
 # Default settings are TLS v1, RSA 1024-bit keys (it is imperative that
 # users generate their own keys) TLS_RSA_WITH_AES_128_CBC_SHA as the cipher
 # suite for authentication, key exchange and encryption of the actual data 
transfers.
+# Use the DHE/ECDHE ciphers if running in FIPS 140 compliant mode.
 # NOTE: No custom encryption options are enabled at the moment
 # The available internode options are : all, none, dc, rack
 #
@@ -671,7 +672,7 @@ server_encryption_options:
 # protocol: TLS
 # algorithm: SunX509
 # store_type: JKS
-# cipher_suites: 
[TLS_RSA_WITH_AES_128_CBC_SHA,TLS_RSA_WITH_AES_256_CBC_SHA]
+# cipher_suites: 
[TLS_RSA_WITH_AES_128_CBC_SHA,TLS_RSA_WITH_AES_256_CBC_SHA,TLS_DHE_RSA_WITH_AES_128_CBC_SHA,TLS_DHE_RSA_WITH_AES_256_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA]
 # require_client_auth: false
 
 # enable or disable client/server encryption.
@@ -687,7 +688,7 @@ client_encryption_options:
 # protocol: TLS
 # algorithm: SunX509
 # store_type: JKS
-# cipher_suites: 
[TLS_RSA_WITH_AES_128_CBC_SHA,TLS_RSA_WITH_AES_256_CBC_SHA]
+# cipher_suites: 
[TLS_RSA_WITH_AES_128_CBC_SHA,TLS_RSA_WITH_AES_256_CBC_SHA,TLS_DHE_RSA_WITH_AES_128_CBC_SHA,TLS_DHE_RSA_WITH_AES_256_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA]
 
 # internode_compression controls whether traffic between nodes is
 # compressed.

http://git-wip-us.apache.org/repos/asf/cassandra/blob/3876eefd/src/java/org/apache/cassandra/config/EncryptionOptions.java
--
diff --git a/src/java/org/apache/cassandra/config/EncryptionOptions.java 
b/src/java/org/apache/cassandra/config/EncryptionOptions.java
index f873636..945a15b 100644
--- a/src/java/org/apache/cassandra/config/EncryptionOptions.java
+++ b/src/java/org/apache/cassandra/config/EncryptionOptions.java
@@ -23,7 +23,11 @@ public abstract class EncryptionOptions
 public String keystore_password = cassandra;
 public String truststore = conf/.truststore;
 public String truststore_password = cassandra;
-public String[] cipher_suites = {TLS_RSA_WITH_AES_128_CBC_SHA, 
TLS_RSA_WITH_AES_256_CBC_SHA};
+public String[] cipher_suites = {
+TLS_RSA_WITH_AES_128_CBC_SHA, TLS_RSA_WITH_AES_256_CBC_SHA,
+TLS_DHE_RSA_WITH_AES_128_CBC_SHA, TLS_DHE_RSA_WITH_AES_256_CBC_SHA,
+TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA, 
TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA 
+};
 public String protocol = TLS;
 public String algorithm = SunX509;
 public String store_type = JKS;



[09/10] git commit: Merge branch 'cassandra-2.0' into cassandra-2.1

2014-03-17 Thread brandonwilliams
Merge branch 'cassandra-2.0' into cassandra-2.1

Conflicts:
CHANGES.txt


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/ceddff58
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/ceddff58
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/ceddff58

Branch: refs/heads/trunk
Commit: ceddff58f316b2a04494918615d7240558e5c0d2
Parents: dd60ab4 98ed6a4
Author: Brandon Williams brandonwilli...@apache.org
Authored: Mon Mar 17 12:08:10 2014 -0500
Committer: Brandon Williams brandonwilli...@apache.org
Committed: Mon Mar 17 12:08:10 2014 -0500

--
 CHANGES.txt | 7 +++
 conf/cassandra.yaml | 5 +++--
 src/java/org/apache/cassandra/config/EncryptionOptions.java | 6 +-
 3 files changed, 15 insertions(+), 3 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/ceddff58/CHANGES.txt
--
diff --cc CHANGES.txt
index ca4bcfb,688a759..9682073
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@@ -36,6 -11,14 +36,13 @@@ Merged from 2.0
   * Restore expiring-deleted (cell) compaction optimization (CASSANDRA-6844)
   * Fix CompactionManager.needsCleanup (CASSANDRA-6845)
   * Correctly compare BooleanType values other than 0 and 1 (CASSANDRA-6779)
+  * Read message id as string from earlier versions (CASSANDRA-6840)
+  * Properly use the Paxos consistency for (non-protocol) batch 
(CASSANDRA-6837)
 -Merged from 1.2:
+  * add extra SSL cipher suites (CASSANDRA-6613)
+  * fix nodetool getsstables for blob PK (CASSANDRA-6803)
+ 
+ 
+ 2.0.6
   * Avoid race-prone second scrub of system keyspace (CASSANDRA-6797)
   * Pool CqlRecordWriter clients by inetaddress rather than Range 
 (CASSANDRA-6665)

http://git-wip-us.apache.org/repos/asf/cassandra/blob/ceddff58/conf/cassandra.yaml
--



[02/10] git commit: Add extra SSL cipher suites.

2014-03-17 Thread brandonwilliams
Add extra SSL cipher suites.

Patch by brandonwilliams, reviewed by Ray Sinnema for CASSANDRA-6613


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/3876eefd
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/3876eefd
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/3876eefd

Branch: refs/heads/cassandra-2.0
Commit: 3876eefd11a849099150f19250f6c8fcd89579ee
Parents: 8526347
Author: Brandon Williams brandonwilli...@apache.org
Authored: Mon Mar 17 12:05:35 2014 -0500
Committer: Brandon Williams brandonwilli...@apache.org
Committed: Mon Mar 17 12:05:35 2014 -0500

--
 CHANGES.txt | 1 +
 conf/cassandra.yaml | 5 +++--
 src/java/org/apache/cassandra/config/EncryptionOptions.java | 6 +-
 3 files changed, 9 insertions(+), 3 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/3876eefd/CHANGES.txt
--
diff --git a/CHANGES.txt b/CHANGES.txt
index 325c623..f88345d 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -1,4 +1,5 @@
 1.2.16
+ * add extra SSL cipher suites (CASSANDRA-6613)
  * fix nodetool getsstables for blob PK (CASSANDRA-6803)
  * Add CMSClassUnloadingEnabled JVM option (CASSANDRA-6541)
  * Catch memtable flush exceptions during shutdown (CASSANDRA-6735)

http://git-wip-us.apache.org/repos/asf/cassandra/blob/3876eefd/conf/cassandra.yaml
--
diff --git a/conf/cassandra.yaml b/conf/cassandra.yaml
index 194a196..ecad3f0 100644
--- a/conf/cassandra.yaml
+++ b/conf/cassandra.yaml
@@ -651,6 +651,7 @@ index_interval: 128
 # Default settings are TLS v1, RSA 1024-bit keys (it is imperative that
 # users generate their own keys) TLS_RSA_WITH_AES_128_CBC_SHA as the cipher
 # suite for authentication, key exchange and encryption of the actual data 
transfers.
+# Use the DHE/ECDHE ciphers if running in FIPS 140 compliant mode.
 # NOTE: No custom encryption options are enabled at the moment
 # The available internode options are : all, none, dc, rack
 #
@@ -671,7 +672,7 @@ server_encryption_options:
 # protocol: TLS
 # algorithm: SunX509
 # store_type: JKS
-# cipher_suites: 
[TLS_RSA_WITH_AES_128_CBC_SHA,TLS_RSA_WITH_AES_256_CBC_SHA]
+# cipher_suites: 
[TLS_RSA_WITH_AES_128_CBC_SHA,TLS_RSA_WITH_AES_256_CBC_SHA,TLS_DHE_RSA_WITH_AES_128_CBC_SHA,TLS_DHE_RSA_WITH_AES_256_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA]
 # require_client_auth: false
 
 # enable or disable client/server encryption.
@@ -687,7 +688,7 @@ client_encryption_options:
 # protocol: TLS
 # algorithm: SunX509
 # store_type: JKS
-# cipher_suites: 
[TLS_RSA_WITH_AES_128_CBC_SHA,TLS_RSA_WITH_AES_256_CBC_SHA]
+# cipher_suites: 
[TLS_RSA_WITH_AES_128_CBC_SHA,TLS_RSA_WITH_AES_256_CBC_SHA,TLS_DHE_RSA_WITH_AES_128_CBC_SHA,TLS_DHE_RSA_WITH_AES_256_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA]
 
 # internode_compression controls whether traffic between nodes is
 # compressed.

http://git-wip-us.apache.org/repos/asf/cassandra/blob/3876eefd/src/java/org/apache/cassandra/config/EncryptionOptions.java
--
diff --git a/src/java/org/apache/cassandra/config/EncryptionOptions.java 
b/src/java/org/apache/cassandra/config/EncryptionOptions.java
index f873636..945a15b 100644
--- a/src/java/org/apache/cassandra/config/EncryptionOptions.java
+++ b/src/java/org/apache/cassandra/config/EncryptionOptions.java
@@ -23,7 +23,11 @@ public abstract class EncryptionOptions
 public String keystore_password = cassandra;
 public String truststore = conf/.truststore;
 public String truststore_password = cassandra;
-public String[] cipher_suites = {TLS_RSA_WITH_AES_128_CBC_SHA, 
TLS_RSA_WITH_AES_256_CBC_SHA};
+public String[] cipher_suites = {
+TLS_RSA_WITH_AES_128_CBC_SHA, TLS_RSA_WITH_AES_256_CBC_SHA,
+TLS_DHE_RSA_WITH_AES_128_CBC_SHA, TLS_DHE_RSA_WITH_AES_256_CBC_SHA,
+TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA, 
TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA 
+};
 public String protocol = TLS;
 public String algorithm = SunX509;
 public String store_type = JKS;



[03/10] git commit: Add extra SSL cipher suites.

2014-03-17 Thread brandonwilliams
Add extra SSL cipher suites.

Patch by brandonwilliams, reviewed by Ray Sinnema for CASSANDRA-6613


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/3876eefd
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/3876eefd
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/3876eefd

Branch: refs/heads/cassandra-2.1
Commit: 3876eefd11a849099150f19250f6c8fcd89579ee
Parents: 8526347
Author: Brandon Williams brandonwilli...@apache.org
Authored: Mon Mar 17 12:05:35 2014 -0500
Committer: Brandon Williams brandonwilli...@apache.org
Committed: Mon Mar 17 12:05:35 2014 -0500

--
 CHANGES.txt | 1 +
 conf/cassandra.yaml | 5 +++--
 src/java/org/apache/cassandra/config/EncryptionOptions.java | 6 +-
 3 files changed, 9 insertions(+), 3 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/3876eefd/CHANGES.txt
--
diff --git a/CHANGES.txt b/CHANGES.txt
index 325c623..f88345d 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -1,4 +1,5 @@
 1.2.16
+ * add extra SSL cipher suites (CASSANDRA-6613)
  * fix nodetool getsstables for blob PK (CASSANDRA-6803)
  * Add CMSClassUnloadingEnabled JVM option (CASSANDRA-6541)
  * Catch memtable flush exceptions during shutdown (CASSANDRA-6735)

http://git-wip-us.apache.org/repos/asf/cassandra/blob/3876eefd/conf/cassandra.yaml
--
diff --git a/conf/cassandra.yaml b/conf/cassandra.yaml
index 194a196..ecad3f0 100644
--- a/conf/cassandra.yaml
+++ b/conf/cassandra.yaml
@@ -651,6 +651,7 @@ index_interval: 128
 # Default settings are TLS v1, RSA 1024-bit keys (it is imperative that
 # users generate their own keys) TLS_RSA_WITH_AES_128_CBC_SHA as the cipher
 # suite for authentication, key exchange and encryption of the actual data 
transfers.
+# Use the DHE/ECDHE ciphers if running in FIPS 140 compliant mode.
 # NOTE: No custom encryption options are enabled at the moment
 # The available internode options are : all, none, dc, rack
 #
@@ -671,7 +672,7 @@ server_encryption_options:
 # protocol: TLS
 # algorithm: SunX509
 # store_type: JKS
-# cipher_suites: 
[TLS_RSA_WITH_AES_128_CBC_SHA,TLS_RSA_WITH_AES_256_CBC_SHA]
+# cipher_suites: 
[TLS_RSA_WITH_AES_128_CBC_SHA,TLS_RSA_WITH_AES_256_CBC_SHA,TLS_DHE_RSA_WITH_AES_128_CBC_SHA,TLS_DHE_RSA_WITH_AES_256_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA]
 # require_client_auth: false
 
 # enable or disable client/server encryption.
@@ -687,7 +688,7 @@ client_encryption_options:
 # protocol: TLS
 # algorithm: SunX509
 # store_type: JKS
-# cipher_suites: 
[TLS_RSA_WITH_AES_128_CBC_SHA,TLS_RSA_WITH_AES_256_CBC_SHA]
+# cipher_suites: 
[TLS_RSA_WITH_AES_128_CBC_SHA,TLS_RSA_WITH_AES_256_CBC_SHA,TLS_DHE_RSA_WITH_AES_128_CBC_SHA,TLS_DHE_RSA_WITH_AES_256_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA]
 
 # internode_compression controls whether traffic between nodes is
 # compressed.

http://git-wip-us.apache.org/repos/asf/cassandra/blob/3876eefd/src/java/org/apache/cassandra/config/EncryptionOptions.java
--
diff --git a/src/java/org/apache/cassandra/config/EncryptionOptions.java 
b/src/java/org/apache/cassandra/config/EncryptionOptions.java
index f873636..945a15b 100644
--- a/src/java/org/apache/cassandra/config/EncryptionOptions.java
+++ b/src/java/org/apache/cassandra/config/EncryptionOptions.java
@@ -23,7 +23,11 @@ public abstract class EncryptionOptions
 public String keystore_password = cassandra;
 public String truststore = conf/.truststore;
 public String truststore_password = cassandra;
-public String[] cipher_suites = {TLS_RSA_WITH_AES_128_CBC_SHA, 
TLS_RSA_WITH_AES_256_CBC_SHA};
+public String[] cipher_suites = {
+TLS_RSA_WITH_AES_128_CBC_SHA, TLS_RSA_WITH_AES_256_CBC_SHA,
+TLS_DHE_RSA_WITH_AES_128_CBC_SHA, TLS_DHE_RSA_WITH_AES_256_CBC_SHA,
+TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA, 
TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA 
+};
 public String protocol = TLS;
 public String algorithm = SunX509;
 public String store_type = JKS;



[05/10] git commit: Merge branch 'cassandra-1.2' into cassandra-2.0

2014-03-17 Thread brandonwilliams
Merge branch 'cassandra-1.2' into cassandra-2.0

Conflicts:
CHANGES.txt


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/98ed6a4b
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/98ed6a4b
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/98ed6a4b

Branch: refs/heads/cassandra-2.1
Commit: 98ed6a4be065c3e68624e3f99dde992afc723671
Parents: 56e2b4a 3876eef
Author: Brandon Williams brandonwilli...@apache.org
Authored: Mon Mar 17 12:07:00 2014 -0500
Committer: Brandon Williams brandonwilli...@apache.org
Committed: Mon Mar 17 12:07:00 2014 -0500

--
 CHANGES.txt | 1 +
 conf/cassandra.yaml | 5 +++--
 src/java/org/apache/cassandra/config/EncryptionOptions.java | 6 +-
 3 files changed, 9 insertions(+), 3 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/98ed6a4b/CHANGES.txt
--
diff --cc CHANGES.txt
index 2f708dc,f88345d..688a759
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@@ -1,64 -1,10 +1,65 @@@
 -1.2.16
 +2.0.7
 + * Fix handling of RejectedExecution in sync Thrift server (CASSANDRA-6788)
 + * Log more information when exceeding tombstone_warn_threshold 
(CASSANDRA-6865)
 + * Fix truncate to not abort due to unreachable fat clients (CASSANDRA-6864)
 + * Fix schema concurrency exceptions (CASSANDRA-6841)
 + * Fix leaking validator FH in StreamWriter (CASSANDRA-6832)
 + * Fix saving triggers to schema (CASSANDRA-6789)
 + * Fix trigger mutations when base mutation list is immutable (CASSANDRA-6790)
 + * Fix accounting in FileCacheService to allow re-using RAR (CASSANDRA-6838)
 + * Fix static counter columns (CASSANDRA-6827)
 + * Restore expiring-deleted (cell) compaction optimization (CASSANDRA-6844)
 + * Fix CompactionManager.needsCleanup (CASSANDRA-6845)
 + * Correctly compare BooleanType values other than 0 and 1 (CASSANDRA-6779)
 + * Read message id as string from earlier versions (CASSANDRA-6840)
 + * Properly use the Paxos consistency for (non-protocol) batch 
(CASSANDRA-6837)
 +Merged from 1.2:
+  * add extra SSL cipher suites (CASSANDRA-6613)
   * fix nodetool getsstables for blob PK (CASSANDRA-6803)
 +
 +
 +2.0.6
 + * Avoid race-prone second scrub of system keyspace (CASSANDRA-6797)
 + * Pool CqlRecordWriter clients by inetaddress rather than Range 
 +   (CASSANDRA-6665)
 + * Fix compaction_history timestamps (CASSANDRA-6784)
 + * Compare scores of full replica ordering in DES (CASSANDRA-6883)
 + * fix CME in SessionInfo updateProgress affecting netstats (CASSANDRA-6577)
 + * Allow repairing between specific replicas (CASSANDRA-6440)
 + * Allow per-dc enabling of hints (CASSANDRA-6157)
 + * Add compatibility for Hadoop 0.2.x (CASSANDRA-5201)
 + * Fix EstimatedHistogram races (CASSANDRA-6682)
 + * Failure detector correctly converts initial value to nanos (CASSANDRA-6658)
 + * Add nodetool taketoken to relocate vnodes (CASSANDRA-4445)
 + * Fix upgradesstables NPE for non-CF-based indexes (CASSANDRA-6645)
 + * Improve nodetool cfhistograms formatting (CASSANDRA-6360)
 + * Expose bulk loading progress over JMX (CASSANDRA-4757)
 + * Correctly handle null with IF conditions and TTL (CASSANDRA-6623)
 + * Account for range/row tombstones in tombstone drop
 +   time histogram (CASSANDRA-6522)
 + * Stop CommitLogSegment.close() from calling sync() (CASSANDRA-6652)
 + * Make commitlog failure handling configurable (CASSANDRA-6364)
 + * Avoid overlaps in LCS (CASSANDRA-6688)
 + * Improve support for paginating over composites (CASSANDRA-4851)
 + * Fix count(*) queries in a mixed cluster (CASSANDRA-6707)
 + * Improve repair tasks(snapshot, differencing) concurrency (CASSANDRA-6566)
 + * Fix replaying pre-2.0 commit logs (CASSANDRA-6714)
 + * Add static columns to CQL3 (CASSANDRA-6561)
 + * Optimize single partition batch statements (CASSANDRA-6737)
 + * Disallow post-query re-ordering when paging (CASSANDRA-6722)
 + * Fix potential paging bug with deleted columns (CASSANDRA-6748)
 + * Fix NPE on BulkLoader caused by losing StreamEvent (CASSANDRA-6636)
 + * Fix truncating compression metadata (CASSANDRA-6791)
 + * Fix UPDATE updating PRIMARY KEY columns implicitly (CASSANDRA-6782)
 + * Fix IllegalArgumentException when updating from 1.2 with SuperColumns
 +   (CASSANDRA-6733)
 + * FBUtilities.singleton() should use the CF comparator (CASSANDRA-6778)
 + * Fix CQLSStableWriter.addRow(MapString, Object) (CASSANDRA-6526)
 + * Fix HSHA server introducing corrupt data (CASSANDRA-6285)
 + * Fix CAS conditions for COMPACT STORAGE tables (CASSANDRA-6813)
 +Merged from 1.2:
   * Add CMSClassUnloadingEnabled JVM option (CASSANDRA-6541)
   * Catch memtable flush exceptions during shutdown (CASSANDRA-6735)
 - * Don't 

[07/10] git commit: Merge branch 'cassandra-1.2' into cassandra-2.0

2014-03-17 Thread brandonwilliams
Merge branch 'cassandra-1.2' into cassandra-2.0

Conflicts:
CHANGES.txt


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/98ed6a4b
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/98ed6a4b
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/98ed6a4b

Branch: refs/heads/trunk
Commit: 98ed6a4be065c3e68624e3f99dde992afc723671
Parents: 56e2b4a 3876eef
Author: Brandon Williams brandonwilli...@apache.org
Authored: Mon Mar 17 12:07:00 2014 -0500
Committer: Brandon Williams brandonwilli...@apache.org
Committed: Mon Mar 17 12:07:00 2014 -0500

--
 CHANGES.txt | 1 +
 conf/cassandra.yaml | 5 +++--
 src/java/org/apache/cassandra/config/EncryptionOptions.java | 6 +-
 3 files changed, 9 insertions(+), 3 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/98ed6a4b/CHANGES.txt
--
diff --cc CHANGES.txt
index 2f708dc,f88345d..688a759
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@@ -1,64 -1,10 +1,65 @@@
 -1.2.16
 +2.0.7
 + * Fix handling of RejectedExecution in sync Thrift server (CASSANDRA-6788)
 + * Log more information when exceeding tombstone_warn_threshold 
(CASSANDRA-6865)
 + * Fix truncate to not abort due to unreachable fat clients (CASSANDRA-6864)
 + * Fix schema concurrency exceptions (CASSANDRA-6841)
 + * Fix leaking validator FH in StreamWriter (CASSANDRA-6832)
 + * Fix saving triggers to schema (CASSANDRA-6789)
 + * Fix trigger mutations when base mutation list is immutable (CASSANDRA-6790)
 + * Fix accounting in FileCacheService to allow re-using RAR (CASSANDRA-6838)
 + * Fix static counter columns (CASSANDRA-6827)
 + * Restore expiring-deleted (cell) compaction optimization (CASSANDRA-6844)
 + * Fix CompactionManager.needsCleanup (CASSANDRA-6845)
 + * Correctly compare BooleanType values other than 0 and 1 (CASSANDRA-6779)
 + * Read message id as string from earlier versions (CASSANDRA-6840)
 + * Properly use the Paxos consistency for (non-protocol) batch 
(CASSANDRA-6837)
 +Merged from 1.2:
+  * add extra SSL cipher suites (CASSANDRA-6613)
   * fix nodetool getsstables for blob PK (CASSANDRA-6803)
 +
 +
 +2.0.6
 + * Avoid race-prone second scrub of system keyspace (CASSANDRA-6797)
 + * Pool CqlRecordWriter clients by inetaddress rather than Range 
 +   (CASSANDRA-6665)
 + * Fix compaction_history timestamps (CASSANDRA-6784)
 + * Compare scores of full replica ordering in DES (CASSANDRA-6883)
 + * fix CME in SessionInfo updateProgress affecting netstats (CASSANDRA-6577)
 + * Allow repairing between specific replicas (CASSANDRA-6440)
 + * Allow per-dc enabling of hints (CASSANDRA-6157)
 + * Add compatibility for Hadoop 0.2.x (CASSANDRA-5201)
 + * Fix EstimatedHistogram races (CASSANDRA-6682)
 + * Failure detector correctly converts initial value to nanos (CASSANDRA-6658)
 + * Add nodetool taketoken to relocate vnodes (CASSANDRA-4445)
 + * Fix upgradesstables NPE for non-CF-based indexes (CASSANDRA-6645)
 + * Improve nodetool cfhistograms formatting (CASSANDRA-6360)
 + * Expose bulk loading progress over JMX (CASSANDRA-4757)
 + * Correctly handle null with IF conditions and TTL (CASSANDRA-6623)
 + * Account for range/row tombstones in tombstone drop
 +   time histogram (CASSANDRA-6522)
 + * Stop CommitLogSegment.close() from calling sync() (CASSANDRA-6652)
 + * Make commitlog failure handling configurable (CASSANDRA-6364)
 + * Avoid overlaps in LCS (CASSANDRA-6688)
 + * Improve support for paginating over composites (CASSANDRA-4851)
 + * Fix count(*) queries in a mixed cluster (CASSANDRA-6707)
 + * Improve repair tasks(snapshot, differencing) concurrency (CASSANDRA-6566)
 + * Fix replaying pre-2.0 commit logs (CASSANDRA-6714)
 + * Add static columns to CQL3 (CASSANDRA-6561)
 + * Optimize single partition batch statements (CASSANDRA-6737)
 + * Disallow post-query re-ordering when paging (CASSANDRA-6722)
 + * Fix potential paging bug with deleted columns (CASSANDRA-6748)
 + * Fix NPE on BulkLoader caused by losing StreamEvent (CASSANDRA-6636)
 + * Fix truncating compression metadata (CASSANDRA-6791)
 + * Fix UPDATE updating PRIMARY KEY columns implicitly (CASSANDRA-6782)
 + * Fix IllegalArgumentException when updating from 1.2 with SuperColumns
 +   (CASSANDRA-6733)
 + * FBUtilities.singleton() should use the CF comparator (CASSANDRA-6778)
 + * Fix CQLSStableWriter.addRow(MapString, Object) (CASSANDRA-6526)
 + * Fix HSHA server introducing corrupt data (CASSANDRA-6285)
 + * Fix CAS conditions for COMPACT STORAGE tables (CASSANDRA-6813)
 +Merged from 1.2:
   * Add CMSClassUnloadingEnabled JVM option (CASSANDRA-6541)
   * Catch memtable flush exceptions during shutdown (CASSANDRA-6735)
 - * Don't attempt 

[06/10] git commit: Merge branch 'cassandra-1.2' into cassandra-2.0

2014-03-17 Thread brandonwilliams
Merge branch 'cassandra-1.2' into cassandra-2.0

Conflicts:
CHANGES.txt


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/98ed6a4b
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/98ed6a4b
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/98ed6a4b

Branch: refs/heads/cassandra-2.0
Commit: 98ed6a4be065c3e68624e3f99dde992afc723671
Parents: 56e2b4a 3876eef
Author: Brandon Williams brandonwilli...@apache.org
Authored: Mon Mar 17 12:07:00 2014 -0500
Committer: Brandon Williams brandonwilli...@apache.org
Committed: Mon Mar 17 12:07:00 2014 -0500

--
 CHANGES.txt | 1 +
 conf/cassandra.yaml | 5 +++--
 src/java/org/apache/cassandra/config/EncryptionOptions.java | 6 +-
 3 files changed, 9 insertions(+), 3 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/98ed6a4b/CHANGES.txt
--
diff --cc CHANGES.txt
index 2f708dc,f88345d..688a759
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@@ -1,64 -1,10 +1,65 @@@
 -1.2.16
 +2.0.7
 + * Fix handling of RejectedExecution in sync Thrift server (CASSANDRA-6788)
 + * Log more information when exceeding tombstone_warn_threshold 
(CASSANDRA-6865)
 + * Fix truncate to not abort due to unreachable fat clients (CASSANDRA-6864)
 + * Fix schema concurrency exceptions (CASSANDRA-6841)
 + * Fix leaking validator FH in StreamWriter (CASSANDRA-6832)
 + * Fix saving triggers to schema (CASSANDRA-6789)
 + * Fix trigger mutations when base mutation list is immutable (CASSANDRA-6790)
 + * Fix accounting in FileCacheService to allow re-using RAR (CASSANDRA-6838)
 + * Fix static counter columns (CASSANDRA-6827)
 + * Restore expiring-deleted (cell) compaction optimization (CASSANDRA-6844)
 + * Fix CompactionManager.needsCleanup (CASSANDRA-6845)
 + * Correctly compare BooleanType values other than 0 and 1 (CASSANDRA-6779)
 + * Read message id as string from earlier versions (CASSANDRA-6840)
 + * Properly use the Paxos consistency for (non-protocol) batch 
(CASSANDRA-6837)
 +Merged from 1.2:
+  * add extra SSL cipher suites (CASSANDRA-6613)
   * fix nodetool getsstables for blob PK (CASSANDRA-6803)
 +
 +
 +2.0.6
 + * Avoid race-prone second scrub of system keyspace (CASSANDRA-6797)
 + * Pool CqlRecordWriter clients by inetaddress rather than Range 
 +   (CASSANDRA-6665)
 + * Fix compaction_history timestamps (CASSANDRA-6784)
 + * Compare scores of full replica ordering in DES (CASSANDRA-6883)
 + * fix CME in SessionInfo updateProgress affecting netstats (CASSANDRA-6577)
 + * Allow repairing between specific replicas (CASSANDRA-6440)
 + * Allow per-dc enabling of hints (CASSANDRA-6157)
 + * Add compatibility for Hadoop 0.2.x (CASSANDRA-5201)
 + * Fix EstimatedHistogram races (CASSANDRA-6682)
 + * Failure detector correctly converts initial value to nanos (CASSANDRA-6658)
 + * Add nodetool taketoken to relocate vnodes (CASSANDRA-4445)
 + * Fix upgradesstables NPE for non-CF-based indexes (CASSANDRA-6645)
 + * Improve nodetool cfhistograms formatting (CASSANDRA-6360)
 + * Expose bulk loading progress over JMX (CASSANDRA-4757)
 + * Correctly handle null with IF conditions and TTL (CASSANDRA-6623)
 + * Account for range/row tombstones in tombstone drop
 +   time histogram (CASSANDRA-6522)
 + * Stop CommitLogSegment.close() from calling sync() (CASSANDRA-6652)
 + * Make commitlog failure handling configurable (CASSANDRA-6364)
 + * Avoid overlaps in LCS (CASSANDRA-6688)
 + * Improve support for paginating over composites (CASSANDRA-4851)
 + * Fix count(*) queries in a mixed cluster (CASSANDRA-6707)
 + * Improve repair tasks(snapshot, differencing) concurrency (CASSANDRA-6566)
 + * Fix replaying pre-2.0 commit logs (CASSANDRA-6714)
 + * Add static columns to CQL3 (CASSANDRA-6561)
 + * Optimize single partition batch statements (CASSANDRA-6737)
 + * Disallow post-query re-ordering when paging (CASSANDRA-6722)
 + * Fix potential paging bug with deleted columns (CASSANDRA-6748)
 + * Fix NPE on BulkLoader caused by losing StreamEvent (CASSANDRA-6636)
 + * Fix truncating compression metadata (CASSANDRA-6791)
 + * Fix UPDATE updating PRIMARY KEY columns implicitly (CASSANDRA-6782)
 + * Fix IllegalArgumentException when updating from 1.2 with SuperColumns
 +   (CASSANDRA-6733)
 + * FBUtilities.singleton() should use the CF comparator (CASSANDRA-6778)
 + * Fix CQLSStableWriter.addRow(MapString, Object) (CASSANDRA-6526)
 + * Fix HSHA server introducing corrupt data (CASSANDRA-6285)
 + * Fix CAS conditions for COMPACT STORAGE tables (CASSANDRA-6813)
 +Merged from 1.2:
   * Add CMSClassUnloadingEnabled JVM option (CASSANDRA-6541)
   * Catch memtable flush exceptions during shutdown (CASSANDRA-6735)
 - * Don't 

[10/10] git commit: Merge branch 'cassandra-2.1' into trunk

2014-03-17 Thread brandonwilliams
Merge branch 'cassandra-2.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/69cadca3
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/69cadca3
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/69cadca3

Branch: refs/heads/trunk
Commit: 69cadca33fa86fe9df5fe78c936ff34250d2054a
Parents: c3d9280 ceddff5
Author: Brandon Williams brandonwilli...@apache.org
Authored: Mon Mar 17 12:08:24 2014 -0500
Committer: Brandon Williams brandonwilli...@apache.org
Committed: Mon Mar 17 12:08:24 2014 -0500

--
 CHANGES.txt | 7 +++
 conf/cassandra.yaml | 5 +++--
 src/java/org/apache/cassandra/config/EncryptionOptions.java | 6 +-
 3 files changed, 15 insertions(+), 3 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/69cadca3/CHANGES.txt
--



[01/10] git commit: Add extra SSL cipher suites.

2014-03-17 Thread brandonwilliams
Repository: cassandra
Updated Branches:
  refs/heads/cassandra-1.2 8526347ca - 3876eefd1
  refs/heads/cassandra-2.0 56e2b4ac0 - 98ed6a4be
  refs/heads/cassandra-2.1 dd60ab474 - ceddff58f
  refs/heads/trunk c3d9280e4 - 69cadca33


Add extra SSL cipher suites.

Patch by brandonwilliams, reviewed by Ray Sinnema for CASSANDRA-6613


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/3876eefd
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/3876eefd
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/3876eefd

Branch: refs/heads/cassandra-1.2
Commit: 3876eefd11a849099150f19250f6c8fcd89579ee
Parents: 8526347
Author: Brandon Williams brandonwilli...@apache.org
Authored: Mon Mar 17 12:05:35 2014 -0500
Committer: Brandon Williams brandonwilli...@apache.org
Committed: Mon Mar 17 12:05:35 2014 -0500

--
 CHANGES.txt | 1 +
 conf/cassandra.yaml | 5 +++--
 src/java/org/apache/cassandra/config/EncryptionOptions.java | 6 +-
 3 files changed, 9 insertions(+), 3 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/3876eefd/CHANGES.txt
--
diff --git a/CHANGES.txt b/CHANGES.txt
index 325c623..f88345d 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -1,4 +1,5 @@
 1.2.16
+ * add extra SSL cipher suites (CASSANDRA-6613)
  * fix nodetool getsstables for blob PK (CASSANDRA-6803)
  * Add CMSClassUnloadingEnabled JVM option (CASSANDRA-6541)
  * Catch memtable flush exceptions during shutdown (CASSANDRA-6735)

http://git-wip-us.apache.org/repos/asf/cassandra/blob/3876eefd/conf/cassandra.yaml
--
diff --git a/conf/cassandra.yaml b/conf/cassandra.yaml
index 194a196..ecad3f0 100644
--- a/conf/cassandra.yaml
+++ b/conf/cassandra.yaml
@@ -651,6 +651,7 @@ index_interval: 128
 # Default settings are TLS v1, RSA 1024-bit keys (it is imperative that
 # users generate their own keys) TLS_RSA_WITH_AES_128_CBC_SHA as the cipher
 # suite for authentication, key exchange and encryption of the actual data 
transfers.
+# Use the DHE/ECDHE ciphers if running in FIPS 140 compliant mode.
 # NOTE: No custom encryption options are enabled at the moment
 # The available internode options are : all, none, dc, rack
 #
@@ -671,7 +672,7 @@ server_encryption_options:
 # protocol: TLS
 # algorithm: SunX509
 # store_type: JKS
-# cipher_suites: 
[TLS_RSA_WITH_AES_128_CBC_SHA,TLS_RSA_WITH_AES_256_CBC_SHA]
+# cipher_suites: 
[TLS_RSA_WITH_AES_128_CBC_SHA,TLS_RSA_WITH_AES_256_CBC_SHA,TLS_DHE_RSA_WITH_AES_128_CBC_SHA,TLS_DHE_RSA_WITH_AES_256_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA]
 # require_client_auth: false
 
 # enable or disable client/server encryption.
@@ -687,7 +688,7 @@ client_encryption_options:
 # protocol: TLS
 # algorithm: SunX509
 # store_type: JKS
-# cipher_suites: 
[TLS_RSA_WITH_AES_128_CBC_SHA,TLS_RSA_WITH_AES_256_CBC_SHA]
+# cipher_suites: 
[TLS_RSA_WITH_AES_128_CBC_SHA,TLS_RSA_WITH_AES_256_CBC_SHA,TLS_DHE_RSA_WITH_AES_128_CBC_SHA,TLS_DHE_RSA_WITH_AES_256_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA]
 
 # internode_compression controls whether traffic between nodes is
 # compressed.

http://git-wip-us.apache.org/repos/asf/cassandra/blob/3876eefd/src/java/org/apache/cassandra/config/EncryptionOptions.java
--
diff --git a/src/java/org/apache/cassandra/config/EncryptionOptions.java 
b/src/java/org/apache/cassandra/config/EncryptionOptions.java
index f873636..945a15b 100644
--- a/src/java/org/apache/cassandra/config/EncryptionOptions.java
+++ b/src/java/org/apache/cassandra/config/EncryptionOptions.java
@@ -23,7 +23,11 @@ public abstract class EncryptionOptions
 public String keystore_password = cassandra;
 public String truststore = conf/.truststore;
 public String truststore_password = cassandra;
-public String[] cipher_suites = {TLS_RSA_WITH_AES_128_CBC_SHA, 
TLS_RSA_WITH_AES_256_CBC_SHA};
+public String[] cipher_suites = {
+TLS_RSA_WITH_AES_128_CBC_SHA, TLS_RSA_WITH_AES_256_CBC_SHA,
+TLS_DHE_RSA_WITH_AES_128_CBC_SHA, TLS_DHE_RSA_WITH_AES_256_CBC_SHA,
+TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA, 
TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA 
+};
 public String protocol = TLS;
 public String algorithm = SunX509;
 public String store_type = JKS;



[jira] [Commented] (CASSANDRA-6871) Dynamic class loading for triggers (and udfs)

2014-03-17 Thread Edward Capriolo (JIRA)

[ 
https://issues.apache.org/jira/browse/CASSANDRA-6871?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13938057#comment-13938057
 ] 

Edward Capriolo commented on CASSANDRA-6871:


{quote}
Ultimately what I'd like to see is CREATE TRIGGER specify a UDF, with UDF 
support for multiple languages a la postgresq
{quote}
I think we are in agreement. Right now when you create a trigger you only 
specify a class name.

The syntax would be something like this
{code}
create trigger abc options {classname='abc', spec='groovy' script=' public 
class {'
{code}

The spec could be any language and the script could be any language. clojure, 
jruby etc.

 Dynamic class loading for triggers (and udfs)
 -

 Key: CASSANDRA-6871
 URL: https://issues.apache.org/jira/browse/CASSANDRA-6871
 Project: Cassandra
  Issue Type: New Feature
Reporter: Edward Capriolo
Assignee: Edward Capriolo

 Currently the trigger feature requires out of band shipping jar files to 
 servers. In the near future users may be able to provide custom functions 
 like trim() dynamically like pig and hive do. In order to accomplish this 
 securely my suggestion is this.
 1. Add a new configuration knob to cassandra.yaml which controls how users 
 are allowed to load class definitions. 
 {code}
 dynamic_loading:
 - JAVA_LOCAL_CLASSPATH
 - GROOVY_CLASS_LOADER
 {code}
 2. Add the https://github.com/edwardcapriolo/nit-compiler to the project as a 
 dependency. 
 3. Profit: A follow on piece would allow triggers to be defined in a JVM 
 language. Features like https://issues.apache.org/jira/browse/CASSANDRA-6870 
 could use this. Users can also create different pluggable components to CQL 
 at runtime. 
 This issue would just be about brining the dynamic loading mechanism in the 
 project securely. Not implementing it in a user facincg way.



--
This message was sent by Atlassian JIRA
(v6.2#6252)


[jira] [Commented] (CASSANDRA-6871) Dynamic class loading for triggers (and udfs)

2014-03-17 Thread Edward Capriolo (JIRA)

[ 
https://issues.apache.org/jira/browse/CASSANDRA-6871?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13938062#comment-13938062
 ] 

Edward Capriolo commented on CASSANDRA-6871:


{quote}
 It sounds like I'd still be shipping jars around
{quote}
You have the option of placing the payload of the UDF in the script field if 
the spec supports its. 

 Dynamic class loading for triggers (and udfs)
 -

 Key: CASSANDRA-6871
 URL: https://issues.apache.org/jira/browse/CASSANDRA-6871
 Project: Cassandra
  Issue Type: New Feature
Reporter: Edward Capriolo
Assignee: Edward Capriolo

 Currently the trigger feature requires out of band shipping jar files to 
 servers. In the near future users may be able to provide custom functions 
 like trim() dynamically like pig and hive do. In order to accomplish this 
 securely my suggestion is this.
 1. Add a new configuration knob to cassandra.yaml which controls how users 
 are allowed to load class definitions. 
 {code}
 dynamic_loading:
 - JAVA_LOCAL_CLASSPATH
 - GROOVY_CLASS_LOADER
 {code}
 2. Add the https://github.com/edwardcapriolo/nit-compiler to the project as a 
 dependency. 
 3. Profit: A follow on piece would allow triggers to be defined in a JVM 
 language. Features like https://issues.apache.org/jira/browse/CASSANDRA-6870 
 could use this. Users can also create different pluggable components to CQL 
 at runtime. 
 This issue would just be about brining the dynamic loading mechanism in the 
 project securely. Not implementing it in a user facincg way.



--
This message was sent by Atlassian JIRA
(v6.2#6252)


[jira] [Comment Edited] (CASSANDRA-6871) Dynamic class loading for triggers (and udfs)

2014-03-17 Thread Edward Capriolo (JIRA)

[ 
https://issues.apache.org/jira/browse/CASSANDRA-6871?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13938062#comment-13938062
 ] 

Edward Capriolo edited comment on CASSANDRA-6871 at 3/17/14 5:16 PM:
-

{quote}
 It sounds like I'd still be shipping jars around
{quote}
No. You have the option of placing the payload of the UDF in the script field 
if the spec supports it. However the old way will work as well. 


was (Author: appodictic):
{quote}
 It sounds like I'd still be shipping jars around
{quote}
You have the option of placing the payload of the UDF in the script field if 
the spec supports its. 

 Dynamic class loading for triggers (and udfs)
 -

 Key: CASSANDRA-6871
 URL: https://issues.apache.org/jira/browse/CASSANDRA-6871
 Project: Cassandra
  Issue Type: New Feature
Reporter: Edward Capriolo
Assignee: Edward Capriolo

 Currently the trigger feature requires out of band shipping jar files to 
 servers. In the near future users may be able to provide custom functions 
 like trim() dynamically like pig and hive do. In order to accomplish this 
 securely my suggestion is this.
 1. Add a new configuration knob to cassandra.yaml which controls how users 
 are allowed to load class definitions. 
 {code}
 dynamic_loading:
 - JAVA_LOCAL_CLASSPATH
 - GROOVY_CLASS_LOADER
 {code}
 2. Add the https://github.com/edwardcapriolo/nit-compiler to the project as a 
 dependency. 
 3. Profit: A follow on piece would allow triggers to be defined in a JVM 
 language. Features like https://issues.apache.org/jira/browse/CASSANDRA-6870 
 could use this. Users can also create different pluggable components to CQL 
 at runtime. 
 This issue would just be about brining the dynamic loading mechanism in the 
 project securely. Not implementing it in a user facincg way.



--
This message was sent by Atlassian JIRA
(v6.2#6252)


[jira] [Comment Edited] (CASSANDRA-6871) Dynamic class loading for triggers (and udfs)

2014-03-17 Thread Edward Capriolo (JIRA)

[ 
https://issues.apache.org/jira/browse/CASSANDRA-6871?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13938062#comment-13938062
 ] 

Edward Capriolo edited comment on CASSANDRA-6871 at 3/17/14 5:17 PM:
-

{quote}
 It sounds like I'd still be shipping jars around
{quote}
No. You have the option of placing the payload of the trigger in the script 
field if the spec supports it. However the old way will work as well. 


was (Author: appodictic):
{quote}
 It sounds like I'd still be shipping jars around
{quote}
No. You have the option of placing the payload of the UDF in the script field 
if the spec supports it. However the old way will work as well. 

 Dynamic class loading for triggers (and udfs)
 -

 Key: CASSANDRA-6871
 URL: https://issues.apache.org/jira/browse/CASSANDRA-6871
 Project: Cassandra
  Issue Type: New Feature
Reporter: Edward Capriolo
Assignee: Edward Capriolo

 Currently the trigger feature requires out of band shipping jar files to 
 servers. In the near future users may be able to provide custom functions 
 like trim() dynamically like pig and hive do. In order to accomplish this 
 securely my suggestion is this.
 1. Add a new configuration knob to cassandra.yaml which controls how users 
 are allowed to load class definitions. 
 {code}
 dynamic_loading:
 - JAVA_LOCAL_CLASSPATH
 - GROOVY_CLASS_LOADER
 {code}
 2. Add the https://github.com/edwardcapriolo/nit-compiler to the project as a 
 dependency. 
 3. Profit: A follow on piece would allow triggers to be defined in a JVM 
 language. Features like https://issues.apache.org/jira/browse/CASSANDRA-6870 
 could use this. Users can also create different pluggable components to CQL 
 at runtime. 
 This issue would just be about brining the dynamic loading mechanism in the 
 project securely. Not implementing it in a user facincg way.



--
This message was sent by Atlassian JIRA
(v6.2#6252)


[jira] [Created] (CASSANDRA-6875) CQL3: select multiple CQL rows in a single partition using IN

2014-03-17 Thread Nicolas Favre-Felix (JIRA)
Nicolas Favre-Felix created CASSANDRA-6875:
--

 Summary: CQL3: select multiple CQL rows in a single partition 
using IN
 Key: CASSANDRA-6875
 URL: https://issues.apache.org/jira/browse/CASSANDRA-6875
 Project: Cassandra
  Issue Type: Bug
  Components: API
Reporter: Nicolas Favre-Felix


In the spirit of CASSANDRA-4851 and to bring CQL to parity with Thrift, it is 
important to support reading several distinct CQL rows from a given partition 
using a distinct set of coordinates for these rows within the partition.

CASSANDRA-4851 introduced a range scan over the multi-dimensional space of 
clustering keys. We also need to support a multi-get of CQL rows, potentially 
using the IN keyword to define a set of clustering keys to fetch at once.

(reusing the same example\:)

Consider the following table:
{code}
CREATE TABLE test (
  k int,
  c1 int,
  c2 int,
  PRIMARY KEY (k, c1, c2)
);
{code}
with the following data:
{code}
 k | c1 | c2
---++
 0 |  0 |  0
 0 |  0 |  1
 0 |  1 |  0
 0 |  1 |  1
{code}

We can fetch a single row or a range of rows, but not a set of them:

{code}
 SELECT * FROM test WHERE k = 0 AND (c1, c2) IN ((0, 0), (1,1)) ;
Bad Request: line 1:54 missing EOF at ','
{code}

Supporting this syntax would return:
{code}
 k | c1 | c2
---++
 0 |  0 |  0
 0 |  1 |  1
{code}

Being able to fetch these two CQL rows in a single read is important to 
maintain partition-level isolation.



--
This message was sent by Atlassian JIRA
(v6.2#6252)


[jira] [Updated] (CASSANDRA-6875) CQL3: select multiple CQL rows in a single partition using IN

2014-03-17 Thread Sylvain Lebresne (JIRA)

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

Sylvain Lebresne updated CASSANDRA-6875:


Assignee: Tyler Hobbs

 CQL3: select multiple CQL rows in a single partition using IN
 -

 Key: CASSANDRA-6875
 URL: https://issues.apache.org/jira/browse/CASSANDRA-6875
 Project: Cassandra
  Issue Type: Bug
  Components: API
Reporter: Nicolas Favre-Felix
Assignee: Tyler Hobbs

 In the spirit of CASSANDRA-4851 and to bring CQL to parity with Thrift, it is 
 important to support reading several distinct CQL rows from a given partition 
 using a distinct set of coordinates for these rows within the partition.
 CASSANDRA-4851 introduced a range scan over the multi-dimensional space of 
 clustering keys. We also need to support a multi-get of CQL rows, 
 potentially using the IN keyword to define a set of clustering keys to 
 fetch at once.
 (reusing the same example\:)
 Consider the following table:
 {code}
 CREATE TABLE test (
   k int,
   c1 int,
   c2 int,
   PRIMARY KEY (k, c1, c2)
 );
 {code}
 with the following data:
 {code}
  k | c1 | c2
 ---++
  0 |  0 |  0
  0 |  0 |  1
  0 |  1 |  0
  0 |  1 |  1
 {code}
 We can fetch a single row or a range of rows, but not a set of them:
 {code}
  SELECT * FROM test WHERE k = 0 AND (c1, c2) IN ((0, 0), (1,1)) ;
 Bad Request: line 1:54 missing EOF at ','
 {code}
 Supporting this syntax would return:
 {code}
  k | c1 | c2
 ---++
  0 |  0 |  0
  0 |  1 |  1
 {code}
 Being able to fetch these two CQL rows in a single read is important to 
 maintain partition-level isolation.



--
This message was sent by Atlassian JIRA
(v6.2#6252)


[jira] [Updated] (CASSANDRA-6875) CQL3: select multiple CQL rows in a single partition using IN

2014-03-17 Thread Sylvain Lebresne (JIRA)

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

Sylvain Lebresne updated CASSANDRA-6875:


Priority: Minor  (was: Major)

 CQL3: select multiple CQL rows in a single partition using IN
 -

 Key: CASSANDRA-6875
 URL: https://issues.apache.org/jira/browse/CASSANDRA-6875
 Project: Cassandra
  Issue Type: Bug
  Components: API
Reporter: Nicolas Favre-Felix
Assignee: Tyler Hobbs
Priority: Minor

 In the spirit of CASSANDRA-4851 and to bring CQL to parity with Thrift, it is 
 important to support reading several distinct CQL rows from a given partition 
 using a distinct set of coordinates for these rows within the partition.
 CASSANDRA-4851 introduced a range scan over the multi-dimensional space of 
 clustering keys. We also need to support a multi-get of CQL rows, 
 potentially using the IN keyword to define a set of clustering keys to 
 fetch at once.
 (reusing the same example\:)
 Consider the following table:
 {code}
 CREATE TABLE test (
   k int,
   c1 int,
   c2 int,
   PRIMARY KEY (k, c1, c2)
 );
 {code}
 with the following data:
 {code}
  k | c1 | c2
 ---++
  0 |  0 |  0
  0 |  0 |  1
  0 |  1 |  0
  0 |  1 |  1
 {code}
 We can fetch a single row or a range of rows, but not a set of them:
 {code}
  SELECT * FROM test WHERE k = 0 AND (c1, c2) IN ((0, 0), (1,1)) ;
 Bad Request: line 1:54 missing EOF at ','
 {code}
 Supporting this syntax would return:
 {code}
  k | c1 | c2
 ---++
  0 |  0 |  0
  0 |  1 |  1
 {code}
 Being able to fetch these two CQL rows in a single read is important to 
 maintain partition-level isolation.



--
This message was sent by Atlassian JIRA
(v6.2#6252)


[jira] [Updated] (CASSANDRA-6814) We should ensure that AbstractReadExecutor.makeDigestRequests never calls the local machine

2014-03-17 Thread Vijay (JIRA)

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

Vijay updated CASSANDRA-6814:
-

Attachment: 0001-CASSANDRA-6814.patch

Attached is a simple patch which moves the localhost comparison (priority) to 
AbstractEndpointSnitch.sortByProximity so the dynamic snitch will not overwrite 
comparing the scores. 

The motivation for this change is to avoid another sort, let me know if this 
works. My tests shows the assertion added doesn't break.

 We should ensure that AbstractReadExecutor.makeDigestRequests never calls the 
 local machine
 ---

 Key: CASSANDRA-6814
 URL: https://issues.apache.org/jira/browse/CASSANDRA-6814
 Project: Cassandra
  Issue Type: Improvement
Reporter: Benedict
Assignee: Vijay
Priority: Minor
 Fix For: 3.0

 Attachments: 0001-CASSANDRA-6814.patch


 It should always opt to perform the actual read locally, when possible, and 
 this code path should assert that it does not read locally.



--
This message was sent by Atlassian JIRA
(v6.2#6252)


[jira] [Updated] (CASSANDRA-6646) Disk Failure Policy ignores CorruptBlockException

2014-03-17 Thread Marcus Eriksson (JIRA)

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

Marcus Eriksson updated CASSANDRA-6646:
---

Attachment: 0001-add-paranoid-disk-failure-option.patch

add paranoid DiskFailurePolicy for CorruptSSTableExceptions

 Disk Failure Policy ignores CorruptBlockException 
 --

 Key: CASSANDRA-6646
 URL: https://issues.apache.org/jira/browse/CASSANDRA-6646
 Project: Cassandra
  Issue Type: Bug
Reporter: sankalp kohli
Assignee: Marcus Eriksson
Priority: Minor
 Fix For: 2.0.7, 2.1 beta2

 Attachments: 0001-add-paranoid-disk-failure-option.patch, 
 0001-make-CorruptSSTableException-an-FSError-to-be-able-t.patch


 If Cassandra is using compression and has a bad drive or stable, it will 
 throw an CorruptBlockException. 
 Disk Failure Policy only works if it is an FSError and does not work for 
 IOExceptions like this. 
 We need to better handle such exceptions as it causes nodes to not respond to 
 the co-ordinator causing the client to timeout. 



--
This message was sent by Atlassian JIRA
(v6.2#6252)


[jira] [Comment Edited] (CASSANDRA-6814) We should ensure that AbstractReadExecutor.makeDigestRequests never calls the local machine

2014-03-17 Thread Vijay (JIRA)

[ 
https://issues.apache.org/jira/browse/CASSANDRA-6814?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13938097#comment-13938097
 ] 

Vijay edited comment on CASSANDRA-6814 at 3/17/14 5:47 PM:
---

Attached is a simple patch which moves the localhost comparison (priority) to 
AbstractEndpointSnitch.sortByProximity so the dynamic snitch will not overwrite 
comparing the scores. 

cc [~brandon.williams]

The motivation for this change is to avoid another sort, let me know if this 
works. My tests shows the assertion added doesn't break.


was (Author: vijay2...@yahoo.com):
Attached is a simple patch which moves the localhost comparison (priority) to 
AbstractEndpointSnitch.sortByProximity so the dynamic snitch will not overwrite 
comparing the scores. 

The motivation for this change is to avoid another sort, let me know if this 
works. My tests shows the assertion added doesn't break.

 We should ensure that AbstractReadExecutor.makeDigestRequests never calls the 
 local machine
 ---

 Key: CASSANDRA-6814
 URL: https://issues.apache.org/jira/browse/CASSANDRA-6814
 Project: Cassandra
  Issue Type: Improvement
Reporter: Benedict
Assignee: Vijay
Priority: Minor
 Fix For: 3.0

 Attachments: 0001-CASSANDRA-6814.patch


 It should always opt to perform the actual read locally, when possible, and 
 this code path should assert that it does not read locally.



--
This message was sent by Atlassian JIRA
(v6.2#6252)


[jira] [Commented] (CASSANDRA-6875) CQL3: select multiple CQL rows in a single partition using IN

2014-03-17 Thread Sylvain Lebresne (JIRA)

[ 
https://issues.apache.org/jira/browse/CASSANDRA-6875?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13938104#comment-13938104
 ] 

Sylvain Lebresne commented on CASSANDRA-6875:
-

That's a relatively nature extension of CASSANDRA-4851 and we can definitively 
support that.

 CQL3: select multiple CQL rows in a single partition using IN
 -

 Key: CASSANDRA-6875
 URL: https://issues.apache.org/jira/browse/CASSANDRA-6875
 Project: Cassandra
  Issue Type: Bug
  Components: API
Reporter: Nicolas Favre-Felix
Assignee: Tyler Hobbs
Priority: Minor
 Fix For: 2.1


 In the spirit of CASSANDRA-4851 and to bring CQL to parity with Thrift, it is 
 important to support reading several distinct CQL rows from a given partition 
 using a distinct set of coordinates for these rows within the partition.
 CASSANDRA-4851 introduced a range scan over the multi-dimensional space of 
 clustering keys. We also need to support a multi-get of CQL rows, 
 potentially using the IN keyword to define a set of clustering keys to 
 fetch at once.
 (reusing the same example\:)
 Consider the following table:
 {code}
 CREATE TABLE test (
   k int,
   c1 int,
   c2 int,
   PRIMARY KEY (k, c1, c2)
 );
 {code}
 with the following data:
 {code}
  k | c1 | c2
 ---++
  0 |  0 |  0
  0 |  0 |  1
  0 |  1 |  0
  0 |  1 |  1
 {code}
 We can fetch a single row or a range of rows, but not a set of them:
 {code}
  SELECT * FROM test WHERE k = 0 AND (c1, c2) IN ((0, 0), (1,1)) ;
 Bad Request: line 1:54 missing EOF at ','
 {code}
 Supporting this syntax would return:
 {code}
  k | c1 | c2
 ---++
  0 |  0 |  0
  0 |  1 |  1
 {code}
 Being able to fetch these two CQL rows in a single read is important to 
 maintain partition-level isolation.



--
This message was sent by Atlassian JIRA
(v6.2#6252)


[jira] [Updated] (CASSANDRA-6875) CQL3: select multiple CQL rows in a single partition using IN

2014-03-17 Thread Sylvain Lebresne (JIRA)

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

Sylvain Lebresne updated CASSANDRA-6875:


Fix Version/s: 2.1

 CQL3: select multiple CQL rows in a single partition using IN
 -

 Key: CASSANDRA-6875
 URL: https://issues.apache.org/jira/browse/CASSANDRA-6875
 Project: Cassandra
  Issue Type: Bug
  Components: API
Reporter: Nicolas Favre-Felix
Assignee: Tyler Hobbs
Priority: Minor
 Fix For: 2.1


 In the spirit of CASSANDRA-4851 and to bring CQL to parity with Thrift, it is 
 important to support reading several distinct CQL rows from a given partition 
 using a distinct set of coordinates for these rows within the partition.
 CASSANDRA-4851 introduced a range scan over the multi-dimensional space of 
 clustering keys. We also need to support a multi-get of CQL rows, 
 potentially using the IN keyword to define a set of clustering keys to 
 fetch at once.
 (reusing the same example\:)
 Consider the following table:
 {code}
 CREATE TABLE test (
   k int,
   c1 int,
   c2 int,
   PRIMARY KEY (k, c1, c2)
 );
 {code}
 with the following data:
 {code}
  k | c1 | c2
 ---++
  0 |  0 |  0
  0 |  0 |  1
  0 |  1 |  0
  0 |  1 |  1
 {code}
 We can fetch a single row or a range of rows, but not a set of them:
 {code}
  SELECT * FROM test WHERE k = 0 AND (c1, c2) IN ((0, 0), (1,1)) ;
 Bad Request: line 1:54 missing EOF at ','
 {code}
 Supporting this syntax would return:
 {code}
  k | c1 | c2
 ---++
  0 |  0 |  0
  0 |  1 |  1
 {code}
 Being able to fetch these two CQL rows in a single read is important to 
 maintain partition-level isolation.



--
This message was sent by Atlassian JIRA
(v6.2#6252)


[jira] [Reopened] (CASSANDRA-6418) auto_snapshots are not removable via 'nodetool clearsnapshot'

2014-03-17 Thread Nick Bailey (JIRA)

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

Nick Bailey reopened CASSANDRA-6418:



Re-opening, let me know if I should create a separate ticket.

 auto_snapshots are not removable via 'nodetool clearsnapshot'
 -

 Key: CASSANDRA-6418
 URL: https://issues.apache.org/jira/browse/CASSANDRA-6418
 Project: Cassandra
  Issue Type: Bug
  Components: Tools
 Environment: auto_snapshot: true
Reporter: J. Ryan Earl
Assignee: Lyuben Todorov
Priority: Minor
 Fix For: 2.0.5

 Attachments: 6418_cassandra-2.0.patch, 6418_cassandra-2.0_v5.patch, 
 6418_v2.patch, 6418_v3_cassandra-2.0.patch, CASSANDRA-2.0-6418_v4.patch


 Snapshots of deleted CFs created via the auto_snapshot configuration 
 parameter appear to not be tracked.  The result is that 'nodetool 
 clearsnapshot keyspace with deleted CFs' does nothing, and short of 
 manually removing the files from the filesystem, deleted CFs remain 
 indefinitely taking up space.
 I'm not sure if this is intended, but it seems pretty counter-intuitive.  I 
 haven't found any documentation that indicates auto_snapshots would be 
 ignored by 'nodetool clearsnapshot'.



--
This message was sent by Atlassian JIRA
(v6.2#6252)


[jira] [Commented] (CASSANDRA-6774) Cleanup fails with assertion error after stopping previous run

2014-03-17 Thread Marcus Eriksson (JIRA)

[ 
https://issues.apache.org/jira/browse/CASSANDRA-6774?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13938125#comment-13938125
 ] 

Marcus Eriksson commented on CASSANDRA-6774:


hmm i guess we shouldn't change the signatures of the exposed mbean methods in 
a minor rev

lets go 2.1 and leave 2.0 with the assertion, as it is mostly a cosmetic change



 Cleanup fails with assertion error after stopping previous run
 --

 Key: CASSANDRA-6774
 URL: https://issues.apache.org/jira/browse/CASSANDRA-6774
 Project: Cassandra
  Issue Type: Bug
  Components: Core
 Environment: 2.0.5
Reporter: Keith Wright
Assignee: Marcus Eriksson
 Fix For: 2.1 beta2

 Attachments: 0001-6774-wip.patch, 
 0001-Dont-continue-after-failing-to-cancel-in-progress-co.patch, 6774-v2.txt


 I am stress testing a new 2.0.5 cluster and did the following:
 - start decommission during heavy write, moderate read load
 - trigger cleanup on non-decommissioning node (nodetool cleanup)
 - Started to see higher GC load stop stopped cleanup via nodetool stop CLEANUP
 - attempt to launch cleanup now fails with the following message in console.
 Cassandra log shows: 
 http://aep.appspot.com/display/cKmlMcDuKD72iYAcBykDuVZkRWY/



--
This message was sent by Atlassian JIRA
(v6.2#6252)


[jira] [Updated] (CASSANDRA-6774) Cleanup fails with assertion error after stopping previous run

2014-03-17 Thread Marcus Eriksson (JIRA)

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

Marcus Eriksson updated CASSANDRA-6774:
---

Fix Version/s: (was: 2.0.7)
   2.1 beta2

 Cleanup fails with assertion error after stopping previous run
 --

 Key: CASSANDRA-6774
 URL: https://issues.apache.org/jira/browse/CASSANDRA-6774
 Project: Cassandra
  Issue Type: Bug
  Components: Core
 Environment: 2.0.5
Reporter: Keith Wright
Assignee: Marcus Eriksson
 Fix For: 2.1 beta2

 Attachments: 0001-6774-wip.patch, 
 0001-Dont-continue-after-failing-to-cancel-in-progress-co.patch, 6774-v2.txt


 I am stress testing a new 2.0.5 cluster and did the following:
 - start decommission during heavy write, moderate read load
 - trigger cleanup on non-decommissioning node (nodetool cleanup)
 - Started to see higher GC load stop stopped cleanup via nodetool stop CLEANUP
 - attempt to launch cleanup now fails with the following message in console.
 Cassandra log shows: 
 http://aep.appspot.com/display/cKmlMcDuKD72iYAcBykDuVZkRWY/



--
This message was sent by Atlassian JIRA
(v6.2#6252)


[jira] [Commented] (CASSANDRA-6646) Disk Failure Policy ignores CorruptBlockException

2014-03-17 Thread Jonathan Ellis (JIRA)

[ 
https://issues.apache.org/jira/browse/CASSANDRA-6646?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13938127#comment-13938127
 ] 

Jonathan Ellis commented on CASSANDRA-6646:
---

sorry to bikeshed myself, maybe rename to stop_paranoid to emphasize that it 
shares behavior with stop?

where did stopTransports get introduced?  i don't see it on trunk.

 Disk Failure Policy ignores CorruptBlockException 
 --

 Key: CASSANDRA-6646
 URL: https://issues.apache.org/jira/browse/CASSANDRA-6646
 Project: Cassandra
  Issue Type: Bug
Reporter: sankalp kohli
Assignee: Marcus Eriksson
Priority: Minor
 Fix For: 2.0.7, 2.1 beta2

 Attachments: 0001-add-paranoid-disk-failure-option.patch, 
 0001-make-CorruptSSTableException-an-FSError-to-be-able-t.patch


 If Cassandra is using compression and has a bad drive or stable, it will 
 throw an CorruptBlockException. 
 Disk Failure Policy only works if it is an FSError and does not work for 
 IOExceptions like this. 
 We need to better handle such exceptions as it causes nodes to not respond to 
 the co-ordinator causing the client to timeout. 



--
This message was sent by Atlassian JIRA
(v6.2#6252)


[jira] [Updated] (CASSANDRA-6821) Cassandra can't delete snapshots for keyspaces that no longer exist.

2014-03-17 Thread Mikhail Stepura (JIRA)

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

Mikhail Stepura updated CASSANDRA-6821:
---

Description: If you drop a keyspace  you can no longer clean up the 
snapshots for that keyspace without resorting to the command line. It would be 
nice to be able clean up those via jmx, especially for external tools.  (was: 
If you drop a keyspace or table you can no longer clean up the snapshots for 
that keyspace/table without resorting to the command line. It would be nice to 
be able clean up those via jmx, especially for external tools.)
Summary: Cassandra can't delete snapshots for keyspaces that no longer 
exist.  (was: Cassandra can't delete snapshots for keyspaces/tables that no 
longer exist.)

 Cassandra can't delete snapshots for keyspaces that no longer exist.
 

 Key: CASSANDRA-6821
 URL: https://issues.apache.org/jira/browse/CASSANDRA-6821
 Project: Cassandra
  Issue Type: Improvement
Reporter: Nick Bailey

 If you drop a keyspace  you can no longer clean up the snapshots for that 
 keyspace without resorting to the command line. It would be nice to be able 
 clean up those via jmx, especially for external tools.



--
This message was sent by Atlassian JIRA
(v6.2#6252)


[jira] [Reopened] (CASSANDRA-6821) Cassandra can't delete snapshots for keyspaces that no longer exist.

2014-03-17 Thread Mikhail Stepura (JIRA)

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

Mikhail Stepura reopened CASSANDRA-6821:



 Cassandra can't delete snapshots for keyspaces that no longer exist.
 

 Key: CASSANDRA-6821
 URL: https://issues.apache.org/jira/browse/CASSANDRA-6821
 Project: Cassandra
  Issue Type: Improvement
Reporter: Nick Bailey

 If you drop a keyspace  you can no longer clean up the snapshots for that 
 keyspace without resorting to the command line. It would be nice to be able 
 clean up those via jmx, especially for external tools.



--
This message was sent by Atlassian JIRA
(v6.2#6252)


[jira] [Resolved] (CASSANDRA-6418) auto_snapshots are not removable via 'nodetool clearsnapshot'

2014-03-17 Thread Mikhail Stepura (JIRA)

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

Mikhail Stepura resolved CASSANDRA-6418.


Resolution: Fixed

Let's use CASSANDRA-6821 fro that

 auto_snapshots are not removable via 'nodetool clearsnapshot'
 -

 Key: CASSANDRA-6418
 URL: https://issues.apache.org/jira/browse/CASSANDRA-6418
 Project: Cassandra
  Issue Type: Bug
  Components: Tools
 Environment: auto_snapshot: true
Reporter: J. Ryan Earl
Assignee: Lyuben Todorov
Priority: Minor
 Fix For: 2.0.5

 Attachments: 6418_cassandra-2.0.patch, 6418_cassandra-2.0_v5.patch, 
 6418_v2.patch, 6418_v3_cassandra-2.0.patch, CASSANDRA-2.0-6418_v4.patch


 Snapshots of deleted CFs created via the auto_snapshot configuration 
 parameter appear to not be tracked.  The result is that 'nodetool 
 clearsnapshot keyspace with deleted CFs' does nothing, and short of 
 manually removing the files from the filesystem, deleted CFs remain 
 indefinitely taking up space.
 I'm not sure if this is intended, but it seems pretty counter-intuitive.  I 
 haven't found any documentation that indicates auto_snapshots would be 
 ignored by 'nodetool clearsnapshot'.



--
This message was sent by Atlassian JIRA
(v6.2#6252)


[jira] [Commented] (CASSANDRA-6646) Disk Failure Policy ignores CorruptBlockException

2014-03-17 Thread Marcus Eriksson (JIRA)

[ 
https://issues.apache.org/jira/browse/CASSANDRA-6646?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13938131#comment-13938131
 ] 

Marcus Eriksson commented on CASSANDRA-6646:


bq. rename to stop_paranoid
sure

it was introduced in CASSANDRA-6364 which was a 2.0-only fix, ill add it when i 
commit this

 Disk Failure Policy ignores CorruptBlockException 
 --

 Key: CASSANDRA-6646
 URL: https://issues.apache.org/jira/browse/CASSANDRA-6646
 Project: Cassandra
  Issue Type: Bug
Reporter: sankalp kohli
Assignee: Marcus Eriksson
Priority: Minor
 Fix For: 2.0.7, 2.1 beta2

 Attachments: 0001-add-paranoid-disk-failure-option.patch, 
 0001-make-CorruptSSTableException-an-FSError-to-be-able-t.patch


 If Cassandra is using compression and has a bad drive or stable, it will 
 throw an CorruptBlockException. 
 Disk Failure Policy only works if it is an FSError and does not work for 
 IOExceptions like this. 
 We need to better handle such exceptions as it causes nodes to not respond to 
 the co-ordinator causing the client to timeout. 



--
This message was sent by Atlassian JIRA
(v6.2#6252)


[jira] [Commented] (CASSANDRA-6646) Disk Failure Policy ignores CorruptBlockException

2014-03-17 Thread sankalp kohli (JIRA)

[ 
https://issues.apache.org/jira/browse/CASSANDRA-6646?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13938148#comment-13938148
 ] 

sankalp kohli commented on CASSANDRA-6646:
--

Let me look at the patch. 

 Disk Failure Policy ignores CorruptBlockException 
 --

 Key: CASSANDRA-6646
 URL: https://issues.apache.org/jira/browse/CASSANDRA-6646
 Project: Cassandra
  Issue Type: Bug
Reporter: sankalp kohli
Assignee: Marcus Eriksson
Priority: Minor
 Fix For: 2.0.7, 2.1 beta2

 Attachments: 0001-add-paranoid-disk-failure-option.patch, 
 0001-make-CorruptSSTableException-an-FSError-to-be-able-t.patch


 If Cassandra is using compression and has a bad drive or stable, it will 
 throw an CorruptBlockException. 
 Disk Failure Policy only works if it is an FSError and does not work for 
 IOExceptions like this. 
 We need to better handle such exceptions as it causes nodes to not respond to 
 the co-ordinator causing the client to timeout. 



--
This message was sent by Atlassian JIRA
(v6.2#6252)


[jira] [Created] (CASSANDRA-6876) Improve PerRowSecondaryIndex performance by removing O(N) complexity when computing indexes for a column

2014-03-17 Thread Sergio Bossa (JIRA)
Sergio Bossa created CASSANDRA-6876:
---

 Summary: Improve PerRowSecondaryIndex performance by removing O(N) 
complexity when computing indexes for a column
 Key: CASSANDRA-6876
 URL: https://issues.apache.org/jira/browse/CASSANDRA-6876
 Project: Cassandra
  Issue Type: Improvement
  Components: Core
Reporter: Sergio Bossa
Assignee: Sergio Bossa
Priority: Minor


Currently, given SecondaryIndexManager tracks all per-column and per-row 
secondary indexes in a by-column map, when computing indexes for a given column 
it has to scan all indexes for *all* columns, meaning that it will scan the 
*same* per-row index N times, where N is the number of columns it is associated 
with, raising the complexity of what could be an O(1) operation to O(N).



--
This message was sent by Atlassian JIRA
(v6.2#6252)


[jira] [Updated] (CASSANDRA-6876) Improve PerRowSecondaryIndex performance by removing O(N) complexity when computing indexes for a column

2014-03-17 Thread Sergio Bossa (JIRA)

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

Sergio Bossa updated CASSANDRA-6876:


Attachment: CASSANDRA-6876.patch

 Improve PerRowSecondaryIndex performance by removing O(N) complexity when 
 computing indexes for a column
 

 Key: CASSANDRA-6876
 URL: https://issues.apache.org/jira/browse/CASSANDRA-6876
 Project: Cassandra
  Issue Type: Improvement
  Components: Core
Reporter: Sergio Bossa
Assignee: Sergio Bossa
Priority: Minor
 Attachments: CASSANDRA-6876.patch


 Currently, given SecondaryIndexManager tracks all per-column and per-row 
 secondary indexes in a by-column map, when computing indexes for a given 
 column it has to scan all indexes for *all* columns, meaning that it will 
 scan the *same* per-row index N times, where N is the number of columns it is 
 associated with, raising the complexity of what could be an O(1) operation to 
 O(N).



--
This message was sent by Atlassian JIRA
(v6.2#6252)


[jira] [Updated] (CASSANDRA-6746) Reads have a slow ramp up in speed

2014-03-17 Thread Ryan McGuire (JIRA)

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

Ryan McGuire updated CASSANDRA-6746:


Attachment: 6746.blockdev_setra.full.png
6746.blockdev_setra.zoomed.png

Playing around with 'blockdev --setra' does have a rather dramatic effect.

Here's four runs, with read ahead set to 0, 128, 256, and 4096:

!6746.blockdev_setra.full.png!

The setting for 0 dwarfs the other results, so here it is zoomed in on just 
128, 256, and 4096:

!6746.blockdev_setra.zoomed.png!

[raw data is 
here|http://riptano.github.io/cassandra_performance/graph/graph.html?stats=stats.6746.blockdev_readahead.jsonmetric=op_rateoperation=readsmoothing=1]

 Reads have a slow ramp up in speed
 --

 Key: CASSANDRA-6746
 URL: https://issues.apache.org/jira/browse/CASSANDRA-6746
 Project: Cassandra
  Issue Type: Bug
  Components: Core
Reporter: Ryan McGuire
Assignee: Benedict
  Labels: performance
 Fix For: 2.1 beta2

 Attachments: 2.1_vs_2.0_read.png, 6746-patched.png, 
 6746.blockdev_setra.full.png, 6746.blockdev_setra.zoomed.png, 6746.txt, 
 cassandra-2.0-bdplab-trial-fincore.tar.bz2, 
 cassandra-2.1-bdplab-trial-fincore.tar.bz2


 On a physical four node cluister I am doing a big write and then a big read. 
 The read takes a long time to ramp up to respectable speeds.
 !2.1_vs_2.0_read.png!
 [See data 
 here|http://ryanmcguire.info/ds/graph/graph.html?stats=stats.2.1_vs_2.0_vs_1.2.retry1.jsonmetric=interval_op_rateoperation=stress-readsmoothing=1]



--
This message was sent by Atlassian JIRA
(v6.2#6252)


[jira] [Comment Edited] (CASSANDRA-6746) Reads have a slow ramp up in speed

2014-03-17 Thread Ryan McGuire (JIRA)

[ 
https://issues.apache.org/jira/browse/CASSANDRA-6746?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13938214#comment-13938214
 ] 

Ryan McGuire edited comment on CASSANDRA-6746 at 3/17/14 7:04 PM:
--

Playing around with 'blockdev --setra' does have a rather dramatic effect.

Here's four runs, with read ahead set to 0, 128, 256, and 4096:

!6746.blockdev_setra.full.png!

The setting for 0 dwarfs the other results, so here it is zoomed in on just 
128, 256, and 4096:

!6746.blockdev_setra.zoomed.png!

[raw data is 
here|http://riptano.github.io/cassandra_performance/graph/graph.html?stats=stats.6746.blockdev_readahead.jsonmetric=op_rateoperation=readsmoothing=1]

The double bump in the run for 4096 is something that [~benedict] and I have 
seen on other runs before.


was (Author: enigmacurry):
Playing around with 'blockdev --setra' does have a rather dramatic effect.

Here's four runs, with read ahead set to 0, 128, 256, and 4096:

!6746.blockdev_setra.full.png!

The setting for 0 dwarfs the other results, so here it is zoomed in on just 
128, 256, and 4096:

!6746.blockdev_setra.zoomed.png!

[raw data is 
here|http://riptano.github.io/cassandra_performance/graph/graph.html?stats=stats.6746.blockdev_readahead.jsonmetric=op_rateoperation=readsmoothing=1]

 Reads have a slow ramp up in speed
 --

 Key: CASSANDRA-6746
 URL: https://issues.apache.org/jira/browse/CASSANDRA-6746
 Project: Cassandra
  Issue Type: Bug
  Components: Core
Reporter: Ryan McGuire
Assignee: Benedict
  Labels: performance
 Fix For: 2.1 beta2

 Attachments: 2.1_vs_2.0_read.png, 6746-patched.png, 
 6746.blockdev_setra.full.png, 6746.blockdev_setra.zoomed.png, 6746.txt, 
 cassandra-2.0-bdplab-trial-fincore.tar.bz2, 
 cassandra-2.1-bdplab-trial-fincore.tar.bz2


 On a physical four node cluister I am doing a big write and then a big read. 
 The read takes a long time to ramp up to respectable speeds.
 !2.1_vs_2.0_read.png!
 [See data 
 here|http://ryanmcguire.info/ds/graph/graph.html?stats=stats.2.1_vs_2.0_vs_1.2.retry1.jsonmetric=interval_op_rateoperation=stress-readsmoothing=1]



--
This message was sent by Atlassian JIRA
(v6.2#6252)


[jira] [Commented] (CASSANDRA-6746) Reads have a slow ramp up in speed

2014-03-17 Thread Pavel Yaskevich (JIRA)

[ 
https://issues.apache.org/jira/browse/CASSANDRA-6746?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13938223#comment-13938223
 ] 

Pavel Yaskevich commented on CASSANDRA-6746:


[~enigmacurry] Are the drives SSDs?

 Reads have a slow ramp up in speed
 --

 Key: CASSANDRA-6746
 URL: https://issues.apache.org/jira/browse/CASSANDRA-6746
 Project: Cassandra
  Issue Type: Bug
  Components: Core
Reporter: Ryan McGuire
Assignee: Benedict
  Labels: performance
 Fix For: 2.1 beta2

 Attachments: 2.1_vs_2.0_read.png, 6746-patched.png, 
 6746.blockdev_setra.full.png, 6746.blockdev_setra.zoomed.png, 6746.txt, 
 cassandra-2.0-bdplab-trial-fincore.tar.bz2, 
 cassandra-2.1-bdplab-trial-fincore.tar.bz2


 On a physical four node cluister I am doing a big write and then a big read. 
 The read takes a long time to ramp up to respectable speeds.
 !2.1_vs_2.0_read.png!
 [See data 
 here|http://ryanmcguire.info/ds/graph/graph.html?stats=stats.2.1_vs_2.0_vs_1.2.retry1.jsonmetric=interval_op_rateoperation=stress-readsmoothing=1]



--
This message was sent by Atlassian JIRA
(v6.2#6252)


[jira] [Commented] (CASSANDRA-6746) Reads have a slow ramp up in speed

2014-03-17 Thread Ryan McGuire (JIRA)

[ 
https://issues.apache.org/jira/browse/CASSANDRA-6746?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13938233#comment-13938233
 ] 

Ryan McGuire commented on CASSANDRA-6746:
-

No:

{code}
 hdparm -I /dev/sdb | head

/dev/sdb:

ATA device, with non-removable media
Model Number:   WDC WD5003ABYX-18WERA0  
Serial Number:  WD-WMAYP2797667
Firmware Revision:  01.01S02
Transport:  Serial, SATA 1.0a, SATA II Extensions, SATA Rev 
2.5, SATA Rev 2.6
Standards:
Supported: 8 7 6 5 
{code}

 Reads have a slow ramp up in speed
 --

 Key: CASSANDRA-6746
 URL: https://issues.apache.org/jira/browse/CASSANDRA-6746
 Project: Cassandra
  Issue Type: Bug
  Components: Core
Reporter: Ryan McGuire
Assignee: Benedict
  Labels: performance
 Fix For: 2.1 beta2

 Attachments: 2.1_vs_2.0_read.png, 6746-patched.png, 
 6746.blockdev_setra.full.png, 6746.blockdev_setra.zoomed.png, 6746.txt, 
 cassandra-2.0-bdplab-trial-fincore.tar.bz2, 
 cassandra-2.1-bdplab-trial-fincore.tar.bz2


 On a physical four node cluister I am doing a big write and then a big read. 
 The read takes a long time to ramp up to respectable speeds.
 !2.1_vs_2.0_read.png!
 [See data 
 here|http://ryanmcguire.info/ds/graph/graph.html?stats=stats.2.1_vs_2.0_vs_1.2.retry1.jsonmetric=interval_op_rateoperation=stress-readsmoothing=1]



--
This message was sent by Atlassian JIRA
(v6.2#6252)


[jira] [Commented] (CASSANDRA-6746) Reads have a slow ramp up in speed

2014-03-17 Thread Pavel Yaskevich (JIRA)

[ 
https://issues.apache.org/jira/browse/CASSANDRA-6746?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13938239#comment-13938239
 ] 

Pavel Yaskevich commented on CASSANDRA-6746:


I guess I should have been clearer about this one, we actually want readahead 
to be set to bigger number or default, that would speed up sequential part of 
the read significantly, because kernels' adaptive readahead logic would kick in 
and detect that file is being read sequential and do a right thing. 

The test I asked you to do should have uncovered effect of readahead on our 
reads which is pretty significant but quiet the opposite on HDD vs. SDD, still 
this gives us pretty good picture.

 Reads have a slow ramp up in speed
 --

 Key: CASSANDRA-6746
 URL: https://issues.apache.org/jira/browse/CASSANDRA-6746
 Project: Cassandra
  Issue Type: Bug
  Components: Core
Reporter: Ryan McGuire
Assignee: Benedict
  Labels: performance
 Fix For: 2.1 beta2

 Attachments: 2.1_vs_2.0_read.png, 6746-patched.png, 
 6746.blockdev_setra.full.png, 6746.blockdev_setra.zoomed.png, 6746.txt, 
 cassandra-2.0-bdplab-trial-fincore.tar.bz2, 
 cassandra-2.1-bdplab-trial-fincore.tar.bz2


 On a physical four node cluister I am doing a big write and then a big read. 
 The read takes a long time to ramp up to respectable speeds.
 !2.1_vs_2.0_read.png!
 [See data 
 here|http://ryanmcguire.info/ds/graph/graph.html?stats=stats.2.1_vs_2.0_vs_1.2.retry1.jsonmetric=interval_op_rateoperation=stress-readsmoothing=1]



--
This message was sent by Atlassian JIRA
(v6.2#6252)


[jira] [Commented] (CASSANDRA-6746) Reads have a slow ramp up in speed

2014-03-17 Thread Ryan McGuire (JIRA)

[ 
https://issues.apache.org/jira/browse/CASSANDRA-6746?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13938244#comment-13938244
 ] 

Ryan McGuire commented on CASSANDRA-6746:
-

The default on these machines was 256, and indeed the 4096 setting I tried did 
speed it up.

 Reads have a slow ramp up in speed
 --

 Key: CASSANDRA-6746
 URL: https://issues.apache.org/jira/browse/CASSANDRA-6746
 Project: Cassandra
  Issue Type: Bug
  Components: Core
Reporter: Ryan McGuire
Assignee: Benedict
  Labels: performance
 Fix For: 2.1 beta2

 Attachments: 2.1_vs_2.0_read.png, 6746-patched.png, 
 6746.blockdev_setra.full.png, 6746.blockdev_setra.zoomed.png, 6746.txt, 
 cassandra-2.0-bdplab-trial-fincore.tar.bz2, 
 cassandra-2.1-bdplab-trial-fincore.tar.bz2


 On a physical four node cluister I am doing a big write and then a big read. 
 The read takes a long time to ramp up to respectable speeds.
 !2.1_vs_2.0_read.png!
 [See data 
 here|http://ryanmcguire.info/ds/graph/graph.html?stats=stats.2.1_vs_2.0_vs_1.2.retry1.jsonmetric=interval_op_rateoperation=stress-readsmoothing=1]



--
This message was sent by Atlassian JIRA
(v6.2#6252)


[jira] [Commented] (CASSANDRA-6746) Reads have a slow ramp up in speed

2014-03-17 Thread Ryan McGuire (JIRA)

[ 
https://issues.apache.org/jira/browse/CASSANDRA-6746?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13938246#comment-13938246
 ] 

Ryan McGuire commented on CASSANDRA-6746:
-

I can also try this on ssd instances.

 Reads have a slow ramp up in speed
 --

 Key: CASSANDRA-6746
 URL: https://issues.apache.org/jira/browse/CASSANDRA-6746
 Project: Cassandra
  Issue Type: Bug
  Components: Core
Reporter: Ryan McGuire
Assignee: Benedict
  Labels: performance
 Fix For: 2.1 beta2

 Attachments: 2.1_vs_2.0_read.png, 6746-patched.png, 
 6746.blockdev_setra.full.png, 6746.blockdev_setra.zoomed.png, 6746.txt, 
 cassandra-2.0-bdplab-trial-fincore.tar.bz2, 
 cassandra-2.1-bdplab-trial-fincore.tar.bz2


 On a physical four node cluister I am doing a big write and then a big read. 
 The read takes a long time to ramp up to respectable speeds.
 !2.1_vs_2.0_read.png!
 [See data 
 here|http://ryanmcguire.info/ds/graph/graph.html?stats=stats.2.1_vs_2.0_vs_1.2.retry1.jsonmetric=interval_op_rateoperation=stress-readsmoothing=1]



--
This message was sent by Atlassian JIRA
(v6.2#6252)


[jira] [Commented] (CASSANDRA-6746) Reads have a slow ramp up in speed

2014-03-17 Thread Pavel Yaskevich (JIRA)

[ 
https://issues.apache.org/jira/browse/CASSANDRA-6746?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13938253#comment-13938253
 ] 

Pavel Yaskevich commented on CASSANDRA-6746:


Would be awesome if you could try it out on the SSD machines too!

 Reads have a slow ramp up in speed
 --

 Key: CASSANDRA-6746
 URL: https://issues.apache.org/jira/browse/CASSANDRA-6746
 Project: Cassandra
  Issue Type: Bug
  Components: Core
Reporter: Ryan McGuire
Assignee: Benedict
  Labels: performance
 Fix For: 2.1 beta2

 Attachments: 2.1_vs_2.0_read.png, 6746-patched.png, 
 6746.blockdev_setra.full.png, 6746.blockdev_setra.zoomed.png, 6746.txt, 
 cassandra-2.0-bdplab-trial-fincore.tar.bz2, 
 cassandra-2.1-bdplab-trial-fincore.tar.bz2


 On a physical four node cluister I am doing a big write and then a big read. 
 The read takes a long time to ramp up to respectable speeds.
 !2.1_vs_2.0_read.png!
 [See data 
 here|http://ryanmcguire.info/ds/graph/graph.html?stats=stats.2.1_vs_2.0_vs_1.2.retry1.jsonmetric=interval_op_rateoperation=stress-readsmoothing=1]



--
This message was sent by Atlassian JIRA
(v6.2#6252)


[jira] [Commented] (CASSANDRA-6756) Provide option to avoid loading orphan SSTables on startup

2014-03-17 Thread Jeremiah Jordan (JIRA)

[ 
https://issues.apache.org/jira/browse/CASSANDRA-6756?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13938256#comment-13938256
 ] 

Jeremiah Jordan commented on CASSANDRA-6756:


What ever happens here, I think the default should stay as it is now.  If you 
want this, you would add the flag to your cassandra-env.sh or cassandra.yaml 
(or where ever it get put).

 Provide option to avoid loading orphan SSTables on startup
 --

 Key: CASSANDRA-6756
 URL: https://issues.apache.org/jira/browse/CASSANDRA-6756
 Project: Cassandra
  Issue Type: Improvement
  Components: Core
Reporter: Vincent Mallet
 Fix For: 1.2.16


 When Cassandra starts up, it enumerates all SSTables on disk for a known 
 column family and proceeds to loading all of them, even those that were left 
 behind before the restart because of a problem of some sort. This can lead to 
 data gain (resurrected data) which is just as bad as data loss.
 The ask is to provide a yaml config option which would allow one to turn that 
 behavior off by default so a cassandra cluster would be immune to data gain 
 when nodes get restarted (at least with Leveled where Cassandra keeps track 
 of SSTables).
 This is sort of a follow-up to CASSANDRA-6503 (fixed in 1.2.14). We're just 
 extremely nervous that orphan SSTables could appear because of some other 
 potential problem somewhere else and cause zombie data on a random reboot. 



--
This message was sent by Atlassian JIRA
(v6.2#6252)


git commit: Fix CASSANDRA-6714 leftover issue

2014-03-17 Thread aleksey
Repository: cassandra
Updated Branches:
  refs/heads/cassandra-2.1 ceddff58f - e0c125fce


Fix CASSANDRA-6714 leftover issue


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/e0c125fc
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/e0c125fc
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/e0c125fc

Branch: refs/heads/cassandra-2.1
Commit: e0c125fce03fafe86e2d983329e1ca86bccaac8a
Parents: ceddff5
Author: Aleksey Yeschenko alek...@apache.org
Authored: Mon Mar 17 23:02:22 2014 +0300
Committer: Aleksey Yeschenko alek...@apache.org
Committed: Mon Mar 17 23:02:22 2014 +0300

--
 src/java/org/apache/cassandra/db/commitlog/CommitLogReplayer.java | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/e0c125fc/src/java/org/apache/cassandra/db/commitlog/CommitLogReplayer.java
--
diff --git a/src/java/org/apache/cassandra/db/commitlog/CommitLogReplayer.java 
b/src/java/org/apache/cassandra/db/commitlog/CommitLogReplayer.java
index 3bc0f87..213771d 100644
--- a/src/java/org/apache/cassandra/db/commitlog/CommitLogReplayer.java
+++ b/src/java/org/apache/cassandra/db/commitlog/CommitLogReplayer.java
@@ -239,7 +239,7 @@ public class CommitLogReplayer
 try
 {
 assert reader.length() = Integer.MAX_VALUE;
-int offset = getStartOffset(segmentId, desc.getMessagingVersion());
+int offset = getStartOffset(segmentId, desc.getVersion());
 if (offset  0)
 {
 logger.debug(skipping replay of fully-flushed {}, file);



[2/2] git commit: Merge branch 'cassandra-2.1' into trunk

2014-03-17 Thread aleksey
Merge branch 'cassandra-2.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/a3c801e3
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/a3c801e3
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/a3c801e3

Branch: refs/heads/trunk
Commit: a3c801e3f8f97709fc003440e7e43bd9ba727db9
Parents: 69cadca e0c125f
Author: Aleksey Yeschenko alek...@apache.org
Authored: Mon Mar 17 23:03:51 2014 +0300
Committer: Aleksey Yeschenko alek...@apache.org
Committed: Mon Mar 17 23:03:51 2014 +0300

--
 src/java/org/apache/cassandra/db/commitlog/CommitLogReplayer.java | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
--




[1/2] git commit: Fix CASSANDRA-6714 leftover issue

2014-03-17 Thread aleksey
Repository: cassandra
Updated Branches:
  refs/heads/trunk 69cadca33 - a3c801e3f


Fix CASSANDRA-6714 leftover issue


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/e0c125fc
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/e0c125fc
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/e0c125fc

Branch: refs/heads/trunk
Commit: e0c125fce03fafe86e2d983329e1ca86bccaac8a
Parents: ceddff5
Author: Aleksey Yeschenko alek...@apache.org
Authored: Mon Mar 17 23:02:22 2014 +0300
Committer: Aleksey Yeschenko alek...@apache.org
Committed: Mon Mar 17 23:02:22 2014 +0300

--
 src/java/org/apache/cassandra/db/commitlog/CommitLogReplayer.java | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/e0c125fc/src/java/org/apache/cassandra/db/commitlog/CommitLogReplayer.java
--
diff --git a/src/java/org/apache/cassandra/db/commitlog/CommitLogReplayer.java 
b/src/java/org/apache/cassandra/db/commitlog/CommitLogReplayer.java
index 3bc0f87..213771d 100644
--- a/src/java/org/apache/cassandra/db/commitlog/CommitLogReplayer.java
+++ b/src/java/org/apache/cassandra/db/commitlog/CommitLogReplayer.java
@@ -239,7 +239,7 @@ public class CommitLogReplayer
 try
 {
 assert reader.length() = Integer.MAX_VALUE;
-int offset = getStartOffset(segmentId, desc.getMessagingVersion());
+int offset = getStartOffset(segmentId, desc.getVersion());
 if (offset  0)
 {
 logger.debug(skipping replay of fully-flushed {}, file);



[jira] [Created] (CASSANDRA-6877) pig tests broken on 2.1/trunk

2014-03-17 Thread Brandon Williams (JIRA)
Brandon Williams created CASSANDRA-6877:
---

 Summary: pig tests broken on 2.1/trunk
 Key: CASSANDRA-6877
 URL: https://issues.apache.org/jira/browse/CASSANDRA-6877
 Project: Cassandra
  Issue Type: Bug
Reporter: Brandon Williams
Assignee: Alex Liu
 Fix For: 2.1 beta2


Not sure what happened here, but I get a smorgasbord of errors running the pig 
tests now, from xml errors in xerces to NotFoundExceptions.



--
This message was sent by Atlassian JIRA
(v6.2#6252)


  1   2   >