[jira] [Commented] (CASSANDRA-6944) liveRatio jumps to max when Memtable is empty
[ https://issues.apache.org/jira/browse/CASSANDRA-6944?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14087329#comment-14087329 ] graham sanderson commented on CASSANDRA-6944: - We just upgraded to 2.0.9 (from 2.0.5) Lots more {{Memtable.java (line 470) setting live ratio to maximum of 64.0 instead of Infinity}} Note quite sure when this is ever a useful warning? ... when you say: {quote} I say it's not a problem after CASSANDRA-6945 ... So as soon as some data starts flowing into the memtable, the ratio will be recalculated. 64 will never stuck for long. {quote} I'm not sure if you are implying that empty memtables should be rare, or what... but there are now LOTS of warnings, which is either bad or not. liveRatio jumps to max when Memtable is empty - Key: CASSANDRA-6944 URL: https://issues.apache.org/jira/browse/CASSANDRA-6944 Project: Cassandra Issue Type: Bug Components: Core Environment: SUSE Linux Enterprise 11 (64-bit) Reporter: Erik Hansen Assignee: Aleksey Yeschenko Priority: Minor Labels: memtables liveRatio calculation on an empty memtable results in a value of Infinity since memtable.currentSize=0. Infinity then gets capped at the liveRatio max of 64. {noformat} WARN [MemoryMeter:1] 2014-03-19 09:26:59,483 Memtable.java (line 441) setting live ratio to maximum of 64.0 instead of Infinity INFO [MemoryMeter:1] 2014-03-19 09:26:59,485 Memtable.java (line 452) CFS(Keyspace='system', ColumnFamily='compactions_in_progress') liveRatio is 64.0 (just-counted was 64.0). calculation took 7ms for 0 cells {noformat} Jumping liveRatio to the max value based on an empty Memtable leads to more frequent flushing than may be necessary. CASSANDRA-4243 previously addressed this issue, but was resolved as fixed by CASSANDRA-3741. It does not appear this issue has been fixed as of 2.0.5 -- This message was sent by Atlassian JIRA (v6.2#6252)
[jira] [Comment Edited] (CASSANDRA-6944) liveRatio jumps to max when Memtable is empty
[ https://issues.apache.org/jira/browse/CASSANDRA-6944?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14087329#comment-14087329 ] graham sanderson edited comment on CASSANDRA-6944 at 8/6/14 6:42 AM: - We just upgraded to 2.0.9 (from 2.0.5) Lots more {{Memtable.java (line 470) setting live ratio to maximum of 64.0 instead of Infinity}} Note quite sure when this is ever a useful warning? ... when you say: {quote} I say it's not a problem after CASSANDRA-6945 ... So as soon as some data starts flowing into the memtable, the ratio will be recalculated. 64 will never stuck for long. {quote} I'm not sure if you are implying that empty memtables should be rare, or what... but there are now LOTS of warnings, which IMHO should only be there if it is undesirable/unexpected behavior was (Author: graham sanderson): We just upgraded to 2.0.9 (from 2.0.5) Lots more {{Memtable.java (line 470) setting live ratio to maximum of 64.0 instead of Infinity}} Note quite sure when this is ever a useful warning? ... when you say: {quote} I say it's not a problem after CASSANDRA-6945 ... So as soon as some data starts flowing into the memtable, the ratio will be recalculated. 64 will never stuck for long. {quote} I'm not sure if you are implying that empty memtables should be rare, or what... but there are now LOTS of warnings, which is either bad or not. liveRatio jumps to max when Memtable is empty - Key: CASSANDRA-6944 URL: https://issues.apache.org/jira/browse/CASSANDRA-6944 Project: Cassandra Issue Type: Bug Components: Core Environment: SUSE Linux Enterprise 11 (64-bit) Reporter: Erik Hansen Assignee: Aleksey Yeschenko Priority: Minor Labels: memtables liveRatio calculation on an empty memtable results in a value of Infinity since memtable.currentSize=0. Infinity then gets capped at the liveRatio max of 64. {noformat} WARN [MemoryMeter:1] 2014-03-19 09:26:59,483 Memtable.java (line 441) setting live ratio to maximum of 64.0 instead of Infinity INFO [MemoryMeter:1] 2014-03-19 09:26:59,485 Memtable.java (line 452) CFS(Keyspace='system', ColumnFamily='compactions_in_progress') liveRatio is 64.0 (just-counted was 64.0). calculation took 7ms for 0 cells {noformat} Jumping liveRatio to the max value based on an empty Memtable leads to more frequent flushing than may be necessary. CASSANDRA-4243 previously addressed this issue, but was resolved as fixed by CASSANDRA-3741. It does not appear this issue has been fixed as of 2.0.5 -- This message was sent by Atlassian JIRA (v6.2#6252)
[jira] [Resolved] (CASSANDRA-7698) Add native protocol v2 collection size check
[ https://issues.apache.org/jira/browse/CASSANDRA-7698?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Sylvain Lebresne resolved CASSANDRA-7698. - Resolution: Duplicate This has already be dealt with by CASSANDRA-5428, see {{CollectionType.enforceLimit}}. Add native protocol v2 collection size check Key: CASSANDRA-7698 URL: https://issues.apache.org/jira/browse/CASSANDRA-7698 Project: Cassandra Issue Type: Bug Reporter: Robert Stupp Assignee: Robert Stupp Attachments: native-v2-collection-size-check.txt Native protocol v3 allows more than 65535 elements in a collection and elements longer than 65535 bytes. But there are no assertions on ranges and element sizes. Similar patch in Java Driver: https://datastax-oss.atlassian.net/browse/JAVA-363 -- This message was sent by Atlassian JIRA (v6.2#6252)
[jira] [Commented] (CASSANDRA-7698) Add native protocol v2 collection size check
[ https://issues.apache.org/jira/browse/CASSANDRA-7698?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14087350#comment-14087350 ] Robert Stupp commented on CASSANDRA-7698: - Yes, the size of the collection (haven't seen that) - but not the serialized size of the collection elements themself. Add native protocol v2 collection size check Key: CASSANDRA-7698 URL: https://issues.apache.org/jira/browse/CASSANDRA-7698 Project: Cassandra Issue Type: Bug Reporter: Robert Stupp Assignee: Robert Stupp Attachments: native-v2-collection-size-check.txt Native protocol v3 allows more than 65535 elements in a collection and elements longer than 65535 bytes. But there are no assertions on ranges and element sizes. Similar patch in Java Driver: https://datastax-oss.atlassian.net/browse/JAVA-363 -- This message was sent by Atlassian JIRA (v6.2#6252)
[jira] [Commented] (CASSANDRA-7698) Add native protocol v2 collection size check
[ https://issues.apache.org/jira/browse/CASSANDRA-7698?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14087359#comment-14087359 ] Sylvain Lebresne commented on CASSANDRA-7698: - Collection elements that would be too big are reject at insert time. Add native protocol v2 collection size check Key: CASSANDRA-7698 URL: https://issues.apache.org/jira/browse/CASSANDRA-7698 Project: Cassandra Issue Type: Bug Reporter: Robert Stupp Assignee: Robert Stupp Attachments: native-v2-collection-size-check.txt Native protocol v3 allows more than 65535 elements in a collection and elements longer than 65535 bytes. But there are no assertions on ranges and element sizes. Similar patch in Java Driver: https://datastax-oss.atlassian.net/browse/JAVA-363 -- This message was sent by Atlassian JIRA (v6.2#6252)
[jira] [Commented] (CASSANDRA-7523) add date and time types
[ https://issues.apache.org/jira/browse/CASSANDRA-7523?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14087369#comment-14087369 ] Sylvain Lebresne commented on CASSANDRA-7523: - bq. Do we really want to add this in 2.0? I would agree that it makes more sense to keep that 2.1+ at this point. add date and time types --- Key: CASSANDRA-7523 URL: https://issues.apache.org/jira/browse/CASSANDRA-7523 Project: Cassandra Issue Type: Bug Components: API Reporter: Jonathan Ellis Assignee: Joshua McKenzie Priority: Minor Fix For: 2.0.10 http://www.postgresql.org/docs/9.1/static/datatype-datetime.html (we already have timestamp; interval is out of scope for now, and see CASSANDRA-6350 for discussion on timestamp-with-time-zone. but date/time should be pretty easy to add.) -- This message was sent by Atlassian JIRA (v6.2#6252)
[jira] [Commented] (CASSANDRA-6944) liveRatio jumps to max when Memtable is empty
[ https://issues.apache.org/jira/browse/CASSANDRA-6944?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14087384#comment-14087384 ] graham sanderson commented on CASSANDRA-6944: - Note I haven't looked closely but presumably empty memtables happen as a result of the active memtable changing while MeteringRunnable is waiting liveRatio jumps to max when Memtable is empty - Key: CASSANDRA-6944 URL: https://issues.apache.org/jira/browse/CASSANDRA-6944 Project: Cassandra Issue Type: Bug Components: Core Environment: SUSE Linux Enterprise 11 (64-bit) Reporter: Erik Hansen Assignee: Aleksey Yeschenko Priority: Minor Labels: memtables liveRatio calculation on an empty memtable results in a value of Infinity since memtable.currentSize=0. Infinity then gets capped at the liveRatio max of 64. {noformat} WARN [MemoryMeter:1] 2014-03-19 09:26:59,483 Memtable.java (line 441) setting live ratio to maximum of 64.0 instead of Infinity INFO [MemoryMeter:1] 2014-03-19 09:26:59,485 Memtable.java (line 452) CFS(Keyspace='system', ColumnFamily='compactions_in_progress') liveRatio is 64.0 (just-counted was 64.0). calculation took 7ms for 0 cells {noformat} Jumping liveRatio to the max value based on an empty Memtable leads to more frequent flushing than may be necessary. CASSANDRA-4243 previously addressed this issue, but was resolved as fixed by CASSANDRA-3741. It does not appear this issue has been fixed as of 2.0.5 -- This message was sent by Atlassian JIRA (v6.2#6252)
[jira] [Comment Edited] (CASSANDRA-6944) liveRatio jumps to max when Memtable is empty
[ https://issues.apache.org/jira/browse/CASSANDRA-6944?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14087384#comment-14087384 ] graham sanderson edited comment on CASSANDRA-6944 at 8/6/14 7:48 AM: - Note I haven't looked closely but presumably empty memtables happen as a result of the active memtable changing while MeteringRunnable is waiting, and in this case we may not actually want to update the liveRatio, so this warning actually does indicate a problem (in the code) was (Author: graham sanderson): Note I haven't looked closely but presumably empty memtables happen as a result of the active memtable changing while MeteringRunnable is waiting liveRatio jumps to max when Memtable is empty - Key: CASSANDRA-6944 URL: https://issues.apache.org/jira/browse/CASSANDRA-6944 Project: Cassandra Issue Type: Bug Components: Core Environment: SUSE Linux Enterprise 11 (64-bit) Reporter: Erik Hansen Assignee: Aleksey Yeschenko Priority: Minor Labels: memtables liveRatio calculation on an empty memtable results in a value of Infinity since memtable.currentSize=0. Infinity then gets capped at the liveRatio max of 64. {noformat} WARN [MemoryMeter:1] 2014-03-19 09:26:59,483 Memtable.java (line 441) setting live ratio to maximum of 64.0 instead of Infinity INFO [MemoryMeter:1] 2014-03-19 09:26:59,485 Memtable.java (line 452) CFS(Keyspace='system', ColumnFamily='compactions_in_progress') liveRatio is 64.0 (just-counted was 64.0). calculation took 7ms for 0 cells {noformat} Jumping liveRatio to the max value based on an empty Memtable leads to more frequent flushing than may be necessary. CASSANDRA-4243 previously addressed this issue, but was resolved as fixed by CASSANDRA-3741. It does not appear this issue has been fixed as of 2.0.5 -- This message was sent by Atlassian JIRA (v6.2#6252)
[jira] [Commented] (CASSANDRA-6944) liveRatio jumps to max when Memtable is empty
[ https://issues.apache.org/jira/browse/CASSANDRA-6944?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14087388#comment-14087388 ] graham sanderson commented on CASSANDRA-6944: - Again I'm not super familiar with this code path, but it seems like rapid flushing of memtables would cause this, which would cause (premature/unwanted) overestimatation of liveRatio which might itself cause rapid flushing of memtables. liveRatio jumps to max when Memtable is empty - Key: CASSANDRA-6944 URL: https://issues.apache.org/jira/browse/CASSANDRA-6944 Project: Cassandra Issue Type: Bug Components: Core Environment: SUSE Linux Enterprise 11 (64-bit) Reporter: Erik Hansen Assignee: Aleksey Yeschenko Priority: Minor Labels: memtables liveRatio calculation on an empty memtable results in a value of Infinity since memtable.currentSize=0. Infinity then gets capped at the liveRatio max of 64. {noformat} WARN [MemoryMeter:1] 2014-03-19 09:26:59,483 Memtable.java (line 441) setting live ratio to maximum of 64.0 instead of Infinity INFO [MemoryMeter:1] 2014-03-19 09:26:59,485 Memtable.java (line 452) CFS(Keyspace='system', ColumnFamily='compactions_in_progress') liveRatio is 64.0 (just-counted was 64.0). calculation took 7ms for 0 cells {noformat} Jumping liveRatio to the max value based on an empty Memtable leads to more frequent flushing than may be necessary. CASSANDRA-4243 previously addressed this issue, but was resolved as fixed by CASSANDRA-3741. It does not appear this issue has been fixed as of 2.0.5 -- This message was sent by Atlassian JIRA (v6.2#6252)
[jira] [Commented] (CASSANDRA-6944) liveRatio jumps to max when Memtable is empty
[ https://issues.apache.org/jira/browse/CASSANDRA-6944?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14087409#comment-14087409 ] graham sanderson commented on CASSANDRA-6944: - Perhaps all these comments belong in CASSANDRA-6945 after all, but just finishing train of thought... things now seem a bit strange when threads are racing. liveRatio and liveRatioComputedAt T can be passed from memtable X to a subsequent memtable Y before liveRatio for X at T is computed. liveRatio may then (I think) be computed for X or Y or Z (depending on where threads are at when MeteringRunnable instances for T executes) - not sure which is preferable, but if it is X, then the liveRatio will not be applied to its successors (who may then not update their live ratio for some time) liveRatio jumps to max when Memtable is empty - Key: CASSANDRA-6944 URL: https://issues.apache.org/jira/browse/CASSANDRA-6944 Project: Cassandra Issue Type: Bug Components: Core Environment: SUSE Linux Enterprise 11 (64-bit) Reporter: Erik Hansen Assignee: Aleksey Yeschenko Priority: Minor Labels: memtables liveRatio calculation on an empty memtable results in a value of Infinity since memtable.currentSize=0. Infinity then gets capped at the liveRatio max of 64. {noformat} WARN [MemoryMeter:1] 2014-03-19 09:26:59,483 Memtable.java (line 441) setting live ratio to maximum of 64.0 instead of Infinity INFO [MemoryMeter:1] 2014-03-19 09:26:59,485 Memtable.java (line 452) CFS(Keyspace='system', ColumnFamily='compactions_in_progress') liveRatio is 64.0 (just-counted was 64.0). calculation took 7ms for 0 cells {noformat} Jumping liveRatio to the max value based on an empty Memtable leads to more frequent flushing than may be necessary. CASSANDRA-4243 previously addressed this issue, but was resolved as fixed by CASSANDRA-3741. It does not appear this issue has been fixed as of 2.0.5 -- This message was sent by Atlassian JIRA (v6.2#6252)
[jira] [Commented] (CASSANDRA-6945) Calculate liveRatio on per-memtable basis, non per-CF
[ https://issues.apache.org/jira/browse/CASSANDRA-6945?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14087410#comment-14087410 ] graham sanderson commented on CASSANDRA-6945: - Made some comments in CASSANDRA-6944 related to this change (they perhaps belong here) Calculate liveRatio on per-memtable basis, non per-CF - Key: CASSANDRA-6945 URL: https://issues.apache.org/jira/browse/CASSANDRA-6945 Project: Cassandra Issue Type: Bug Reporter: Aleksey Yeschenko Assignee: Aleksey Yeschenko Fix For: 2.0.7 Currently we recalculate live ratio every doubling of write ops to the CF, not to an individual memtable. The value itself is also CF-bound, not memtable-bound. This is causing at least several issues: 1. Depending on what stage the current memtable is, the live ratio calculated can vary *a lot* 2. That calculated live ratio will potentially stay that way for quite a while - the longer C* process is on, the longer it would stay incorrect 3. Incorrect live ratio means inefficient MeteredFlusher - flushing less or more often than needed, picking bad candidates for flushing, etc. 4. Incorrect live ratio means incorrect size returned to the metrics consumers 5. Compaction strategies that rely on memtable size estimation are affected 6. All of the above is slightly amplified by the fact that all the memtables pending flush would also use that one incorrect value Depending on the stage the current memtable at the moment of live ratio recalculation is, the value calculated can be *extremely* wrong (say, a recently created, fresh memtable - would have a much higher than average live ratio). The suggested fix is to bind live ratio to individual memtables, not column families as a whole, with some optimizations to make recalculations run less often by inheriting previous memtable's stats. -- This message was sent by Atlassian JIRA (v6.2#6252)
git commit: Bogus deserialization of static cells from sstable
Repository: cassandra Updated Branches: refs/heads/cassandra-2.1.0 1adc39f17 - cd84cc9ec Bogus deserialization of static cells from sstable patch by slebresne; reviewed by iamaleksey for CASSANDRA-7684 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/cd84cc9e Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/cd84cc9e Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/cd84cc9e Branch: refs/heads/cassandra-2.1.0 Commit: cd84cc9ec63a1b7831262b87f29e0f4313a6eab2 Parents: 1adc39f Author: Sylvain Lebresne sylv...@datastax.com Authored: Wed Aug 6 10:17:39 2014 +0200 Committer: Sylvain Lebresne sylv...@datastax.com Committed: Wed Aug 6 10:17:39 2014 +0200 -- CHANGES.txt | 1 + .../AbstractCompoundCellNameType.java | 21 +++--- .../org/apache/cassandra/cql3/CQLTester.java| 22 +++ .../apache/cassandra/cql3/UserTypesTest.java| 23 4 files changed, 59 insertions(+), 8 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/cd84cc9e/CHANGES.txt -- diff --git a/CHANGES.txt b/CHANGES.txt index f650182..e8a0f6f 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -2,6 +2,7 @@ * cqlsh DESC CLUSTER fails retrieving ring information (CASSANDRA-7687) * Fix binding null values inside UDT (CASSANDRA-7685) * Fix UDT field selection with empty fields (CASSANDRA-7670) + * Bogus deserialization of static cells from sstable (CASSANDRA-7684) Merged from 2.0: * Update java driver (for hadoop) (CASSANDRA-7618) * Support connecting to ipv6 jmx with nodetool (CASSANDRA-7669) http://git-wip-us.apache.org/repos/asf/cassandra/blob/cd84cc9e/src/java/org/apache/cassandra/db/composites/AbstractCompoundCellNameType.java -- diff --git a/src/java/org/apache/cassandra/db/composites/AbstractCompoundCellNameType.java b/src/java/org/apache/cassandra/db/composites/AbstractCompoundCellNameType.java index 641f14d..bf303a7 100644 --- a/src/java/org/apache/cassandra/db/composites/AbstractCompoundCellNameType.java +++ b/src/java/org/apache/cassandra/db/composites/AbstractCompoundCellNameType.java @@ -217,20 +217,17 @@ public abstract class AbstractCompoundCellNameType extends AbstractCellNameType return ((nextFull[nextIdx++] 0xFF) 8) | (nextFull[nextIdx++] 0xFF); } +private int peekShort() +{ +return ((nextFull[nextIdx] 0xFF) 8) | (nextFull[nextIdx+1] 0xFF); +} + private boolean deserializeOne() { if (allComponentsDeserialized()) return false; -nextIsStatic = false; - int length = readShort(); -if (length == CompositeType.STATIC_MARKER) -{ -nextIsStatic = true; -length = readShort(); -} - ByteBuffer component = ByteBuffer.wrap(nextFull, nextIdx, length); nextIdx += length; nextComponents[nextSize++] = component; @@ -267,6 +264,14 @@ public abstract class AbstractCompoundCellNameType extends AbstractCellNameType nextFull = new byte[length]; in.readFully(nextFull); + +// Is is a static? +nextIsStatic = false; +if (peekShort() == CompositeType.STATIC_MARKER) +{ +nextIsStatic = true; +readShort(); // Skip the static marker +} } public Composite readNext() throws IOException http://git-wip-us.apache.org/repos/asf/cassandra/blob/cd84cc9e/test/unit/org/apache/cassandra/cql3/CQLTester.java -- diff --git a/test/unit/org/apache/cassandra/cql3/CQLTester.java b/test/unit/org/apache/cassandra/cql3/CQLTester.java index f3d0a6f..442c8b1 100644 --- a/test/unit/org/apache/cassandra/cql3/CQLTester.java +++ b/test/unit/org/apache/cassandra/cql3/CQLTester.java @@ -21,6 +21,7 @@ import java.io.File; import java.nio.ByteBuffer; import java.util.*; import java.util.concurrent.CountDownLatch; +import java.util.concurrent.ExecutionException; import java.util.concurrent.TimeUnit; import java.util.concurrent.atomic.AtomicInteger; @@ -36,6 +37,7 @@ import org.slf4j.LoggerFactory; import org.apache.cassandra.SchemaLoader; import org.apache.cassandra.db.ConsistencyLevel; import org.apache.cassandra.db.Directories; +import org.apache.cassandra.db.Keyspace; import org.apache.cassandra.db.marshal.*; import org.apache.cassandra.exceptions.*; import org.apache.cassandra.io.util.FileUtils; @@ -121,6 +123,23 @@ public abstract
[jira] [Commented] (CASSANDRA-6377) ALLOW FILTERING should allow seq scan filtering
[ https://issues.apache.org/jira/browse/CASSANDRA-6377?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14087441#comment-14087441 ] Jens Rantil commented on CASSANDRA-6377: I just asked a question about this on the user mailing list (http://bit.ly/V0YaAg). I was expecting this to work. Just wanted to chime in that it's not entirely clear from CQL documentation that this is currently not supported. ALLOW FILTERING should allow seq scan filtering --- Key: CASSANDRA-6377 URL: https://issues.apache.org/jira/browse/CASSANDRA-6377 Project: Cassandra Issue Type: Bug Components: API Reporter: Jonathan Ellis Assignee: Sylvain Lebresne Labels: cql Fix For: 3.0 CREATE TABLE emp_table2 ( empID int PRIMARY KEY, firstname text, lastname text, b_mon text, b_day text, b_yr text, ); INSERT INTO emp_table2 (empID,firstname,lastname,b_mon,b_day,b_yr) VALUES (100,'jane','doe','oct','31','1980'); INSERT INTO emp_table2 (empID,firstname,lastname,b_mon,b_day,b_yr) VALUES (101,'john','smith','jan','01','1981'); INSERT INTO emp_table2 (empID,firstname,lastname,b_mon,b_day,b_yr) VALUES (102,'mary','jones','apr','15','1982'); INSERT INTO emp_table2 (empID,firstname,lastname,b_mon,b_day,b_yr) VALUES (103,'tim','best','oct','25','1982'); SELECT b_mon,b_day,b_yr,firstname,lastname FROM emp_table2 WHERE b_mon='oct' ALLOW FILTERING; Bad Request: No indexed columns present in by-columns clause with Equal operator -- This message was sent by Atlassian JIRA (v6.2#6252)
[3/4] git commit: Bogus deserialization of static cells from sstable
Bogus deserialization of static cells from sstable patch by slebresne; reviewed by iamaleksey for CASSANDRA-7684 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/cd84cc9e Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/cd84cc9e Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/cd84cc9e Branch: refs/heads/cassandra-2.1 Commit: cd84cc9ec63a1b7831262b87f29e0f4313a6eab2 Parents: 1adc39f Author: Sylvain Lebresne sylv...@datastax.com Authored: Wed Aug 6 10:17:39 2014 +0200 Committer: Sylvain Lebresne sylv...@datastax.com Committed: Wed Aug 6 10:17:39 2014 +0200 -- CHANGES.txt | 1 + .../AbstractCompoundCellNameType.java | 21 +++--- .../org/apache/cassandra/cql3/CQLTester.java| 22 +++ .../apache/cassandra/cql3/UserTypesTest.java| 23 4 files changed, 59 insertions(+), 8 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/cd84cc9e/CHANGES.txt -- diff --git a/CHANGES.txt b/CHANGES.txt index f650182..e8a0f6f 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -2,6 +2,7 @@ * cqlsh DESC CLUSTER fails retrieving ring information (CASSANDRA-7687) * Fix binding null values inside UDT (CASSANDRA-7685) * Fix UDT field selection with empty fields (CASSANDRA-7670) + * Bogus deserialization of static cells from sstable (CASSANDRA-7684) Merged from 2.0: * Update java driver (for hadoop) (CASSANDRA-7618) * Support connecting to ipv6 jmx with nodetool (CASSANDRA-7669) http://git-wip-us.apache.org/repos/asf/cassandra/blob/cd84cc9e/src/java/org/apache/cassandra/db/composites/AbstractCompoundCellNameType.java -- diff --git a/src/java/org/apache/cassandra/db/composites/AbstractCompoundCellNameType.java b/src/java/org/apache/cassandra/db/composites/AbstractCompoundCellNameType.java index 641f14d..bf303a7 100644 --- a/src/java/org/apache/cassandra/db/composites/AbstractCompoundCellNameType.java +++ b/src/java/org/apache/cassandra/db/composites/AbstractCompoundCellNameType.java @@ -217,20 +217,17 @@ public abstract class AbstractCompoundCellNameType extends AbstractCellNameType return ((nextFull[nextIdx++] 0xFF) 8) | (nextFull[nextIdx++] 0xFF); } +private int peekShort() +{ +return ((nextFull[nextIdx] 0xFF) 8) | (nextFull[nextIdx+1] 0xFF); +} + private boolean deserializeOne() { if (allComponentsDeserialized()) return false; -nextIsStatic = false; - int length = readShort(); -if (length == CompositeType.STATIC_MARKER) -{ -nextIsStatic = true; -length = readShort(); -} - ByteBuffer component = ByteBuffer.wrap(nextFull, nextIdx, length); nextIdx += length; nextComponents[nextSize++] = component; @@ -267,6 +264,14 @@ public abstract class AbstractCompoundCellNameType extends AbstractCellNameType nextFull = new byte[length]; in.readFully(nextFull); + +// Is is a static? +nextIsStatic = false; +if (peekShort() == CompositeType.STATIC_MARKER) +{ +nextIsStatic = true; +readShort(); // Skip the static marker +} } public Composite readNext() throws IOException http://git-wip-us.apache.org/repos/asf/cassandra/blob/cd84cc9e/test/unit/org/apache/cassandra/cql3/CQLTester.java -- diff --git a/test/unit/org/apache/cassandra/cql3/CQLTester.java b/test/unit/org/apache/cassandra/cql3/CQLTester.java index f3d0a6f..442c8b1 100644 --- a/test/unit/org/apache/cassandra/cql3/CQLTester.java +++ b/test/unit/org/apache/cassandra/cql3/CQLTester.java @@ -21,6 +21,7 @@ import java.io.File; import java.nio.ByteBuffer; import java.util.*; import java.util.concurrent.CountDownLatch; +import java.util.concurrent.ExecutionException; import java.util.concurrent.TimeUnit; import java.util.concurrent.atomic.AtomicInteger; @@ -36,6 +37,7 @@ import org.slf4j.LoggerFactory; import org.apache.cassandra.SchemaLoader; import org.apache.cassandra.db.ConsistencyLevel; import org.apache.cassandra.db.Directories; +import org.apache.cassandra.db.Keyspace; import org.apache.cassandra.db.marshal.*; import org.apache.cassandra.exceptions.*; import org.apache.cassandra.io.util.FileUtils; @@ -121,6 +123,23 @@ public abstract class CQLTester }); } +public void flush() +{ +try +{
[1/4] git commit: Merge commit '4b6d6ebd8cb613d1975ef3fc6e7ba4218143364c' into cassandra-2.1.0
Repository: cassandra Updated Branches: refs/heads/cassandra-2.1 97e74eece - 40a1cd369 Merge commit '4b6d6ebd8cb613d1975ef3fc6e7ba4218143364c' into cassandra-2.1.0 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/7b112db6 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/7b112db6 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/7b112db6 Branch: refs/heads/cassandra-2.1 Commit: 7b112db6b208162c8509b25fcf9986ea2d0ec333 Parents: 9f1e957 4b6d6eb Author: Sylvain Lebresne sylv...@datastax.com Authored: Tue Aug 5 16:03:49 2014 +0200 Committer: Sylvain Lebresne sylv...@datastax.com Committed: Tue Aug 5 16:03:49 2014 +0200 -- --
[2/4] git commit: Fix UDT field selection with empty field
Fix UDT field selection with empty field patch by mstepura; reviewed by slebresne for CASSANDRA-7670 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/1adc39f1 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/1adc39f1 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/1adc39f1 Branch: refs/heads/cassandra-2.1 Commit: 1adc39f1713a826e833b393798b4eea4a64f9e3a Parents: 7b112db Author: Sylvain Lebresne sylv...@datastax.com Authored: Tue Aug 5 17:59:44 2014 +0200 Committer: Sylvain Lebresne sylv...@datastax.com Committed: Tue Aug 5 17:59:44 2014 +0200 -- CHANGES.txt | 1 + src/java/org/apache/cassandra/cql3/statements/Selection.java | 5 - 2 files changed, 5 insertions(+), 1 deletion(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/1adc39f1/CHANGES.txt -- diff --git a/CHANGES.txt b/CHANGES.txt index 98a0246..f650182 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -1,6 +1,7 @@ 2.1.0-final * cqlsh DESC CLUSTER fails retrieving ring information (CASSANDRA-7687) * Fix binding null values inside UDT (CASSANDRA-7685) + * Fix UDT field selection with empty fields (CASSANDRA-7670) Merged from 2.0: * Update java driver (for hadoop) (CASSANDRA-7618) * Support connecting to ipv6 jmx with nodetool (CASSANDRA-7669) http://git-wip-us.apache.org/repos/asf/cassandra/blob/1adc39f1/src/java/org/apache/cassandra/cql3/statements/Selection.java -- diff --git a/src/java/org/apache/cassandra/cql3/statements/Selection.java b/src/java/org/apache/cassandra/cql3/statements/Selection.java index dc31dde..0f0cb62 100644 --- a/src/java/org/apache/cassandra/cql3/statements/Selection.java +++ b/src/java/org/apache/cassandra/cql3/statements/Selection.java @@ -466,7 +466,10 @@ public abstract class Selection public ByteBuffer compute(ResultSetBuilder rs) throws InvalidRequestException { -ByteBuffer[] buffers = type.split(selected.compute(rs)); +ByteBuffer value = selected.compute(rs); +if (value == null) +return null; +ByteBuffer[] buffers = type.split(value); return field buffers.length ? buffers[field] : null; }
[4/4] git commit: Merge branch 'cassandra-2.1.0' into cassandra-2.1
Merge branch 'cassandra-2.1.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/40a1cd36 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/40a1cd36 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/40a1cd36 Branch: refs/heads/cassandra-2.1 Commit: 40a1cd369164b0202c315309fc9fc69c448af6f5 Parents: 97e74ee cd84cc9 Author: Sylvain Lebresne sylv...@datastax.com Authored: Wed Aug 6 11:10:36 2014 +0200 Committer: Sylvain Lebresne sylv...@datastax.com Committed: Wed Aug 6 11:10:36 2014 +0200 -- CHANGES.txt | 1 + .../AbstractCompoundCellNameType.java | 21 +++--- .../org/apache/cassandra/cql3/CQLTester.java| 22 +++ .../apache/cassandra/cql3/UserTypesTest.java| 23 4 files changed, 59 insertions(+), 8 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/40a1cd36/CHANGES.txt -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/40a1cd36/src/java/org/apache/cassandra/db/composites/AbstractCompoundCellNameType.java --
[5/5] git commit: Merge branch 'cassandra-2.1' into trunk
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/f7fab28e Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/f7fab28e Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/f7fab28e Branch: refs/heads/trunk Commit: f7fab28ecb235faf2ba807720cdca091be7461d0 Parents: 740bcb5 40a1cd3 Author: Sylvain Lebresne sylv...@datastax.com Authored: Wed Aug 6 11:11:37 2014 +0200 Committer: Sylvain Lebresne sylv...@datastax.com Committed: Wed Aug 6 11:11:37 2014 +0200 -- CHANGES.txt | 1 + .../AbstractCompoundCellNameType.java | 21 +++--- .../org/apache/cassandra/cql3/CQLTester.java| 22 +++ .../apache/cassandra/cql3/UserTypesTest.java| 23 4 files changed, 59 insertions(+), 8 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/f7fab28e/CHANGES.txt --
[3/5] git commit: Bogus deserialization of static cells from sstable
Bogus deserialization of static cells from sstable patch by slebresne; reviewed by iamaleksey for CASSANDRA-7684 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/cd84cc9e Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/cd84cc9e Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/cd84cc9e Branch: refs/heads/trunk Commit: cd84cc9ec63a1b7831262b87f29e0f4313a6eab2 Parents: 1adc39f Author: Sylvain Lebresne sylv...@datastax.com Authored: Wed Aug 6 10:17:39 2014 +0200 Committer: Sylvain Lebresne sylv...@datastax.com Committed: Wed Aug 6 10:17:39 2014 +0200 -- CHANGES.txt | 1 + .../AbstractCompoundCellNameType.java | 21 +++--- .../org/apache/cassandra/cql3/CQLTester.java| 22 +++ .../apache/cassandra/cql3/UserTypesTest.java| 23 4 files changed, 59 insertions(+), 8 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/cd84cc9e/CHANGES.txt -- diff --git a/CHANGES.txt b/CHANGES.txt index f650182..e8a0f6f 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -2,6 +2,7 @@ * cqlsh DESC CLUSTER fails retrieving ring information (CASSANDRA-7687) * Fix binding null values inside UDT (CASSANDRA-7685) * Fix UDT field selection with empty fields (CASSANDRA-7670) + * Bogus deserialization of static cells from sstable (CASSANDRA-7684) Merged from 2.0: * Update java driver (for hadoop) (CASSANDRA-7618) * Support connecting to ipv6 jmx with nodetool (CASSANDRA-7669) http://git-wip-us.apache.org/repos/asf/cassandra/blob/cd84cc9e/src/java/org/apache/cassandra/db/composites/AbstractCompoundCellNameType.java -- diff --git a/src/java/org/apache/cassandra/db/composites/AbstractCompoundCellNameType.java b/src/java/org/apache/cassandra/db/composites/AbstractCompoundCellNameType.java index 641f14d..bf303a7 100644 --- a/src/java/org/apache/cassandra/db/composites/AbstractCompoundCellNameType.java +++ b/src/java/org/apache/cassandra/db/composites/AbstractCompoundCellNameType.java @@ -217,20 +217,17 @@ public abstract class AbstractCompoundCellNameType extends AbstractCellNameType return ((nextFull[nextIdx++] 0xFF) 8) | (nextFull[nextIdx++] 0xFF); } +private int peekShort() +{ +return ((nextFull[nextIdx] 0xFF) 8) | (nextFull[nextIdx+1] 0xFF); +} + private boolean deserializeOne() { if (allComponentsDeserialized()) return false; -nextIsStatic = false; - int length = readShort(); -if (length == CompositeType.STATIC_MARKER) -{ -nextIsStatic = true; -length = readShort(); -} - ByteBuffer component = ByteBuffer.wrap(nextFull, nextIdx, length); nextIdx += length; nextComponents[nextSize++] = component; @@ -267,6 +264,14 @@ public abstract class AbstractCompoundCellNameType extends AbstractCellNameType nextFull = new byte[length]; in.readFully(nextFull); + +// Is is a static? +nextIsStatic = false; +if (peekShort() == CompositeType.STATIC_MARKER) +{ +nextIsStatic = true; +readShort(); // Skip the static marker +} } public Composite readNext() throws IOException http://git-wip-us.apache.org/repos/asf/cassandra/blob/cd84cc9e/test/unit/org/apache/cassandra/cql3/CQLTester.java -- diff --git a/test/unit/org/apache/cassandra/cql3/CQLTester.java b/test/unit/org/apache/cassandra/cql3/CQLTester.java index f3d0a6f..442c8b1 100644 --- a/test/unit/org/apache/cassandra/cql3/CQLTester.java +++ b/test/unit/org/apache/cassandra/cql3/CQLTester.java @@ -21,6 +21,7 @@ import java.io.File; import java.nio.ByteBuffer; import java.util.*; import java.util.concurrent.CountDownLatch; +import java.util.concurrent.ExecutionException; import java.util.concurrent.TimeUnit; import java.util.concurrent.atomic.AtomicInteger; @@ -36,6 +37,7 @@ import org.slf4j.LoggerFactory; import org.apache.cassandra.SchemaLoader; import org.apache.cassandra.db.ConsistencyLevel; import org.apache.cassandra.db.Directories; +import org.apache.cassandra.db.Keyspace; import org.apache.cassandra.db.marshal.*; import org.apache.cassandra.exceptions.*; import org.apache.cassandra.io.util.FileUtils; @@ -121,6 +123,23 @@ public abstract class CQLTester }); } +public void flush() +{ +try +{ +
[1/5] git commit: Merge commit '4b6d6ebd8cb613d1975ef3fc6e7ba4218143364c' into cassandra-2.1.0
Repository: cassandra Updated Branches: refs/heads/trunk 740bcb540 - f7fab28ec Merge commit '4b6d6ebd8cb613d1975ef3fc6e7ba4218143364c' into cassandra-2.1.0 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/7b112db6 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/7b112db6 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/7b112db6 Branch: refs/heads/trunk Commit: 7b112db6b208162c8509b25fcf9986ea2d0ec333 Parents: 9f1e957 4b6d6eb Author: Sylvain Lebresne sylv...@datastax.com Authored: Tue Aug 5 16:03:49 2014 +0200 Committer: Sylvain Lebresne sylv...@datastax.com Committed: Tue Aug 5 16:03:49 2014 +0200 -- --
[2/5] git commit: Fix UDT field selection with empty field
Fix UDT field selection with empty field patch by mstepura; reviewed by slebresne for CASSANDRA-7670 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/1adc39f1 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/1adc39f1 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/1adc39f1 Branch: refs/heads/trunk Commit: 1adc39f1713a826e833b393798b4eea4a64f9e3a Parents: 7b112db Author: Sylvain Lebresne sylv...@datastax.com Authored: Tue Aug 5 17:59:44 2014 +0200 Committer: Sylvain Lebresne sylv...@datastax.com Committed: Tue Aug 5 17:59:44 2014 +0200 -- CHANGES.txt | 1 + src/java/org/apache/cassandra/cql3/statements/Selection.java | 5 - 2 files changed, 5 insertions(+), 1 deletion(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/1adc39f1/CHANGES.txt -- diff --git a/CHANGES.txt b/CHANGES.txt index 98a0246..f650182 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -1,6 +1,7 @@ 2.1.0-final * cqlsh DESC CLUSTER fails retrieving ring information (CASSANDRA-7687) * Fix binding null values inside UDT (CASSANDRA-7685) + * Fix UDT field selection with empty fields (CASSANDRA-7670) Merged from 2.0: * Update java driver (for hadoop) (CASSANDRA-7618) * Support connecting to ipv6 jmx with nodetool (CASSANDRA-7669) http://git-wip-us.apache.org/repos/asf/cassandra/blob/1adc39f1/src/java/org/apache/cassandra/cql3/statements/Selection.java -- diff --git a/src/java/org/apache/cassandra/cql3/statements/Selection.java b/src/java/org/apache/cassandra/cql3/statements/Selection.java index dc31dde..0f0cb62 100644 --- a/src/java/org/apache/cassandra/cql3/statements/Selection.java +++ b/src/java/org/apache/cassandra/cql3/statements/Selection.java @@ -466,7 +466,10 @@ public abstract class Selection public ByteBuffer compute(ResultSetBuilder rs) throws InvalidRequestException { -ByteBuffer[] buffers = type.split(selected.compute(rs)); +ByteBuffer value = selected.compute(rs); +if (value == null) +return null; +ByteBuffer[] buffers = type.split(value); return field buffers.length ? buffers[field] : null; }
[4/5] git commit: Merge branch 'cassandra-2.1.0' into cassandra-2.1
Merge branch 'cassandra-2.1.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/40a1cd36 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/40a1cd36 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/40a1cd36 Branch: refs/heads/trunk Commit: 40a1cd369164b0202c315309fc9fc69c448af6f5 Parents: 97e74ee cd84cc9 Author: Sylvain Lebresne sylv...@datastax.com Authored: Wed Aug 6 11:10:36 2014 +0200 Committer: Sylvain Lebresne sylv...@datastax.com Committed: Wed Aug 6 11:10:36 2014 +0200 -- CHANGES.txt | 1 + .../AbstractCompoundCellNameType.java | 21 +++--- .../org/apache/cassandra/cql3/CQLTester.java| 22 +++ .../apache/cassandra/cql3/UserTypesTest.java| 23 4 files changed, 59 insertions(+), 8 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/40a1cd36/CHANGES.txt -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/40a1cd36/src/java/org/apache/cassandra/db/composites/AbstractCompoundCellNameType.java --
[jira] [Updated] (CASSANDRA-7229) Hadoop2 jobs throw java.lang.IncompatibleClassChangeError
[ https://issues.apache.org/jira/browse/CASSANDRA-7229?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Sylvain Lebresne updated CASSANDRA-7229: Reviewer: Brandon Williams Hadoop2 jobs throw java.lang.IncompatibleClassChangeError - Key: CASSANDRA-7229 URL: https://issues.apache.org/jira/browse/CASSANDRA-7229 Project: Cassandra Issue Type: Bug Components: Hadoop Reporter: Mariusz KryĆski Fix For: 2.0.10 Attachments: hadoop2.diff Hadoop2 jobs throw java.lang.IncompatibleClassChangeError when cassandra is build against hadoop2 libraries. Attached patch fixes this issue for me. -- This message was sent by Atlassian JIRA (v6.2#6252)
[jira] [Updated] (CASSANDRA-6513) CqlPaging for hadoop fails when writetime(column_name) is set as one of the input columns
[ https://issues.apache.org/jira/browse/CASSANDRA-6513?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Sylvain Lebresne updated CASSANDRA-6513: Reviewer: Brandon Williams CqlPaging for hadoop fails when writetime(column_name) is set as one of the input columns - Key: CASSANDRA-6513 URL: https://issues.apache.org/jira/browse/CASSANDRA-6513 Project: Cassandra Issue Type: Bug Components: Hadoop Environment: ubuntu 12.04, hadoop 1.0.3, cassandra-1.2.13 Reporter: Sheetal Gosrani Assignee: Ala' Alkhaldi Labels: CqlPaging, Hadoop Fix For: 2.0.10 Attachments: 6513-v2.txt, 6513-v3.txt, 6513_v1.txt InvalidRequestException thrown when running a hadoop job with CqlPaging with writetime(column_name) set as one of the input columns. java.lang.RuntimeException at org.apache.cassandra.hadoop.cql3.CqlPagingRecordReader$RowIterator.executeQuery(CqlPagingRecordReader.java:665) at org.apache.cassandra.hadoop.cql3.CqlPagingRecordReader$RowIterator.init(CqlPagingRecordReader.java:301) at org.apache.cassandra.hadoop.cql3.CqlPagingRecordReader.initialize(CqlPagingRecordReader.java:167) at org.apache.hadoop.mapred.MapTask$NewTrackingRecordReader.initialize(MapTask.java:522) at org.apache.hadoop.mapred.MapTask.runNewMapper(MapTask.java:763) at org.apache.hadoop.mapred.MapTask.run(MapTask.java:370) at org.apache.hadoop.mapred.Child$4.run(Child.java:255) at java.security.AccessController.doPrivileged(Native Method) at javax.security.auth.Subject.doAs(Subject.java:415) at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1121) at org.apache.hadoop.mapred.Child.main(Child.java:249) Caused by: InvalidRequestException(why:Undefined name WRITETIME(foo) in selection clause) at org.apache.cassandra.thrift.Cassandra$prepare_cql3_query_result.read(Cassandra.java:40395) at org.apache.thrift.TServiceClient.receiveBase(TServiceClient.java:78) at org.apache.cassandra.thrift.Cassandra$Client.recv_prepare_cql3_query(Cassandra.java:1660) at org.apache.cassandra.thrift.Cassandra$Client.prepare_cql3_query(Cassandra.java:1646) at org.apache.cassandra.hadoop.cql3.CqlPagingRecordReader$RowIterator.prepareQuery(CqlPagingRecordReader.java:605) at org.apache.cassandra.hadoop.cql3.CqlPagingRecordReader$RowIterator.executeQuery(CqlPagingRecordReader.java:635) ... 10 more The hadoop config lines look as such: //read input from cassandra column family using CQL Input Format job.setInputFormatClass(CqlPagingInputFormat.class); ConfigHelper.setInputColumnFamily(job.getConfiguration(), KEYSPACE, INPUT_COLUMN_FAMILY); ConfigHelper.setInputRpcPort(job.getConfiguration(), 9160); ConfigHelper.setInputInitialAddress(job.getConfiguration(), HOST); ConfigHelper.setInputPartitioner(job.getConfiguration(), RandomPartitioner); CqlConfigHelper.setInputColumns(job.getConfiguration(), foo,WRITETIME(foo)); job.getConfiguration().set(cassandra.consistencylevel.read, READ_CONSISTENCY); CqlConfigHelper.setInputCQLPageRowSize(job.getConfiguration(), 3000); -- This message was sent by Atlassian JIRA (v6.2#6252)
[jira] [Updated] (CASSANDRA-7252) RingCache cannot be configured to use local DC only
[ https://issues.apache.org/jira/browse/CASSANDRA-7252?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Sylvain Lebresne updated CASSANDRA-7252: Assignee: Robbie Strickland (was: Jonathan Ellis) RingCache cannot be configured to use local DC only --- Key: CASSANDRA-7252 URL: https://issues.apache.org/jira/browse/CASSANDRA-7252 Project: Cassandra Issue Type: Bug Components: Hadoop Reporter: Robbie Strickland Assignee: Robbie Strickland Labels: patch Fix For: 2.0.10 Attachments: cassandra-2.0.7-7252-2.txt, cassandra-2.0.7-7252.txt RingCache always calls describe_ring, returning the entire cluster. Considering it's used in the context of writing from Hadoop (which is typically in a multi-DC configuration), this is often not desirable behavior. In some cases there may be high-latency connections between the analytics DC and other DCs. I am attaching a patch that adds an optional config value to tell RingCache to use local nodes only, in which case it calls describe_local_ring instead. It also adds helpful failed host information to IOExceptions thrown in AbstractColumnFamilyOutputFormat.createAuthenticatedClient, CqlRecordWriter, and ColumnFamilyRecordWriter. This allows a user to more easily solve related connectivity issues. -- This message was sent by Atlassian JIRA (v6.2#6252)
[jira] [Updated] (CASSANDRA-7252) RingCache cannot be configured to use local DC only
[ https://issues.apache.org/jira/browse/CASSANDRA-7252?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Sylvain Lebresne updated CASSANDRA-7252: Reviewer: Jonathan Ellis RingCache cannot be configured to use local DC only --- Key: CASSANDRA-7252 URL: https://issues.apache.org/jira/browse/CASSANDRA-7252 Project: Cassandra Issue Type: Bug Components: Hadoop Reporter: Robbie Strickland Assignee: Robbie Strickland Labels: patch Fix For: 2.0.10 Attachments: cassandra-2.0.7-7252-2.txt, cassandra-2.0.7-7252.txt RingCache always calls describe_ring, returning the entire cluster. Considering it's used in the context of writing from Hadoop (which is typically in a multi-DC configuration), this is often not desirable behavior. In some cases there may be high-latency connections between the analytics DC and other DCs. I am attaching a patch that adds an optional config value to tell RingCache to use local nodes only, in which case it calls describe_local_ring instead. It also adds helpful failed host information to IOExceptions thrown in AbstractColumnFamilyOutputFormat.createAuthenticatedClient, CqlRecordWriter, and ColumnFamilyRecordWriter. This allows a user to more easily solve related connectivity issues. -- This message was sent by Atlassian JIRA (v6.2#6252)
git commit: Add stop method to EmbeddedCassandraService
Repository: cassandra Updated Branches: refs/heads/cassandra-1.2 73eb68c51 - 266f6b7b5 Add stop method to EmbeddedCassandraService patch by lyubent; reviewed by slebresne for CASSANDRA-7595 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/266f6b7b Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/266f6b7b Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/266f6b7b Branch: refs/heads/cassandra-1.2 Commit: 266f6b7b50b1ee9b13d533af9e3406f8797c4af5 Parents: 73eb68c Author: Sylvain Lebresne sylv...@datastax.com Authored: Wed Aug 6 12:10:53 2014 +0200 Committer: Sylvain Lebresne sylv...@datastax.com Committed: Wed Aug 6 12:10:53 2014 +0200 -- CHANGES.txt | 1 + .../org/apache/cassandra/service/EmbeddedCassandraService.java | 5 + 2 files changed, 6 insertions(+) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/266f6b7b/CHANGES.txt -- diff --git a/CHANGES.txt b/CHANGES.txt index ed04b63..2c95a52 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -1,4 +1,5 @@ 1.2.19 + * Add stop method to EmbeddedCassandraService (CASSANDRA-7595) * Support connecting to ipv6 jmx with nodetool (CASSANDRA-7669) * Set gc_grace_seconds to seven days for system schema tables (CASSANDRA-7668) * SimpleSeedProvider no longer caches seeds forever (CASSANDRA-7663) http://git-wip-us.apache.org/repos/asf/cassandra/blob/266f6b7b/src/java/org/apache/cassandra/service/EmbeddedCassandraService.java -- diff --git a/src/java/org/apache/cassandra/service/EmbeddedCassandraService.java b/src/java/org/apache/cassandra/service/EmbeddedCassandraService.java index 659d851..8993900 100644 --- a/src/java/org/apache/cassandra/service/EmbeddedCassandraService.java +++ b/src/java/org/apache/cassandra/service/EmbeddedCassandraService.java @@ -52,4 +52,9 @@ public class EmbeddedCassandraService cassandraDaemon.init(null); cassandraDaemon.start(); } + +public void stop() throws IOException +{ +cassandraDaemon.deactivate(); +} }
[1/2] git commit: Add stop method to EmbeddedCassandraService
Repository: cassandra Updated Branches: refs/heads/cassandra-2.0 f92291c62 - f498a94ce Add stop method to EmbeddedCassandraService patch by lyubent; reviewed by slebresne for CASSANDRA-7595 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/266f6b7b Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/266f6b7b Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/266f6b7b Branch: refs/heads/cassandra-2.0 Commit: 266f6b7b50b1ee9b13d533af9e3406f8797c4af5 Parents: 73eb68c Author: Sylvain Lebresne sylv...@datastax.com Authored: Wed Aug 6 12:10:53 2014 +0200 Committer: Sylvain Lebresne sylv...@datastax.com Committed: Wed Aug 6 12:10:53 2014 +0200 -- CHANGES.txt | 1 + .../org/apache/cassandra/service/EmbeddedCassandraService.java | 5 + 2 files changed, 6 insertions(+) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/266f6b7b/CHANGES.txt -- diff --git a/CHANGES.txt b/CHANGES.txt index ed04b63..2c95a52 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -1,4 +1,5 @@ 1.2.19 + * Add stop method to EmbeddedCassandraService (CASSANDRA-7595) * Support connecting to ipv6 jmx with nodetool (CASSANDRA-7669) * Set gc_grace_seconds to seven days for system schema tables (CASSANDRA-7668) * SimpleSeedProvider no longer caches seeds forever (CASSANDRA-7663) http://git-wip-us.apache.org/repos/asf/cassandra/blob/266f6b7b/src/java/org/apache/cassandra/service/EmbeddedCassandraService.java -- diff --git a/src/java/org/apache/cassandra/service/EmbeddedCassandraService.java b/src/java/org/apache/cassandra/service/EmbeddedCassandraService.java index 659d851..8993900 100644 --- a/src/java/org/apache/cassandra/service/EmbeddedCassandraService.java +++ b/src/java/org/apache/cassandra/service/EmbeddedCassandraService.java @@ -52,4 +52,9 @@ public class EmbeddedCassandraService cassandraDaemon.init(null); cassandraDaemon.start(); } + +public void stop() throws IOException +{ +cassandraDaemon.deactivate(); +} }
[2/2] git commit: Merge branch 'cassandra-1.2' into cassandra-2.0
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/f498a94c Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/f498a94c Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/f498a94c Branch: refs/heads/cassandra-2.0 Commit: f498a94cec0acb1d254bc266f408f1642d206207 Parents: f92291c 266f6b7 Author: Sylvain Lebresne sylv...@datastax.com Authored: Wed Aug 6 12:12:21 2014 +0200 Committer: Sylvain Lebresne sylv...@datastax.com Committed: Wed Aug 6 12:12:21 2014 +0200 -- CHANGES.txt | 1 + .../org/apache/cassandra/service/EmbeddedCassandraService.java | 5 + 2 files changed, 6 insertions(+) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/f498a94c/CHANGES.txt -- diff --cc CHANGES.txt index 20330f8,2c95a52..30efd94 --- a/CHANGES.txt +++ b/CHANGES.txt @@@ -1,31 -1,5 +1,32 @@@ -1.2.19 +2.0.10 + * Update java driver (for hadoop) (CASSANDRA-7618) + * Fix truncate to always flush (CASSANDRA-7511) + * Remove shuffle and taketoken (CASSANDRA-7601) + * Switch liveRatio-related log messages to DEBUG (CASSANDRA-7467) + * (cqlsh) Add tab-completion for CREATE/DROP USER IF [NOT] EXISTS (CASSANDRA-7611) + * Always merge ranges owned by a single node (CASSANDRA-6930) + * Pig support for hadoop CqlInputFormat (CASSANDRA-6454) + * Fix ReversedType(DateType) mapping to native protocol (CASSANDRA-7576) + * (Windows) force range-based repair to non-sequential mode (CASSANDRA-7541) + * Fix range merging when DES scores are zero (CASSANDRA-7535) + * Warn when SSL certificates have expired (CASSANDRA-7528) + * Workaround JVM NPE on JMX bind failure (CASSANDRA-7254) + * Fix race in FileCacheService RemovalListener (CASSANDRA-7278) + * Fix inconsistent use of consistencyForCommit that allowed LOCAL_QUORUM + operations to incorrect become full QUORUM (CASSANDRA-7345) + * Properly handle unrecognized opcodes and flags (CASSANDRA-7440) + * (Hadoop) close CqlRecordWriter clients when finished (CASSANDRA-7459) + * Make sure high level sstables get compacted (CASSANDRA-7414) + * Fix AssertionError when using empty clustering columns and static columns + (CASSANDRA-7455) + * Add inter_dc_stream_throughput_outbound_megabits_per_sec (CASSANDRA-6596) + * Add option to disable STCS in L0 (CASSANDRA-6621) + * Fix error when doing reversed queries with static columns (CASSANDRA-7490) + * Backport CASSANDRA-6747 (CASSANDRA-7560) + * Track max/min timestamps for range tombstones (CASSANDRA-7647) + * Fix NPE when listing saved caches dir (CASSANDRA-7632) +Merged from 1.2: + * Add stop method to EmbeddedCassandraService (CASSANDRA-7595) * Support connecting to ipv6 jmx with nodetool (CASSANDRA-7669) * Set gc_grace_seconds to seven days for system schema tables (CASSANDRA-7668) * SimpleSeedProvider no longer caches seeds forever (CASSANDRA-7663)
[6/6] git commit: Merge branch 'cassandra-2.0' into cassandra-2.1.0
Merge branch 'cassandra-2.0' into cassandra-2.1.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/a7d950e3 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/a7d950e3 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/a7d950e3 Branch: refs/heads/cassandra-2.1.0 Commit: a7d950e36387ee46ff48b3e81f93d7a704aae874 Parents: cd84cc9 f498a94 Author: Sylvain Lebresne sylv...@datastax.com Authored: Wed Aug 6 12:13:20 2014 +0200 Committer: Sylvain Lebresne sylv...@datastax.com Committed: Wed Aug 6 12:13:20 2014 +0200 -- CHANGES.txt | 1 + conf/cassandra-env.sh | 4 +++ .../cassandra/locator/SimpleSeedProvider.java | 27 .../service/EmbeddedCassandraService.java | 5 4 files changed, 32 insertions(+), 5 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/a7d950e3/CHANGES.txt -- diff --cc CHANGES.txt index e8a0f6f,30efd94..724dbc3 --- a/CHANGES.txt +++ b/CHANGES.txt @@@ -1,68 -1,12 +1,69 @@@ -2.0.10 +2.1.0-final + * cqlsh DESC CLUSTER fails retrieving ring information (CASSANDRA-7687) + * Fix binding null values inside UDT (CASSANDRA-7685) + * Fix UDT field selection with empty fields (CASSANDRA-7670) + * Bogus deserialization of static cells from sstable (CASSANDRA-7684) +Merged from 2.0: ++ * Add stop method to EmbeddedCassandraService (CASSANDRA-7595) * Update java driver (for hadoop) (CASSANDRA-7618) - * Fix truncate to always flush (CASSANDRA-7511) + * Support connecting to ipv6 jmx with nodetool (CASSANDRA-7669) + + +2.1.0-rc5 + * Reject counters inside user types (CASSANDRA-7672) + * Switch to notification-based GCInspector (CASSANDRA-7638) + * (cqlsh) Handle nulls in UDTs and tuples correctly (CASSANDRA-7656) + * Don't use strict consistency when replacing (CASSANDRA-7568) + * Fix min/max cell name collection on 2.0 SSTables with range + tombstones (CASSANDRA-7593) + * Tolerate min/max cell names of different lengths (CASSANDRA-7651) + * Filter cached results correctly (CASSANDRA-7636) + * Fix tracing on the new SEPExecutor (CASSANDRA-7644) * Remove shuffle and taketoken (CASSANDRA-7601) - * Switch liveRatio-related log messages to DEBUG (CASSANDRA-7467) - * (cqlsh) Add tab-completion for CREATE/DROP USER IF [NOT] EXISTS (CASSANDRA-7611) - * Always merge ranges owned by a single node (CASSANDRA-6930) - * Pig support for hadoop CqlInputFormat (CASSANDRA-6454) + * Clean up Windows batch scripts (CASSANDRA-7619) + * Fix native protocol drop user type notification (CASSANDRA-7571) + * Give read access to system.schema_usertypes to all authenticated users + (CASSANDRA-7578) + * (cqlsh) Fix cqlsh display when zero rows are returned (CASSANDRA-7580) + * Get java version correctly when JAVA_TOOL_OPTIONS is set (CASSANDRA-7572) + * Fix NPE when dropping index from non-existent keyspace, AssertionError when + dropping non-existent index with IF EXISTS (CASSANDRA-7590) + * Fix sstablelevelresetter hang (CASSANDRA-7614) + * (cqlsh) Fix deserialization of blobs (CASSANDRA-7603) + * Use keyspace updated schema change message for UDT changes in v1 and + v2 protocols (CASSANDRA-7617) + * Fix tracing of range slices and secondary index lookups that are local + to the coordinator (CASSANDRA-7599) + * Set -Dcassandra.storagedir for all tool shell scripts (CASSANDRA-7587) + * Don't swap max/min col names when mutating sstable metadata (CASSANDRA-7596) + * (cqlsh) Correctly handle paged result sets (CASSANDRA-7625) + * (cqlsh) Improve waiting for a trace to complete (CASSANDRA-7626) + * Fix tracing of concurrent range slices and 2ary index queries (CASSANDRA-7626) + * Fix scrub against collection type (CASSANDRA-7665) +Merged from 2.0: + * Set gc_grace_seconds to seven days for system schema tables (CASSANDRA-7668) + * SimpleSeedProvider no longer caches seeds forever (CASSANDRA-7663) + * Always flush on truncate (CASSANDRA-7511) * Fix ReversedType(DateType) mapping to native protocol (CASSANDRA-7576) + * Always merge ranges owned by a single node (CASSANDRA-6930) + * Track max/min timestamps for range tombstones (CASSANDRA-7647) + * Fix NPE when listing saved caches dir (CASSANDRA-7632) + + +2.1.0-rc4 + * Fix word count hadoop example (CASSANDRA-7200) + * Updated memtable_cleanup_threshold and memtable_flush_writers defaults + (CASSANDRA-7551) + * (Windows) fix startup when WMI memory query fails (CASSANDRA-7505) + * Anti-compaction proceeds if any part of the repair failed (CASANDRA-7521) + * Add missing table name to DROP INDEX responses and notifications (CASSANDRA-7539) + * Bump CQL version
[2/4] git commit: Merge branch 'cassandra-1.2' into cassandra-2.0
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/f498a94c Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/f498a94c Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/f498a94c Branch: refs/heads/cassandra-2.1 Commit: f498a94cec0acb1d254bc266f408f1642d206207 Parents: f92291c 266f6b7 Author: Sylvain Lebresne sylv...@datastax.com Authored: Wed Aug 6 12:12:21 2014 +0200 Committer: Sylvain Lebresne sylv...@datastax.com Committed: Wed Aug 6 12:12:21 2014 +0200 -- CHANGES.txt | 1 + .../org/apache/cassandra/service/EmbeddedCassandraService.java | 5 + 2 files changed, 6 insertions(+) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/f498a94c/CHANGES.txt -- diff --cc CHANGES.txt index 20330f8,2c95a52..30efd94 --- a/CHANGES.txt +++ b/CHANGES.txt @@@ -1,31 -1,5 +1,32 @@@ -1.2.19 +2.0.10 + * Update java driver (for hadoop) (CASSANDRA-7618) + * Fix truncate to always flush (CASSANDRA-7511) + * Remove shuffle and taketoken (CASSANDRA-7601) + * Switch liveRatio-related log messages to DEBUG (CASSANDRA-7467) + * (cqlsh) Add tab-completion for CREATE/DROP USER IF [NOT] EXISTS (CASSANDRA-7611) + * Always merge ranges owned by a single node (CASSANDRA-6930) + * Pig support for hadoop CqlInputFormat (CASSANDRA-6454) + * Fix ReversedType(DateType) mapping to native protocol (CASSANDRA-7576) + * (Windows) force range-based repair to non-sequential mode (CASSANDRA-7541) + * Fix range merging when DES scores are zero (CASSANDRA-7535) + * Warn when SSL certificates have expired (CASSANDRA-7528) + * Workaround JVM NPE on JMX bind failure (CASSANDRA-7254) + * Fix race in FileCacheService RemovalListener (CASSANDRA-7278) + * Fix inconsistent use of consistencyForCommit that allowed LOCAL_QUORUM + operations to incorrect become full QUORUM (CASSANDRA-7345) + * Properly handle unrecognized opcodes and flags (CASSANDRA-7440) + * (Hadoop) close CqlRecordWriter clients when finished (CASSANDRA-7459) + * Make sure high level sstables get compacted (CASSANDRA-7414) + * Fix AssertionError when using empty clustering columns and static columns + (CASSANDRA-7455) + * Add inter_dc_stream_throughput_outbound_megabits_per_sec (CASSANDRA-6596) + * Add option to disable STCS in L0 (CASSANDRA-6621) + * Fix error when doing reversed queries with static columns (CASSANDRA-7490) + * Backport CASSANDRA-6747 (CASSANDRA-7560) + * Track max/min timestamps for range tombstones (CASSANDRA-7647) + * Fix NPE when listing saved caches dir (CASSANDRA-7632) +Merged from 1.2: + * Add stop method to EmbeddedCassandraService (CASSANDRA-7595) * Support connecting to ipv6 jmx with nodetool (CASSANDRA-7669) * Set gc_grace_seconds to seven days for system schema tables (CASSANDRA-7668) * SimpleSeedProvider no longer caches seeds forever (CASSANDRA-7663)
[4/6] git commit: Add stop method to EmbeddedCassandraService
Add stop method to EmbeddedCassandraService patch by lyubent; reviewed by slebresne for CASSANDRA-7595 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/266f6b7b Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/266f6b7b Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/266f6b7b Branch: refs/heads/cassandra-2.1.0 Commit: 266f6b7b50b1ee9b13d533af9e3406f8797c4af5 Parents: 73eb68c Author: Sylvain Lebresne sylv...@datastax.com Authored: Wed Aug 6 12:10:53 2014 +0200 Committer: Sylvain Lebresne sylv...@datastax.com Committed: Wed Aug 6 12:10:53 2014 +0200 -- CHANGES.txt | 1 + .../org/apache/cassandra/service/EmbeddedCassandraService.java | 5 + 2 files changed, 6 insertions(+) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/266f6b7b/CHANGES.txt -- diff --git a/CHANGES.txt b/CHANGES.txt index ed04b63..2c95a52 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -1,4 +1,5 @@ 1.2.19 + * Add stop method to EmbeddedCassandraService (CASSANDRA-7595) * Support connecting to ipv6 jmx with nodetool (CASSANDRA-7669) * Set gc_grace_seconds to seven days for system schema tables (CASSANDRA-7668) * SimpleSeedProvider no longer caches seeds forever (CASSANDRA-7663) http://git-wip-us.apache.org/repos/asf/cassandra/blob/266f6b7b/src/java/org/apache/cassandra/service/EmbeddedCassandraService.java -- diff --git a/src/java/org/apache/cassandra/service/EmbeddedCassandraService.java b/src/java/org/apache/cassandra/service/EmbeddedCassandraService.java index 659d851..8993900 100644 --- a/src/java/org/apache/cassandra/service/EmbeddedCassandraService.java +++ b/src/java/org/apache/cassandra/service/EmbeddedCassandraService.java @@ -52,4 +52,9 @@ public class EmbeddedCassandraService cassandraDaemon.init(null); cassandraDaemon.start(); } + +public void stop() throws IOException +{ +cassandraDaemon.deactivate(); +} }
[2/6] git commit: Merge branch 'cassandra-1.2' into cassandra-2.0
Merge branch 'cassandra-1.2' into cassandra-2.0 Conflicts: src/java/org/apache/cassandra/locator/SimpleSeedProvider.java Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/d5d1adb4 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/d5d1adb4 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/d5d1adb4 Branch: refs/heads/cassandra-2.1.0 Commit: d5d1adb4407f226c23257c300d9184c0abe32aa9 Parents: 4b6d6eb 73eb68c Author: Brandon Williams brandonwilli...@apache.org Authored: Tue Aug 5 13:57:39 2014 -0500 Committer: Brandon Williams brandonwilli...@apache.org Committed: Tue Aug 5 13:57:39 2014 -0500 -- .../cassandra/locator/SimpleSeedProvider.java | 27 1 file changed, 22 insertions(+), 5 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/d5d1adb4/src/java/org/apache/cassandra/locator/SimpleSeedProvider.java -- diff --cc src/java/org/apache/cassandra/locator/SimpleSeedProvider.java index a9ca15b,6c426bd..eda9fff --- a/src/java/org/apache/cassandra/locator/SimpleSeedProvider.java +++ b/src/java/org/apache/cassandra/locator/SimpleSeedProvider.java @@@ -50,8 -61,22 +61,14 @@@ public class SimpleSeedProvider impleme } catch (Exception e) { - throw new AssertionError(e); + logger.warn(Could not refresh seeds from configuration file: {}, e); } + return Collections.unmodifiableList(seeds); + } + + private ListInetAddress loadSeeds() throws IOException, ConfigurationException + { -InputStream input; -URL url = DatabaseDescriptor.getStorageConfigURL(); -input = url.openStream(); -org.yaml.snakeyaml.constructor.Constructor constructor = new org.yaml.snakeyaml.constructor.Constructor(Config.class); -TypeDescription seedDesc = new TypeDescription(SeedProviderDef.class); -seedDesc.putMapPropertyType(parameters, String.class, String.class); -constructor.addTypeDescription(seedDesc); -Yaml yaml = new Yaml(new Loader(constructor)); -Config conf = (Config)yaml.load(input); ++Config conf = DatabaseDescriptor.loadConfig(); String[] hosts = conf.seed_provider.parameters.get(seeds).split(,, -1); ListInetAddress seeds = new ArrayListInetAddress(hosts.length); for (String host : hosts)
[4/4] git commit: Merge branch 'cassandra-2.1.0' into cassandra-2.1
Merge branch 'cassandra-2.1.0' into cassandra-2.1 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/6386abc0 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/6386abc0 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/6386abc0 Branch: refs/heads/cassandra-2.1 Commit: 6386abc07c8ee0ae0a3e33744fbfef5106766694 Parents: 40a1cd3 a7d950e Author: Sylvain Lebresne sylv...@datastax.com Authored: Wed Aug 6 12:13:38 2014 +0200 Committer: Sylvain Lebresne sylv...@datastax.com Committed: Wed Aug 6 12:13:38 2014 +0200 -- CHANGES.txt | 1 + .../org/apache/cassandra/service/EmbeddedCassandraService.java | 5 + 2 files changed, 6 insertions(+) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/6386abc0/CHANGES.txt --
[1/6] git commit: Prevent SSP from erroring out when the yaml is yanked from it.
Repository: cassandra Updated Branches: refs/heads/cassandra-2.1.0 cd84cc9ec - a7d950e36 Prevent SSP from erroring out when the yaml is yanked from it. Patch by brandonwilliams, reviewed by Richard Low for CASSANDRA-7663 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/73eb68c5 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/73eb68c5 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/73eb68c5 Branch: refs/heads/cassandra-2.1.0 Commit: 73eb68c516a291e2f8a816abab20b67999eb851b Parents: 244f234 Author: Brandon Williams brandonwilli...@apache.org Authored: Tue Aug 5 13:53:01 2014 -0500 Committer: Brandon Williams brandonwilli...@apache.org Committed: Tue Aug 5 13:53:01 2014 -0500 -- .../cassandra/locator/SimpleSeedProvider.java | 30 1 file changed, 24 insertions(+), 6 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/73eb68c5/src/java/org/apache/cassandra/locator/SimpleSeedProvider.java -- diff --git a/src/java/org/apache/cassandra/locator/SimpleSeedProvider.java b/src/java/org/apache/cassandra/locator/SimpleSeedProvider.java index 9f491f3..6c426bd 100644 --- a/src/java/org/apache/cassandra/locator/SimpleSeedProvider.java +++ b/src/java/org/apache/cassandra/locator/SimpleSeedProvider.java @@ -17,6 +17,7 @@ */ package org.apache.cassandra.locator; +import java.io.IOException; import java.io.InputStream; import java.net.InetAddress; import java.net.URL; @@ -29,6 +30,7 @@ import java.util.Map; import org.apache.cassandra.config.Config; import org.apache.cassandra.config.DatabaseDescriptor; import org.apache.cassandra.config.SeedProviderDef; +import org.apache.cassandra.exceptions.ConfigurationException; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.yaml.snakeyaml.Loader; @@ -39,20 +41,36 @@ public class SimpleSeedProvider implements SeedProvider { private static final Logger logger = LoggerFactory.getLogger(SimpleSeedProvider.class); -public SimpleSeedProvider(MapString, String args) {} +ListInetAddress seeds; +public SimpleSeedProvider(MapString, String args) { +try +{ +seeds = loadSeeds(); +} +catch (Exception e) +{ +throw new AssertionError(e); +} +} public ListInetAddress getSeeds() { -InputStream input; try { -URL url = DatabaseDescriptor.getStorageConfigURL(); -input = url.openStream(); +seeds = loadSeeds(); } catch (Exception e) { -throw new AssertionError(e); +logger.warn(Could not refresh seeds from configuration file: {}, e); } +return Collections.unmodifiableList(seeds); +} + +private ListInetAddress loadSeeds() throws IOException, ConfigurationException +{ +InputStream input; +URL url = DatabaseDescriptor.getStorageConfigURL(); +input = url.openStream(); org.yaml.snakeyaml.constructor.Constructor constructor = new org.yaml.snakeyaml.constructor.Constructor(Config.class); TypeDescription seedDesc = new TypeDescription(SeedProviderDef.class); seedDesc.putMapPropertyType(parameters, String.class, String.class); @@ -73,6 +91,6 @@ public class SimpleSeedProvider implements SeedProvider logger.warn(Seed provider couldn't lookup host + host); } } -return Collections.unmodifiableList(seeds); +return seeds; } }
[3/4] git commit: Merge branch 'cassandra-2.0' into cassandra-2.1.0
Merge branch 'cassandra-2.0' into cassandra-2.1.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/a7d950e3 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/a7d950e3 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/a7d950e3 Branch: refs/heads/cassandra-2.1 Commit: a7d950e36387ee46ff48b3e81f93d7a704aae874 Parents: cd84cc9 f498a94 Author: Sylvain Lebresne sylv...@datastax.com Authored: Wed Aug 6 12:13:20 2014 +0200 Committer: Sylvain Lebresne sylv...@datastax.com Committed: Wed Aug 6 12:13:20 2014 +0200 -- CHANGES.txt | 1 + conf/cassandra-env.sh | 4 +++ .../cassandra/locator/SimpleSeedProvider.java | 27 .../service/EmbeddedCassandraService.java | 5 4 files changed, 32 insertions(+), 5 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/a7d950e3/CHANGES.txt -- diff --cc CHANGES.txt index e8a0f6f,30efd94..724dbc3 --- a/CHANGES.txt +++ b/CHANGES.txt @@@ -1,68 -1,12 +1,69 @@@ -2.0.10 +2.1.0-final + * cqlsh DESC CLUSTER fails retrieving ring information (CASSANDRA-7687) + * Fix binding null values inside UDT (CASSANDRA-7685) + * Fix UDT field selection with empty fields (CASSANDRA-7670) + * Bogus deserialization of static cells from sstable (CASSANDRA-7684) +Merged from 2.0: ++ * Add stop method to EmbeddedCassandraService (CASSANDRA-7595) * Update java driver (for hadoop) (CASSANDRA-7618) - * Fix truncate to always flush (CASSANDRA-7511) + * Support connecting to ipv6 jmx with nodetool (CASSANDRA-7669) + + +2.1.0-rc5 + * Reject counters inside user types (CASSANDRA-7672) + * Switch to notification-based GCInspector (CASSANDRA-7638) + * (cqlsh) Handle nulls in UDTs and tuples correctly (CASSANDRA-7656) + * Don't use strict consistency when replacing (CASSANDRA-7568) + * Fix min/max cell name collection on 2.0 SSTables with range + tombstones (CASSANDRA-7593) + * Tolerate min/max cell names of different lengths (CASSANDRA-7651) + * Filter cached results correctly (CASSANDRA-7636) + * Fix tracing on the new SEPExecutor (CASSANDRA-7644) * Remove shuffle and taketoken (CASSANDRA-7601) - * Switch liveRatio-related log messages to DEBUG (CASSANDRA-7467) - * (cqlsh) Add tab-completion for CREATE/DROP USER IF [NOT] EXISTS (CASSANDRA-7611) - * Always merge ranges owned by a single node (CASSANDRA-6930) - * Pig support for hadoop CqlInputFormat (CASSANDRA-6454) + * Clean up Windows batch scripts (CASSANDRA-7619) + * Fix native protocol drop user type notification (CASSANDRA-7571) + * Give read access to system.schema_usertypes to all authenticated users + (CASSANDRA-7578) + * (cqlsh) Fix cqlsh display when zero rows are returned (CASSANDRA-7580) + * Get java version correctly when JAVA_TOOL_OPTIONS is set (CASSANDRA-7572) + * Fix NPE when dropping index from non-existent keyspace, AssertionError when + dropping non-existent index with IF EXISTS (CASSANDRA-7590) + * Fix sstablelevelresetter hang (CASSANDRA-7614) + * (cqlsh) Fix deserialization of blobs (CASSANDRA-7603) + * Use keyspace updated schema change message for UDT changes in v1 and + v2 protocols (CASSANDRA-7617) + * Fix tracing of range slices and secondary index lookups that are local + to the coordinator (CASSANDRA-7599) + * Set -Dcassandra.storagedir for all tool shell scripts (CASSANDRA-7587) + * Don't swap max/min col names when mutating sstable metadata (CASSANDRA-7596) + * (cqlsh) Correctly handle paged result sets (CASSANDRA-7625) + * (cqlsh) Improve waiting for a trace to complete (CASSANDRA-7626) + * Fix tracing of concurrent range slices and 2ary index queries (CASSANDRA-7626) + * Fix scrub against collection type (CASSANDRA-7665) +Merged from 2.0: + * Set gc_grace_seconds to seven days for system schema tables (CASSANDRA-7668) + * SimpleSeedProvider no longer caches seeds forever (CASSANDRA-7663) + * Always flush on truncate (CASSANDRA-7511) * Fix ReversedType(DateType) mapping to native protocol (CASSANDRA-7576) + * Always merge ranges owned by a single node (CASSANDRA-6930) + * Track max/min timestamps for range tombstones (CASSANDRA-7647) + * Fix NPE when listing saved caches dir (CASSANDRA-7632) + + +2.1.0-rc4 + * Fix word count hadoop example (CASSANDRA-7200) + * Updated memtable_cleanup_threshold and memtable_flush_writers defaults + (CASSANDRA-7551) + * (Windows) fix startup when WMI memory query fails (CASSANDRA-7505) + * Anti-compaction proceeds if any part of the repair failed (CASANDRA-7521) + * Add missing table name to DROP INDEX responses and notifications (CASSANDRA-7539) + * Bump CQL version
[1/4] git commit: Add stop method to EmbeddedCassandraService
Repository: cassandra Updated Branches: refs/heads/cassandra-2.1 40a1cd369 - 6386abc07 Add stop method to EmbeddedCassandraService patch by lyubent; reviewed by slebresne for CASSANDRA-7595 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/266f6b7b Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/266f6b7b Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/266f6b7b Branch: refs/heads/cassandra-2.1 Commit: 266f6b7b50b1ee9b13d533af9e3406f8797c4af5 Parents: 73eb68c Author: Sylvain Lebresne sylv...@datastax.com Authored: Wed Aug 6 12:10:53 2014 +0200 Committer: Sylvain Lebresne sylv...@datastax.com Committed: Wed Aug 6 12:10:53 2014 +0200 -- CHANGES.txt | 1 + .../org/apache/cassandra/service/EmbeddedCassandraService.java | 5 + 2 files changed, 6 insertions(+) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/266f6b7b/CHANGES.txt -- diff --git a/CHANGES.txt b/CHANGES.txt index ed04b63..2c95a52 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -1,4 +1,5 @@ 1.2.19 + * Add stop method to EmbeddedCassandraService (CASSANDRA-7595) * Support connecting to ipv6 jmx with nodetool (CASSANDRA-7669) * Set gc_grace_seconds to seven days for system schema tables (CASSANDRA-7668) * SimpleSeedProvider no longer caches seeds forever (CASSANDRA-7663) http://git-wip-us.apache.org/repos/asf/cassandra/blob/266f6b7b/src/java/org/apache/cassandra/service/EmbeddedCassandraService.java -- diff --git a/src/java/org/apache/cassandra/service/EmbeddedCassandraService.java b/src/java/org/apache/cassandra/service/EmbeddedCassandraService.java index 659d851..8993900 100644 --- a/src/java/org/apache/cassandra/service/EmbeddedCassandraService.java +++ b/src/java/org/apache/cassandra/service/EmbeddedCassandraService.java @@ -52,4 +52,9 @@ public class EmbeddedCassandraService cassandraDaemon.init(null); cassandraDaemon.start(); } + +public void stop() throws IOException +{ +cassandraDaemon.deactivate(); +} }
[3/6] git commit: Add new GC flags for java7/8
Add new GC flags for java7/8 Patch by brandonwilliams, reviewed by jbellis for CASSANDRA-7432 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/f92291c6 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/f92291c6 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/f92291c6 Branch: refs/heads/cassandra-2.1.0 Commit: f92291c62180ff7c49fc4ea0a7ca8eb9df76b8a2 Parents: d5d1adb Author: Brandon Williams brandonwilli...@apache.org Authored: Tue Aug 5 17:52:48 2014 -0500 Committer: Brandon Williams brandonwilli...@apache.org Committed: Tue Aug 5 17:52:48 2014 -0500 -- conf/cassandra-env.sh | 4 1 file changed, 4 insertions(+) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/f92291c6/conf/cassandra-env.sh -- diff --git a/conf/cassandra-env.sh b/conf/cassandra-env.sh index d4e6590..5e2fb87 100644 --- a/conf/cassandra-env.sh +++ b/conf/cassandra-env.sh @@ -214,6 +214,10 @@ JVM_OPTS=$JVM_OPTS -XX:+UseCMSInitiatingOccupancyOnly JVM_OPTS=$JVM_OPTS -XX:+UseTLAB # note: bash evals '1.7.x' as '1.7' so this is really a = 1.7 jvm check +if { [ $JVM_VERSION \ 1.7 ] [ $JVM_VERSION \ 1.8.0 ] [ $JVM_PATCH_VERSION -ge 60 ]; } || [ $JVM_VERSION \ 1.8 ] ; then +JVM_OPTS=$JVM_OPTS -XX:+CMSParallelInitialMarkEnabled -XX:+CMSEdenChunksRecordAlways +fi + if [ $JVM_ARCH = 64-Bit ] ; then JVM_OPTS=$JVM_OPTS -XX:+UseCondCardMark fi
[5/6] git commit: Merge branch 'cassandra-1.2' into cassandra-2.0
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/f498a94c Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/f498a94c Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/f498a94c Branch: refs/heads/cassandra-2.1.0 Commit: f498a94cec0acb1d254bc266f408f1642d206207 Parents: f92291c 266f6b7 Author: Sylvain Lebresne sylv...@datastax.com Authored: Wed Aug 6 12:12:21 2014 +0200 Committer: Sylvain Lebresne sylv...@datastax.com Committed: Wed Aug 6 12:12:21 2014 +0200 -- CHANGES.txt | 1 + .../org/apache/cassandra/service/EmbeddedCassandraService.java | 5 + 2 files changed, 6 insertions(+) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/f498a94c/CHANGES.txt -- diff --cc CHANGES.txt index 20330f8,2c95a52..30efd94 --- a/CHANGES.txt +++ b/CHANGES.txt @@@ -1,31 -1,5 +1,32 @@@ -1.2.19 +2.0.10 + * Update java driver (for hadoop) (CASSANDRA-7618) + * Fix truncate to always flush (CASSANDRA-7511) + * Remove shuffle and taketoken (CASSANDRA-7601) + * Switch liveRatio-related log messages to DEBUG (CASSANDRA-7467) + * (cqlsh) Add tab-completion for CREATE/DROP USER IF [NOT] EXISTS (CASSANDRA-7611) + * Always merge ranges owned by a single node (CASSANDRA-6930) + * Pig support for hadoop CqlInputFormat (CASSANDRA-6454) + * Fix ReversedType(DateType) mapping to native protocol (CASSANDRA-7576) + * (Windows) force range-based repair to non-sequential mode (CASSANDRA-7541) + * Fix range merging when DES scores are zero (CASSANDRA-7535) + * Warn when SSL certificates have expired (CASSANDRA-7528) + * Workaround JVM NPE on JMX bind failure (CASSANDRA-7254) + * Fix race in FileCacheService RemovalListener (CASSANDRA-7278) + * Fix inconsistent use of consistencyForCommit that allowed LOCAL_QUORUM + operations to incorrect become full QUORUM (CASSANDRA-7345) + * Properly handle unrecognized opcodes and flags (CASSANDRA-7440) + * (Hadoop) close CqlRecordWriter clients when finished (CASSANDRA-7459) + * Make sure high level sstables get compacted (CASSANDRA-7414) + * Fix AssertionError when using empty clustering columns and static columns + (CASSANDRA-7455) + * Add inter_dc_stream_throughput_outbound_megabits_per_sec (CASSANDRA-6596) + * Add option to disable STCS in L0 (CASSANDRA-6621) + * Fix error when doing reversed queries with static columns (CASSANDRA-7490) + * Backport CASSANDRA-6747 (CASSANDRA-7560) + * Track max/min timestamps for range tombstones (CASSANDRA-7647) + * Fix NPE when listing saved caches dir (CASSANDRA-7632) +Merged from 1.2: + * Add stop method to EmbeddedCassandraService (CASSANDRA-7595) * Support connecting to ipv6 jmx with nodetool (CASSANDRA-7669) * Set gc_grace_seconds to seven days for system schema tables (CASSANDRA-7668) * SimpleSeedProvider no longer caches seeds forever (CASSANDRA-7663)
[4/5] git commit: Merge branch 'cassandra-2.1.0' into cassandra-2.1
Merge branch 'cassandra-2.1.0' into cassandra-2.1 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/6386abc0 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/6386abc0 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/6386abc0 Branch: refs/heads/trunk Commit: 6386abc07c8ee0ae0a3e33744fbfef5106766694 Parents: 40a1cd3 a7d950e Author: Sylvain Lebresne sylv...@datastax.com Authored: Wed Aug 6 12:13:38 2014 +0200 Committer: Sylvain Lebresne sylv...@datastax.com Committed: Wed Aug 6 12:13:38 2014 +0200 -- CHANGES.txt | 1 + .../org/apache/cassandra/service/EmbeddedCassandraService.java | 5 + 2 files changed, 6 insertions(+) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/6386abc0/CHANGES.txt --
[5/5] git commit: Merge branch 'cassandra-2.1' into trunk
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/774f3acb Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/774f3acb Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/774f3acb Branch: refs/heads/trunk Commit: 774f3acbfdcff3ab20c838023f6f1de0eb2d5626 Parents: f7fab28 6386abc Author: Sylvain Lebresne sylv...@datastax.com Authored: Wed Aug 6 12:14:36 2014 +0200 Committer: Sylvain Lebresne sylv...@datastax.com Committed: Wed Aug 6 12:14:36 2014 +0200 -- CHANGES.txt | 1 + .../org/apache/cassandra/service/EmbeddedCassandraService.java | 5 + 2 files changed, 6 insertions(+) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/774f3acb/CHANGES.txt --
[1/5] git commit: Add stop method to EmbeddedCassandraService
Repository: cassandra Updated Branches: refs/heads/trunk f7fab28ec - 774f3acbf Add stop method to EmbeddedCassandraService patch by lyubent; reviewed by slebresne for CASSANDRA-7595 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/266f6b7b Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/266f6b7b Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/266f6b7b Branch: refs/heads/trunk Commit: 266f6b7b50b1ee9b13d533af9e3406f8797c4af5 Parents: 73eb68c Author: Sylvain Lebresne sylv...@datastax.com Authored: Wed Aug 6 12:10:53 2014 +0200 Committer: Sylvain Lebresne sylv...@datastax.com Committed: Wed Aug 6 12:10:53 2014 +0200 -- CHANGES.txt | 1 + .../org/apache/cassandra/service/EmbeddedCassandraService.java | 5 + 2 files changed, 6 insertions(+) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/266f6b7b/CHANGES.txt -- diff --git a/CHANGES.txt b/CHANGES.txt index ed04b63..2c95a52 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -1,4 +1,5 @@ 1.2.19 + * Add stop method to EmbeddedCassandraService (CASSANDRA-7595) * Support connecting to ipv6 jmx with nodetool (CASSANDRA-7669) * Set gc_grace_seconds to seven days for system schema tables (CASSANDRA-7668) * SimpleSeedProvider no longer caches seeds forever (CASSANDRA-7663) http://git-wip-us.apache.org/repos/asf/cassandra/blob/266f6b7b/src/java/org/apache/cassandra/service/EmbeddedCassandraService.java -- diff --git a/src/java/org/apache/cassandra/service/EmbeddedCassandraService.java b/src/java/org/apache/cassandra/service/EmbeddedCassandraService.java index 659d851..8993900 100644 --- a/src/java/org/apache/cassandra/service/EmbeddedCassandraService.java +++ b/src/java/org/apache/cassandra/service/EmbeddedCassandraService.java @@ -52,4 +52,9 @@ public class EmbeddedCassandraService cassandraDaemon.init(null); cassandraDaemon.start(); } + +public void stop() throws IOException +{ +cassandraDaemon.deactivate(); +} }
[3/5] git commit: Merge branch 'cassandra-2.0' into cassandra-2.1.0
Merge branch 'cassandra-2.0' into cassandra-2.1.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/a7d950e3 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/a7d950e3 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/a7d950e3 Branch: refs/heads/trunk Commit: a7d950e36387ee46ff48b3e81f93d7a704aae874 Parents: cd84cc9 f498a94 Author: Sylvain Lebresne sylv...@datastax.com Authored: Wed Aug 6 12:13:20 2014 +0200 Committer: Sylvain Lebresne sylv...@datastax.com Committed: Wed Aug 6 12:13:20 2014 +0200 -- CHANGES.txt | 1 + conf/cassandra-env.sh | 4 +++ .../cassandra/locator/SimpleSeedProvider.java | 27 .../service/EmbeddedCassandraService.java | 5 4 files changed, 32 insertions(+), 5 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/a7d950e3/CHANGES.txt -- diff --cc CHANGES.txt index e8a0f6f,30efd94..724dbc3 --- a/CHANGES.txt +++ b/CHANGES.txt @@@ -1,68 -1,12 +1,69 @@@ -2.0.10 +2.1.0-final + * cqlsh DESC CLUSTER fails retrieving ring information (CASSANDRA-7687) + * Fix binding null values inside UDT (CASSANDRA-7685) + * Fix UDT field selection with empty fields (CASSANDRA-7670) + * Bogus deserialization of static cells from sstable (CASSANDRA-7684) +Merged from 2.0: ++ * Add stop method to EmbeddedCassandraService (CASSANDRA-7595) * Update java driver (for hadoop) (CASSANDRA-7618) - * Fix truncate to always flush (CASSANDRA-7511) + * Support connecting to ipv6 jmx with nodetool (CASSANDRA-7669) + + +2.1.0-rc5 + * Reject counters inside user types (CASSANDRA-7672) + * Switch to notification-based GCInspector (CASSANDRA-7638) + * (cqlsh) Handle nulls in UDTs and tuples correctly (CASSANDRA-7656) + * Don't use strict consistency when replacing (CASSANDRA-7568) + * Fix min/max cell name collection on 2.0 SSTables with range + tombstones (CASSANDRA-7593) + * Tolerate min/max cell names of different lengths (CASSANDRA-7651) + * Filter cached results correctly (CASSANDRA-7636) + * Fix tracing on the new SEPExecutor (CASSANDRA-7644) * Remove shuffle and taketoken (CASSANDRA-7601) - * Switch liveRatio-related log messages to DEBUG (CASSANDRA-7467) - * (cqlsh) Add tab-completion for CREATE/DROP USER IF [NOT] EXISTS (CASSANDRA-7611) - * Always merge ranges owned by a single node (CASSANDRA-6930) - * Pig support for hadoop CqlInputFormat (CASSANDRA-6454) + * Clean up Windows batch scripts (CASSANDRA-7619) + * Fix native protocol drop user type notification (CASSANDRA-7571) + * Give read access to system.schema_usertypes to all authenticated users + (CASSANDRA-7578) + * (cqlsh) Fix cqlsh display when zero rows are returned (CASSANDRA-7580) + * Get java version correctly when JAVA_TOOL_OPTIONS is set (CASSANDRA-7572) + * Fix NPE when dropping index from non-existent keyspace, AssertionError when + dropping non-existent index with IF EXISTS (CASSANDRA-7590) + * Fix sstablelevelresetter hang (CASSANDRA-7614) + * (cqlsh) Fix deserialization of blobs (CASSANDRA-7603) + * Use keyspace updated schema change message for UDT changes in v1 and + v2 protocols (CASSANDRA-7617) + * Fix tracing of range slices and secondary index lookups that are local + to the coordinator (CASSANDRA-7599) + * Set -Dcassandra.storagedir for all tool shell scripts (CASSANDRA-7587) + * Don't swap max/min col names when mutating sstable metadata (CASSANDRA-7596) + * (cqlsh) Correctly handle paged result sets (CASSANDRA-7625) + * (cqlsh) Improve waiting for a trace to complete (CASSANDRA-7626) + * Fix tracing of concurrent range slices and 2ary index queries (CASSANDRA-7626) + * Fix scrub against collection type (CASSANDRA-7665) +Merged from 2.0: + * Set gc_grace_seconds to seven days for system schema tables (CASSANDRA-7668) + * SimpleSeedProvider no longer caches seeds forever (CASSANDRA-7663) + * Always flush on truncate (CASSANDRA-7511) * Fix ReversedType(DateType) mapping to native protocol (CASSANDRA-7576) + * Always merge ranges owned by a single node (CASSANDRA-6930) + * Track max/min timestamps for range tombstones (CASSANDRA-7647) + * Fix NPE when listing saved caches dir (CASSANDRA-7632) + + +2.1.0-rc4 + * Fix word count hadoop example (CASSANDRA-7200) + * Updated memtable_cleanup_threshold and memtable_flush_writers defaults + (CASSANDRA-7551) + * (Windows) fix startup when WMI memory query fails (CASSANDRA-7505) + * Anti-compaction proceeds if any part of the repair failed (CASANDRA-7521) + * Add missing table name to DROP INDEX responses and notifications (CASSANDRA-7539) + * Bump CQL version to 3.2.0
[2/5] git commit: Merge branch 'cassandra-1.2' into cassandra-2.0
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/f498a94c Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/f498a94c Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/f498a94c Branch: refs/heads/trunk Commit: f498a94cec0acb1d254bc266f408f1642d206207 Parents: f92291c 266f6b7 Author: Sylvain Lebresne sylv...@datastax.com Authored: Wed Aug 6 12:12:21 2014 +0200 Committer: Sylvain Lebresne sylv...@datastax.com Committed: Wed Aug 6 12:12:21 2014 +0200 -- CHANGES.txt | 1 + .../org/apache/cassandra/service/EmbeddedCassandraService.java | 5 + 2 files changed, 6 insertions(+) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/f498a94c/CHANGES.txt -- diff --cc CHANGES.txt index 20330f8,2c95a52..30efd94 --- a/CHANGES.txt +++ b/CHANGES.txt @@@ -1,31 -1,5 +1,32 @@@ -1.2.19 +2.0.10 + * Update java driver (for hadoop) (CASSANDRA-7618) + * Fix truncate to always flush (CASSANDRA-7511) + * Remove shuffle and taketoken (CASSANDRA-7601) + * Switch liveRatio-related log messages to DEBUG (CASSANDRA-7467) + * (cqlsh) Add tab-completion for CREATE/DROP USER IF [NOT] EXISTS (CASSANDRA-7611) + * Always merge ranges owned by a single node (CASSANDRA-6930) + * Pig support for hadoop CqlInputFormat (CASSANDRA-6454) + * Fix ReversedType(DateType) mapping to native protocol (CASSANDRA-7576) + * (Windows) force range-based repair to non-sequential mode (CASSANDRA-7541) + * Fix range merging when DES scores are zero (CASSANDRA-7535) + * Warn when SSL certificates have expired (CASSANDRA-7528) + * Workaround JVM NPE on JMX bind failure (CASSANDRA-7254) + * Fix race in FileCacheService RemovalListener (CASSANDRA-7278) + * Fix inconsistent use of consistencyForCommit that allowed LOCAL_QUORUM + operations to incorrect become full QUORUM (CASSANDRA-7345) + * Properly handle unrecognized opcodes and flags (CASSANDRA-7440) + * (Hadoop) close CqlRecordWriter clients when finished (CASSANDRA-7459) + * Make sure high level sstables get compacted (CASSANDRA-7414) + * Fix AssertionError when using empty clustering columns and static columns + (CASSANDRA-7455) + * Add inter_dc_stream_throughput_outbound_megabits_per_sec (CASSANDRA-6596) + * Add option to disable STCS in L0 (CASSANDRA-6621) + * Fix error when doing reversed queries with static columns (CASSANDRA-7490) + * Backport CASSANDRA-6747 (CASSANDRA-7560) + * Track max/min timestamps for range tombstones (CASSANDRA-7647) + * Fix NPE when listing saved caches dir (CASSANDRA-7632) +Merged from 1.2: + * Add stop method to EmbeddedCassandraService (CASSANDRA-7595) * Support connecting to ipv6 jmx with nodetool (CASSANDRA-7669) * Set gc_grace_seconds to seven days for system schema tables (CASSANDRA-7668) * SimpleSeedProvider no longer caches seeds forever (CASSANDRA-7663)
[jira] [Updated] (CASSANDRA-7546) AtomicSortedColumns.addAllWithSizeDelta has a spin loop that allocates memory
[ https://issues.apache.org/jira/browse/CASSANDRA-7546?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Benedict updated CASSANDRA-7546: Attachment: 7546.20_6.txt I've attached a slightly tweaked version, making things a little clearer (IMO) and removing some of the unnecessary comments, as well as fixing a couple of bugs and removing the AtomicReferenceHolder to recoup the extra space we're now using in the Holder. I must admit I'm still not madly keen on the nested synchronized() calls - I think they're a little ugly, and also increase call depth which is not ideal. I also cannot find any evidence that invoking unsafe.monitorenter/monitorexit would result in negative optimisations (this discussion on the relevant mailing list makes no such assertion whilst discussing its potential removal [http://openjdk.5641.n7.nabble.com/Unsafe-removing-the-monitorEnter-monitorExit-tryMonitorEnter-methods-td179462.html], but suggests exposing them more safely), however mostly I think the usage is clearer than nested calls passing the state of the method (isSynchronized is esp. ugly to me). I am not deadset against it though. Perhaps [~iamaleksey] can offer a third opinion? Otherwise, WDYT [~graham sanderson]? Could you give this patch a test and see how it behaves? AtomicSortedColumns.addAllWithSizeDelta has a spin loop that allocates memory - Key: CASSANDRA-7546 URL: https://issues.apache.org/jira/browse/CASSANDRA-7546 Project: Cassandra Issue Type: Bug Components: Core Reporter: graham sanderson Assignee: graham sanderson Attachments: 7546.20.txt, 7546.20_2.txt, 7546.20_3.txt, 7546.20_4.txt, 7546.20_5.txt, 7546.20_6.txt, 7546.20_alt.txt, suggestion1.txt, suggestion1_21.txt In order to preserve atomicity, this code attempts to read, clone/update, then CAS the state of the partition. Under heavy contention for updating a single partition this can cause some fairly staggering memory growth (the more cores on your machine the worst it gets). Whilst many usage patterns don't do highly concurrent updates to the same partition, hinting today, does, and in this case wild (order(s) of magnitude more than expected) memory allocation rates can be seen (especially when the updates being hinted are small updates to different partitions which can happen very fast on their own) - see CASSANDRA-7545 It would be best to eliminate/reduce/limit the spinning memory allocation whilst not slowing down the very common un-contended case. -- This message was sent by Atlassian JIRA (v6.2#6252)
git commit: Add 'nodetool sethintedhandoffthrottlekb'
Repository: cassandra Updated Branches: refs/heads/cassandra-2.0 f498a94ce - d1c4d50ee Add 'nodetool sethintedhandoffthrottlekb' patch by lyubent; reviewed by slebresne for CASSANDRA-7635 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/d1c4d50e Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/d1c4d50e Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/d1c4d50e Branch: refs/heads/cassandra-2.0 Commit: d1c4d50ee05cb6be19d60c2e58a19b0e1fb93023 Parents: f498a94 Author: Sylvain Lebresne sylv...@datastax.com Authored: Wed Aug 6 12:47:14 2014 +0200 Committer: Sylvain Lebresne sylv...@datastax.com Committed: Wed Aug 6 12:47:14 2014 +0200 -- CHANGES.txt | 1 + src/java/org/apache/cassandra/config/DatabaseDescriptor.java | 5 + src/java/org/apache/cassandra/service/StorageService.java| 6 ++ .../org/apache/cassandra/service/StorageServiceMBean.java| 3 +++ src/java/org/apache/cassandra/tools/NodeCmd.java | 8 +++- src/java/org/apache/cassandra/tools/NodeProbe.java | 5 + src/resources/org/apache/cassandra/tools/NodeToolHelp.yaml | 3 +++ 7 files changed, 30 insertions(+), 1 deletion(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/d1c4d50e/CHANGES.txt -- diff --git a/CHANGES.txt b/CHANGES.txt index 30efd94..87b1bb3 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -1,4 +1,5 @@ 2.0.10 + * Add 'nodetool sethintedhandoffthrottlekb' (CASSANDRA-7635) * Update java driver (for hadoop) (CASSANDRA-7618) * Fix truncate to always flush (CASSANDRA-7511) * Remove shuffle and taketoken (CASSANDRA-7601) http://git-wip-us.apache.org/repos/asf/cassandra/blob/d1c4d50e/src/java/org/apache/cassandra/config/DatabaseDescriptor.java -- diff --git a/src/java/org/apache/cassandra/config/DatabaseDescriptor.java b/src/java/org/apache/cassandra/config/DatabaseDescriptor.java index 836edfd..1ca7975 100644 --- a/src/java/org/apache/cassandra/config/DatabaseDescriptor.java +++ b/src/java/org/apache/cassandra/config/DatabaseDescriptor.java @@ -1250,6 +1250,11 @@ public class DatabaseDescriptor return conf.hinted_handoff_throttle_in_kb; } +public static void setHintedHandoffThrottleInKB(Integer throttleInKB) +{ +conf.hinted_handoff_throttle_in_kb = throttleInKB; +} + public static int getBatchlogReplayThrottleInKB() { return conf.batchlog_replay_throttle_in_kb; http://git-wip-us.apache.org/repos/asf/cassandra/blob/d1c4d50e/src/java/org/apache/cassandra/service/StorageService.java -- diff --git a/src/java/org/apache/cassandra/service/StorageService.java b/src/java/org/apache/cassandra/service/StorageService.java index 97ae908..d5b5289 100644 --- a/src/java/org/apache/cassandra/service/StorageService.java +++ b/src/java/org/apache/cassandra/service/StorageService.java @@ -3832,4 +3832,10 @@ public class StorageService extends NotificationBroadcasterSupport implements IE { DatabaseDescriptor.setTombstoneFailureThreshold(threshold); } + +public void setHintedHandoffThrottleInKB(int throttleInKB) +{ +DatabaseDescriptor.setHintedHandoffThrottleInKB(throttleInKB); +logger.info(String.format(Updated hinted_handoff_throttle_in_kb to %d, throttleInKB)); +} } http://git-wip-us.apache.org/repos/asf/cassandra/blob/d1c4d50e/src/java/org/apache/cassandra/service/StorageServiceMBean.java -- diff --git a/src/java/org/apache/cassandra/service/StorageServiceMBean.java b/src/java/org/apache/cassandra/service/StorageServiceMBean.java index f578e10..6308aa5 100644 --- a/src/java/org/apache/cassandra/service/StorageServiceMBean.java +++ b/src/java/org/apache/cassandra/service/StorageServiceMBean.java @@ -505,4 +505,7 @@ public interface StorageServiceMBean extends NotificationEmitter public int getTombstoneFailureThreshold(); /** Sets the threshold for abandoning queries with many tombstones */ public void setTombstoneFailureThreshold(int tombstoneDebugThreshold); + +/** Sets the hinted handoff throttle in kb per second, per delivery thread. */ +public void setHintedHandoffThrottleInKB(int throttleInKB); } http://git-wip-us.apache.org/repos/asf/cassandra/blob/d1c4d50e/src/java/org/apache/cassandra/tools/NodeCmd.java -- diff --git a/src/java/org/apache/cassandra/tools/NodeCmd.java b/src/java/org/apache/cassandra/tools/NodeCmd.java index
[2/2] git commit: Merge commit 'd1c4d50ee05cb6be19d60c2e58a19b0e1fb93023' into cassandra-2.1.0
Merge commit 'd1c4d50ee05cb6be19d60c2e58a19b0e1fb93023' into cassandra-2.1.0 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/3726a383 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/3726a383 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/3726a383 Branch: refs/heads/cassandra-2.1.0 Commit: 3726a383d16e14f422a98f440835ecdb78df8278 Parents: a7d950e d1c4d50 Author: Sylvain Lebresne sylv...@datastax.com Authored: Wed Aug 6 12:51:43 2014 +0200 Committer: Sylvain Lebresne sylv...@datastax.com Committed: Wed Aug 6 12:51:43 2014 +0200 -- --
[jira] [Commented] (CASSANDRA-7635) Make hinted_handoff_throttle_in_kb configurable via nodetool
[ https://issues.apache.org/jira/browse/CASSANDRA-7635?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14087518#comment-14087518 ] Sylvain Lebresne commented on CASSANDRA-7635: - lgtm, committed to 2.0. Can you provide a separate patch for 2.1 since nodetool has changed substantially and the merge is not obvious? Make hinted_handoff_throttle_in_kb configurable via nodetool Key: CASSANDRA-7635 URL: https://issues.apache.org/jira/browse/CASSANDRA-7635 Project: Cassandra Issue Type: Improvement Components: Tools Reporter: Matt Stump Assignee: Lyuben Todorov Priority: Minor Fix For: 2.0.10 Attachments: cassandra-2.0-7635.diff Transfer of stored hints can peg the CPU of the node performing the sending of the hints. We have a throttle hinted_handoff_throttle_delay_in_ms, but it requires a restart. It would be helpful if this were configurable via nodetool to avoid the reboot. -- This message was sent by Atlassian JIRA (v6.2#6252)
[1/3] git commit: Add 'nodetool sethintedhandoffthrottlekb'
Repository: cassandra Updated Branches: refs/heads/cassandra-2.1 6386abc07 - 9394f0d9a Add 'nodetool sethintedhandoffthrottlekb' patch by lyubent; reviewed by slebresne for CASSANDRA-7635 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/d1c4d50e Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/d1c4d50e Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/d1c4d50e Branch: refs/heads/cassandra-2.1 Commit: d1c4d50ee05cb6be19d60c2e58a19b0e1fb93023 Parents: f498a94 Author: Sylvain Lebresne sylv...@datastax.com Authored: Wed Aug 6 12:47:14 2014 +0200 Committer: Sylvain Lebresne sylv...@datastax.com Committed: Wed Aug 6 12:47:14 2014 +0200 -- CHANGES.txt | 1 + src/java/org/apache/cassandra/config/DatabaseDescriptor.java | 5 + src/java/org/apache/cassandra/service/StorageService.java| 6 ++ .../org/apache/cassandra/service/StorageServiceMBean.java| 3 +++ src/java/org/apache/cassandra/tools/NodeCmd.java | 8 +++- src/java/org/apache/cassandra/tools/NodeProbe.java | 5 + src/resources/org/apache/cassandra/tools/NodeToolHelp.yaml | 3 +++ 7 files changed, 30 insertions(+), 1 deletion(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/d1c4d50e/CHANGES.txt -- diff --git a/CHANGES.txt b/CHANGES.txt index 30efd94..87b1bb3 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -1,4 +1,5 @@ 2.0.10 + * Add 'nodetool sethintedhandoffthrottlekb' (CASSANDRA-7635) * Update java driver (for hadoop) (CASSANDRA-7618) * Fix truncate to always flush (CASSANDRA-7511) * Remove shuffle and taketoken (CASSANDRA-7601) http://git-wip-us.apache.org/repos/asf/cassandra/blob/d1c4d50e/src/java/org/apache/cassandra/config/DatabaseDescriptor.java -- diff --git a/src/java/org/apache/cassandra/config/DatabaseDescriptor.java b/src/java/org/apache/cassandra/config/DatabaseDescriptor.java index 836edfd..1ca7975 100644 --- a/src/java/org/apache/cassandra/config/DatabaseDescriptor.java +++ b/src/java/org/apache/cassandra/config/DatabaseDescriptor.java @@ -1250,6 +1250,11 @@ public class DatabaseDescriptor return conf.hinted_handoff_throttle_in_kb; } +public static void setHintedHandoffThrottleInKB(Integer throttleInKB) +{ +conf.hinted_handoff_throttle_in_kb = throttleInKB; +} + public static int getBatchlogReplayThrottleInKB() { return conf.batchlog_replay_throttle_in_kb; http://git-wip-us.apache.org/repos/asf/cassandra/blob/d1c4d50e/src/java/org/apache/cassandra/service/StorageService.java -- diff --git a/src/java/org/apache/cassandra/service/StorageService.java b/src/java/org/apache/cassandra/service/StorageService.java index 97ae908..d5b5289 100644 --- a/src/java/org/apache/cassandra/service/StorageService.java +++ b/src/java/org/apache/cassandra/service/StorageService.java @@ -3832,4 +3832,10 @@ public class StorageService extends NotificationBroadcasterSupport implements IE { DatabaseDescriptor.setTombstoneFailureThreshold(threshold); } + +public void setHintedHandoffThrottleInKB(int throttleInKB) +{ +DatabaseDescriptor.setHintedHandoffThrottleInKB(throttleInKB); +logger.info(String.format(Updated hinted_handoff_throttle_in_kb to %d, throttleInKB)); +} } http://git-wip-us.apache.org/repos/asf/cassandra/blob/d1c4d50e/src/java/org/apache/cassandra/service/StorageServiceMBean.java -- diff --git a/src/java/org/apache/cassandra/service/StorageServiceMBean.java b/src/java/org/apache/cassandra/service/StorageServiceMBean.java index f578e10..6308aa5 100644 --- a/src/java/org/apache/cassandra/service/StorageServiceMBean.java +++ b/src/java/org/apache/cassandra/service/StorageServiceMBean.java @@ -505,4 +505,7 @@ public interface StorageServiceMBean extends NotificationEmitter public int getTombstoneFailureThreshold(); /** Sets the threshold for abandoning queries with many tombstones */ public void setTombstoneFailureThreshold(int tombstoneDebugThreshold); + +/** Sets the hinted handoff throttle in kb per second, per delivery thread. */ +public void setHintedHandoffThrottleInKB(int throttleInKB); } http://git-wip-us.apache.org/repos/asf/cassandra/blob/d1c4d50e/src/java/org/apache/cassandra/tools/NodeCmd.java -- diff --git a/src/java/org/apache/cassandra/tools/NodeCmd.java b/src/java/org/apache/cassandra/tools/NodeCmd.java index
[1/2] git commit: Add 'nodetool sethintedhandoffthrottlekb'
Repository: cassandra Updated Branches: refs/heads/cassandra-2.1.0 a7d950e36 - 3726a383d Add 'nodetool sethintedhandoffthrottlekb' patch by lyubent; reviewed by slebresne for CASSANDRA-7635 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/d1c4d50e Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/d1c4d50e Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/d1c4d50e Branch: refs/heads/cassandra-2.1.0 Commit: d1c4d50ee05cb6be19d60c2e58a19b0e1fb93023 Parents: f498a94 Author: Sylvain Lebresne sylv...@datastax.com Authored: Wed Aug 6 12:47:14 2014 +0200 Committer: Sylvain Lebresne sylv...@datastax.com Committed: Wed Aug 6 12:47:14 2014 +0200 -- CHANGES.txt | 1 + src/java/org/apache/cassandra/config/DatabaseDescriptor.java | 5 + src/java/org/apache/cassandra/service/StorageService.java| 6 ++ .../org/apache/cassandra/service/StorageServiceMBean.java| 3 +++ src/java/org/apache/cassandra/tools/NodeCmd.java | 8 +++- src/java/org/apache/cassandra/tools/NodeProbe.java | 5 + src/resources/org/apache/cassandra/tools/NodeToolHelp.yaml | 3 +++ 7 files changed, 30 insertions(+), 1 deletion(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/d1c4d50e/CHANGES.txt -- diff --git a/CHANGES.txt b/CHANGES.txt index 30efd94..87b1bb3 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -1,4 +1,5 @@ 2.0.10 + * Add 'nodetool sethintedhandoffthrottlekb' (CASSANDRA-7635) * Update java driver (for hadoop) (CASSANDRA-7618) * Fix truncate to always flush (CASSANDRA-7511) * Remove shuffle and taketoken (CASSANDRA-7601) http://git-wip-us.apache.org/repos/asf/cassandra/blob/d1c4d50e/src/java/org/apache/cassandra/config/DatabaseDescriptor.java -- diff --git a/src/java/org/apache/cassandra/config/DatabaseDescriptor.java b/src/java/org/apache/cassandra/config/DatabaseDescriptor.java index 836edfd..1ca7975 100644 --- a/src/java/org/apache/cassandra/config/DatabaseDescriptor.java +++ b/src/java/org/apache/cassandra/config/DatabaseDescriptor.java @@ -1250,6 +1250,11 @@ public class DatabaseDescriptor return conf.hinted_handoff_throttle_in_kb; } +public static void setHintedHandoffThrottleInKB(Integer throttleInKB) +{ +conf.hinted_handoff_throttle_in_kb = throttleInKB; +} + public static int getBatchlogReplayThrottleInKB() { return conf.batchlog_replay_throttle_in_kb; http://git-wip-us.apache.org/repos/asf/cassandra/blob/d1c4d50e/src/java/org/apache/cassandra/service/StorageService.java -- diff --git a/src/java/org/apache/cassandra/service/StorageService.java b/src/java/org/apache/cassandra/service/StorageService.java index 97ae908..d5b5289 100644 --- a/src/java/org/apache/cassandra/service/StorageService.java +++ b/src/java/org/apache/cassandra/service/StorageService.java @@ -3832,4 +3832,10 @@ public class StorageService extends NotificationBroadcasterSupport implements IE { DatabaseDescriptor.setTombstoneFailureThreshold(threshold); } + +public void setHintedHandoffThrottleInKB(int throttleInKB) +{ +DatabaseDescriptor.setHintedHandoffThrottleInKB(throttleInKB); +logger.info(String.format(Updated hinted_handoff_throttle_in_kb to %d, throttleInKB)); +} } http://git-wip-us.apache.org/repos/asf/cassandra/blob/d1c4d50e/src/java/org/apache/cassandra/service/StorageServiceMBean.java -- diff --git a/src/java/org/apache/cassandra/service/StorageServiceMBean.java b/src/java/org/apache/cassandra/service/StorageServiceMBean.java index f578e10..6308aa5 100644 --- a/src/java/org/apache/cassandra/service/StorageServiceMBean.java +++ b/src/java/org/apache/cassandra/service/StorageServiceMBean.java @@ -505,4 +505,7 @@ public interface StorageServiceMBean extends NotificationEmitter public int getTombstoneFailureThreshold(); /** Sets the threshold for abandoning queries with many tombstones */ public void setTombstoneFailureThreshold(int tombstoneDebugThreshold); + +/** Sets the hinted handoff throttle in kb per second, per delivery thread. */ +public void setHintedHandoffThrottleInKB(int throttleInKB); } http://git-wip-us.apache.org/repos/asf/cassandra/blob/d1c4d50e/src/java/org/apache/cassandra/tools/NodeCmd.java -- diff --git a/src/java/org/apache/cassandra/tools/NodeCmd.java b/src/java/org/apache/cassandra/tools/NodeCmd.java index
[3/3] git commit: Merge branch 'cassandra-2.1.0' into cassandra-2.1
Merge branch 'cassandra-2.1.0' into cassandra-2.1 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/9394f0d9 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/9394f0d9 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/9394f0d9 Branch: refs/heads/cassandra-2.1 Commit: 9394f0d9a81720bea20ce54939e5a6d28b8838c4 Parents: 6386abc 3726a38 Author: Sylvain Lebresne sylv...@datastax.com Authored: Wed Aug 6 12:51:58 2014 +0200 Committer: Sylvain Lebresne sylv...@datastax.com Committed: Wed Aug 6 12:51:58 2014 +0200 -- --
[2/3] git commit: Merge commit 'd1c4d50ee05cb6be19d60c2e58a19b0e1fb93023' into cassandra-2.1.0
Merge commit 'd1c4d50ee05cb6be19d60c2e58a19b0e1fb93023' into cassandra-2.1.0 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/3726a383 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/3726a383 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/3726a383 Branch: refs/heads/cassandra-2.1 Commit: 3726a383d16e14f422a98f440835ecdb78df8278 Parents: a7d950e d1c4d50 Author: Sylvain Lebresne sylv...@datastax.com Authored: Wed Aug 6 12:51:43 2014 +0200 Committer: Sylvain Lebresne sylv...@datastax.com Committed: Wed Aug 6 12:51:43 2014 +0200 -- --
[jira] [Updated] (CASSANDRA-7635) Make hinted_handoff_throttle_in_kb configurable via nodetool
[ https://issues.apache.org/jira/browse/CASSANDRA-7635?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Lyuben Todorov updated CASSANDRA-7635: -- Attachment: 0001-Allow-hinted_handoff_throttle_in_kb-to-be-configurab.patch.txt Attached. Should apply to cassandra-2.1 cleanly. Make hinted_handoff_throttle_in_kb configurable via nodetool Key: CASSANDRA-7635 URL: https://issues.apache.org/jira/browse/CASSANDRA-7635 Project: Cassandra Issue Type: Improvement Components: Tools Reporter: Matt Stump Assignee: Lyuben Todorov Priority: Minor Fix For: 2.0.10 Attachments: 0001-Allow-hinted_handoff_throttle_in_kb-to-be-configurab.patch.txt, cassandra-2.0-7635.diff Transfer of stored hints can peg the CPU of the node performing the sending of the hints. We have a throttle hinted_handoff_throttle_delay_in_ms, but it requires a restart. It would be helpful if this were configurable via nodetool to avoid the reboot. -- This message was sent by Atlassian JIRA (v6.2#6252)
[jira] [Updated] (CASSANDRA-7704) FileNotFoundException during STREAM-OUT triggers 100% CPU usage
[ https://issues.apache.org/jira/browse/CASSANDRA-7704?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Benedict updated CASSANDRA-7704: Attachment: 7704.txt Attaching a patch that I think addresses this. There are a number of concurrency bugs here, and whilst we could fix them with more advanced lock-freedom, there is no compelling reason this class doesn't use synchronized everywhere, which would probably have avoided this problem in the first place. There is only one place where the execution is not guaranteed to be prompt, and I have left this out of the synchronization. I have at the same time simplified the logic, and fixed the logic for cancelling timeouts, as well as made the scheduled executor for timeouts globally shared (there's no good reason to spinup a new executor for each set of transfers) In this particular instance the issue seems to have been a lack of atomicity between abort() and complete(); an ACK arrived at the same time as abort() was cancelling all transfers, causing a reference to be released twice. This could also occur with the timeouts, but since they occur only every 12hrs, the risk is low. FileNotFoundException during STREAM-OUT triggers 100% CPU usage --- Key: CASSANDRA-7704 URL: https://issues.apache.org/jira/browse/CASSANDRA-7704 Project: Cassandra Issue Type: Bug Reporter: Rick Branson Attachments: 7704.txt, backtrace.txt See attached backtrace which was what triggered this. This stream failed and then ~12 seconds later it emitted that exception. At that point, all CPUs went to 100%. A thread dump shows all the ReadStage threads stuck inside IntervalTree.searchInternal inside of CFS.markReferenced(). -- This message was sent by Atlassian JIRA (v6.2#6252)
[jira] [Assigned] (CASSANDRA-7704) FileNotFoundException during STREAM-OUT triggers 100% CPU usage
[ https://issues.apache.org/jira/browse/CASSANDRA-7704?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Benedict reassigned CASSANDRA-7704: --- Assignee: Benedict FileNotFoundException during STREAM-OUT triggers 100% CPU usage --- Key: CASSANDRA-7704 URL: https://issues.apache.org/jira/browse/CASSANDRA-7704 Project: Cassandra Issue Type: Bug Reporter: Rick Branson Assignee: Benedict Attachments: 7704.txt, backtrace.txt See attached backtrace which was what triggered this. This stream failed and then ~12 seconds later it emitted that exception. At that point, all CPUs went to 100%. A thread dump shows all the ReadStage threads stuck inside IntervalTree.searchInternal inside of CFS.markReferenced(). -- This message was sent by Atlassian JIRA (v6.2#6252)
[jira] [Commented] (CASSANDRA-7704) FileNotFoundException during STREAM-OUT triggers 100% CPU usage
[ https://issues.apache.org/jira/browse/CASSANDRA-7704?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14087577#comment-14087577 ] Benedict commented on CASSANDRA-7704: - [~rbranson], ftr, could we get the earlier stack traces you saw and other related info? I suspect it's possible the earlier failing transfer caused a file to be deleted prematurely, which then caused this failure. Both the same bug. FileNotFoundException during STREAM-OUT triggers 100% CPU usage --- Key: CASSANDRA-7704 URL: https://issues.apache.org/jira/browse/CASSANDRA-7704 Project: Cassandra Issue Type: Bug Reporter: Rick Branson Assignee: Benedict Attachments: 7704.txt, backtrace.txt See attached backtrace which was what triggered this. This stream failed and then ~12 seconds later it emitted that exception. At that point, all CPUs went to 100%. A thread dump shows all the ReadStage threads stuck inside IntervalTree.searchInternal inside of CFS.markReferenced(). -- This message was sent by Atlassian JIRA (v6.2#6252)
[jira] [Assigned] (CASSANDRA-6411) Issue with reading from sstable
[ https://issues.apache.org/jira/browse/CASSANDRA-6411?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Yuki Morishita reassigned CASSANDRA-6411: - Assignee: Yuki Morishita Issue with reading from sstable --- Key: CASSANDRA-6411 URL: https://issues.apache.org/jira/browse/CASSANDRA-6411 Project: Cassandra Issue Type: Bug Components: API Reporter: Mike Konobeevskiy Assignee: Yuki Morishita Attachments: 6411-log.zip, 6411-sstables.zip With Cassandra 1.2.5 this happens almost every week. {noformat} java.lang.RuntimeException: org.apache.cassandra.io.sstable.CorruptSSTableException: java.io.EOFException: EOF after 5105 bytes out of 19815 at org.apache.cassandra.service.StorageProxy$DroppableRunnable.run(StorageProxy.java:1582) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) at java.lang.Thread.run(Thread.java:724) Caused by: org.apache.cassandra.io.sstable.CorruptSSTableException: java.io.EOFException: EOF after 5105 bytes out of 19815 at org.apache.cassandra.db.columniterator.SimpleSliceReader.init(SimpleSliceReader.java:91) at org.apache.cassandra.db.columniterator.SSTableSliceIterator.createReader(SSTableSliceIterator.java:68) at org.apache.cassandra.db.columniterator.SSTableSliceIterator.init(SSTableSliceIterator.java:44) at org.apache.cassandra.db.filter.SliceQueryFilter.getSSTableColumnIterator(SliceQueryFilter.java:101) at org.apache.cassandra.db.filter.QueryFilter.getSSTableColumnIterator(QueryFilter.java:68) at org.apache.cassandra.db.CollationController.collectAllData(CollationController.java:274) at org.apache.cassandra.db.CollationController.getTopLevelColumns(CollationController.java:65) at org.apache.cassandra.db.ColumnFamilyStore.getTopLevelColumns(ColumnFamilyStore.java:1357) at org.apache.cassandra.db.ColumnFamilyStore.getColumnFamily(ColumnFamilyStore.java:1214) at org.apache.cassandra.db.ColumnFamilyStore.getColumnFamily(ColumnFamilyStore.java:1126) at org.apache.cassandra.db.Table.getRow(Table.java:347) at org.apache.cassandra.db.SliceFromReadCommand.getRow(SliceFromReadCommand.java:70) at org.apache.cassandra.service.StorageProxy$LocalReadRunnable.runMayThrow(StorageProxy.java:1052) at org.apache.cassandra.service.StorageProxy$DroppableRunnable.run(StorageProxy.java:1578) ... 3 more Caused by: java.io.EOFException: EOF after 5105 bytes out of 19815 at org.apache.cassandra.io.util.FileUtils.skipBytesFully(FileUtils.java:350) at org.apache.cassandra.utils.ByteBufferUtil.skipShortLength(ByteBufferUtil.java:382) at org.apache.cassandra.db.columniterator.SimpleSliceReader.init(SimpleSliceReader.java:72) ... 16 more {noformat} This is occurring roughly weekly with quite minimal usage. Recreation of CF does not help. -- This message was sent by Atlassian JIRA (v6.2#6252)
[jira] [Commented] (CASSANDRA-7398) Missing flexibility to have file://server/etc vs. file:/// when loading config file cassandra.yaml
[ https://issues.apache.org/jira/browse/CASSANDRA-7398?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14087610#comment-14087610 ] Lyuben Todorov commented on CASSANDRA-7398: --- +1 on v9. I think trying to handle various URL formats like {{file:/}}, {{file:///}} etc. is too error prone. Sticking with what we have and erroring out correctly seems like the right approach here. /cc [~JoshuaMcKenzie][~totopo_loco] Missing flexibility to have file://server/etc vs. file:/// when loading config file cassandra.yaml -- Key: CASSANDRA-7398 URL: https://issues.apache.org/jira/browse/CASSANDRA-7398 Project: Cassandra Issue Type: Bug Components: Core Environment: Cassandra 2.1.0-rc1-SNAPSHOT, Win 7 Reporter: Marco Tulio Avila CerĂłn Assignee: Marco Tulio Avila CerĂłn Priority: Minor Labels: lhf, patch Fix For: 2.1.1 Attachments: 7398_v9.txt, CASSANDRA-7398_prefix_v2.patch, CASSANDRA-7398_prefix_v3.patch, CASSANDRA-7398_prefix_v4.patch, trunk-7398_v5.txt, trunk-7398_v6.txt, trunk-7398_v7.txt, trunk-7398_v8.txt, trunk-7398_v8_impl.txt, trunk-7398_v8_test.txt Original Estimate: 2h Remaining Estimate: 2h The parameter in the VM options -Dcassandra.config= needs file:/// Allow the user to have optional file:/// when loading the config file from the filesystem -- This message was sent by Atlassian JIRA (v6.2#6252)
[jira] [Updated] (CASSANDRA-7695) Inserting the same row in parallel causes bad data to be returned to the client
[ https://issues.apache.org/jira/browse/CASSANDRA-7695?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] T Jake Luciani updated CASSANDRA-7695: -- Fix Version/s: 2.1.0 Inserting the same row in parallel causes bad data to be returned to the client --- Key: CASSANDRA-7695 URL: https://issues.apache.org/jira/browse/CASSANDRA-7695 Project: Cassandra Issue Type: Bug Environment: Linux 3.12.21, JVM 1.7u60 Cassandra server 2.1.0 RC 5 Cassandra datastax client version 2.1.0RC1 Reporter: Johan Bjork Assignee: Aleksey Yeschenko Priority: Critical Fix For: 2.1.0 Attachments: PutFailureRepro.java, bad-data-tid43-get, bad-data-tid43-put Running the attached test program against a cassandra 2.1 server results in scrambled data returned by the SELECT statement. Running it against latest stable works fine. Attached: * Program that reproduces the failure * Example output files from mentioned test-program with the scrambled output. Failure mode: The value returned by 'get' is scrambled, the size is correct but some bytes have shifted locations in the returned buffer. Cluster info: For the test we set up a single cassandra node using the stock configuration file. -- This message was sent by Atlassian JIRA (v6.2#6252)
[jira] [Created] (CASSANDRA-7705) Safer Resource Management
Benedict created CASSANDRA-7705: --- Summary: Safer Resource Management Key: CASSANDRA-7705 URL: https://issues.apache.org/jira/browse/CASSANDRA-7705 Project: Cassandra Issue Type: Improvement Components: Core Reporter: Benedict Fix For: 3.0 We've had a spate of bugs recently with bad reference counting. these can have potentially dire consequences, generally either randomly deleting data or giving us infinite loops. Since in 2.1 we only reference count resources that are relatively expensive and infrequently managed, we could without any negative consequences (and only slight code complexity) introduce a safer resource management scheme. Basically, I propose when we want to acquire a resource we allocate an object that manages the reference. This can only be released once; if it is released twice, we fail immediately at the second release, reporting where the bug is (rather than letting it continue fine until the next correct release corrupts the count). The reference counter remains the same, but we obtain guarantees that the reference count itself is never badly maintained, although code using it could mistakenly release its own handle early (typically this is only an issue when cleaning up after a failure, in which case under the new scheme this would be an innocuous error) -- This message was sent by Atlassian JIRA (v6.2#6252)
[jira] [Updated] (CASSANDRA-7705) Safer Resource Management
[ https://issues.apache.org/jira/browse/CASSANDRA-7705?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Benedict updated CASSANDRA-7705: Description: We've had a spate of bugs recently with bad reference counting. these can have potentially dire consequences, generally either randomly deleting data or giving us infinite loops. Since in 2.1 we only reference count resources that are relatively expensive and infrequently managed (or in places where this safety is probably not as necessary, e.g. SerializingCache), we could without any negative consequences (and only slight code complexity) introduce a safer resource management scheme for these more expensive/infrequent actions. Basically, I propose when we want to acquire a resource we allocate an object that manages the reference. This can only be released once; if it is released twice, we fail immediately at the second release, reporting where the bug is (rather than letting it continue fine until the next correct release corrupts the count). The reference counter remains the same, but we obtain guarantees that the reference count itself is never badly maintained, although code using it could mistakenly release its own handle early (typically this is only an issue when cleaning up after a failure, in which case under the new scheme this would be an innocuous error) was: We've had a spate of bugs recently with bad reference counting. these can have potentially dire consequences, generally either randomly deleting data or giving us infinite loops. Since in 2.1 we only reference count resources that are relatively expensive and infrequently managed, we could without any negative consequences (and only slight code complexity) introduce a safer resource management scheme. Basically, I propose when we want to acquire a resource we allocate an object that manages the reference. This can only be released once; if it is released twice, we fail immediately at the second release, reporting where the bug is (rather than letting it continue fine until the next correct release corrupts the count). The reference counter remains the same, but we obtain guarantees that the reference count itself is never badly maintained, although code using it could mistakenly release its own handle early (typically this is only an issue when cleaning up after a failure, in which case under the new scheme this would be an innocuous error) Safer Resource Management - Key: CASSANDRA-7705 URL: https://issues.apache.org/jira/browse/CASSANDRA-7705 Project: Cassandra Issue Type: Improvement Components: Core Reporter: Benedict Fix For: 3.0 We've had a spate of bugs recently with bad reference counting. these can have potentially dire consequences, generally either randomly deleting data or giving us infinite loops. Since in 2.1 we only reference count resources that are relatively expensive and infrequently managed (or in places where this safety is probably not as necessary, e.g. SerializingCache), we could without any negative consequences (and only slight code complexity) introduce a safer resource management scheme for these more expensive/infrequent actions. Basically, I propose when we want to acquire a resource we allocate an object that manages the reference. This can only be released once; if it is released twice, we fail immediately at the second release, reporting where the bug is (rather than letting it continue fine until the next correct release corrupts the count). The reference counter remains the same, but we obtain guarantees that the reference count itself is never badly maintained, although code using it could mistakenly release its own handle early (typically this is only an issue when cleaning up after a failure, in which case under the new scheme this would be an innocuous error) -- This message was sent by Atlassian JIRA (v6.2#6252)
[jira] [Resolved] (CASSANDRA-7011) auth_test system_auth_ks_is_alterable_test dtest hangs in 2.1 and 2.0
[ https://issues.apache.org/jira/browse/CASSANDRA-7011?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Philip Thompson resolved CASSANDRA-7011. Resolution: Fixed auth_test system_auth_ks_is_alterable_test dtest hangs in 2.1 and 2.0 - Key: CASSANDRA-7011 URL: https://issues.apache.org/jira/browse/CASSANDRA-7011 Project: Cassandra Issue Type: Test Components: Tests Reporter: Michael Shuler Assignee: Philip Thompson Labels: qa-resolved Fix For: 2.0.10 Attachments: node1_system.log-7011.txt This test hangs forever. When I hit ctl-c after running the test, then the ccm nodes actually continue running - I think ccm is looking for log lines that never occur until the test is killed(?). {noformat} $ export MAX_HEAP_SIZE=1G; export HEAP_NEWSIZE=256M; ENABLE_VNODES=true PRINT_DEBUG=true nosetests --nocapture --nologcapture --verbosity=3 auth_test.py:TestAuth.system_auth_ks_is_alterable_test nose.config: INFO: Ignoring files matching ['^\\.', '^_', '^setup\\.py$'] system_auth_ks_is_alterable_test (auth_test.TestAuth) ... cluster ccm directory: /tmp/dtest-O3AAJr ^C {noformat} Search for (hanging here) below - I typed this prior to hitting ctl-c. Then the nodes start running again and I see Listening for thrift clients later on. {noformat} mshuler@hana:~$ tail -f /tmp/dtest-O3AAJr/test/node*/logs/system.log == /tmp/dtest-O3AAJr/test/node1/logs/system.log == INFO [MemtableFlushWriter:2] 2014-04-08 16:45:12,599 Memtable.java:344 - Writing Memtable-schema_columnfamilies@1792243696(1627 serialized bytes, 27 ops, 0%/0% of on/off-heap limit) INFO [CompactionExecutor:2] 2014-04-08 16:45:12,603 CompactionTask.java:287 - Compacted 4 sstables to [/tmp/dtest-O3AAJr/test/node1/data/system/schema_columns-296e9c049bec3085827dc17d3df2122a/system-schema_columns-ka-13,]. 14,454 bytes to 11,603 (~80% of original) in 105ms = 0.105386MB/s. 7 total partitions merged to 3. Partition merge counts were {1:1, 2:1, 4:1, } INFO [MemtableFlushWriter:2] 2014-04-08 16:45:12,668 Memtable.java:378 - Completed flushing /tmp/dtest-O3AAJr/test/node1/flush/system/schema_columnfamilies-45f5b36024bc3f83a3631034ea4fa697/system-schema_columnfamilies-ka-14-Data.db (956 bytes) for commitlog position ReplayPosition(segmentId=1396993504671, position=193292) INFO [MigrationStage:1] 2014-04-08 16:45:12,669 ColumnFamilyStore.java:853 - Enqueuing flush of schema_columns: 6806 (0%) on-heap, 0 (0%) off-heap INFO [MemtableFlushWriter:1] 2014-04-08 16:45:12,670 Memtable.java:344 - Writing Memtable-schema_columns@352928691(1014 serialized bytes, 21 ops, 0%/0% of on/off-heap limit) INFO [CompactionExecutor:1] 2014-04-08 16:45:12,672 CompactionTask.java:287 - Compacted 4 sstables to [/tmp/dtest-O3AAJr/test/node1/data/system/schema_keyspaces-b0f2235744583cdb9631c43e59ce3676/system-schema_keyspaces-ka-17,]. 710 bytes to 233 (~32% of original) in 70ms = 0.003174MB/s. 6 total partitions merged to 3. Partition merge counts were {1:2, 4:1, } INFO [MemtableFlushWriter:1] 2014-04-08 16:45:12,721 Memtable.java:378 - Completed flushing /tmp/dtest-O3AAJr/test/node1/flush/system/schema_columns-296e9c049bec3085827dc17d3df2122a/system-schema_columns-ka-14-Data.db (435 bytes) for commitlog position ReplayPosition(segmentId=1396993504671, position=193830) WARN [NonPeriodicTasks:1] 2014-04-08 16:45:20,566 FBUtilities.java:359 - Trigger directory doesn't exist, please create it and try again. INFO [NonPeriodicTasks:1] 2014-04-08 16:45:20,570 PasswordAuthenticator.java:220 - PasswordAuthenticator created default user 'cassandra' INFO [NonPeriodicTasks:1] 2014-04-08 16:45:21,806 Auth.java:232 - Created default superuser 'cassandra' == /tmp/dtest-O3AAJr/test/node2/logs/system.log == INFO [InternalResponseStage:4] 2014-04-08 16:45:12,214 ColumnFamilyStore.java:853 - Enqueuing flush of schema_keyspaces: 1004 (0%) on-heap, 0 (0%) off-heap INFO [MemtableFlushWriter:1] 2014-04-08 16:45:12,215 Memtable.java:344 - Writing Memtable-schema_keyspaces@781373873(276 serialized bytes, 6 ops, 0%/0% of on/off-heap limit) INFO [MemtableFlushWriter:1] 2014-04-08 16:45:12,295 Memtable.java:378 - Completed flushing /tmp/dtest-O3AAJr/test/node2/flush/system/schema_keyspaces-b0f2235744583cdb9631c43e59ce3676/system-schema_keyspaces-ka-15-Data.db (179 bytes) for commitlog position ReplayPosition(segmentId=1396993504760, position=243552) INFO [InternalResponseStage:4] 2014-04-08 16:45:12,296 ColumnFamilyStore.java:853 - Enqueuing flush of schema_columnfamilies: 34190 (0%) on-heap, 0 (0%) off-heap INFO [MemtableFlushWriter:2] 2014-04-08 16:45:12,297 Memtable.java:344 - Writing
[jira] [Commented] (CASSANDRA-7011) auth_test system_auth_ks_is_alterable_test dtest hangs in 2.1 and 2.0
[ https://issues.apache.org/jira/browse/CASSANDRA-7011?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14087684#comment-14087684 ] Philip Thompson commented on CASSANDRA-7011: Fixed with the following commit to ccm: https://github.com/pcmanus/ccm/commit/f7ce5d5cc2aa3e6e1864a547e237e5eeb3b3ca0f auth_test system_auth_ks_is_alterable_test dtest hangs in 2.1 and 2.0 - Key: CASSANDRA-7011 URL: https://issues.apache.org/jira/browse/CASSANDRA-7011 Project: Cassandra Issue Type: Test Components: Tests Reporter: Michael Shuler Assignee: Philip Thompson Labels: qa-resolved Fix For: 2.0.10 Attachments: node1_system.log-7011.txt This test hangs forever. When I hit ctl-c after running the test, then the ccm nodes actually continue running - I think ccm is looking for log lines that never occur until the test is killed(?). {noformat} $ export MAX_HEAP_SIZE=1G; export HEAP_NEWSIZE=256M; ENABLE_VNODES=true PRINT_DEBUG=true nosetests --nocapture --nologcapture --verbosity=3 auth_test.py:TestAuth.system_auth_ks_is_alterable_test nose.config: INFO: Ignoring files matching ['^\\.', '^_', '^setup\\.py$'] system_auth_ks_is_alterable_test (auth_test.TestAuth) ... cluster ccm directory: /tmp/dtest-O3AAJr ^C {noformat} Search for (hanging here) below - I typed this prior to hitting ctl-c. Then the nodes start running again and I see Listening for thrift clients later on. {noformat} mshuler@hana:~$ tail -f /tmp/dtest-O3AAJr/test/node*/logs/system.log == /tmp/dtest-O3AAJr/test/node1/logs/system.log == INFO [MemtableFlushWriter:2] 2014-04-08 16:45:12,599 Memtable.java:344 - Writing Memtable-schema_columnfamilies@1792243696(1627 serialized bytes, 27 ops, 0%/0% of on/off-heap limit) INFO [CompactionExecutor:2] 2014-04-08 16:45:12,603 CompactionTask.java:287 - Compacted 4 sstables to [/tmp/dtest-O3AAJr/test/node1/data/system/schema_columns-296e9c049bec3085827dc17d3df2122a/system-schema_columns-ka-13,]. 14,454 bytes to 11,603 (~80% of original) in 105ms = 0.105386MB/s. 7 total partitions merged to 3. Partition merge counts were {1:1, 2:1, 4:1, } INFO [MemtableFlushWriter:2] 2014-04-08 16:45:12,668 Memtable.java:378 - Completed flushing /tmp/dtest-O3AAJr/test/node1/flush/system/schema_columnfamilies-45f5b36024bc3f83a3631034ea4fa697/system-schema_columnfamilies-ka-14-Data.db (956 bytes) for commitlog position ReplayPosition(segmentId=1396993504671, position=193292) INFO [MigrationStage:1] 2014-04-08 16:45:12,669 ColumnFamilyStore.java:853 - Enqueuing flush of schema_columns: 6806 (0%) on-heap, 0 (0%) off-heap INFO [MemtableFlushWriter:1] 2014-04-08 16:45:12,670 Memtable.java:344 - Writing Memtable-schema_columns@352928691(1014 serialized bytes, 21 ops, 0%/0% of on/off-heap limit) INFO [CompactionExecutor:1] 2014-04-08 16:45:12,672 CompactionTask.java:287 - Compacted 4 sstables to [/tmp/dtest-O3AAJr/test/node1/data/system/schema_keyspaces-b0f2235744583cdb9631c43e59ce3676/system-schema_keyspaces-ka-17,]. 710 bytes to 233 (~32% of original) in 70ms = 0.003174MB/s. 6 total partitions merged to 3. Partition merge counts were {1:2, 4:1, } INFO [MemtableFlushWriter:1] 2014-04-08 16:45:12,721 Memtable.java:378 - Completed flushing /tmp/dtest-O3AAJr/test/node1/flush/system/schema_columns-296e9c049bec3085827dc17d3df2122a/system-schema_columns-ka-14-Data.db (435 bytes) for commitlog position ReplayPosition(segmentId=1396993504671, position=193830) WARN [NonPeriodicTasks:1] 2014-04-08 16:45:20,566 FBUtilities.java:359 - Trigger directory doesn't exist, please create it and try again. INFO [NonPeriodicTasks:1] 2014-04-08 16:45:20,570 PasswordAuthenticator.java:220 - PasswordAuthenticator created default user 'cassandra' INFO [NonPeriodicTasks:1] 2014-04-08 16:45:21,806 Auth.java:232 - Created default superuser 'cassandra' == /tmp/dtest-O3AAJr/test/node2/logs/system.log == INFO [InternalResponseStage:4] 2014-04-08 16:45:12,214 ColumnFamilyStore.java:853 - Enqueuing flush of schema_keyspaces: 1004 (0%) on-heap, 0 (0%) off-heap INFO [MemtableFlushWriter:1] 2014-04-08 16:45:12,215 Memtable.java:344 - Writing Memtable-schema_keyspaces@781373873(276 serialized bytes, 6 ops, 0%/0% of on/off-heap limit) INFO [MemtableFlushWriter:1] 2014-04-08 16:45:12,295 Memtable.java:378 - Completed flushing /tmp/dtest-O3AAJr/test/node2/flush/system/schema_keyspaces-b0f2235744583cdb9631c43e59ce3676/system-schema_keyspaces-ka-15-Data.db (179 bytes) for commitlog position ReplayPosition(segmentId=1396993504760, position=243552) INFO [InternalResponseStage:4] 2014-04-08 16:45:12,296 ColumnFamilyStore.java:853 - Enqueuing flush of schema_columnfamilies: 34190
[jira] [Updated] (CASSANDRA-7011) auth_test system_auth_ks_is_alterable_test dtest hangs in 2.1 and 2.0
[ https://issues.apache.org/jira/browse/CASSANDRA-7011?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Philip Thompson updated CASSANDRA-7011: --- Labels: qa-resolved (was: ) auth_test system_auth_ks_is_alterable_test dtest hangs in 2.1 and 2.0 - Key: CASSANDRA-7011 URL: https://issues.apache.org/jira/browse/CASSANDRA-7011 Project: Cassandra Issue Type: Test Components: Tests Reporter: Michael Shuler Assignee: Philip Thompson Labels: qa-resolved Fix For: 2.0.10 Attachments: node1_system.log-7011.txt This test hangs forever. When I hit ctl-c after running the test, then the ccm nodes actually continue running - I think ccm is looking for log lines that never occur until the test is killed(?). {noformat} $ export MAX_HEAP_SIZE=1G; export HEAP_NEWSIZE=256M; ENABLE_VNODES=true PRINT_DEBUG=true nosetests --nocapture --nologcapture --verbosity=3 auth_test.py:TestAuth.system_auth_ks_is_alterable_test nose.config: INFO: Ignoring files matching ['^\\.', '^_', '^setup\\.py$'] system_auth_ks_is_alterable_test (auth_test.TestAuth) ... cluster ccm directory: /tmp/dtest-O3AAJr ^C {noformat} Search for (hanging here) below - I typed this prior to hitting ctl-c. Then the nodes start running again and I see Listening for thrift clients later on. {noformat} mshuler@hana:~$ tail -f /tmp/dtest-O3AAJr/test/node*/logs/system.log == /tmp/dtest-O3AAJr/test/node1/logs/system.log == INFO [MemtableFlushWriter:2] 2014-04-08 16:45:12,599 Memtable.java:344 - Writing Memtable-schema_columnfamilies@1792243696(1627 serialized bytes, 27 ops, 0%/0% of on/off-heap limit) INFO [CompactionExecutor:2] 2014-04-08 16:45:12,603 CompactionTask.java:287 - Compacted 4 sstables to [/tmp/dtest-O3AAJr/test/node1/data/system/schema_columns-296e9c049bec3085827dc17d3df2122a/system-schema_columns-ka-13,]. 14,454 bytes to 11,603 (~80% of original) in 105ms = 0.105386MB/s. 7 total partitions merged to 3. Partition merge counts were {1:1, 2:1, 4:1, } INFO [MemtableFlushWriter:2] 2014-04-08 16:45:12,668 Memtable.java:378 - Completed flushing /tmp/dtest-O3AAJr/test/node1/flush/system/schema_columnfamilies-45f5b36024bc3f83a3631034ea4fa697/system-schema_columnfamilies-ka-14-Data.db (956 bytes) for commitlog position ReplayPosition(segmentId=1396993504671, position=193292) INFO [MigrationStage:1] 2014-04-08 16:45:12,669 ColumnFamilyStore.java:853 - Enqueuing flush of schema_columns: 6806 (0%) on-heap, 0 (0%) off-heap INFO [MemtableFlushWriter:1] 2014-04-08 16:45:12,670 Memtable.java:344 - Writing Memtable-schema_columns@352928691(1014 serialized bytes, 21 ops, 0%/0% of on/off-heap limit) INFO [CompactionExecutor:1] 2014-04-08 16:45:12,672 CompactionTask.java:287 - Compacted 4 sstables to [/tmp/dtest-O3AAJr/test/node1/data/system/schema_keyspaces-b0f2235744583cdb9631c43e59ce3676/system-schema_keyspaces-ka-17,]. 710 bytes to 233 (~32% of original) in 70ms = 0.003174MB/s. 6 total partitions merged to 3. Partition merge counts were {1:2, 4:1, } INFO [MemtableFlushWriter:1] 2014-04-08 16:45:12,721 Memtable.java:378 - Completed flushing /tmp/dtest-O3AAJr/test/node1/flush/system/schema_columns-296e9c049bec3085827dc17d3df2122a/system-schema_columns-ka-14-Data.db (435 bytes) for commitlog position ReplayPosition(segmentId=1396993504671, position=193830) WARN [NonPeriodicTasks:1] 2014-04-08 16:45:20,566 FBUtilities.java:359 - Trigger directory doesn't exist, please create it and try again. INFO [NonPeriodicTasks:1] 2014-04-08 16:45:20,570 PasswordAuthenticator.java:220 - PasswordAuthenticator created default user 'cassandra' INFO [NonPeriodicTasks:1] 2014-04-08 16:45:21,806 Auth.java:232 - Created default superuser 'cassandra' == /tmp/dtest-O3AAJr/test/node2/logs/system.log == INFO [InternalResponseStage:4] 2014-04-08 16:45:12,214 ColumnFamilyStore.java:853 - Enqueuing flush of schema_keyspaces: 1004 (0%) on-heap, 0 (0%) off-heap INFO [MemtableFlushWriter:1] 2014-04-08 16:45:12,215 Memtable.java:344 - Writing Memtable-schema_keyspaces@781373873(276 serialized bytes, 6 ops, 0%/0% of on/off-heap limit) INFO [MemtableFlushWriter:1] 2014-04-08 16:45:12,295 Memtable.java:378 - Completed flushing /tmp/dtest-O3AAJr/test/node2/flush/system/schema_keyspaces-b0f2235744583cdb9631c43e59ce3676/system-schema_keyspaces-ka-15-Data.db (179 bytes) for commitlog position ReplayPosition(segmentId=1396993504760, position=243552) INFO [InternalResponseStage:4] 2014-04-08 16:45:12,296 ColumnFamilyStore.java:853 - Enqueuing flush of schema_columnfamilies: 34190 (0%) on-heap, 0 (0%) off-heap INFO [MemtableFlushWriter:2] 2014-04-08 16:45:12,297 Memtable.java:344 - Writing
[jira] [Commented] (CASSANDRA-7700) Unexpected exception in RangeTombstoneList.insertFrom during Python Driver Duration Test
[ https://issues.apache.org/jira/browse/CASSANDRA-7700?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14087688#comment-14087688 ] Sylvain Lebresne commented on CASSANDRA-7700: - Could you point to the duration test that was run exactly? To at least know the kind of operation involved. Unexpected exception in RangeTombstoneList.insertFrom during Python Driver Duration Test Key: CASSANDRA-7700 URL: https://issues.apache.org/jira/browse/CASSANDRA-7700 Project: Cassandra Issue Type: Bug Environment: ubuntu via ctool. Linux ip-10-199-0-152 3.2.0-57-virtual #87-Ubuntu SMP Tue Nov 12 21:53:49 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux Reporter: Rick Smith Assignee: Sylvain Lebresne Fix For: 2.1.0 Attachments: Tombstone_Exception.txt Found the attached exception (duration test log and associated Cassandra log) when running the Python driver duration tests against CASSANDRA_VERSION=cassandra-2.1.0-rc5 and master branch of driver. Error repeated in logs twice over 12 hours on master_gevent cluster, and once on gevent cluster over the same time period. Cluster and associated cluster setup via ctool. Log excerpt: INFO [MemtableFlushWriter:184] 2014-08-05 05:45:39,161 Memtable.java:360 - Completed flushing /srv/performance/cass/data/duration_test/ints-133f8c901c2f11e491e66b1b73f81641/duration_test-ints-ka-173-Data.db (2131716 bytes) for commitlog position ReplayPosition(segmentId=1407193910537, position=13460548) ERROR [SharedPool-Worker-7] 2014-08-05 05:45:45,160 ErrorMessage.java:218 - Unexpected exception during request java.lang.AssertionError: null at org.apache.cassandra.db.RangeTombstoneList.insertFrom(RangeTombstoneList.java:528) ~[main/:na] at org.apache.cassandra.db.RangeTombstoneList.addAll(RangeTombstoneList.java:221) ~[main/:na] more details in attachment. -- This message was sent by Atlassian JIRA (v6.2#6252)
[2/9] git commit: Merge commit 'd1c4d50ee05cb6be19d60c2e58a19b0e1fb93023' into cassandra-2.1.0
Merge commit 'd1c4d50ee05cb6be19d60c2e58a19b0e1fb93023' into cassandra-2.1.0 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/3726a383 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/3726a383 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/3726a383 Branch: refs/heads/trunk Commit: 3726a383d16e14f422a98f440835ecdb78df8278 Parents: a7d950e d1c4d50 Author: Sylvain Lebresne sylv...@datastax.com Authored: Wed Aug 6 12:51:43 2014 +0200 Committer: Sylvain Lebresne sylv...@datastax.com Committed: Wed Aug 6 12:51:43 2014 +0200 -- --
[1/9] git commit: Add 'nodetool sethintedhandoffthrottlekb'
Repository: cassandra Updated Branches: refs/heads/cassandra-2.0 d1c4d50ee - f83909e04 refs/heads/cassandra-2.1 9394f0d9a - 7fc89ad7f refs/heads/trunk 774f3acbf - 94cfec89b Add 'nodetool sethintedhandoffthrottlekb' patch by lyubent; reviewed by slebresne for CASSANDRA-7635 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/d1c4d50e Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/d1c4d50e Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/d1c4d50e Branch: refs/heads/trunk Commit: d1c4d50ee05cb6be19d60c2e58a19b0e1fb93023 Parents: f498a94 Author: Sylvain Lebresne sylv...@datastax.com Authored: Wed Aug 6 12:47:14 2014 +0200 Committer: Sylvain Lebresne sylv...@datastax.com Committed: Wed Aug 6 12:47:14 2014 +0200 -- CHANGES.txt | 1 + src/java/org/apache/cassandra/config/DatabaseDescriptor.java | 5 + src/java/org/apache/cassandra/service/StorageService.java| 6 ++ .../org/apache/cassandra/service/StorageServiceMBean.java| 3 +++ src/java/org/apache/cassandra/tools/NodeCmd.java | 8 +++- src/java/org/apache/cassandra/tools/NodeProbe.java | 5 + src/resources/org/apache/cassandra/tools/NodeToolHelp.yaml | 3 +++ 7 files changed, 30 insertions(+), 1 deletion(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/d1c4d50e/CHANGES.txt -- diff --git a/CHANGES.txt b/CHANGES.txt index 30efd94..87b1bb3 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -1,4 +1,5 @@ 2.0.10 + * Add 'nodetool sethintedhandoffthrottlekb' (CASSANDRA-7635) * Update java driver (for hadoop) (CASSANDRA-7618) * Fix truncate to always flush (CASSANDRA-7511) * Remove shuffle and taketoken (CASSANDRA-7601) http://git-wip-us.apache.org/repos/asf/cassandra/blob/d1c4d50e/src/java/org/apache/cassandra/config/DatabaseDescriptor.java -- diff --git a/src/java/org/apache/cassandra/config/DatabaseDescriptor.java b/src/java/org/apache/cassandra/config/DatabaseDescriptor.java index 836edfd..1ca7975 100644 --- a/src/java/org/apache/cassandra/config/DatabaseDescriptor.java +++ b/src/java/org/apache/cassandra/config/DatabaseDescriptor.java @@ -1250,6 +1250,11 @@ public class DatabaseDescriptor return conf.hinted_handoff_throttle_in_kb; } +public static void setHintedHandoffThrottleInKB(Integer throttleInKB) +{ +conf.hinted_handoff_throttle_in_kb = throttleInKB; +} + public static int getBatchlogReplayThrottleInKB() { return conf.batchlog_replay_throttle_in_kb; http://git-wip-us.apache.org/repos/asf/cassandra/blob/d1c4d50e/src/java/org/apache/cassandra/service/StorageService.java -- diff --git a/src/java/org/apache/cassandra/service/StorageService.java b/src/java/org/apache/cassandra/service/StorageService.java index 97ae908..d5b5289 100644 --- a/src/java/org/apache/cassandra/service/StorageService.java +++ b/src/java/org/apache/cassandra/service/StorageService.java @@ -3832,4 +3832,10 @@ public class StorageService extends NotificationBroadcasterSupport implements IE { DatabaseDescriptor.setTombstoneFailureThreshold(threshold); } + +public void setHintedHandoffThrottleInKB(int throttleInKB) +{ +DatabaseDescriptor.setHintedHandoffThrottleInKB(throttleInKB); +logger.info(String.format(Updated hinted_handoff_throttle_in_kb to %d, throttleInKB)); +} } http://git-wip-us.apache.org/repos/asf/cassandra/blob/d1c4d50e/src/java/org/apache/cassandra/service/StorageServiceMBean.java -- diff --git a/src/java/org/apache/cassandra/service/StorageServiceMBean.java b/src/java/org/apache/cassandra/service/StorageServiceMBean.java index f578e10..6308aa5 100644 --- a/src/java/org/apache/cassandra/service/StorageServiceMBean.java +++ b/src/java/org/apache/cassandra/service/StorageServiceMBean.java @@ -505,4 +505,7 @@ public interface StorageServiceMBean extends NotificationEmitter public int getTombstoneFailureThreshold(); /** Sets the threshold for abandoning queries with many tombstones */ public void setTombstoneFailureThreshold(int tombstoneDebugThreshold); + +/** Sets the hinted handoff throttle in kb per second, per delivery thread. */ +public void setHintedHandoffThrottleInKB(int throttleInKB); } http://git-wip-us.apache.org/repos/asf/cassandra/blob/d1c4d50e/src/java/org/apache/cassandra/tools/NodeCmd.java -- diff --git
[7/9] git commit: Merge branch 'cassandra-2.0' into cassandra-2.1
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/7fc89ad7 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/7fc89ad7 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/7fc89ad7 Branch: refs/heads/trunk Commit: 7fc89ad7f59865a52a49a80208be3fd7a69ef74c Parents: 9394f0d f83909e Author: Brandon Williams brandonwilli...@apache.org Authored: Wed Aug 6 09:08:31 2014 -0500 Committer: Brandon Williams brandonwilli...@apache.org Committed: Wed Aug 6 09:08:31 2014 -0500 -- CHANGES.txt | 2 ++ .../cassandra/hadoop/cql3/CqlInputFormat.java| 19 +++ 2 files changed, 13 insertions(+), 8 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/7fc89ad7/CHANGES.txt -- diff --cc CHANGES.txt index c698385,dcc5bf8..410cc69 --- a/CHANGES.txt +++ b/CHANGES.txt @@@ -1,88 -1,14 +1,90 @@@ -2.0.10 +2.1.1 + * Avoid IOOBE when building SyntaxError message snippet (CASSANDRA-7569) + * SSTableExport uses correct validator to create string representation of partition + keys (CASSANDRA-7498) + * Avoid NPEs when receiving type changes for an unknown keyspace (CASSANDRA-7689) + * Add support for custom 2i validation (CASSANDRA-7575) + * Pig support for hadoop CqlInputFormat (CASSANDRA-6454) + * Add listen_interface and rpc_interface options (CASSANDRA-7417) + * Improve schema merge performance (CASSANDRA-7444) + * Adjust MT depth based on # of partition validating (CASSANDRA-5263) + * Optimise NativeCell comparisons (CASSANDRA-6755) + * Configurable client timeout for cqlsh (CASSANDRA-7516) + * Include snippet of CQL query near syntax error in messages (CASSANDRA-7111) +Merged from 2.0: + * Fix IncompatibleClassChangeError from hadoop2 (CASSANDRA-7229) + * Add 'nodetool sethintedhandoffthrottlekb' (CASSANDRA-7635) + * (cqlsh) Add tab-completion for CREATE/DROP USER IF [NOT] EXISTS (CASSANDRA-7611) + * Catch errors when the JVM pulls the rug out from GCInspector (CASSANDRA-5345) + * cqlsh fails when version number parts are not int (CASSANDRA-7524) + + +2.1.0-final + * cqlsh DESC CLUSTER fails retrieving ring information (CASSANDRA-7687) + * Fix binding null values inside UDT (CASSANDRA-7685) + * Fix UDT field selection with empty fields (CASSANDRA-7670) + * Bogus deserialization of static cells from sstable (CASSANDRA-7684) +Merged from 2.0: + * Add stop method to EmbeddedCassandraService (CASSANDRA-7595) * Update java driver (for hadoop) (CASSANDRA-7618) - * Fix truncate to always flush (CASSANDRA-7511) + * Support connecting to ipv6 jmx with nodetool (CASSANDRA-7669) + + +2.1.0-rc5 + * Reject counters inside user types (CASSANDRA-7672) + * Switch to notification-based GCInspector (CASSANDRA-7638) + * (cqlsh) Handle nulls in UDTs and tuples correctly (CASSANDRA-7656) + * Don't use strict consistency when replacing (CASSANDRA-7568) + * Fix min/max cell name collection on 2.0 SSTables with range + tombstones (CASSANDRA-7593) + * Tolerate min/max cell names of different lengths (CASSANDRA-7651) + * Filter cached results correctly (CASSANDRA-7636) + * Fix tracing on the new SEPExecutor (CASSANDRA-7644) * Remove shuffle and taketoken (CASSANDRA-7601) - * Switch liveRatio-related log messages to DEBUG (CASSANDRA-7467) - * (cqlsh) Add tab-completion for CREATE/DROP USER IF [NOT] EXISTS (CASSANDRA-7611) - * Always merge ranges owned by a single node (CASSANDRA-6930) - * Pig support for hadoop CqlInputFormat (CASSANDRA-6454) + * Clean up Windows batch scripts (CASSANDRA-7619) + * Fix native protocol drop user type notification (CASSANDRA-7571) + * Give read access to system.schema_usertypes to all authenticated users + (CASSANDRA-7578) + * (cqlsh) Fix cqlsh display when zero rows are returned (CASSANDRA-7580) + * Get java version correctly when JAVA_TOOL_OPTIONS is set (CASSANDRA-7572) + * Fix NPE when dropping index from non-existent keyspace, AssertionError when + dropping non-existent index with IF EXISTS (CASSANDRA-7590) + * Fix sstablelevelresetter hang (CASSANDRA-7614) + * (cqlsh) Fix deserialization of blobs (CASSANDRA-7603) + * Use keyspace updated schema change message for UDT changes in v1 and + v2 protocols (CASSANDRA-7617) + * Fix tracing of range slices and secondary index lookups that are local + to the coordinator (CASSANDRA-7599) + * Set -Dcassandra.storagedir for all tool shell scripts (CASSANDRA-7587) + * Don't swap max/min col names when mutating sstable metadata (CASSANDRA-7596) + * (cqlsh) Correctly handle paged result sets (CASSANDRA-7625) + * (cqlsh) Improve waiting for a trace to
[6/9] git commit: Fix IncompatibleClassChangeError from hadoop2
Fix IncompatibleClassChangeError from hadoop2 Patch by Mariusz KryĂ Âski, reviewed by brandonwilliams for CASSANDRA-7229 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/f83909e0 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/f83909e0 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/f83909e0 Branch: refs/heads/cassandra-2.1 Commit: f83909e04161675addcf7454cea52aa8122dcfef Parents: d1c4d50 Author: Brandon Williams brandonwilli...@apache.org Authored: Wed Aug 6 09:06:42 2014 -0500 Committer: Brandon Williams brandonwilli...@apache.org Committed: Wed Aug 6 09:06:42 2014 -0500 -- CHANGES.txt | 1 + .../cassandra/hadoop/cql3/CqlInputFormat.java| 19 +++ 2 files changed, 12 insertions(+), 8 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/f83909e0/CHANGES.txt -- diff --git a/CHANGES.txt b/CHANGES.txt index 87b1bb3..dcc5bf8 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -1,4 +1,5 @@ 2.0.10 + * Fix IncompatibleClassChangeError from hadoop2 (CASSANDRA-7229) * Add 'nodetool sethintedhandoffthrottlekb' (CASSANDRA-7635) * Update java driver (for hadoop) (CASSANDRA-7618) * Fix truncate to always flush (CASSANDRA-7511) http://git-wip-us.apache.org/repos/asf/cassandra/blob/f83909e0/src/java/org/apache/cassandra/hadoop/cql3/CqlInputFormat.java -- diff --git a/src/java/org/apache/cassandra/hadoop/cql3/CqlInputFormat.java b/src/java/org/apache/cassandra/hadoop/cql3/CqlInputFormat.java index 09bd80c..36da92d 100644 --- a/src/java/org/apache/cassandra/hadoop/cql3/CqlInputFormat.java +++ b/src/java/org/apache/cassandra/hadoop/cql3/CqlInputFormat.java @@ -19,7 +19,9 @@ package org.apache.cassandra.hadoop.cql3; import java.io.IOException; +import org.apache.cassandra.hadoop.HadoopCompat; import org.apache.cassandra.hadoop.AbstractColumnFamilyInputFormat; +import org.apache.cassandra.hadoop.ReporterWrapper; import org.apache.hadoop.mapred.InputSplit; import org.apache.hadoop.mapred.JobConf; import org.apache.hadoop.mapred.RecordReader; @@ -53,14 +55,15 @@ public class CqlInputFormat extends AbstractColumnFamilyInputFormatLong, Row public RecordReaderLong, Row getRecordReader(InputSplit split, JobConf jobConf, final Reporter reporter) throws IOException { -TaskAttemptContext tac = new TaskAttemptContext(jobConf, TaskAttemptID.forName(jobConf.get(MAPRED_TASK_ID))) -{ -@Override -public void progress() -{ -reporter.progress(); -} -}; +TaskAttemptContext tac = HadoopCompat.newMapContext( +jobConf, +TaskAttemptID.forName(jobConf.get(MAPRED_TASK_ID)), +null, +null, +null, +new ReporterWrapper(reporter), +null); + CqlRecordReader recordReader = new CqlRecordReader(); recordReader.initialize((org.apache.hadoop.mapreduce.InputSplit)split, tac);
[3/9] git commit: Merge branch 'cassandra-2.1.0' into cassandra-2.1
Merge branch 'cassandra-2.1.0' into cassandra-2.1 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/9394f0d9 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/9394f0d9 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/9394f0d9 Branch: refs/heads/trunk Commit: 9394f0d9a81720bea20ce54939e5a6d28b8838c4 Parents: 6386abc 3726a38 Author: Sylvain Lebresne sylv...@datastax.com Authored: Wed Aug 6 12:51:58 2014 +0200 Committer: Sylvain Lebresne sylv...@datastax.com Committed: Wed Aug 6 12:51:58 2014 +0200 -- --
[jira] [Assigned] (CASSANDRA-7229) Hadoop2 jobs throw java.lang.IncompatibleClassChangeError
[ https://issues.apache.org/jira/browse/CASSANDRA-7229?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Brandon Williams reassigned CASSANDRA-7229: --- Assignee: Mariusz KryĆski Hadoop2 jobs throw java.lang.IncompatibleClassChangeError - Key: CASSANDRA-7229 URL: https://issues.apache.org/jira/browse/CASSANDRA-7229 Project: Cassandra Issue Type: Bug Components: Hadoop Reporter: Mariusz KryĆski Assignee: Mariusz KryĆski Fix For: 2.0.10 Attachments: hadoop2.diff Hadoop2 jobs throw java.lang.IncompatibleClassChangeError when cassandra is build against hadoop2 libraries. Attached patch fixes this issue for me. -- This message was sent by Atlassian JIRA (v6.2#6252)
[5/9] git commit: Fix IncompatibleClassChangeError from hadoop2
Fix IncompatibleClassChangeError from hadoop2 Patch by Mariusz KryĂ Âski, reviewed by brandonwilliams for CASSANDRA-7229 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/f83909e0 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/f83909e0 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/f83909e0 Branch: refs/heads/trunk Commit: f83909e04161675addcf7454cea52aa8122dcfef Parents: d1c4d50 Author: Brandon Williams brandonwilli...@apache.org Authored: Wed Aug 6 09:06:42 2014 -0500 Committer: Brandon Williams brandonwilli...@apache.org Committed: Wed Aug 6 09:06:42 2014 -0500 -- CHANGES.txt | 1 + .../cassandra/hadoop/cql3/CqlInputFormat.java| 19 +++ 2 files changed, 12 insertions(+), 8 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/f83909e0/CHANGES.txt -- diff --git a/CHANGES.txt b/CHANGES.txt index 87b1bb3..dcc5bf8 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -1,4 +1,5 @@ 2.0.10 + * Fix IncompatibleClassChangeError from hadoop2 (CASSANDRA-7229) * Add 'nodetool sethintedhandoffthrottlekb' (CASSANDRA-7635) * Update java driver (for hadoop) (CASSANDRA-7618) * Fix truncate to always flush (CASSANDRA-7511) http://git-wip-us.apache.org/repos/asf/cassandra/blob/f83909e0/src/java/org/apache/cassandra/hadoop/cql3/CqlInputFormat.java -- diff --git a/src/java/org/apache/cassandra/hadoop/cql3/CqlInputFormat.java b/src/java/org/apache/cassandra/hadoop/cql3/CqlInputFormat.java index 09bd80c..36da92d 100644 --- a/src/java/org/apache/cassandra/hadoop/cql3/CqlInputFormat.java +++ b/src/java/org/apache/cassandra/hadoop/cql3/CqlInputFormat.java @@ -19,7 +19,9 @@ package org.apache.cassandra.hadoop.cql3; import java.io.IOException; +import org.apache.cassandra.hadoop.HadoopCompat; import org.apache.cassandra.hadoop.AbstractColumnFamilyInputFormat; +import org.apache.cassandra.hadoop.ReporterWrapper; import org.apache.hadoop.mapred.InputSplit; import org.apache.hadoop.mapred.JobConf; import org.apache.hadoop.mapred.RecordReader; @@ -53,14 +55,15 @@ public class CqlInputFormat extends AbstractColumnFamilyInputFormatLong, Row public RecordReaderLong, Row getRecordReader(InputSplit split, JobConf jobConf, final Reporter reporter) throws IOException { -TaskAttemptContext tac = new TaskAttemptContext(jobConf, TaskAttemptID.forName(jobConf.get(MAPRED_TASK_ID))) -{ -@Override -public void progress() -{ -reporter.progress(); -} -}; +TaskAttemptContext tac = HadoopCompat.newMapContext( +jobConf, +TaskAttemptID.forName(jobConf.get(MAPRED_TASK_ID)), +null, +null, +null, +new ReporterWrapper(reporter), +null); + CqlRecordReader recordReader = new CqlRecordReader(); recordReader.initialize((org.apache.hadoop.mapreduce.InputSplit)split, tac);
[9/9] git commit: Merge branch 'cassandra-2.1' into trunk
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/94cfec89 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/94cfec89 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/94cfec89 Branch: refs/heads/trunk Commit: 94cfec89b8bf9401a7f4f1b49d59679e4c50f598 Parents: 774f3ac 7fc89ad Author: Brandon Williams brandonwilli...@apache.org Authored: Wed Aug 6 09:08:42 2014 -0500 Committer: Brandon Williams brandonwilli...@apache.org Committed: Wed Aug 6 09:08:42 2014 -0500 -- CHANGES.txt | 2 ++ .../cassandra/hadoop/cql3/CqlInputFormat.java| 19 +++ 2 files changed, 13 insertions(+), 8 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/94cfec89/CHANGES.txt --
[4/9] git commit: Fix IncompatibleClassChangeError from hadoop2
Fix IncompatibleClassChangeError from hadoop2 Patch by Mariusz KryĂ Âski, reviewed by brandonwilliams for CASSANDRA-7229 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/f83909e0 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/f83909e0 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/f83909e0 Branch: refs/heads/cassandra-2.0 Commit: f83909e04161675addcf7454cea52aa8122dcfef Parents: d1c4d50 Author: Brandon Williams brandonwilli...@apache.org Authored: Wed Aug 6 09:06:42 2014 -0500 Committer: Brandon Williams brandonwilli...@apache.org Committed: Wed Aug 6 09:06:42 2014 -0500 -- CHANGES.txt | 1 + .../cassandra/hadoop/cql3/CqlInputFormat.java| 19 +++ 2 files changed, 12 insertions(+), 8 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/f83909e0/CHANGES.txt -- diff --git a/CHANGES.txt b/CHANGES.txt index 87b1bb3..dcc5bf8 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -1,4 +1,5 @@ 2.0.10 + * Fix IncompatibleClassChangeError from hadoop2 (CASSANDRA-7229) * Add 'nodetool sethintedhandoffthrottlekb' (CASSANDRA-7635) * Update java driver (for hadoop) (CASSANDRA-7618) * Fix truncate to always flush (CASSANDRA-7511) http://git-wip-us.apache.org/repos/asf/cassandra/blob/f83909e0/src/java/org/apache/cassandra/hadoop/cql3/CqlInputFormat.java -- diff --git a/src/java/org/apache/cassandra/hadoop/cql3/CqlInputFormat.java b/src/java/org/apache/cassandra/hadoop/cql3/CqlInputFormat.java index 09bd80c..36da92d 100644 --- a/src/java/org/apache/cassandra/hadoop/cql3/CqlInputFormat.java +++ b/src/java/org/apache/cassandra/hadoop/cql3/CqlInputFormat.java @@ -19,7 +19,9 @@ package org.apache.cassandra.hadoop.cql3; import java.io.IOException; +import org.apache.cassandra.hadoop.HadoopCompat; import org.apache.cassandra.hadoop.AbstractColumnFamilyInputFormat; +import org.apache.cassandra.hadoop.ReporterWrapper; import org.apache.hadoop.mapred.InputSplit; import org.apache.hadoop.mapred.JobConf; import org.apache.hadoop.mapred.RecordReader; @@ -53,14 +55,15 @@ public class CqlInputFormat extends AbstractColumnFamilyInputFormatLong, Row public RecordReaderLong, Row getRecordReader(InputSplit split, JobConf jobConf, final Reporter reporter) throws IOException { -TaskAttemptContext tac = new TaskAttemptContext(jobConf, TaskAttemptID.forName(jobConf.get(MAPRED_TASK_ID))) -{ -@Override -public void progress() -{ -reporter.progress(); -} -}; +TaskAttemptContext tac = HadoopCompat.newMapContext( +jobConf, +TaskAttemptID.forName(jobConf.get(MAPRED_TASK_ID)), +null, +null, +null, +new ReporterWrapper(reporter), +null); + CqlRecordReader recordReader = new CqlRecordReader(); recordReader.initialize((org.apache.hadoop.mapreduce.InputSplit)split, tac);
[8/9] git commit: Merge branch 'cassandra-2.0' into cassandra-2.1
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/7fc89ad7 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/7fc89ad7 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/7fc89ad7 Branch: refs/heads/cassandra-2.1 Commit: 7fc89ad7f59865a52a49a80208be3fd7a69ef74c Parents: 9394f0d f83909e Author: Brandon Williams brandonwilli...@apache.org Authored: Wed Aug 6 09:08:31 2014 -0500 Committer: Brandon Williams brandonwilli...@apache.org Committed: Wed Aug 6 09:08:31 2014 -0500 -- CHANGES.txt | 2 ++ .../cassandra/hadoop/cql3/CqlInputFormat.java| 19 +++ 2 files changed, 13 insertions(+), 8 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/7fc89ad7/CHANGES.txt -- diff --cc CHANGES.txt index c698385,dcc5bf8..410cc69 --- a/CHANGES.txt +++ b/CHANGES.txt @@@ -1,88 -1,14 +1,90 @@@ -2.0.10 +2.1.1 + * Avoid IOOBE when building SyntaxError message snippet (CASSANDRA-7569) + * SSTableExport uses correct validator to create string representation of partition + keys (CASSANDRA-7498) + * Avoid NPEs when receiving type changes for an unknown keyspace (CASSANDRA-7689) + * Add support for custom 2i validation (CASSANDRA-7575) + * Pig support for hadoop CqlInputFormat (CASSANDRA-6454) + * Add listen_interface and rpc_interface options (CASSANDRA-7417) + * Improve schema merge performance (CASSANDRA-7444) + * Adjust MT depth based on # of partition validating (CASSANDRA-5263) + * Optimise NativeCell comparisons (CASSANDRA-6755) + * Configurable client timeout for cqlsh (CASSANDRA-7516) + * Include snippet of CQL query near syntax error in messages (CASSANDRA-7111) +Merged from 2.0: + * Fix IncompatibleClassChangeError from hadoop2 (CASSANDRA-7229) + * Add 'nodetool sethintedhandoffthrottlekb' (CASSANDRA-7635) + * (cqlsh) Add tab-completion for CREATE/DROP USER IF [NOT] EXISTS (CASSANDRA-7611) + * Catch errors when the JVM pulls the rug out from GCInspector (CASSANDRA-5345) + * cqlsh fails when version number parts are not int (CASSANDRA-7524) + + +2.1.0-final + * cqlsh DESC CLUSTER fails retrieving ring information (CASSANDRA-7687) + * Fix binding null values inside UDT (CASSANDRA-7685) + * Fix UDT field selection with empty fields (CASSANDRA-7670) + * Bogus deserialization of static cells from sstable (CASSANDRA-7684) +Merged from 2.0: + * Add stop method to EmbeddedCassandraService (CASSANDRA-7595) * Update java driver (for hadoop) (CASSANDRA-7618) - * Fix truncate to always flush (CASSANDRA-7511) + * Support connecting to ipv6 jmx with nodetool (CASSANDRA-7669) + + +2.1.0-rc5 + * Reject counters inside user types (CASSANDRA-7672) + * Switch to notification-based GCInspector (CASSANDRA-7638) + * (cqlsh) Handle nulls in UDTs and tuples correctly (CASSANDRA-7656) + * Don't use strict consistency when replacing (CASSANDRA-7568) + * Fix min/max cell name collection on 2.0 SSTables with range + tombstones (CASSANDRA-7593) + * Tolerate min/max cell names of different lengths (CASSANDRA-7651) + * Filter cached results correctly (CASSANDRA-7636) + * Fix tracing on the new SEPExecutor (CASSANDRA-7644) * Remove shuffle and taketoken (CASSANDRA-7601) - * Switch liveRatio-related log messages to DEBUG (CASSANDRA-7467) - * (cqlsh) Add tab-completion for CREATE/DROP USER IF [NOT] EXISTS (CASSANDRA-7611) - * Always merge ranges owned by a single node (CASSANDRA-6930) - * Pig support for hadoop CqlInputFormat (CASSANDRA-6454) + * Clean up Windows batch scripts (CASSANDRA-7619) + * Fix native protocol drop user type notification (CASSANDRA-7571) + * Give read access to system.schema_usertypes to all authenticated users + (CASSANDRA-7578) + * (cqlsh) Fix cqlsh display when zero rows are returned (CASSANDRA-7580) + * Get java version correctly when JAVA_TOOL_OPTIONS is set (CASSANDRA-7572) + * Fix NPE when dropping index from non-existent keyspace, AssertionError when + dropping non-existent index with IF EXISTS (CASSANDRA-7590) + * Fix sstablelevelresetter hang (CASSANDRA-7614) + * (cqlsh) Fix deserialization of blobs (CASSANDRA-7603) + * Use keyspace updated schema change message for UDT changes in v1 and + v2 protocols (CASSANDRA-7617) + * Fix tracing of range slices and secondary index lookups that are local + to the coordinator (CASSANDRA-7599) + * Set -Dcassandra.storagedir for all tool shell scripts (CASSANDRA-7587) + * Don't swap max/min col names when mutating sstable metadata (CASSANDRA-7596) + * (cqlsh) Correctly handle paged result sets (CASSANDRA-7625) + * (cqlsh) Improve waiting for a trace
[4/6] git commit: Merge branch 'cassandra-2.0' into cassandra-2.1
Merge branch 'cassandra-2.0' into cassandra-2.1 Conflicts: CHANGES.txt src/java/org/apache/cassandra/hadoop/cql3/CqlPagingRecordReader.java Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/8822c96d Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/8822c96d Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/8822c96d Branch: refs/heads/trunk Commit: 8822c96d3ac885432be36643f3ab265f8189886b Parents: 7fc89ad 7fa93a2 Author: Brandon Williams brandonwilli...@apache.org Authored: Wed Aug 6 09:22:58 2014 -0500 Committer: Brandon Williams brandonwilli...@apache.org Committed: Wed Aug 6 09:22:58 2014 -0500 -- CHANGES.txt | 1 + NEWS.txt| 5 +- .../hadoop/cql3/CqlPagingInputFormat.java | 85 -- .../hadoop/cql3/CqlPagingRecordReader.java | 800 --- 4 files changed, 5 insertions(+), 886 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/8822c96d/CHANGES.txt -- diff --cc CHANGES.txt index 410cc69,49cb6a1..fd33bca --- a/CHANGES.txt +++ b/CHANGES.txt @@@ -1,90 -1,15 +1,91 @@@ -2.0.10 +2.1.1 + * Avoid IOOBE when building SyntaxError message snippet (CASSANDRA-7569) + * SSTableExport uses correct validator to create string representation of partition + keys (CASSANDRA-7498) + * Avoid NPEs when receiving type changes for an unknown keyspace (CASSANDRA-7689) + * Add support for custom 2i validation (CASSANDRA-7575) + * Pig support for hadoop CqlInputFormat (CASSANDRA-6454) + * Add listen_interface and rpc_interface options (CASSANDRA-7417) + * Improve schema merge performance (CASSANDRA-7444) + * Adjust MT depth based on # of partition validating (CASSANDRA-5263) + * Optimise NativeCell comparisons (CASSANDRA-6755) + * Configurable client timeout for cqlsh (CASSANDRA-7516) + * Include snippet of CQL query near syntax error in messages (CASSANDRA-7111) +Merged from 2.0: + * Remove CqlPagingRecordReader/CqlPagingInputFormat (CASSANDRA-7570) * Fix IncompatibleClassChangeError from hadoop2 (CASSANDRA-7229) * Add 'nodetool sethintedhandoffthrottlekb' (CASSANDRA-7635) + * (cqlsh) Add tab-completion for CREATE/DROP USER IF [NOT] EXISTS (CASSANDRA-7611) + * Catch errors when the JVM pulls the rug out from GCInspector (CASSANDRA-5345) + * cqlsh fails when version number parts are not int (CASSANDRA-7524) + + +2.1.0-final + * cqlsh DESC CLUSTER fails retrieving ring information (CASSANDRA-7687) + * Fix binding null values inside UDT (CASSANDRA-7685) + * Fix UDT field selection with empty fields (CASSANDRA-7670) + * Bogus deserialization of static cells from sstable (CASSANDRA-7684) +Merged from 2.0: + * Add stop method to EmbeddedCassandraService (CASSANDRA-7595) * Update java driver (for hadoop) (CASSANDRA-7618) - * Fix truncate to always flush (CASSANDRA-7511) + * Support connecting to ipv6 jmx with nodetool (CASSANDRA-7669) + + +2.1.0-rc5 + * Reject counters inside user types (CASSANDRA-7672) + * Switch to notification-based GCInspector (CASSANDRA-7638) + * (cqlsh) Handle nulls in UDTs and tuples correctly (CASSANDRA-7656) + * Don't use strict consistency when replacing (CASSANDRA-7568) + * Fix min/max cell name collection on 2.0 SSTables with range + tombstones (CASSANDRA-7593) + * Tolerate min/max cell names of different lengths (CASSANDRA-7651) + * Filter cached results correctly (CASSANDRA-7636) + * Fix tracing on the new SEPExecutor (CASSANDRA-7644) * Remove shuffle and taketoken (CASSANDRA-7601) - * Switch liveRatio-related log messages to DEBUG (CASSANDRA-7467) - * (cqlsh) Add tab-completion for CREATE/DROP USER IF [NOT] EXISTS (CASSANDRA-7611) - * Always merge ranges owned by a single node (CASSANDRA-6930) - * Pig support for hadoop CqlInputFormat (CASSANDRA-6454) + * Clean up Windows batch scripts (CASSANDRA-7619) + * Fix native protocol drop user type notification (CASSANDRA-7571) + * Give read access to system.schema_usertypes to all authenticated users + (CASSANDRA-7578) + * (cqlsh) Fix cqlsh display when zero rows are returned (CASSANDRA-7580) + * Get java version correctly when JAVA_TOOL_OPTIONS is set (CASSANDRA-7572) + * Fix NPE when dropping index from non-existent keyspace, AssertionError when + dropping non-existent index with IF EXISTS (CASSANDRA-7590) + * Fix sstablelevelresetter hang (CASSANDRA-7614) + * (cqlsh) Fix deserialization of blobs (CASSANDRA-7603) + * Use keyspace updated schema change message for UDT changes in v1 and + v2 protocols (CASSANDRA-7617) + * Fix tracing of range slices and secondary index lookups that are local + to the coordinator (CASSANDRA-7599) + * Set
[6/6] git commit: Merge branch 'cassandra-2.1' into trunk
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/487de3da Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/487de3da Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/487de3da Branch: refs/heads/trunk Commit: 487de3daf7340d3e3f8b6e68255e8d1de1466608 Parents: 94cfec8 8822c96 Author: Brandon Williams brandonwilli...@apache.org Authored: Wed Aug 6 09:23:12 2014 -0500 Committer: Brandon Williams brandonwilli...@apache.org Committed: Wed Aug 6 09:23:12 2014 -0500 -- CHANGES.txt | 1 + NEWS.txt| 5 +- .../hadoop/cql3/CqlPagingInputFormat.java | 85 -- .../hadoop/cql3/CqlPagingRecordReader.java | 800 --- 4 files changed, 5 insertions(+), 886 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/487de3da/CHANGES.txt -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/487de3da/NEWS.txt --
[2/6] git commit: Remove CPRR/CPIF.
Remove CPRR/CPIF. Patch by brandonwilliams for CASSANDRA-7570 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/7fa93a2c Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/7fa93a2c Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/7fa93a2c Branch: refs/heads/cassandra-2.1 Commit: 7fa93a2ca7febbff593aafef0265daa8799a9fb3 Parents: f83909e Author: Brandon Williams brandonwilli...@apache.org Authored: Wed Aug 6 09:21:14 2014 -0500 Committer: Brandon Williams brandonwilli...@apache.org Committed: Wed Aug 6 09:21:14 2014 -0500 -- CHANGES.txt | 1 + NEWS.txt| 5 +- .../hadoop/cql3/CqlPagingInputFormat.java | 85 -- .../hadoop/cql3/CqlPagingRecordReader.java | 800 --- 4 files changed, 5 insertions(+), 886 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/7fa93a2c/CHANGES.txt -- diff --git a/CHANGES.txt b/CHANGES.txt index dcc5bf8..49cb6a1 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -1,4 +1,5 @@ 2.0.10 + * Remove CqlPagingRecordReader/CqlPagingInputFormat (CASSANDRA-7570) * Fix IncompatibleClassChangeError from hadoop2 (CASSANDRA-7229) * Add 'nodetool sethintedhandoffthrottlekb' (CASSANDRA-7635) * Update java driver (for hadoop) (CASSANDRA-7618) http://git-wip-us.apache.org/repos/asf/cassandra/blob/7fa93a2c/NEWS.txt -- diff --git a/NEWS.txt b/NEWS.txt index 93fe0b1..0491384 100644 --- a/NEWS.txt +++ b/NEWS.txt @@ -17,7 +17,10 @@ using the provided 'sstableupgrade' tool. New features -- If you are using Leveled Compaction, you can now disable doing size-tiered +- CqlPaginRecordReader and CqlPagingInputFormat have both been removed. + Use CqlInputFormat instead. +- If you are using Leveled Compaction, you can now disable doing + size-tiered compaction in L0 by starting Cassandra with -Dcassandra.disable_stcs_in_l0 (see CASSANDRA-6621 for details). - Shuffle and taketoken have been removed. For clusters that choose to http://git-wip-us.apache.org/repos/asf/cassandra/blob/7fa93a2c/src/java/org/apache/cassandra/hadoop/cql3/CqlPagingInputFormat.java -- diff --git a/src/java/org/apache/cassandra/hadoop/cql3/CqlPagingInputFormat.java b/src/java/org/apache/cassandra/hadoop/cql3/CqlPagingInputFormat.java deleted file mode 100644 index 96f2f94..000 --- a/src/java/org/apache/cassandra/hadoop/cql3/CqlPagingInputFormat.java +++ /dev/null @@ -1,85 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * License); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an AS IS BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.apache.cassandra.hadoop.cql3; - -import java.io.IOException; -import java.nio.ByteBuffer; -import java.util.Map; - -import org.apache.cassandra.hadoop.HadoopCompat; -import org.apache.cassandra.hadoop.AbstractColumnFamilyInputFormat; -import org.apache.cassandra.hadoop.ReporterWrapper; -import org.apache.hadoop.mapred.InputSplit; -import org.apache.hadoop.mapred.JobConf; -import org.apache.hadoop.mapred.RecordReader; -import org.apache.hadoop.mapred.Reporter; -import org.apache.hadoop.mapreduce.TaskAttemptContext; -import org.apache.hadoop.mapreduce.TaskAttemptID; - -/** - * Hadoop InputFormat allowing map/reduce against Cassandra rows within one ColumnFamily. - * - * At minimum, you need to set the KS and CF in your Hadoop job Configuration. - * The ConfigHelper class is provided to make this - * simple: - * ConfigHelper.setInputColumnFamily - * - * You can also configure the number of rows per InputSplit with - * ConfigHelper.setInputSplitSize. The default split size is 64k rows. - * the number of CQL rows per page - * - * the number of CQL rows per page - * CQLConfigHelper.setInputCQLPageRowSize. The default page row size is 1000. You - * should set it to as big as possible, but no bigger. It set
[3/6] git commit: Remove CPRR/CPIF.
Remove CPRR/CPIF. Patch by brandonwilliams for CASSANDRA-7570 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/7fa93a2c Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/7fa93a2c Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/7fa93a2c Branch: refs/heads/trunk Commit: 7fa93a2ca7febbff593aafef0265daa8799a9fb3 Parents: f83909e Author: Brandon Williams brandonwilli...@apache.org Authored: Wed Aug 6 09:21:14 2014 -0500 Committer: Brandon Williams brandonwilli...@apache.org Committed: Wed Aug 6 09:21:14 2014 -0500 -- CHANGES.txt | 1 + NEWS.txt| 5 +- .../hadoop/cql3/CqlPagingInputFormat.java | 85 -- .../hadoop/cql3/CqlPagingRecordReader.java | 800 --- 4 files changed, 5 insertions(+), 886 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/7fa93a2c/CHANGES.txt -- diff --git a/CHANGES.txt b/CHANGES.txt index dcc5bf8..49cb6a1 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -1,4 +1,5 @@ 2.0.10 + * Remove CqlPagingRecordReader/CqlPagingInputFormat (CASSANDRA-7570) * Fix IncompatibleClassChangeError from hadoop2 (CASSANDRA-7229) * Add 'nodetool sethintedhandoffthrottlekb' (CASSANDRA-7635) * Update java driver (for hadoop) (CASSANDRA-7618) http://git-wip-us.apache.org/repos/asf/cassandra/blob/7fa93a2c/NEWS.txt -- diff --git a/NEWS.txt b/NEWS.txt index 93fe0b1..0491384 100644 --- a/NEWS.txt +++ b/NEWS.txt @@ -17,7 +17,10 @@ using the provided 'sstableupgrade' tool. New features -- If you are using Leveled Compaction, you can now disable doing size-tiered +- CqlPaginRecordReader and CqlPagingInputFormat have both been removed. + Use CqlInputFormat instead. +- If you are using Leveled Compaction, you can now disable doing + size-tiered compaction in L0 by starting Cassandra with -Dcassandra.disable_stcs_in_l0 (see CASSANDRA-6621 for details). - Shuffle and taketoken have been removed. For clusters that choose to http://git-wip-us.apache.org/repos/asf/cassandra/blob/7fa93a2c/src/java/org/apache/cassandra/hadoop/cql3/CqlPagingInputFormat.java -- diff --git a/src/java/org/apache/cassandra/hadoop/cql3/CqlPagingInputFormat.java b/src/java/org/apache/cassandra/hadoop/cql3/CqlPagingInputFormat.java deleted file mode 100644 index 96f2f94..000 --- a/src/java/org/apache/cassandra/hadoop/cql3/CqlPagingInputFormat.java +++ /dev/null @@ -1,85 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * License); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an AS IS BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.apache.cassandra.hadoop.cql3; - -import java.io.IOException; -import java.nio.ByteBuffer; -import java.util.Map; - -import org.apache.cassandra.hadoop.HadoopCompat; -import org.apache.cassandra.hadoop.AbstractColumnFamilyInputFormat; -import org.apache.cassandra.hadoop.ReporterWrapper; -import org.apache.hadoop.mapred.InputSplit; -import org.apache.hadoop.mapred.JobConf; -import org.apache.hadoop.mapred.RecordReader; -import org.apache.hadoop.mapred.Reporter; -import org.apache.hadoop.mapreduce.TaskAttemptContext; -import org.apache.hadoop.mapreduce.TaskAttemptID; - -/** - * Hadoop InputFormat allowing map/reduce against Cassandra rows within one ColumnFamily. - * - * At minimum, you need to set the KS and CF in your Hadoop job Configuration. - * The ConfigHelper class is provided to make this - * simple: - * ConfigHelper.setInputColumnFamily - * - * You can also configure the number of rows per InputSplit with - * ConfigHelper.setInputSplitSize. The default split size is 64k rows. - * the number of CQL rows per page - * - * the number of CQL rows per page - * CQLConfigHelper.setInputCQLPageRowSize. The default page row size is 1000. You - * should set it to as big as possible, but no bigger. It set the
[5/6] git commit: Merge branch 'cassandra-2.0' into cassandra-2.1
Merge branch 'cassandra-2.0' into cassandra-2.1 Conflicts: CHANGES.txt src/java/org/apache/cassandra/hadoop/cql3/CqlPagingRecordReader.java Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/8822c96d Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/8822c96d Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/8822c96d Branch: refs/heads/cassandra-2.1 Commit: 8822c96d3ac885432be36643f3ab265f8189886b Parents: 7fc89ad 7fa93a2 Author: Brandon Williams brandonwilli...@apache.org Authored: Wed Aug 6 09:22:58 2014 -0500 Committer: Brandon Williams brandonwilli...@apache.org Committed: Wed Aug 6 09:22:58 2014 -0500 -- CHANGES.txt | 1 + NEWS.txt| 5 +- .../hadoop/cql3/CqlPagingInputFormat.java | 85 -- .../hadoop/cql3/CqlPagingRecordReader.java | 800 --- 4 files changed, 5 insertions(+), 886 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/8822c96d/CHANGES.txt -- diff --cc CHANGES.txt index 410cc69,49cb6a1..fd33bca --- a/CHANGES.txt +++ b/CHANGES.txt @@@ -1,90 -1,15 +1,91 @@@ -2.0.10 +2.1.1 + * Avoid IOOBE when building SyntaxError message snippet (CASSANDRA-7569) + * SSTableExport uses correct validator to create string representation of partition + keys (CASSANDRA-7498) + * Avoid NPEs when receiving type changes for an unknown keyspace (CASSANDRA-7689) + * Add support for custom 2i validation (CASSANDRA-7575) + * Pig support for hadoop CqlInputFormat (CASSANDRA-6454) + * Add listen_interface and rpc_interface options (CASSANDRA-7417) + * Improve schema merge performance (CASSANDRA-7444) + * Adjust MT depth based on # of partition validating (CASSANDRA-5263) + * Optimise NativeCell comparisons (CASSANDRA-6755) + * Configurable client timeout for cqlsh (CASSANDRA-7516) + * Include snippet of CQL query near syntax error in messages (CASSANDRA-7111) +Merged from 2.0: + * Remove CqlPagingRecordReader/CqlPagingInputFormat (CASSANDRA-7570) * Fix IncompatibleClassChangeError from hadoop2 (CASSANDRA-7229) * Add 'nodetool sethintedhandoffthrottlekb' (CASSANDRA-7635) + * (cqlsh) Add tab-completion for CREATE/DROP USER IF [NOT] EXISTS (CASSANDRA-7611) + * Catch errors when the JVM pulls the rug out from GCInspector (CASSANDRA-5345) + * cqlsh fails when version number parts are not int (CASSANDRA-7524) + + +2.1.0-final + * cqlsh DESC CLUSTER fails retrieving ring information (CASSANDRA-7687) + * Fix binding null values inside UDT (CASSANDRA-7685) + * Fix UDT field selection with empty fields (CASSANDRA-7670) + * Bogus deserialization of static cells from sstable (CASSANDRA-7684) +Merged from 2.0: + * Add stop method to EmbeddedCassandraService (CASSANDRA-7595) * Update java driver (for hadoop) (CASSANDRA-7618) - * Fix truncate to always flush (CASSANDRA-7511) + * Support connecting to ipv6 jmx with nodetool (CASSANDRA-7669) + + +2.1.0-rc5 + * Reject counters inside user types (CASSANDRA-7672) + * Switch to notification-based GCInspector (CASSANDRA-7638) + * (cqlsh) Handle nulls in UDTs and tuples correctly (CASSANDRA-7656) + * Don't use strict consistency when replacing (CASSANDRA-7568) + * Fix min/max cell name collection on 2.0 SSTables with range + tombstones (CASSANDRA-7593) + * Tolerate min/max cell names of different lengths (CASSANDRA-7651) + * Filter cached results correctly (CASSANDRA-7636) + * Fix tracing on the new SEPExecutor (CASSANDRA-7644) * Remove shuffle and taketoken (CASSANDRA-7601) - * Switch liveRatio-related log messages to DEBUG (CASSANDRA-7467) - * (cqlsh) Add tab-completion for CREATE/DROP USER IF [NOT] EXISTS (CASSANDRA-7611) - * Always merge ranges owned by a single node (CASSANDRA-6930) - * Pig support for hadoop CqlInputFormat (CASSANDRA-6454) + * Clean up Windows batch scripts (CASSANDRA-7619) + * Fix native protocol drop user type notification (CASSANDRA-7571) + * Give read access to system.schema_usertypes to all authenticated users + (CASSANDRA-7578) + * (cqlsh) Fix cqlsh display when zero rows are returned (CASSANDRA-7580) + * Get java version correctly when JAVA_TOOL_OPTIONS is set (CASSANDRA-7572) + * Fix NPE when dropping index from non-existent keyspace, AssertionError when + dropping non-existent index with IF EXISTS (CASSANDRA-7590) + * Fix sstablelevelresetter hang (CASSANDRA-7614) + * (cqlsh) Fix deserialization of blobs (CASSANDRA-7603) + * Use keyspace updated schema change message for UDT changes in v1 and + v2 protocols (CASSANDRA-7617) + * Fix tracing of range slices and secondary index lookups that are local + to the coordinator (CASSANDRA-7599)
[1/6] git commit: Remove CPRR/CPIF.
Repository: cassandra Updated Branches: refs/heads/cassandra-2.0 f83909e04 - 7fa93a2ca refs/heads/cassandra-2.1 7fc89ad7f - 8822c96d3 refs/heads/trunk 94cfec89b - 487de3daf Remove CPRR/CPIF. Patch by brandonwilliams for CASSANDRA-7570 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/7fa93a2c Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/7fa93a2c Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/7fa93a2c Branch: refs/heads/cassandra-2.0 Commit: 7fa93a2ca7febbff593aafef0265daa8799a9fb3 Parents: f83909e Author: Brandon Williams brandonwilli...@apache.org Authored: Wed Aug 6 09:21:14 2014 -0500 Committer: Brandon Williams brandonwilli...@apache.org Committed: Wed Aug 6 09:21:14 2014 -0500 -- CHANGES.txt | 1 + NEWS.txt| 5 +- .../hadoop/cql3/CqlPagingInputFormat.java | 85 -- .../hadoop/cql3/CqlPagingRecordReader.java | 800 --- 4 files changed, 5 insertions(+), 886 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/7fa93a2c/CHANGES.txt -- diff --git a/CHANGES.txt b/CHANGES.txt index dcc5bf8..49cb6a1 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -1,4 +1,5 @@ 2.0.10 + * Remove CqlPagingRecordReader/CqlPagingInputFormat (CASSANDRA-7570) * Fix IncompatibleClassChangeError from hadoop2 (CASSANDRA-7229) * Add 'nodetool sethintedhandoffthrottlekb' (CASSANDRA-7635) * Update java driver (for hadoop) (CASSANDRA-7618) http://git-wip-us.apache.org/repos/asf/cassandra/blob/7fa93a2c/NEWS.txt -- diff --git a/NEWS.txt b/NEWS.txt index 93fe0b1..0491384 100644 --- a/NEWS.txt +++ b/NEWS.txt @@ -17,7 +17,10 @@ using the provided 'sstableupgrade' tool. New features -- If you are using Leveled Compaction, you can now disable doing size-tiered +- CqlPaginRecordReader and CqlPagingInputFormat have both been removed. + Use CqlInputFormat instead. +- If you are using Leveled Compaction, you can now disable doing + size-tiered compaction in L0 by starting Cassandra with -Dcassandra.disable_stcs_in_l0 (see CASSANDRA-6621 for details). - Shuffle and taketoken have been removed. For clusters that choose to http://git-wip-us.apache.org/repos/asf/cassandra/blob/7fa93a2c/src/java/org/apache/cassandra/hadoop/cql3/CqlPagingInputFormat.java -- diff --git a/src/java/org/apache/cassandra/hadoop/cql3/CqlPagingInputFormat.java b/src/java/org/apache/cassandra/hadoop/cql3/CqlPagingInputFormat.java deleted file mode 100644 index 96f2f94..000 --- a/src/java/org/apache/cassandra/hadoop/cql3/CqlPagingInputFormat.java +++ /dev/null @@ -1,85 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * License); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an AS IS BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.apache.cassandra.hadoop.cql3; - -import java.io.IOException; -import java.nio.ByteBuffer; -import java.util.Map; - -import org.apache.cassandra.hadoop.HadoopCompat; -import org.apache.cassandra.hadoop.AbstractColumnFamilyInputFormat; -import org.apache.cassandra.hadoop.ReporterWrapper; -import org.apache.hadoop.mapred.InputSplit; -import org.apache.hadoop.mapred.JobConf; -import org.apache.hadoop.mapred.RecordReader; -import org.apache.hadoop.mapred.Reporter; -import org.apache.hadoop.mapreduce.TaskAttemptContext; -import org.apache.hadoop.mapreduce.TaskAttemptID; - -/** - * Hadoop InputFormat allowing map/reduce against Cassandra rows within one ColumnFamily. - * - * At minimum, you need to set the KS and CF in your Hadoop job Configuration. - * The ConfigHelper class is provided to make this - * simple: - * ConfigHelper.setInputColumnFamily - * - * You can also configure the number of rows per InputSplit with - * ConfigHelper.setInputSplitSize. The default split size is 64k rows. - * the number of CQL rows per page - * - *
[jira] [Resolved] (CASSANDRA-7570) CqlPagingRecordReader is broken
[ https://issues.apache.org/jira/browse/CASSANDRA-7570?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Brandon Williams resolved CASSANDRA-7570. - Resolution: Fixed Fix Version/s: 2.1.1 I went ahead and removed CPRR and CPIF with a notice in NEWS.TXT CqlPagingRecordReader is broken --- Key: CASSANDRA-7570 URL: https://issues.apache.org/jira/browse/CASSANDRA-7570 Project: Cassandra Issue Type: Bug Components: Hadoop Reporter: Brandon Williams Assignee: Alex Liu Fix For: 2.0.10, 2.1.1 Attachments: 7570_2.0_branch.txt As mentioned on CASSANDRA-7059, it broke CPRR. It's not quite as simple as changing the greater than to a greater than equal, either, since that makes the task run forever. -- This message was sent by Atlassian JIRA (v6.2#6252)
[jira] [Commented] (CASSANDRA-6411) Issue with reading from sstable
[ https://issues.apache.org/jira/browse/CASSANDRA-6411?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14087716#comment-14087716 ] Yuki Morishita commented on CASSANDRA-6411: --- [~pankaj.malho...@ul.com] do you ever drop/create table? It can be key cache problem and fixed with CASSANDRA-5202. [~thobbs]'s exception can also be the same, since system tables still use determinstic CF ID even after CASSANDRA-5202. Issue with reading from sstable --- Key: CASSANDRA-6411 URL: https://issues.apache.org/jira/browse/CASSANDRA-6411 Project: Cassandra Issue Type: Bug Components: API Reporter: Mike Konobeevskiy Assignee: Yuki Morishita Attachments: 6411-log.zip, 6411-sstables.zip With Cassandra 1.2.5 this happens almost every week. {noformat} java.lang.RuntimeException: org.apache.cassandra.io.sstable.CorruptSSTableException: java.io.EOFException: EOF after 5105 bytes out of 19815 at org.apache.cassandra.service.StorageProxy$DroppableRunnable.run(StorageProxy.java:1582) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) at java.lang.Thread.run(Thread.java:724) Caused by: org.apache.cassandra.io.sstable.CorruptSSTableException: java.io.EOFException: EOF after 5105 bytes out of 19815 at org.apache.cassandra.db.columniterator.SimpleSliceReader.init(SimpleSliceReader.java:91) at org.apache.cassandra.db.columniterator.SSTableSliceIterator.createReader(SSTableSliceIterator.java:68) at org.apache.cassandra.db.columniterator.SSTableSliceIterator.init(SSTableSliceIterator.java:44) at org.apache.cassandra.db.filter.SliceQueryFilter.getSSTableColumnIterator(SliceQueryFilter.java:101) at org.apache.cassandra.db.filter.QueryFilter.getSSTableColumnIterator(QueryFilter.java:68) at org.apache.cassandra.db.CollationController.collectAllData(CollationController.java:274) at org.apache.cassandra.db.CollationController.getTopLevelColumns(CollationController.java:65) at org.apache.cassandra.db.ColumnFamilyStore.getTopLevelColumns(ColumnFamilyStore.java:1357) at org.apache.cassandra.db.ColumnFamilyStore.getColumnFamily(ColumnFamilyStore.java:1214) at org.apache.cassandra.db.ColumnFamilyStore.getColumnFamily(ColumnFamilyStore.java:1126) at org.apache.cassandra.db.Table.getRow(Table.java:347) at org.apache.cassandra.db.SliceFromReadCommand.getRow(SliceFromReadCommand.java:70) at org.apache.cassandra.service.StorageProxy$LocalReadRunnable.runMayThrow(StorageProxy.java:1052) at org.apache.cassandra.service.StorageProxy$DroppableRunnable.run(StorageProxy.java:1578) ... 3 more Caused by: java.io.EOFException: EOF after 5105 bytes out of 19815 at org.apache.cassandra.io.util.FileUtils.skipBytesFully(FileUtils.java:350) at org.apache.cassandra.utils.ByteBufferUtil.skipShortLength(ByteBufferUtil.java:382) at org.apache.cassandra.db.columniterator.SimpleSliceReader.init(SimpleSliceReader.java:72) ... 16 more {noformat} This is occurring roughly weekly with quite minimal usage. Recreation of CF does not help. -- This message was sent by Atlassian JIRA (v6.2#6252)
[jira] [Commented] (CASSANDRA-7409) Allow multiple overlapping sstables in L1
[ https://issues.apache.org/jira/browse/CASSANDRA-7409?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14087722#comment-14087722 ] Jonathan Ellis commented on CASSANDRA-7409: --- We'd want to compare read performance post-compaction as well, right? We have some 8-disk machines that [~lyubent] can test concurrent compactors with. Can you specify specifically what scenario you want to test? Allow multiple overlapping sstables in L1 - Key: CASSANDRA-7409 URL: https://issues.apache.org/jira/browse/CASSANDRA-7409 Project: Cassandra Issue Type: Improvement Reporter: Carl Yeksigian Assignee: Carl Yeksigian Currently, when a normal L0 compaction takes place (not STCS), we take up to MAX_COMPACTING_L0 L0 sstables and all of the overlapping L1 sstables and compact them together. If we didn't have to deal with the overlapping L1 tables, we could compact a higher number of L0 sstables together into a set of non-overlapping L1 sstables. This could be done by delaying the invariant that L1 has no overlapping sstables. Going from L1 to L2, we would be compacting fewer sstables together which overlap. When reading, we will not have the same one sstable per level (except L0) guarantee, but this can be bounded (once we have too many sets of sstables, either compact them back into the same level, or compact them up to the next level). This could be generalized to allow any level to be the maximum for this overlapping strategy. -- This message was sent by Atlassian JIRA (v6.2#6252)
[jira] [Commented] (CASSANDRA-6411) Issue with reading from sstable
[ https://issues.apache.org/jira/browse/CASSANDRA-6411?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14087759#comment-14087759 ] Pankaj Malhotra commented on CASSANDRA-6411: Yeah, we are dropping keySpace. Thnx will try not to drop keyspace. This e-mail may contain privileged or confidential information. If you are not the intended recipient: (1) you may not disclose, use, distribute, copy or rely upon this message or attachment(s); and (2) please notify the sender by reply e-mail, and then delete this message and its attachment(s). Underwriters Laboratories Inc. and its affiliates disclaim all liability for any errors, omissions, corruption or virus in this message or any attachments. Issue with reading from sstable --- Key: CASSANDRA-6411 URL: https://issues.apache.org/jira/browse/CASSANDRA-6411 Project: Cassandra Issue Type: Bug Components: API Reporter: Mike Konobeevskiy Assignee: Yuki Morishita Attachments: 6411-log.zip, 6411-sstables.zip With Cassandra 1.2.5 this happens almost every week. {noformat} java.lang.RuntimeException: org.apache.cassandra.io.sstable.CorruptSSTableException: java.io.EOFException: EOF after 5105 bytes out of 19815 at org.apache.cassandra.service.StorageProxy$DroppableRunnable.run(StorageProxy.java:1582) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) at java.lang.Thread.run(Thread.java:724) Caused by: org.apache.cassandra.io.sstable.CorruptSSTableException: java.io.EOFException: EOF after 5105 bytes out of 19815 at org.apache.cassandra.db.columniterator.SimpleSliceReader.init(SimpleSliceReader.java:91) at org.apache.cassandra.db.columniterator.SSTableSliceIterator.createReader(SSTableSliceIterator.java:68) at org.apache.cassandra.db.columniterator.SSTableSliceIterator.init(SSTableSliceIterator.java:44) at org.apache.cassandra.db.filter.SliceQueryFilter.getSSTableColumnIterator(SliceQueryFilter.java:101) at org.apache.cassandra.db.filter.QueryFilter.getSSTableColumnIterator(QueryFilter.java:68) at org.apache.cassandra.db.CollationController.collectAllData(CollationController.java:274) at org.apache.cassandra.db.CollationController.getTopLevelColumns(CollationController.java:65) at org.apache.cassandra.db.ColumnFamilyStore.getTopLevelColumns(ColumnFamilyStore.java:1357) at org.apache.cassandra.db.ColumnFamilyStore.getColumnFamily(ColumnFamilyStore.java:1214) at org.apache.cassandra.db.ColumnFamilyStore.getColumnFamily(ColumnFamilyStore.java:1126) at org.apache.cassandra.db.Table.getRow(Table.java:347) at org.apache.cassandra.db.SliceFromReadCommand.getRow(SliceFromReadCommand.java:70) at org.apache.cassandra.service.StorageProxy$LocalReadRunnable.runMayThrow(StorageProxy.java:1052) at org.apache.cassandra.service.StorageProxy$DroppableRunnable.run(StorageProxy.java:1578) ... 3 more Caused by: java.io.EOFException: EOF after 5105 bytes out of 19815 at org.apache.cassandra.io.util.FileUtils.skipBytesFully(FileUtils.java:350) at org.apache.cassandra.utils.ByteBufferUtil.skipShortLength(ByteBufferUtil.java:382) at org.apache.cassandra.db.columniterator.SimpleSliceReader.init(SimpleSliceReader.java:72) ... 16 more {noformat} This is occurring roughly weekly with quite minimal usage. Recreation of CF does not help. -- This message was sent by Atlassian JIRA (v6.2#6252)
[jira] [Updated] (CASSANDRA-7700) Unexpected exception in RangeTombstoneList.insertFrom during Python Driver Duration Test
[ https://issues.apache.org/jira/browse/CASSANDRA-7700?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Ryan McGuire updated CASSANDRA-7700: Tester: Ryan McGuire Unexpected exception in RangeTombstoneList.insertFrom during Python Driver Duration Test Key: CASSANDRA-7700 URL: https://issues.apache.org/jira/browse/CASSANDRA-7700 Project: Cassandra Issue Type: Bug Environment: ubuntu via ctool. Linux ip-10-199-0-152 3.2.0-57-virtual #87-Ubuntu SMP Tue Nov 12 21:53:49 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux Reporter: Rick Smith Assignee: Sylvain Lebresne Fix For: 2.1.0 Attachments: Tombstone_Exception.txt Found the attached exception (duration test log and associated Cassandra log) when running the Python driver duration tests against CASSANDRA_VERSION=cassandra-2.1.0-rc5 and master branch of driver. Error repeated in logs twice over 12 hours on master_gevent cluster, and once on gevent cluster over the same time period. Cluster and associated cluster setup via ctool. Log excerpt: INFO [MemtableFlushWriter:184] 2014-08-05 05:45:39,161 Memtable.java:360 - Completed flushing /srv/performance/cass/data/duration_test/ints-133f8c901c2f11e491e66b1b73f81641/duration_test-ints-ka-173-Data.db (2131716 bytes) for commitlog position ReplayPosition(segmentId=1407193910537, position=13460548) ERROR [SharedPool-Worker-7] 2014-08-05 05:45:45,160 ErrorMessage.java:218 - Unexpected exception during request java.lang.AssertionError: null at org.apache.cassandra.db.RangeTombstoneList.insertFrom(RangeTombstoneList.java:528) ~[main/:na] at org.apache.cassandra.db.RangeTombstoneList.addAll(RangeTombstoneList.java:221) ~[main/:na] more details in attachment. -- This message was sent by Atlassian JIRA (v6.2#6252)
[jira] [Comment Edited] (CASSANDRA-6977) attempting to create 10K column families fails with 100 node cluster
[ https://issues.apache.org/jira/browse/CASSANDRA-6977?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14075947#comment-14075947 ] Michael Nelson edited comment on CASSANDRA-6977 at 8/6/14 3:23 PM: --- We need the ability to create new keyspaces dynamically. A particular use case is multi-tenancy, due to privacy issues, so that each keyspace represents segregated data. was (Author: miknels): This is a showstopper for a very large customer. They need the ability to create new keyspaces as they add new customers. Their use case is multi-tenancy, due to HIPPA and PCI, so that each customer is a separate keyspace, keeping the data separate. attempting to create 10K column families fails with 100 node cluster Key: CASSANDRA-6977 URL: https://issues.apache.org/jira/browse/CASSANDRA-6977 Project: Cassandra Issue Type: Bug Environment: 100 nodes, Ubuntu 12.04.3 LTS, AWS m1.large instances Reporter: Daniel Meyer Assignee: Rocco Varela Priority: Minor Attachments: 100_nodes_all_data.png, all_data_5_nodes.png, keyspace_create.py, logs.tar, tpstats.txt, visualvm_tracer_data.csv During this test we are attempting to create a total of 1K keyspaces with 10 column families each to bring the total column families to 10K. With a 5 node cluster this operation can be completed; however, it fails with 100 nodes. Please see the two charts. For the 5 node case the time required to create each keyspace and subsequent 10 column families increases linearly until the number of keyspaces is 1K. For a 100 node cluster there is a sudden increase in latency between 450 keyspaces and 550 keyspaces. The test ends when the test script times out. After the test script times out it is impossible to reconnect to the cluster with the datastax python driver because it cannot connect to the host: cassandra.cluster.NoHostAvailable: ('Unable to connect to any servers', {'10.199.5.98': OperationTimedOut()} It was found that running the following stress command does work from the same machine the test script runs on. cassandra-stress -d 10.199.5.98 -l 2 -e QUORUM -L3 -b -o INSERT It should be noted that this test was initially done with DSE 4.0 and c* version 2.0.5.24 and in that case it was not possible to run stress against the cluster even locally on a node due to not finding the host. Attached are system logs from one of the nodes, charts showing schema creation latency for 5 and 100 node clusters and virtualvm tracer data for cpu, memory, num_threads and gc runs, tpstat output and the test script. The test script was on an m1.large aws instance outside of the cluster under test. -- This message was sent by Atlassian JIRA (v6.2#6252)
[jira] [Commented] (CASSANDRA-7546) AtomicSortedColumns.addAllWithSizeDelta has a spin loop that allocates memory
[ https://issues.apache.org/jira/browse/CASSANDRA-7546?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14087799#comment-14087799 ] graham sanderson commented on CASSANDRA-7546: - +1 on another set of eyes (yes the isSynchronized is ugly) - that said, I can move ahead on testing the main functionality of this patch (the waste detection) since we are all agreed I think on the basic mechanism. I am reading your patch (thanks for cleaning up - mine was a bit verbose for discussion purposes), I will read it in more detail now, but just from an initial glance in its raw form, why did you make the size in Holder volatile/atomically updated. The holder instances should only mutated by a single thread AtomicSortedColumns.addAllWithSizeDelta has a spin loop that allocates memory - Key: CASSANDRA-7546 URL: https://issues.apache.org/jira/browse/CASSANDRA-7546 Project: Cassandra Issue Type: Bug Components: Core Reporter: graham sanderson Assignee: graham sanderson Attachments: 7546.20.txt, 7546.20_2.txt, 7546.20_3.txt, 7546.20_4.txt, 7546.20_5.txt, 7546.20_6.txt, 7546.20_alt.txt, suggestion1.txt, suggestion1_21.txt In order to preserve atomicity, this code attempts to read, clone/update, then CAS the state of the partition. Under heavy contention for updating a single partition this can cause some fairly staggering memory growth (the more cores on your machine the worst it gets). Whilst many usage patterns don't do highly concurrent updates to the same partition, hinting today, does, and in this case wild (order(s) of magnitude more than expected) memory allocation rates can be seen (especially when the updates being hinted are small updates to different partitions which can happen very fast on their own) - see CASSANDRA-7545 It would be best to eliminate/reduce/limit the spinning memory allocation whilst not slowing down the very common un-contended case. -- This message was sent by Atlassian JIRA (v6.2#6252)
[jira] [Comment Edited] (CASSANDRA-7546) AtomicSortedColumns.addAllWithSizeDelta has a spin loop that allocates memory
[ https://issues.apache.org/jira/browse/CASSANDRA-7546?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14087799#comment-14087799 ] graham sanderson edited comment on CASSANDRA-7546 at 8/6/14 3:43 PM: - +1 on another set of eyes (yes the isSynchronized is ugly) - that said, I can move ahead on testing the main functionality of this patch (the waste detection) since we are all agreed I think on the basic mechanism. I am reading your patch (thanks for cleaning up - mine was a bit verbose for discussion purposes), I will read it in more detail now, but just from an initial glance in its raw form, why did you make the size in Holder volatile/atomically updated. The holder instances should only be mutated by a single thread was (Author: graham sanderson): +1 on another set of eyes (yes the isSynchronized is ugly) - that said, I can move ahead on testing the main functionality of this patch (the waste detection) since we are all agreed I think on the basic mechanism. I am reading your patch (thanks for cleaning up - mine was a bit verbose for discussion purposes), I will read it in more detail now, but just from an initial glance in its raw form, why did you make the size in Holder volatile/atomically updated. The holder instances should only mutated by a single thread AtomicSortedColumns.addAllWithSizeDelta has a spin loop that allocates memory - Key: CASSANDRA-7546 URL: https://issues.apache.org/jira/browse/CASSANDRA-7546 Project: Cassandra Issue Type: Bug Components: Core Reporter: graham sanderson Assignee: graham sanderson Attachments: 7546.20.txt, 7546.20_2.txt, 7546.20_3.txt, 7546.20_4.txt, 7546.20_5.txt, 7546.20_6.txt, 7546.20_alt.txt, suggestion1.txt, suggestion1_21.txt In order to preserve atomicity, this code attempts to read, clone/update, then CAS the state of the partition. Under heavy contention for updating a single partition this can cause some fairly staggering memory growth (the more cores on your machine the worst it gets). Whilst many usage patterns don't do highly concurrent updates to the same partition, hinting today, does, and in this case wild (order(s) of magnitude more than expected) memory allocation rates can be seen (especially when the updates being hinted are small updates to different partitions which can happen very fast on their own) - see CASSANDRA-7545 It would be best to eliminate/reduce/limit the spinning memory allocation whilst not slowing down the very common un-contended case. -- This message was sent by Atlassian JIRA (v6.2#6252)
[jira] [Commented] (CASSANDRA-7546) AtomicSortedColumns.addAllWithSizeDelta has a spin loop that allocates memory
[ https://issues.apache.org/jira/browse/CASSANDRA-7546?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14087814#comment-14087814 ] Benedict commented on CASSANDRA-7546: - Well, technically we never ever call addColumn() directly, but in 2.0 we haven't removed / UnsupportedOperationException'd that path, so I'm not totally comfortable leaving it as a regular int, as an external call to addColumn would break it (but then, this probably isn't the end of the world). However, I actually introduced a double counting bug in changing that :/ ... and since we don't want to incur the incAndGet every change, and we don't want to dup code, let's settle for the possible race for maintaining size if somebody uses the API in a way it isn;t in the codebase right now. However I think I would prefer to make size final in this case. AtomicSortedColumns.addAllWithSizeDelta has a spin loop that allocates memory - Key: CASSANDRA-7546 URL: https://issues.apache.org/jira/browse/CASSANDRA-7546 Project: Cassandra Issue Type: Bug Components: Core Reporter: graham sanderson Assignee: graham sanderson Attachments: 7546.20.txt, 7546.20_2.txt, 7546.20_3.txt, 7546.20_4.txt, 7546.20_5.txt, 7546.20_6.txt, 7546.20_alt.txt, suggestion1.txt, suggestion1_21.txt In order to preserve atomicity, this code attempts to read, clone/update, then CAS the state of the partition. Under heavy contention for updating a single partition this can cause some fairly staggering memory growth (the more cores on your machine the worst it gets). Whilst many usage patterns don't do highly concurrent updates to the same partition, hinting today, does, and in this case wild (order(s) of magnitude more than expected) memory allocation rates can be seen (especially when the updates being hinted are small updates to different partitions which can happen very fast on their own) - see CASSANDRA-7545 It would be best to eliminate/reduce/limit the spinning memory allocation whilst not slowing down the very common un-contended case. -- This message was sent by Atlassian JIRA (v6.2#6252)
[jira] [Comment Edited] (CASSANDRA-7546) AtomicSortedColumns.addAllWithSizeDelta has a spin loop that allocates memory
[ https://issues.apache.org/jira/browse/CASSANDRA-7546?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14087814#comment-14087814 ] Benedict edited comment on CASSANDRA-7546 at 8/6/14 3:56 PM: - Well, technically we never ever call addColumn() directly, but in 2.0 we haven't removed / UnsupportedOperationException'd that path, so I'm not totally comfortable leaving it as a regular int, as an external call to addColumn would break it (but then, this probably isn't the end of the world). However, I actually introduced a double counting bug in changing that :/ ... and since we don't want to incur the incAndGet every change, and we don't want to dup code, let's settle for the possible race for maintaining size if somebody uses the API in a way it isn;t in the codebase right now. -However I think I would prefer to make size final in this case.- Looking again, it's too ugly to make it final, so let's settle for the ugliness of it being non-final, and revert to your behaviour here. This bit is soon to be superceded by 2.1 anyway, so let's not agonise over the beauty of it. was (Author: benedict): Well, technically we never ever call addColumn() directly, but in 2.0 we haven't removed / UnsupportedOperationException'd that path, so I'm not totally comfortable leaving it as a regular int, as an external call to addColumn would break it (but then, this probably isn't the end of the world). However, I actually introduced a double counting bug in changing that :/ ... and since we don't want to incur the incAndGet every change, and we don't want to dup code, let's settle for the possible race for maintaining size if somebody uses the API in a way it isn;t in the codebase right now. However I think I would prefer to make size final in this case. AtomicSortedColumns.addAllWithSizeDelta has a spin loop that allocates memory - Key: CASSANDRA-7546 URL: https://issues.apache.org/jira/browse/CASSANDRA-7546 Project: Cassandra Issue Type: Bug Components: Core Reporter: graham sanderson Assignee: graham sanderson Attachments: 7546.20.txt, 7546.20_2.txt, 7546.20_3.txt, 7546.20_4.txt, 7546.20_5.txt, 7546.20_6.txt, 7546.20_alt.txt, suggestion1.txt, suggestion1_21.txt In order to preserve atomicity, this code attempts to read, clone/update, then CAS the state of the partition. Under heavy contention for updating a single partition this can cause some fairly staggering memory growth (the more cores on your machine the worst it gets). Whilst many usage patterns don't do highly concurrent updates to the same partition, hinting today, does, and in this case wild (order(s) of magnitude more than expected) memory allocation rates can be seen (especially when the updates being hinted are small updates to different partitions which can happen very fast on their own) - see CASSANDRA-7545 It would be best to eliminate/reduce/limit the spinning memory allocation whilst not slowing down the very common un-contended case. -- This message was sent by Atlassian JIRA (v6.2#6252)
[jira] [Commented] (CASSANDRA-6377) ALLOW FILTERING should allow seq scan filtering
[ https://issues.apache.org/jira/browse/CASSANDRA-6377?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14087826#comment-14087826 ] Jack Krupansky commented on CASSANDRA-6377: --- [~ztyx], here's the relevant restriction from the DataStax CQL doc: bq. The WHERE clause is composed of conditions on the columns that are part of the primary key or are indexed. See: http://www.datastax.com/documentation/cql/3.1/cql/cql_reference/select_r.html And the same restriction from the project spec for CQL3: bq. The where-clause specifies which rows must be queried. It is composed of relations on the columns that are part of the PRIMARY KEY and/or have a secondary index defined on them. See: https://cassandra.apache.org/doc/cql3/CQL.html Was there part of either of those two statements that is maybe worded too vaguely, or is the issue how you would have found those statements more easily? Improving doc usability is a priority. ALLOW FILTERING should allow seq scan filtering --- Key: CASSANDRA-6377 URL: https://issues.apache.org/jira/browse/CASSANDRA-6377 Project: Cassandra Issue Type: Bug Components: API Reporter: Jonathan Ellis Assignee: Sylvain Lebresne Labels: cql Fix For: 3.0 CREATE TABLE emp_table2 ( empID int PRIMARY KEY, firstname text, lastname text, b_mon text, b_day text, b_yr text, ); INSERT INTO emp_table2 (empID,firstname,lastname,b_mon,b_day,b_yr) VALUES (100,'jane','doe','oct','31','1980'); INSERT INTO emp_table2 (empID,firstname,lastname,b_mon,b_day,b_yr) VALUES (101,'john','smith','jan','01','1981'); INSERT INTO emp_table2 (empID,firstname,lastname,b_mon,b_day,b_yr) VALUES (102,'mary','jones','apr','15','1982'); INSERT INTO emp_table2 (empID,firstname,lastname,b_mon,b_day,b_yr) VALUES (103,'tim','best','oct','25','1982'); SELECT b_mon,b_day,b_yr,firstname,lastname FROM emp_table2 WHERE b_mon='oct' ALLOW FILTERING; Bad Request: No indexed columns present in by-columns clause with Equal operator -- This message was sent by Atlassian JIRA (v6.2#6252)
[jira] [Updated] (CASSANDRA-7695) Inserting the same row in parallel causes bad data to be returned to the client
[ https://issues.apache.org/jira/browse/CASSANDRA-7695?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Aleksey Yeschenko updated CASSANDRA-7695: - Since Version: 2.1 rc1 (was: 2.1 rc4) The bug is legit. Closing in on the cause right now. FWIW, beta2 is unaffected, so it was introduced in rc1. Also, the issue only manifests when large values are being concurrently overwritten - ~100KB and larger. Will update w/ new details shortly. Inserting the same row in parallel causes bad data to be returned to the client --- Key: CASSANDRA-7695 URL: https://issues.apache.org/jira/browse/CASSANDRA-7695 Project: Cassandra Issue Type: Bug Environment: Linux 3.12.21, JVM 1.7u60 Cassandra server 2.1.0 RC 5 Cassandra datastax client version 2.1.0RC1 Reporter: Johan Bjork Assignee: Aleksey Yeschenko Priority: Critical Fix For: 2.1.0 Attachments: PutFailureRepro.java, bad-data-tid43-get, bad-data-tid43-put Running the attached test program against a cassandra 2.1 server results in scrambled data returned by the SELECT statement. Running it against latest stable works fine. Attached: * Program that reproduces the failure * Example output files from mentioned test-program with the scrambled output. Failure mode: The value returned by 'get' is scrambled, the size is correct but some bytes have shifted locations in the returned buffer. Cluster info: For the test we set up a single cassandra node using the stock configuration file. -- This message was sent by Atlassian JIRA (v6.2#6252)
[jira] [Commented] (CASSANDRA-7232) Enable live replay of commit logs
[ https://issues.apache.org/jira/browse/CASSANDRA-7232?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14087832#comment-14087832 ] Lyuben Todorov commented on CASSANDRA-7232: --- Added a nodetool command to replay archived commitlogs using the directory setting from {{commitlog_archiving.properties}} that takes a point-in-time as a parameter (split into two params, one is the date, the other is the time, in the same format used in the properties file for {{restore_point_in_time}}). Command usage example below: {noformat} nodetool replaycommitlogs date time nodetool replaycommitlogs 2014:08:06 10:43:12 {noformat} One concern with the commit is that a system setting is used in {{SS#recoverCommitlog}} to overload the point-in-time setting in the {{CLArchiver}} which immutable, not sure if this is the best way to go about it but if anyone has ideas I'm very open to suggestions. [Draft branch here|https://github.com/lyubent/cassandra/commit/ce786eea52eb3e1200a7f5cf5d429257ae13c8dd]. Enable live replay of commit logs - Key: CASSANDRA-7232 URL: https://issues.apache.org/jira/browse/CASSANDRA-7232 Project: Cassandra Issue Type: Improvement Components: Tools Reporter: Patrick McFadin Assignee: Lyuben Todorov Priority: Minor Fix For: 2.0.10 Attachments: 0001-Expose-CommitLog-recover-to-JMX-add-nodetool-cmd-for.patch, 0001-TRUNK-JMX-and-nodetool-cmd-for-commitlog-replay.patch Replaying commit logs takes a restart but restoring sstables can be an online operation with refresh. In order to restore a point-in-time without a restart, the node needs to live replay the commit logs from JMX and a nodetool command. nodetool refreshcommitlogs keyspace table -- This message was sent by Atlassian JIRA (v6.2#6252)
[jira] [Commented] (CASSANDRA-7546) AtomicSortedColumns.addAllWithSizeDelta has a spin loop that allocates memory
[ https://issues.apache.org/jira/browse/CASSANDRA-7546?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14087841#comment-14087841 ] graham sanderson commented on CASSANDRA-7546: - Cool will do; addColumns also CASes a thread locally modified Holder anyway. Yes I agree it is ugly to have a non final in something like Holder (being CASed immutable state) but I think we can live with it since it is not mutated after CAS As said, we can revert to monitor enter/exit if you wish... I can't prove it is worse, and there isn't a whole lot that needs optimization here Note you have a comment {quote} in wasteTracker we maintain within EXCESS_WASTE_OFFSET either side of the current time {quote} We probably mean to the left of... before or after are a bit confusing here! I thought about a couple of things while you were on vacation # Volatile read of the wasteTracker in the fast path. We could avoid this thru some ugliness of hijacking the top bit in the tree size mark pessimistic locking too. Not to concerned about this - believe it is free on intel anyway # Adjacent in memory CASed vars in the AtomicSortedColumns - Again not majorly worried here... I don't think the (CASed) variables themselves are highly contended, it is more that we are doing lots of slow concurrent work, and then failing the CAS. AtomicSortedColumns.addAllWithSizeDelta has a spin loop that allocates memory - Key: CASSANDRA-7546 URL: https://issues.apache.org/jira/browse/CASSANDRA-7546 Project: Cassandra Issue Type: Bug Components: Core Reporter: graham sanderson Assignee: graham sanderson Attachments: 7546.20.txt, 7546.20_2.txt, 7546.20_3.txt, 7546.20_4.txt, 7546.20_5.txt, 7546.20_6.txt, 7546.20_alt.txt, suggestion1.txt, suggestion1_21.txt In order to preserve atomicity, this code attempts to read, clone/update, then CAS the state of the partition. Under heavy contention for updating a single partition this can cause some fairly staggering memory growth (the more cores on your machine the worst it gets). Whilst many usage patterns don't do highly concurrent updates to the same partition, hinting today, does, and in this case wild (order(s) of magnitude more than expected) memory allocation rates can be seen (especially when the updates being hinted are small updates to different partitions which can happen very fast on their own) - see CASSANDRA-7545 It would be best to eliminate/reduce/limit the spinning memory allocation whilst not slowing down the very common un-contended case. -- This message was sent by Atlassian JIRA (v6.2#6252)
[jira] [Comment Edited] (CASSANDRA-7546) AtomicSortedColumns.addAllWithSizeDelta has a spin loop that allocates memory
[ https://issues.apache.org/jira/browse/CASSANDRA-7546?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14087841#comment-14087841 ] graham sanderson edited comment on CASSANDRA-7546 at 8/6/14 4:13 PM: - Cool will do; addColumns also CASes a thread locally modified Holder anyway. Yes I agree it is ugly to have a non final in something like Holder (being CASed immutable state) but I think we can live with it since it is not mutated after CAS As said, we can revert to monitor enter/exit if you wish... I can't prove it is worse, and there isn't a whole lot that needs optimization here Note you have a comment {quote} in wasteTracker we maintain within EXCESS_WASTE_OFFSET either side of the current time {quote} We probably mean to the left of... before or after are a bit confusing here! I thought about a couple of things while you were on vacation # Volatile read of the wasteTracker in the fast path. We could avoid this thru some ugliness of hijacking the top bit in the tree size to mark pessimistic locking also. Not to concerned about this read - believe it is free on intel anyway # Adjacent in memory CASed vars in the AtomicSortedColumns - Again not majorly worried here... I don't think the (CASed) variables themselves are highly contended, it is more that we are doing lots of slow concurrent work, and then failing the CAS. was (Author: graham sanderson): Cool will do; addColumns also CASes a thread locally modified Holder anyway. Yes I agree it is ugly to have a non final in something like Holder (being CASed immutable state) but I think we can live with it since it is not mutated after CAS As said, we can revert to monitor enter/exit if you wish... I can't prove it is worse, and there isn't a whole lot that needs optimization here Note you have a comment {quote} in wasteTracker we maintain within EXCESS_WASTE_OFFSET either side of the current time {quote} We probably mean to the left of... before or after are a bit confusing here! I thought about a couple of things while you were on vacation # Volatile read of the wasteTracker in the fast path. We could avoid this thru some ugliness of hijacking the top bit in the tree size mark pessimistic locking too. Not to concerned about this - believe it is free on intel anyway # Adjacent in memory CASed vars in the AtomicSortedColumns - Again not majorly worried here... I don't think the (CASed) variables themselves are highly contended, it is more that we are doing lots of slow concurrent work, and then failing the CAS. AtomicSortedColumns.addAllWithSizeDelta has a spin loop that allocates memory - Key: CASSANDRA-7546 URL: https://issues.apache.org/jira/browse/CASSANDRA-7546 Project: Cassandra Issue Type: Bug Components: Core Reporter: graham sanderson Assignee: graham sanderson Attachments: 7546.20.txt, 7546.20_2.txt, 7546.20_3.txt, 7546.20_4.txt, 7546.20_5.txt, 7546.20_6.txt, 7546.20_alt.txt, suggestion1.txt, suggestion1_21.txt In order to preserve atomicity, this code attempts to read, clone/update, then CAS the state of the partition. Under heavy contention for updating a single partition this can cause some fairly staggering memory growth (the more cores on your machine the worst it gets). Whilst many usage patterns don't do highly concurrent updates to the same partition, hinting today, does, and in this case wild (order(s) of magnitude more than expected) memory allocation rates can be seen (especially when the updates being hinted are small updates to different partitions which can happen very fast on their own) - see CASSANDRA-7545 It would be best to eliminate/reduce/limit the spinning memory allocation whilst not slowing down the very common un-contended case. -- This message was sent by Atlassian JIRA (v6.2#6252)
[1/3] git commit: Remove ICPRR too
Repository: cassandra Updated Branches: refs/heads/cassandra-2.1 8822c96d3 - b4aa75012 refs/heads/trunk 487de3daf - 152806414 Remove ICPRR too Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/b4aa7501 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/b4aa7501 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/b4aa7501 Branch: refs/heads/cassandra-2.1 Commit: b4aa75012276c4d78253bf95a4fc6f0c5f342c04 Parents: 8822c96 Author: Brandon Williams brandonwilli...@apache.org Authored: Wed Aug 6 11:16:05 2014 -0500 Committer: Brandon Williams brandonwilli...@apache.org Committed: Wed Aug 6 11:16:05 2014 -0500 -- .../cql3/IterableCqlPagingRecordReader.java | 73 1 file changed, 73 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/b4aa7501/src/java/org/apache/cassandra/hadoop/cql3/IterableCqlPagingRecordReader.java -- diff --git a/src/java/org/apache/cassandra/hadoop/cql3/IterableCqlPagingRecordReader.java b/src/java/org/apache/cassandra/hadoop/cql3/IterableCqlPagingRecordReader.java deleted file mode 100644 index d7348b0..000 --- a/src/java/org/apache/cassandra/hadoop/cql3/IterableCqlPagingRecordReader.java +++ /dev/null @@ -1,73 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * License); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an AS IS BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.apache.cassandra.hadoop.cql3; - -import java.io.Closeable; -import java.io.IOException; -import java.nio.ByteBuffer; -import java.util.Iterator; -import java.util.Map; - -import org.apache.cassandra.utils.Pair; - -/** - * Implements an iterable-friendly {@link CqlPagingRecordReader}. - */ -public class IterableCqlPagingRecordReader extends CqlPagingRecordReader - implements IterablePairMapString, ByteBuffer, MapString, ByteBuffer, Closeable -{ -public IteratorPairMapString, ByteBuffer, MapString, ByteBuffer iterator() -{ -return new IteratorPairMapString, ByteBuffer, MapString, ByteBuffer() -{ -public boolean hasNext() -{ -return rowIterator.hasNext(); -} - -public PairMapString, ByteBuffer, MapString, ByteBuffer next() -{ -return rowIterator.next(); -} - -public void remove() -{ -throw new UnsupportedOperationException(Cannot remove an element on this iterator!); - -} -}; -} - -/** - * @throws NotImplementedException Always throws this exception, this operation does not make sense in this implementation. - */ -@Override -public boolean nextKeyValue() throws IOException -{ -throw new UnsupportedOperationException(Calling method nextKeyValue() does not make sense in this implementation); -} - -/** - * @throws NotImplementedException Always throws this exception, this operation does not make sense in this implementation. - */ -@Override -public boolean next(MapString, ByteBuffer keys, MapString, ByteBuffer value) throws IOException -{ -throw new UnsupportedOperationException(Calling method next() does not make sense in this implementation); -} -}
[3/3] git commit: Merge branch 'cassandra-2.1' into trunk
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/15280641 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/15280641 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/15280641 Branch: refs/heads/trunk Commit: 1528064146298a4d628fb51db47e5313d0340e59 Parents: 487de3d b4aa750 Author: Brandon Williams brandonwilli...@apache.org Authored: Wed Aug 6 11:16:24 2014 -0500 Committer: Brandon Williams brandonwilli...@apache.org Committed: Wed Aug 6 11:16:24 2014 -0500 -- .../cql3/IterableCqlPagingRecordReader.java | 73 1 file changed, 73 deletions(-) --
[2/3] git commit: Remove ICPRR too
Remove ICPRR too Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/b4aa7501 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/b4aa7501 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/b4aa7501 Branch: refs/heads/trunk Commit: b4aa75012276c4d78253bf95a4fc6f0c5f342c04 Parents: 8822c96 Author: Brandon Williams brandonwilli...@apache.org Authored: Wed Aug 6 11:16:05 2014 -0500 Committer: Brandon Williams brandonwilli...@apache.org Committed: Wed Aug 6 11:16:05 2014 -0500 -- .../cql3/IterableCqlPagingRecordReader.java | 73 1 file changed, 73 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/b4aa7501/src/java/org/apache/cassandra/hadoop/cql3/IterableCqlPagingRecordReader.java -- diff --git a/src/java/org/apache/cassandra/hadoop/cql3/IterableCqlPagingRecordReader.java b/src/java/org/apache/cassandra/hadoop/cql3/IterableCqlPagingRecordReader.java deleted file mode 100644 index d7348b0..000 --- a/src/java/org/apache/cassandra/hadoop/cql3/IterableCqlPagingRecordReader.java +++ /dev/null @@ -1,73 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * License); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an AS IS BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.apache.cassandra.hadoop.cql3; - -import java.io.Closeable; -import java.io.IOException; -import java.nio.ByteBuffer; -import java.util.Iterator; -import java.util.Map; - -import org.apache.cassandra.utils.Pair; - -/** - * Implements an iterable-friendly {@link CqlPagingRecordReader}. - */ -public class IterableCqlPagingRecordReader extends CqlPagingRecordReader - implements IterablePairMapString, ByteBuffer, MapString, ByteBuffer, Closeable -{ -public IteratorPairMapString, ByteBuffer, MapString, ByteBuffer iterator() -{ -return new IteratorPairMapString, ByteBuffer, MapString, ByteBuffer() -{ -public boolean hasNext() -{ -return rowIterator.hasNext(); -} - -public PairMapString, ByteBuffer, MapString, ByteBuffer next() -{ -return rowIterator.next(); -} - -public void remove() -{ -throw new UnsupportedOperationException(Cannot remove an element on this iterator!); - -} -}; -} - -/** - * @throws NotImplementedException Always throws this exception, this operation does not make sense in this implementation. - */ -@Override -public boolean nextKeyValue() throws IOException -{ -throw new UnsupportedOperationException(Calling method nextKeyValue() does not make sense in this implementation); -} - -/** - * @throws NotImplementedException Always throws this exception, this operation does not make sense in this implementation. - */ -@Override -public boolean next(MapString, ByteBuffer keys, MapString, ByteBuffer value) throws IOException -{ -throw new UnsupportedOperationException(Calling method next() does not make sense in this implementation); -} -}
[jira] [Commented] (CASSANDRA-7546) AtomicSortedColumns.addAllWithSizeDelta has a spin loop that allocates memory
[ https://issues.apache.org/jira/browse/CASSANDRA-7546?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14087850#comment-14087850 ] Benedict commented on CASSANDRA-7546: - bq. We probably mean to the left of... before or after are a bit confusing here! Yep, good catch! bq. Volatile read of the wasteTracker in the fast path. At the moment we mostly optimise for x86 for the moment, and it's essentially free here as you say. Even on platforms it isn't, it's unlikely to be a significant part of the overall costs, so better to keep it cleaner bq. Adjacent in memory CASed vars in the AtomicSortedColumns - Again not majorly worried here... I don't think the (CASed) variables themselves are highly contended, it is more that we are doing lots of slow concurrent work, and then failing the CAS. Absolutely not worried about this. Like you say, most of the cost is elsewhere. Would be much worse to pollute the cache with padding to avoid it. AtomicSortedColumns.addAllWithSizeDelta has a spin loop that allocates memory - Key: CASSANDRA-7546 URL: https://issues.apache.org/jira/browse/CASSANDRA-7546 Project: Cassandra Issue Type: Bug Components: Core Reporter: graham sanderson Assignee: graham sanderson Attachments: 7546.20.txt, 7546.20_2.txt, 7546.20_3.txt, 7546.20_4.txt, 7546.20_5.txt, 7546.20_6.txt, 7546.20_alt.txt, suggestion1.txt, suggestion1_21.txt In order to preserve atomicity, this code attempts to read, clone/update, then CAS the state of the partition. Under heavy contention for updating a single partition this can cause some fairly staggering memory growth (the more cores on your machine the worst it gets). Whilst many usage patterns don't do highly concurrent updates to the same partition, hinting today, does, and in this case wild (order(s) of magnitude more than expected) memory allocation rates can be seen (especially when the updates being hinted are small updates to different partitions which can happen very fast on their own) - see CASSANDRA-7545 It would be best to eliminate/reduce/limit the spinning memory allocation whilst not slowing down the very common un-contended case. -- This message was sent by Atlassian JIRA (v6.2#6252)