git commit: ninja very slightly tweak cqlsh completion
Updated Branches: refs/heads/cassandra-1.2.0 5a3eb1a6c - 25d95377d ninja very slightly tweak cqlsh completion Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/25d95377 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/25d95377 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/25d95377 Branch: refs/heads/cassandra-1.2.0 Commit: 25d95377dba23b7918d2c6902a89ed063e30b503 Parents: 5a3eb1a Author: Aleksey Yeschenko alek...@apache.org Authored: Wed Nov 28 13:55:55 2012 +0300 Committer: Aleksey Yeschenko alek...@apache.org Committed: Wed Nov 28 13:55:55 2012 +0300 -- pylib/cqlshlib/cql3handling.py | 15 +-- 1 files changed, 9 insertions(+), 6 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/25d95377/pylib/cqlshlib/cql3handling.py -- diff --git a/pylib/cqlshlib/cql3handling.py b/pylib/cqlshlib/cql3handling.py index 1ef9dcb..254e62a 100644 --- a/pylib/cqlshlib/cql3handling.py +++ b/pylib/cqlshlib/cql3handling.py @@ -251,9 +251,7 @@ JUNK ::= /([ \t\r\f\v]+|(--|[/][/])[^\n\r]*([\n\r]|$)|[/][*].*?[*][/])/ ; | selectStatement | dataChangeStatement | schemaChangeStatement - | grantStatement - | revokeStatement - | listGrantsStatement + | authorizationStatement ; dataChangeStatement ::= insertStatement @@ -273,6 +271,11 @@ JUNK ::= /([ \t\r\f\v]+|(--|[/][/])[^\n\r]*([\n\r]|$)|[/][*].*?[*][/])/ ; | alterKeyspaceStatement ; +authorizationStatement ::= | grantStatement + | revokeStatement + | listPermissionsStatement + ; + # timestamp is included here, since it's also a keyword simpleStorageType ::= typename=( identifier | stringLiteral | K_TIMESTAMP ) ; @@ -1237,9 +1240,9 @@ syntax_rules += r''' revokeStatement ::= REVOKE permissionExpr ON resource FROM username ; -listGrantsStatement ::= LIST permissionExpr - ( ON resource )? ( OF username )? NORECURSIVE? -; +listPermissionsStatement ::= LIST permissionExpr +( ON resource )? ( OF username )? NORECURSIVE? + ; permission ::= AUTHORIZE | CREATE
[1/2] git commit: Merge branch 'cassandra-1.2.0' into cassandra-1.2
Updated Branches: refs/heads/cassandra-1.2 fbd640063 - 3a92236a2 Merge branch 'cassandra-1.2.0' into cassandra-1.2 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/3a92236a Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/3a92236a Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/3a92236a Branch: refs/heads/cassandra-1.2 Commit: 3a92236a249a6f8a0808736e5171b9debdb2a979 Parents: fbd6400 25d9537 Author: Aleksey Yeschenko alek...@apache.org Authored: Wed Nov 28 13:56:58 2012 +0300 Committer: Aleksey Yeschenko alek...@apache.org Committed: Wed Nov 28 13:56:58 2012 +0300 -- pylib/cqlshlib/cql3handling.py | 15 +-- 1 files changed, 9 insertions(+), 6 deletions(-) --
[2/2] git commit: ninja very slightly tweak cqlsh completion
ninja very slightly tweak cqlsh completion Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/25d95377 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/25d95377 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/25d95377 Branch: refs/heads/cassandra-1.2 Commit: 25d95377dba23b7918d2c6902a89ed063e30b503 Parents: 5a3eb1a Author: Aleksey Yeschenko alek...@apache.org Authored: Wed Nov 28 13:55:55 2012 +0300 Committer: Aleksey Yeschenko alek...@apache.org Committed: Wed Nov 28 13:55:55 2012 +0300 -- pylib/cqlshlib/cql3handling.py | 15 +-- 1 files changed, 9 insertions(+), 6 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/25d95377/pylib/cqlshlib/cql3handling.py -- diff --git a/pylib/cqlshlib/cql3handling.py b/pylib/cqlshlib/cql3handling.py index 1ef9dcb..254e62a 100644 --- a/pylib/cqlshlib/cql3handling.py +++ b/pylib/cqlshlib/cql3handling.py @@ -251,9 +251,7 @@ JUNK ::= /([ \t\r\f\v]+|(--|[/][/])[^\n\r]*([\n\r]|$)|[/][*].*?[*][/])/ ; | selectStatement | dataChangeStatement | schemaChangeStatement - | grantStatement - | revokeStatement - | listGrantsStatement + | authorizationStatement ; dataChangeStatement ::= insertStatement @@ -273,6 +271,11 @@ JUNK ::= /([ \t\r\f\v]+|(--|[/][/])[^\n\r]*([\n\r]|$)|[/][*].*?[*][/])/ ; | alterKeyspaceStatement ; +authorizationStatement ::= | grantStatement + | revokeStatement + | listPermissionsStatement + ; + # timestamp is included here, since it's also a keyword simpleStorageType ::= typename=( identifier | stringLiteral | K_TIMESTAMP ) ; @@ -1237,9 +1240,9 @@ syntax_rules += r''' revokeStatement ::= REVOKE permissionExpr ON resource FROM username ; -listGrantsStatement ::= LIST permissionExpr - ( ON resource )? ( OF username )? NORECURSIVE? -; +listPermissionsStatement ::= LIST permissionExpr +( ON resource )? ( OF username )? NORECURSIVE? + ; permission ::= AUTHORIZE | CREATE
[1/3] git commit: Merge branch 'cassandra-1.2' into trunk
Updated Branches: refs/heads/trunk 9c0a1986a - be3a22906 Merge branch 'cassandra-1.2' into trunk Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/be3a2290 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/be3a2290 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/be3a2290 Branch: refs/heads/trunk Commit: be3a229068ddea7af334beb53175ebb02ce06174 Parents: 9c0a198 3a92236 Author: Aleksey Yeschenko alek...@apache.org Authored: Wed Nov 28 13:57:45 2012 +0300 Committer: Aleksey Yeschenko alek...@apache.org Committed: Wed Nov 28 13:57:45 2012 +0300 -- pylib/cqlshlib/cql3handling.py | 15 +-- 1 files changed, 9 insertions(+), 6 deletions(-) --
[2/3] git commit: Merge branch 'cassandra-1.2.0' into cassandra-1.2
Merge branch 'cassandra-1.2.0' into cassandra-1.2 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/3a92236a Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/3a92236a Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/3a92236a Branch: refs/heads/trunk Commit: 3a92236a249a6f8a0808736e5171b9debdb2a979 Parents: fbd6400 25d9537 Author: Aleksey Yeschenko alek...@apache.org Authored: Wed Nov 28 13:56:58 2012 +0300 Committer: Aleksey Yeschenko alek...@apache.org Committed: Wed Nov 28 13:56:58 2012 +0300 -- pylib/cqlshlib/cql3handling.py | 15 +-- 1 files changed, 9 insertions(+), 6 deletions(-) --
[3/3] git commit: ninja very slightly tweak cqlsh completion
ninja very slightly tweak cqlsh completion Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/25d95377 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/25d95377 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/25d95377 Branch: refs/heads/trunk Commit: 25d95377dba23b7918d2c6902a89ed063e30b503 Parents: 5a3eb1a Author: Aleksey Yeschenko alek...@apache.org Authored: Wed Nov 28 13:55:55 2012 +0300 Committer: Aleksey Yeschenko alek...@apache.org Committed: Wed Nov 28 13:55:55 2012 +0300 -- pylib/cqlshlib/cql3handling.py | 15 +-- 1 files changed, 9 insertions(+), 6 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/25d95377/pylib/cqlshlib/cql3handling.py -- diff --git a/pylib/cqlshlib/cql3handling.py b/pylib/cqlshlib/cql3handling.py index 1ef9dcb..254e62a 100644 --- a/pylib/cqlshlib/cql3handling.py +++ b/pylib/cqlshlib/cql3handling.py @@ -251,9 +251,7 @@ JUNK ::= /([ \t\r\f\v]+|(--|[/][/])[^\n\r]*([\n\r]|$)|[/][*].*?[*][/])/ ; | selectStatement | dataChangeStatement | schemaChangeStatement - | grantStatement - | revokeStatement - | listGrantsStatement + | authorizationStatement ; dataChangeStatement ::= insertStatement @@ -273,6 +271,11 @@ JUNK ::= /([ \t\r\f\v]+|(--|[/][/])[^\n\r]*([\n\r]|$)|[/][*].*?[*][/])/ ; | alterKeyspaceStatement ; +authorizationStatement ::= | grantStatement + | revokeStatement + | listPermissionsStatement + ; + # timestamp is included here, since it's also a keyword simpleStorageType ::= typename=( identifier | stringLiteral | K_TIMESTAMP ) ; @@ -1237,9 +1240,9 @@ syntax_rules += r''' revokeStatement ::= REVOKE permissionExpr ON resource FROM username ; -listGrantsStatement ::= LIST permissionExpr - ( ON resource )? ( OF username )? NORECURSIVE? -; +listPermissionsStatement ::= LIST permissionExpr +( ON resource )? ( OF username )? NORECURSIVE? + ; permission ::= AUTHORIZE | CREATE
[jira] [Commented] (CASSANDRA-4651) RangeStreamer fails the bootstrap process if any node streaming data fails.
[ https://issues.apache.org/jira/browse/CASSANDRA-4651?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13505434#comment-13505434 ] Ivan Sobolev commented on CASSANDRA-4651: - Also it seems that as a result newjoiner node may accept responsibility for token range it has no/partial data for. RangeStreamer fails the bootstrap process if any node streaming data fails. --- Key: CASSANDRA-4651 URL: https://issues.apache.org/jira/browse/CASSANDRA-4651 Project: Cassandra Issue Type: Improvement Components: Core Affects Versions: 1.1.5 Reporter: sankalp kohli Priority: Minor If any node streaming the data fails, RangeStreamer throws a Runtime exception and aborts the bootstrap. If the N = 3, it can stream data from some other node and need not fail the bootstrap process. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Updated] (CASSANDRA-4999) CQL2 returns empty results from song_tags
[ https://issues.apache.org/jira/browse/CASSANDRA-4999?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Kristine Hahn updated CASSANDRA-4999: - Summary: CQL2 returns empty results from song_tags (was: 1.2.0-beta2 does returns empty results from song_tags in CQL2) CQL2 returns empty results from song_tags - Key: CASSANDRA-4999 URL: https://issues.apache.org/jira/browse/CASSANDRA-4999 Project: Cassandra Issue Type: Bug Affects Versions: 1.2.0 beta 2 Reporter: Kristine Hahn Priority: Trivial To reproduce the problem: 1. start CQL2 ./cqlsh --cql2 Connected to Test Cluster at localhost:9160. [cqlsh 2.3.0 | Cassandra 0.0.0 | CQL spec 2.0.0 | Thrift protocol 19.35.0] 2. create a keyspace and use it. 3. create the tables and insert data: CREATE COLUMNFAMILY songs (id uuid PRIMARY KEY, title text, album text, artist text, data blob); CREATE COLUMNFAMILY song_tags (id uuid PRIMARY KEY) WITH comparator=text; insert into songs (id, title, artist, album) values ('a3e64f8f-bd44-4f28-b8d9-6938726e34d4', 'La Grange', 'ZZ Top', 'Tres Hombres'); insert into songs (id, title, artist, album) values ('8a172618-b121-4136-bb10-f665cfc469eb', 'Moving in Stereo', 'Fu Manchu', 'We Must Obey'); insert into songs (id, title, artist, album) values ('62c36092-82a1-3a00-93d1-46196ee77204', 'Outside Woman Blues', 'Back Door Slam', 'Roll Away'); insert into song_tags ('id', 'blues', '1973') values ('a3e64f8f-bd44-4f28-b8d9-6938726e34d4', '', ''); insert into song_tags ('id', 'covers', '2007') values ('8a172618-b121-4136-bb10-f665cfc469eb', '', ''); 4. Select * from song_tags; Expected result: id,8a172618-b121-4136-bb10-f665cfc469eb | 2007, | covers, id,a3e64f8f-bd44-4f28-b8d9-6938726e34d4 | 1973, | blues, Actual result: none -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (CASSANDRA-4482) In-memory merkle trees for repair
[ https://issues.apache.org/jira/browse/CASSANDRA-4482?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13505517#comment-13505517 ] Stefan Fleiter commented on CASSANDRA-4482: --- This solutions seems conceptionally simpler and more robust to me than hinted handoff. * No additional write load is added * No necessary knowledge of other nodes state * Repair can be controlled by each node themselves * If a repair gets interrupted it can be restarted easily * Existing Hinted Handoff problems are large in count ** A search for open Cassandra Hinted Handoff bugs results in a list of over 500 issues So a usage scenario for In-memory merkle trees for repair might be to let this replace HH entirely. In-memory merkle trees for repair - Key: CASSANDRA-4482 URL: https://issues.apache.org/jira/browse/CASSANDRA-4482 Project: Cassandra Issue Type: New Feature Reporter: Marcus Eriksson this sounds cool, we should reimplement it in the open source cassandra; http://www.acunu.com/2/post/2012/07/incremental-repair.html -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Updated] (CASSANDRA-4762) Support multiple OR clauses for CQL3 Compact storage
[ https://issues.apache.org/jira/browse/CASSANDRA-4762?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] T Jake Luciani updated CASSANDRA-4762: -- Attachment: 4762-1.txt Support multiple OR clauses for CQL3 Compact storage Key: CASSANDRA-4762 URL: https://issues.apache.org/jira/browse/CASSANDRA-4762 Project: Cassandra Issue Type: Improvement Components: Core Reporter: T Jake Luciani Assignee: T Jake Luciani Fix For: 1.2.1 Attachments: 4762-1.txt Given CASSANDRA-3885 It seems it should be possible to store multiple ranges for many predicates even the inner parts of a composite column. They could be expressed as a expanded set of filter queries. example: {code} CREATE TABLE test ( name text, tdate timestamp, tdate2 timestamp, tdate3 timestamp, num double, PRIMARY KEY(key,tdate,tdate2,tdate3) ) WITH COMPACT STORAGE; SELECT * FROM test WHERE name IN ('a','b') and tdate IN ('2010-01-01','2011-01-01') and tdate2 IN ('2010-01-01','2011-01-01') and tdate3 IN ('2010-01-01','2011-01-01') and num 1.0 {code} -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Created] (CASSANDRA-5000) Null pointer exception in SecondaryIndexManager.getIndexKeyFor in Cassandra 1.1.x
David Tootill created CASSANDRA-5000: Summary: Null pointer exception in SecondaryIndexManager.getIndexKeyFor in Cassandra 1.1.x Key: CASSANDRA-5000 URL: https://issues.apache.org/jira/browse/CASSANDRA-5000 Project: Cassandra Issue Type: Bug Components: Core Affects Versions: 1.1.6, 1.1.5, 1.1.4, 1.1.3, 1.1.2, 1.1.1, 1.1.0 Environment: Linux (exact environment doesn't appear to be relevant; reproduced on RedHat and Centos) Reporter: David Tootill Priority: Critical Cassandra 1.1.0 and following releases gets an NPE in SecondaryIndexManager writing a CF with multiple secondary keys. Problem did not occur in 1.0.x, and can be resolved by downgrading the Cassandra server. Stack trace is: ERROR [MutationStage:47] 2012-11-28 11:24:30,865 AbstractCassandraDaemon.java (line 134) Exception in thread Thread[MutationStage:47,5,main] java.lang.RuntimeException: java.lang.NullPointerException at org.apache.cassandra.service.StorageProxy$DroppableRunnable.run(StorageProxy.java:1254) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603) at java.lang.Thread.run(Thread.java:722) Caused by: java.lang.NullPointerException at org.apache.cassandra.db.index.SecondaryIndexManager.getIndexKeyFor(SecondaryIndexManager.java:299) at org.apache.cassandra.db.index.SecondaryIndexManager.applyIndexUpdates(SecondaryIndexManager.java:463) at org.apache.cassandra.db.Table.apply(Table.java:459) at org.apache.cassandra.db.Table.apply(Table.java:384) at org.apache.cassandra.db.RowMutation.apply(RowMutation.java:294) at org.apache.cassandra.service.StorageProxy$6.runMayThrow(StorageProxy.java:453) at org.apache.cassandra.service.StorageProxy$DroppableRunnable.run(StorageProxy.java:1250) Client stack trace is: me.prettyprint.hector.api.exceptions.HTimedOutException: TimedOutException() at me.prettyprint.cassandra.service.ExceptionsTranslatorImpl.translate(ExceptionsTranslatorImpl.java:35)[hector-core-1.0-5.jar:] at me.prettyprint.cassandra.connection.HConnectionManager.operateWithFailover(HConnectionManager.java:264)[hector-core-1.0-5.jar:] at me.prettyprint.cassandra.model.ExecutingKeyspace.doExecuteOperation(ExecutingKeyspace.java:97)[hector-core-1.0-5.jar:] at me.prettyprint.cassandra.model.MutatorImpl.execute(MutatorImpl.java:243)[hector-core-1.0-5.jar:] ... 3 more -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Updated] (CASSANDRA-5000) Null pointer exception in SecondaryIndexManager.getIndexKeyFor in Cassandra 1.1.x
[ https://issues.apache.org/jira/browse/CASSANDRA-5000?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] David Tootill updated CASSANDRA-5000: - Attachment: stdlog.txt system.log system.log is Cassandra 1.1.4 system.log stdlog.txt is client log Null pointer exception in SecondaryIndexManager.getIndexKeyFor in Cassandra 1.1.x -- Key: CASSANDRA-5000 URL: https://issues.apache.org/jira/browse/CASSANDRA-5000 Project: Cassandra Issue Type: Bug Components: Core Affects Versions: 1.1.0, 1.1.1, 1.1.2, 1.1.3, 1.1.4, 1.1.5, 1.1.6 Environment: Linux (exact environment doesn't appear to be relevant; reproduced on RedHat and Centos) Reporter: David Tootill Priority: Critical Attachments: stdlog.txt, system.log Cassandra 1.1.0 and following releases gets an NPE in SecondaryIndexManager writing a CF with multiple secondary keys. Problem did not occur in 1.0.x, and can be resolved by downgrading the Cassandra server. Stack trace is: ERROR [MutationStage:47] 2012-11-28 11:24:30,865 AbstractCassandraDaemon.java (line 134) Exception in thread Thread[MutationStage:47,5,main] java.lang.RuntimeException: java.lang.NullPointerException at org.apache.cassandra.service.StorageProxy$DroppableRunnable.run(StorageProxy.java:1254) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603) at java.lang.Thread.run(Thread.java:722) Caused by: java.lang.NullPointerException at org.apache.cassandra.db.index.SecondaryIndexManager.getIndexKeyFor(SecondaryIndexManager.java:299) at org.apache.cassandra.db.index.SecondaryIndexManager.applyIndexUpdates(SecondaryIndexManager.java:463) at org.apache.cassandra.db.Table.apply(Table.java:459) at org.apache.cassandra.db.Table.apply(Table.java:384) at org.apache.cassandra.db.RowMutation.apply(RowMutation.java:294) at org.apache.cassandra.service.StorageProxy$6.runMayThrow(StorageProxy.java:453) at org.apache.cassandra.service.StorageProxy$DroppableRunnable.run(StorageProxy.java:1250) Client stack trace is: me.prettyprint.hector.api.exceptions.HTimedOutException: TimedOutException() at me.prettyprint.cassandra.service.ExceptionsTranslatorImpl.translate(ExceptionsTranslatorImpl.java:35)[hector-core-1.0-5.jar:] at me.prettyprint.cassandra.connection.HConnectionManager.operateWithFailover(HConnectionManager.java:264)[hector-core-1.0-5.jar:] at me.prettyprint.cassandra.model.ExecutingKeyspace.doExecuteOperation(ExecutingKeyspace.java:97)[hector-core-1.0-5.jar:] at me.prettyprint.cassandra.model.MutatorImpl.execute(MutatorImpl.java:243)[hector-core-1.0-5.jar:] ... 3 more -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Created] (CASSANDRA-5001) Generated time-based UUID don't conform to the spec
Sylvain Lebresne created CASSANDRA-5001: --- Summary: Generated time-based UUID don't conform to the spec Key: CASSANDRA-5001 URL: https://issues.apache.org/jira/browse/CASSANDRA-5001 Project: Cassandra Issue Type: Bug Reporter: Sylvain Lebresne Assignee: Sylvain Lebresne Priority: Minor Fix For: 1.2.0 When UUIDGen layout the clock sequence and and node part of version 1 UUID, it does so with {noformat} private long getClockSeqAndNode(InetAddress addr) { long lsb = 0; lsb |= (clock 0x3f00L) 56; // was 58? lsb |= 0x0080; lsb |= (clock 0x00ffL) 48; lsb |= makeNode(addr); return lsb; } {noformat} This is not correct however, as this layout the clock seq (and variant) on the right-most part of the lsb while it should be on the left-most one. At a minimum, the generated UUID don't fully respect the spec since the variant is not set correctly. But it also means that the clock seq bits end up being all 0's (as can be trivially seen in the string representation of the generated UUIDs). Note that none of those is a huge huge deal as there is still largely enough random bytes to ensure that two different nodes won't end up with the same lsb. And having the variant wrong has probably no practical implementation. There is no reason not to fix those though. One other small details is that the getAdjustedTimestamp as a sign error so that it returns completely broken timestamps. That being said the method is currently unused so that's not a big deal. I'm attaching a fix for that part too because that method might be useful someday but I won't shed a tear if we prefer just removing it. I'm marking this for 1.2 because I'm not sure it's worth bothering with 1.1. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Updated] (CASSANDRA-5001) Generated time-based UUID don't conform to the spec
[ https://issues.apache.org/jira/browse/CASSANDRA-5001?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Sylvain Lebresne updated CASSANDRA-5001: Attachment: 5001.txt Generated time-based UUID don't conform to the spec --- Key: CASSANDRA-5001 URL: https://issues.apache.org/jira/browse/CASSANDRA-5001 Project: Cassandra Issue Type: Bug Reporter: Sylvain Lebresne Assignee: Sylvain Lebresne Priority: Minor Fix For: 1.2.0 Attachments: 5001.txt When UUIDGen layout the clock sequence and and node part of version 1 UUID, it does so with {noformat} private long getClockSeqAndNode(InetAddress addr) { long lsb = 0; lsb |= (clock 0x3f00L) 56; // was 58? lsb |= 0x0080; lsb |= (clock 0x00ffL) 48; lsb |= makeNode(addr); return lsb; } {noformat} This is not correct however, as this layout the clock seq (and variant) on the right-most part of the lsb while it should be on the left-most one. At a minimum, the generated UUID don't fully respect the spec since the variant is not set correctly. But it also means that the clock seq bits end up being all 0's (as can be trivially seen in the string representation of the generated UUIDs). Note that none of those is a huge huge deal as there is still largely enough random bytes to ensure that two different nodes won't end up with the same lsb. And having the variant wrong has probably no practical implementation. There is no reason not to fix those though. One other small details is that the getAdjustedTimestamp as a sign error so that it returns completely broken timestamps. That being said the method is currently unused so that's not a big deal. I'm attaching a fix for that part too because that method might be useful someday but I won't shed a tear if we prefer just removing it. I'm marking this for 1.2 because I'm not sure it's worth bothering with 1.1. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (CASSANDRA-4999) CQL2 returns empty results from song_tags
[ https://issues.apache.org/jira/browse/CASSANDRA-4999?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13505735#comment-13505735 ] Brandon Williams commented on CASSANDRA-4999: - This appears to just be a problem in cqlsh, if you only insert one tag it works, but with more it just seems to print whitespace. CQL2 returns empty results from song_tags - Key: CASSANDRA-4999 URL: https://issues.apache.org/jira/browse/CASSANDRA-4999 Project: Cassandra Issue Type: Bug Affects Versions: 1.2.0 beta 2 Reporter: Kristine Hahn Priority: Trivial To reproduce the problem: 1. start CQL2 ./cqlsh --cql2 Connected to Test Cluster at localhost:9160. [cqlsh 2.3.0 | Cassandra 0.0.0 | CQL spec 2.0.0 | Thrift protocol 19.35.0] 2. create a keyspace and use it. 3. create the tables and insert data: CREATE COLUMNFAMILY songs (id uuid PRIMARY KEY, title text, album text, artist text, data blob); CREATE COLUMNFAMILY song_tags (id uuid PRIMARY KEY) WITH comparator=text; insert into songs (id, title, artist, album) values ('a3e64f8f-bd44-4f28-b8d9-6938726e34d4', 'La Grange', 'ZZ Top', 'Tres Hombres'); insert into songs (id, title, artist, album) values ('8a172618-b121-4136-bb10-f665cfc469eb', 'Moving in Stereo', 'Fu Manchu', 'We Must Obey'); insert into songs (id, title, artist, album) values ('62c36092-82a1-3a00-93d1-46196ee77204', 'Outside Woman Blues', 'Back Door Slam', 'Roll Away'); insert into song_tags ('id', 'blues', '1973') values ('a3e64f8f-bd44-4f28-b8d9-6938726e34d4', '', ''); insert into song_tags ('id', 'covers', '2007') values ('8a172618-b121-4136-bb10-f665cfc469eb', '', ''); 4. Select * from song_tags; Expected result: id,8a172618-b121-4136-bb10-f665cfc469eb | 2007, | covers, id,a3e64f8f-bd44-4f28-b8d9-6938726e34d4 | 1973, | blues, Actual result: none -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Assigned] (CASSANDRA-4999) CQL2 returns empty results from song_tags
[ https://issues.apache.org/jira/browse/CASSANDRA-4999?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Brandon Williams reassigned CASSANDRA-4999: --- Assignee: Aleksey Yeschenko CQL2 returns empty results from song_tags - Key: CASSANDRA-4999 URL: https://issues.apache.org/jira/browse/CASSANDRA-4999 Project: Cassandra Issue Type: Bug Affects Versions: 1.2.0 beta 2 Reporter: Kristine Hahn Assignee: Aleksey Yeschenko Priority: Trivial To reproduce the problem: 1. start CQL2 ./cqlsh --cql2 Connected to Test Cluster at localhost:9160. [cqlsh 2.3.0 | Cassandra 0.0.0 | CQL spec 2.0.0 | Thrift protocol 19.35.0] 2. create a keyspace and use it. 3. create the tables and insert data: CREATE COLUMNFAMILY songs (id uuid PRIMARY KEY, title text, album text, artist text, data blob); CREATE COLUMNFAMILY song_tags (id uuid PRIMARY KEY) WITH comparator=text; insert into songs (id, title, artist, album) values ('a3e64f8f-bd44-4f28-b8d9-6938726e34d4', 'La Grange', 'ZZ Top', 'Tres Hombres'); insert into songs (id, title, artist, album) values ('8a172618-b121-4136-bb10-f665cfc469eb', 'Moving in Stereo', 'Fu Manchu', 'We Must Obey'); insert into songs (id, title, artist, album) values ('62c36092-82a1-3a00-93d1-46196ee77204', 'Outside Woman Blues', 'Back Door Slam', 'Roll Away'); insert into song_tags ('id', 'blues', '1973') values ('a3e64f8f-bd44-4f28-b8d9-6938726e34d4', '', ''); insert into song_tags ('id', 'covers', '2007') values ('8a172618-b121-4136-bb10-f665cfc469eb', '', ''); 4. Select * from song_tags; Expected result: id,8a172618-b121-4136-bb10-f665cfc469eb | 2007, | covers, id,a3e64f8f-bd44-4f28-b8d9-6938726e34d4 | 1973, | blues, Actual result: none -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (CASSANDRA-4482) In-memory merkle trees for repair
[ https://issues.apache.org/jira/browse/CASSANDRA-4482?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13506063#comment-13506063 ] Jonathan Ellis commented on CASSANDRA-4482: --- bq. It is possible for the incremental MTs to miss a few inserts that happen when the replicas involved swap out their MTs for new ones Replacing HH with something less robust is not very attractive to me. In-memory merkle trees for repair - Key: CASSANDRA-4482 URL: https://issues.apache.org/jira/browse/CASSANDRA-4482 Project: Cassandra Issue Type: New Feature Reporter: Marcus Eriksson this sounds cool, we should reimplement it in the open source cassandra; http://www.acunu.com/2/post/2012/07/incremental-repair.html -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (CASSANDRA-5000) Null pointer exception in SecondaryIndexManager.getIndexKeyFor in Cassandra 1.1.x
[ https://issues.apache.org/jira/browse/CASSANDRA-5000?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13506065#comment-13506065 ] Jonathan Ellis commented on CASSANDRA-5000: --- Go ahead and give an example cqlsh schema and queries to reproduce. Null pointer exception in SecondaryIndexManager.getIndexKeyFor in Cassandra 1.1.x -- Key: CASSANDRA-5000 URL: https://issues.apache.org/jira/browse/CASSANDRA-5000 Project: Cassandra Issue Type: Bug Components: Core Affects Versions: 1.1.0, 1.1.1, 1.1.2, 1.1.3, 1.1.4, 1.1.5, 1.1.6 Environment: Linux (exact environment doesn't appear to be relevant; reproduced on RedHat and Centos) Reporter: David Tootill Priority: Critical Attachments: stdlog.txt, system.log Cassandra 1.1.0 and following releases gets an NPE in SecondaryIndexManager writing a CF with multiple secondary keys. Problem did not occur in 1.0.x, and can be resolved by downgrading the Cassandra server. Stack trace is: ERROR [MutationStage:47] 2012-11-28 11:24:30,865 AbstractCassandraDaemon.java (line 134) Exception in thread Thread[MutationStage:47,5,main] java.lang.RuntimeException: java.lang.NullPointerException at org.apache.cassandra.service.StorageProxy$DroppableRunnable.run(StorageProxy.java:1254) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603) at java.lang.Thread.run(Thread.java:722) Caused by: java.lang.NullPointerException at org.apache.cassandra.db.index.SecondaryIndexManager.getIndexKeyFor(SecondaryIndexManager.java:299) at org.apache.cassandra.db.index.SecondaryIndexManager.applyIndexUpdates(SecondaryIndexManager.java:463) at org.apache.cassandra.db.Table.apply(Table.java:459) at org.apache.cassandra.db.Table.apply(Table.java:384) at org.apache.cassandra.db.RowMutation.apply(RowMutation.java:294) at org.apache.cassandra.service.StorageProxy$6.runMayThrow(StorageProxy.java:453) at org.apache.cassandra.service.StorageProxy$DroppableRunnable.run(StorageProxy.java:1250) Client stack trace is: me.prettyprint.hector.api.exceptions.HTimedOutException: TimedOutException() at me.prettyprint.cassandra.service.ExceptionsTranslatorImpl.translate(ExceptionsTranslatorImpl.java:35)[hector-core-1.0-5.jar:] at me.prettyprint.cassandra.connection.HConnectionManager.operateWithFailover(HConnectionManager.java:264)[hector-core-1.0-5.jar:] at me.prettyprint.cassandra.model.ExecutingKeyspace.doExecuteOperation(ExecutingKeyspace.java:97)[hector-core-1.0-5.jar:] at me.prettyprint.cassandra.model.MutatorImpl.execute(MutatorImpl.java:243)[hector-core-1.0-5.jar:] ... 3 more -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Updated] (CASSANDRA-5001) Generated time-based UUID don't conform to the spec
[ https://issues.apache.org/jira/browse/CASSANDRA-5001?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Jonathan Ellis updated CASSANDRA-5001: -- Reviewer: vijay2...@yahoo.com Generated time-based UUID don't conform to the spec --- Key: CASSANDRA-5001 URL: https://issues.apache.org/jira/browse/CASSANDRA-5001 Project: Cassandra Issue Type: Bug Reporter: Sylvain Lebresne Assignee: Sylvain Lebresne Priority: Minor Fix For: 1.2.0 Attachments: 5001.txt When UUIDGen layout the clock sequence and and node part of version 1 UUID, it does so with {noformat} private long getClockSeqAndNode(InetAddress addr) { long lsb = 0; lsb |= (clock 0x3f00L) 56; // was 58? lsb |= 0x0080; lsb |= (clock 0x00ffL) 48; lsb |= makeNode(addr); return lsb; } {noformat} This is not correct however, as this layout the clock seq (and variant) on the right-most part of the lsb while it should be on the left-most one. At a minimum, the generated UUID don't fully respect the spec since the variant is not set correctly. But it also means that the clock seq bits end up being all 0's (as can be trivially seen in the string representation of the generated UUIDs). Note that none of those is a huge huge deal as there is still largely enough random bytes to ensure that two different nodes won't end up with the same lsb. And having the variant wrong has probably no practical implementation. There is no reason not to fix those though. One other small details is that the getAdjustedTimestamp as a sign error so that it returns completely broken timestamps. That being said the method is currently unused so that's not a big deal. I'm attaching a fix for that part too because that method might be useful someday but I won't shed a tear if we prefer just removing it. I'm marking this for 1.2 because I'm not sure it's worth bothering with 1.1. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Updated] (CASSANDRA-4790) Allow property override of available processors value
[ https://issues.apache.org/jira/browse/CASSANDRA-4790?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Jonathan Ellis updated CASSANDRA-4790: -- Priority: Minor (was: Major) Affects Version/s: (was: 1.1.4) Fix Version/s: 1.1.8 Issue Type: New Feature (was: Improvement) Adding a -D option to cassandra-env.sh would be cleanest. Allow property override of available processors value - Key: CASSANDRA-4790 URL: https://issues.apache.org/jira/browse/CASSANDRA-4790 Project: Cassandra Issue Type: New Feature Components: Core Reporter: Ahmed Bashir Priority: Minor Fix For: 1.1.8 Currently, many critical thread pools are sized according to the number of available processors i.e. Runtime.getRuntime.availableProcessors() (See StageManager.java) In a multi-instance deployment, multiple Cassandra instances will independently assume that all processors are available to it; there should be a mechanism to specify a smaller set of processors (and perhaps have affinity). -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (CASSANDRA-5001) Generated time-based UUID don't conform to the spec
[ https://issues.apache.org/jira/browse/CASSANDRA-5001?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13506143#comment-13506143 ] Vijay commented on CASSANDRA-5001: -- +1 Nit: it might be nice to move the calculation in getClockSeqAndNode into makeNode so we can cache it in nodeCache. Generated time-based UUID don't conform to the spec --- Key: CASSANDRA-5001 URL: https://issues.apache.org/jira/browse/CASSANDRA-5001 Project: Cassandra Issue Type: Bug Reporter: Sylvain Lebresne Assignee: Sylvain Lebresne Priority: Minor Fix For: 1.2.0 Attachments: 5001.txt When UUIDGen layout the clock sequence and and node part of version 1 UUID, it does so with {noformat} private long getClockSeqAndNode(InetAddress addr) { long lsb = 0; lsb |= (clock 0x3f00L) 56; // was 58? lsb |= 0x0080; lsb |= (clock 0x00ffL) 48; lsb |= makeNode(addr); return lsb; } {noformat} This is not correct however, as this layout the clock seq (and variant) on the right-most part of the lsb while it should be on the left-most one. At a minimum, the generated UUID don't fully respect the spec since the variant is not set correctly. But it also means that the clock seq bits end up being all 0's (as can be trivially seen in the string representation of the generated UUIDs). Note that none of those is a huge huge deal as there is still largely enough random bytes to ensure that two different nodes won't end up with the same lsb. And having the variant wrong has probably no practical implementation. There is no reason not to fix those though. One other small details is that the getAdjustedTimestamp as a sign error so that it returns completely broken timestamps. That being said the method is currently unused so that's not a big deal. I'm attaching a fix for that part too because that method might be useful someday but I won't shed a tear if we prefer just removing it. I'm marking this for 1.2 because I'm not sure it's worth bothering with 1.1. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira