[jira] [Commented] (CASSANDRA-3974) Per-CF TTL

2012-05-17 Thread Kirk True (JIRA)

[ 
https://issues.apache.org/jira/browse/CASSANDRA-3974?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13278616#comment-13278616
 ] 

Kirk True commented on CASSANDRA-3974:
--

In my test case, it does go through {{RowIteratorFactory}}, but it *doesn't* go 
through line 111. In {{getReduced}} {{cached}} is always {{null}} so it calls 
the {{filter.collateColumns}} path.

So I made this naive change:

{noformat}
if (cached == null)
{
// not cached: collate
filter.collateColumns(returnCF, colIters, gcBefore);
returnCF = ColumnFamilyStore.removeDeleted(returnCF, gcBefore);
}
else
{
QueryFilter keyFilter = new QueryFilter(key, filter.path, filter.filter);
returnCF = cfs.filterColumnFamily(cached, keyFilter, gcBefore);
}
{noformat}

Be "manually" calling {{removeDeleted}} I was able to get my columns filtered 
out as expected.

I'm pretty sure this is incomplete or just plain wrong, but I wanted to get 
your thoughts.

> Per-CF TTL
> --
>
> Key: CASSANDRA-3974
> URL: https://issues.apache.org/jira/browse/CASSANDRA-3974
> Project: Cassandra
>  Issue Type: New Feature
>Reporter: Jonathan Ellis
>Assignee: Kirk True
>Priority: Minor
> Fix For: 1.2
>
> Attachments: trunk-3974.txt
>
>
> Per-CF TTL would allow compaction optimizations ("drop an entire sstable's 
> worth of expired data") that we can't do with per-column.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (CASSANDRA-4256) Include stress tool in debian packaging

2012-05-17 Thread paul cannon (JIRA)

[ 
https://issues.apache.org/jira/browse/CASSANDRA-4256?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13278536#comment-13278536
 ] 

paul cannon commented on CASSANDRA-4256:


+1.

> Include stress tool in debian packaging
> ---
>
> Key: CASSANDRA-4256
> URL: https://issues.apache.org/jira/browse/CASSANDRA-4256
> Project: Cassandra
>  Issue Type: Bug
>  Components: Tools
>Affects Versions: 1.1.0
>Reporter: Nick Bailey
>Assignee: Nick Bailey
>Priority: Minor
> Fix For: 1.1.1
>
> Attachments: 0001-Include-stress-in-debian-package.patch
>
>
> The stress tool isn't included in the debian packaging. We need to update 
> that to grab the stress shell script as well as put the stress.jar file in 
> lib.
> Also the stress shell script needs to be updated to include looking in 
> /usr/share/cassandra... when searching for the stress jar so it will run in 
> packaged installations.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Updated] (CASSANDRA-3636) cassandra 1.0.x breakes APT on debian OpenVZ

2012-05-17 Thread paul cannon (JIRA)

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

paul cannon updated CASSANDRA-3636:
---

Attachment: 3636.patch.txt

This change should allow the deb install to succeed. Patrik, Tio, Zenek, 
Saulius, or someone else with this problem, could you try applying the patch 
and installing the deb?

Change also available on the 3636 branch on my github:

https://github.com/thepaul/cassandra/tree/3636

> cassandra 1.0.x breakes APT on debian OpenVZ
> 
>
> Key: CASSANDRA-3636
> URL: https://issues.apache.org/jira/browse/CASSANDRA-3636
> Project: Cassandra
>  Issue Type: Bug
>  Components: Packaging
>Affects Versions: 1.0.0
> Environment: Debian Linux (stable), OpenVZ container
>Reporter: Zenek Kraweznik
>Assignee: paul cannon
>Priority: Minor
> Fix For: 1.0.11, 1.1.1
>
> Attachments: 3636.patch.txt
>
>
> During upgrade from 1.0.6
> {code}Setting up cassandra (1.0.6) ...
> *error: permission denied on key 'vm.max_map_count'*
> dpkg: error processing cassandra (--configure):
>  subprocess installed post-installation script returned error exit status 255
> Errors were encountered while processing:
>  cassandra
> {code}

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Updated] (CASSANDRA-4198) cqlsh: update recognized syntax for cql3

2012-05-17 Thread Jonathan Ellis (JIRA)

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

Jonathan Ellis updated CASSANDRA-4198:
--

Reviewer: brandon.williams

> cqlsh: update recognized syntax for cql3
> 
>
> Key: CASSANDRA-4198
> URL: https://issues.apache.org/jira/browse/CASSANDRA-4198
> Project: Cassandra
>  Issue Type: Improvement
>  Components: Tools
>Affects Versions: 1.1.0
>Reporter: paul cannon
>Assignee: paul cannon
>Priority: Minor
>  Labels: cql3, cqlsh
> Fix For: 1.1.1
>
> Attachments: 4198.patch.txt
>
>
> cqlsh should recognize cql3 syntax when in cql3 mode; this includes tab 
> completing proper syntax and properly quoting any terms in single- or 
> double-quotes (current version only knows how to use single quotes).
> also, prefer using the term "TABLE" over "COLUMNFAMILY" wherever one of those 
> is generated from cqlsh (like in DESCRIBE output).
> and if it's not too bad, it would help to have the online help strings 
> reflect cql3 syntax (maybe with a nod to cql2 restrictions where appropriate).

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Comment Edited] (CASSANDRA-3974) Per-CF TTL

2012-05-17 Thread Jonathan Ellis (JIRA)

[ 
https://issues.apache.org/jira/browse/CASSANDRA-3974?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13278489#comment-13278489
 ] 

Jonathan Ellis edited comment on CASSANDRA-3974 at 5/18/12 1:43 AM:


RSVH still goes through removeDeleted.  It can either go through the index 
AbstractScanIterator which calls getCF at line 195 in KeysSearcher, or the seq 
scan iterator via CFS.filterColumnFamily (RowIteratorFactory line 111).

Remember that these only remove *expired* tombstones; non-expired ones need to 
be returned to the coordinator for read repair.

  was (Author: jbellis):
RSVH still goes through getColumnFamily.  It can either go through the 
index AbstractScanIterator which calls getCF at line 195 in KeysSearcher, or 
the seq scan iterator via CFS.filterColumnFamily (RowIteratorFactory line 111).

Remember that these only remove *expired* tombstones; non-expired ones need to 
be returned to the coordinator for read repair.
  
> Per-CF TTL
> --
>
> Key: CASSANDRA-3974
> URL: https://issues.apache.org/jira/browse/CASSANDRA-3974
> Project: Cassandra
>  Issue Type: New Feature
>Reporter: Jonathan Ellis
>Assignee: Kirk True
>Priority: Minor
> Fix For: 1.2
>
> Attachments: trunk-3974.txt
>
>
> Per-CF TTL would allow compaction optimizations ("drop an entire sstable's 
> worth of expired data") that we can't do with per-column.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (CASSANDRA-3974) Per-CF TTL

2012-05-17 Thread Jonathan Ellis (JIRA)

[ 
https://issues.apache.org/jira/browse/CASSANDRA-3974?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13278489#comment-13278489
 ] 

Jonathan Ellis commented on CASSANDRA-3974:
---

RSVH still goes through getColumnFamily.  It can either go through the index 
AbstractScanIterator which calls getCF at line 195 in KeysSearcher, or the seq 
scan iterator via CFS.filterColumnFamily (RowIteratorFactory line 111).

Remember that these only remove *expired* tombstones; non-expired ones need to 
be returned to the coordinator for read repair.

> Per-CF TTL
> --
>
> Key: CASSANDRA-3974
> URL: https://issues.apache.org/jira/browse/CASSANDRA-3974
> Project: Cassandra
>  Issue Type: New Feature
>Reporter: Jonathan Ellis
>Assignee: Kirk True
>Priority: Minor
> Fix For: 1.2
>
> Attachments: trunk-3974.txt
>
>
> Per-CF TTL would allow compaction optimizations ("drop an entire sstable's 
> worth of expired data") that we can't do with per-column.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Updated] (CASSANDRA-4198) cqlsh: update recognized syntax for cql3

2012-05-17 Thread paul cannon (JIRA)

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

paul cannon updated CASSANDRA-4198:
---

Attachment: 4198.patch.txt

This fairly hefty patch does some refactoring in cqlsh to allow everything to 
use the right sort of quoting in the right places, and to handle parsing in 
both modes with good modular separation.

Defines cql3 syntax so that it can be properly recognized and completed.

It might be worth holding off on a review for just a bit until I can finish the 
test suite in CASSANDRA-3920, so that the reviewer doesn't need to take in all 
the changes at once.

These changes are also split into much smaller, more individually 
understandable commits in the 4198 branch in my github:

https://github.com/thepaul/cassandra/tree/4198

Current version tagged pending/4198.

> cqlsh: update recognized syntax for cql3
> 
>
> Key: CASSANDRA-4198
> URL: https://issues.apache.org/jira/browse/CASSANDRA-4198
> Project: Cassandra
>  Issue Type: Improvement
>  Components: Tools
>Affects Versions: 1.1.0
>Reporter: paul cannon
>Assignee: paul cannon
>Priority: Minor
>  Labels: cql3, cqlsh
> Fix For: 1.1.1
>
> Attachments: 4198.patch.txt
>
>
> cqlsh should recognize cql3 syntax when in cql3 mode; this includes tab 
> completing proper syntax and properly quoting any terms in single- or 
> double-quotes (current version only knows how to use single quotes).
> also, prefer using the term "TABLE" over "COLUMNFAMILY" wherever one of those 
> is generated from cqlsh (like in DESCRIBE output).
> and if it's not too bad, it would help to have the online help strings 
> reflect cql3 syntax (maybe with a nod to cql2 restrictions where appropriate).

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (CASSANDRA-3687) Local range scans are not run on the read stage

2012-05-17 Thread Vijay (JIRA)

[ 
https://issues.apache.org/jira/browse/CASSANDRA-3687?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13278463#comment-13278463
 ] 

Vijay commented on CASSANDRA-3687:
--

+10, one thing which i noticed was will it be better to remove (coz the 
localnode might not be in position 0).

{code}
if (handler.endpoints.size() == 1 && 
handler.endpoints.get(0).equals(FBUtilities.getBroadcastAddress())
{code}

and add it to 

{code}
for (InetAddress endpoint : handler.endpoints)
{
if (endpoint.equals(FBUtilities.getBroadcastAddress())
{
logger.debug("reading data locally");
StageManager.getStage(Stage.READ).execute(new 
LocalRangeSliceRunnable(nodeCmd, handler));
}
{code}

similar to fetchRows?

> Local range scans are not run on the read stage
> ---
>
> Key: CASSANDRA-3687
> URL: https://issues.apache.org/jira/browse/CASSANDRA-3687
> Project: Cassandra
>  Issue Type: Bug
>Reporter: Jonathan Ellis
>Assignee: Jonathan Ellis
>Priority: Minor
> Fix For: 1.2
>
>
> Running directly on the client request/StorageProxy thread means we're now 
> allowing one range scan per thrift thread instead of one per read stage 
> thread [which may be more, or less, depending on thrift server mode], and it 
> bypasses the "drop hopeless requests" overcapacity protection built in there. 

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (CASSANDRA-4201) Preserve commitlog size cap when recycling segments at startup

2012-05-17 Thread Vijay (JIRA)

[ 
https://issues.apache.org/jira/browse/CASSANDRA-4201?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13278449#comment-13278449
 ] 

Vijay commented on CASSANDRA-4201:
--

+1 

> Preserve commitlog size cap when recycling segments at startup
> --
>
> Key: CASSANDRA-4201
> URL: https://issues.apache.org/jira/browse/CASSANDRA-4201
> Project: Cassandra
>  Issue Type: Bug
>  Components: Core
>Affects Versions: 1.1.0
> Environment: Windows 7 x64, 4Gb, JRE 1.6.0_31 (x86)
>Reporter: Pierre Chalamet
>Assignee: Jonathan Ellis
>Priority: Minor
>  Labels: commitlog
> Fix For: 1.1.1
>
> Attachments: 4201.txt, cassandra.yaml, log.txt
>
>
> 1. Create a single node cluster, use default configuration, use cassandra.bat 
> to start the server:
> 2. run the following commands in cli:
> {code}
> create keyspace toto;
> use toto;
> create column family titi;
> truncate titi;
> {code}
> 3. the node dies with this error:
> {code}
> ERROR 23:23:02,118 Exception in thread Thread[COMMIT-LOG-ALLOCATOR,5,main]
> java.io.IOError: java.io.IOException: Map failed
> at 
> org.apache.cassandra.db.commitlog.CommitLogSegment.(CommitLogSegment.java:127)
> at 
> org.apache.cassandra.db.commitlog.CommitLogSegment.recycle(CommitLogSegment.java:202)
> at 
> org.apache.cassandra.db.commitlog.CommitLogAllocator$2.run(CommitLogAllocator.java:159)
> at 
> org.apache.cassandra.db.commitlog.CommitLogAllocator$1.runMayThrow(CommitLogAllocator.java:95)
> at 
> org.apache.cassandra.utils.WrappedRunnable.run(WrappedRunnable.java:30)
> at java.lang.Thread.run(Unknown Source)
> Caused by: java.io.IOException: Map failed
> at sun.nio.ch.FileChannelImpl.map(Unknown Source)
> at 
> org.apache.cassandra.db.commitlog.CommitLogSegment.(CommitLogSegment.java:119)
> ... 5 more
> Caused by: java.lang.OutOfMemoryError: Map failed
> at sun.nio.ch.FileChannelImpl.map0(Native Method)
> ... 7 more
>  INFO 23:23:02,122 Stop listening to thrift clients
>  INFO 23:23:02,123 Waiting for messaging service to quiesce
>  INFO 23:23:02,125 MessagingService shutting down server thread.
> {code}

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Comment Edited] (CASSANDRA-3974) Per-CF TTL

2012-05-17 Thread Kirk True (JIRA)

[ 
https://issues.apache.org/jira/browse/CASSANDRA-3974?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13278414#comment-13278414
 ] 

Kirk True edited comment on CASSANDRA-3974 at 5/17/12 11:52 PM:


In my case (inserting data and then calling {{list my_cf}} from the CLI), it 
goes through the {{RangeSliceCommand}} path which doesn't end up calling 
{{ColumnFamilyStorage.getColumnFamily}}. As such, the 
expired-and-thus-should-be-ignored columns are still showing up.

  was (Author: kirktrue):
In my case (inserting data and then calling {{list my_cf}} from the CLI), 
it goes through the {{RangeSliceCommand}} path which doesn't end up calling 
{{ColumnFamilyStorage.getColumnFamily}}. As such, the 
expired-and-thus-should-be-ignored rows are still showing up.
  
> Per-CF TTL
> --
>
> Key: CASSANDRA-3974
> URL: https://issues.apache.org/jira/browse/CASSANDRA-3974
> Project: Cassandra
>  Issue Type: New Feature
>Reporter: Jonathan Ellis
>Assignee: Kirk True
>Priority: Minor
> Fix For: 1.2
>
> Attachments: trunk-3974.txt
>
>
> Per-CF TTL would allow compaction optimizations ("drop an entire sstable's 
> worth of expired data") that we can't do with per-column.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Comment Edited] (CASSANDRA-3974) Per-CF TTL

2012-05-17 Thread Kirk True (JIRA)

[ 
https://issues.apache.org/jira/browse/CASSANDRA-3974?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13278414#comment-13278414
 ] 

Kirk True edited comment on CASSANDRA-3974 at 5/17/12 11:52 PM:


In my case (inserting data and then calling {{list my_cf}} from the CLI), it 
goes through the {{RangeSliceCommand}} path which doesn't end up calling 
{{ColumnFamilyStorage.getColumnFamily}}. As such, the 
expired-and-thus-should-be-ignored rows are still showing up.

  was (Author: kirktrue):
In my case (inserting data and then calling {{list my_cf}} from the CLI}}), 
it goes through the {{RangeSliceCommand}} path which doesn't end up calling 
{{ColumnFamilyStorage.getColumnFamily}}. As such, the 
expired-and-thus-should-be-ignored rows are still showing up.
  
> Per-CF TTL
> --
>
> Key: CASSANDRA-3974
> URL: https://issues.apache.org/jira/browse/CASSANDRA-3974
> Project: Cassandra
>  Issue Type: New Feature
>Reporter: Jonathan Ellis
>Assignee: Kirk True
>Priority: Minor
> Fix For: 1.2
>
> Attachments: trunk-3974.txt
>
>
> Per-CF TTL would allow compaction optimizations ("drop an entire sstable's 
> worth of expired data") that we can't do with per-column.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (CASSANDRA-3974) Per-CF TTL

2012-05-17 Thread Kirk True (JIRA)

[ 
https://issues.apache.org/jira/browse/CASSANDRA-3974?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13278414#comment-13278414
 ] 

Kirk True commented on CASSANDRA-3974:
--

In my case (inserting data and then calling {{list my_cf}} from the CLI}}), it 
goes through the {{RangeSliceCommand}} path which doesn't end up calling 
{{ColumnFamilyStorage.getColumnFamily}}. As such, the 
expired-and-thus-should-be-ignored rows are still showing up.

> Per-CF TTL
> --
>
> Key: CASSANDRA-3974
> URL: https://issues.apache.org/jira/browse/CASSANDRA-3974
> Project: Cassandra
>  Issue Type: New Feature
>Reporter: Jonathan Ellis
>Assignee: Kirk True
>Priority: Minor
> Fix For: 1.2
>
> Attachments: trunk-3974.txt
>
>
> Per-CF TTL would allow compaction optimizations ("drop an entire sstable's 
> worth of expired data") that we can't do with per-column.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Updated] (CASSANDRA-4252) Set operation mode to MOVING earlier

2012-05-17 Thread Jonathan Ellis (JIRA)

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

Jonathan Ellis updated CASSANDRA-4252:
--

Attachment: 4252.txt

Patch attached.

> Set operation mode to MOVING earlier
> 
>
> Key: CASSANDRA-4252
> URL: https://issues.apache.org/jira/browse/CASSANDRA-4252
> Project: Cassandra
>  Issue Type: Bug
>  Components: Core
>Affects Versions: 1.1.0
>Reporter: Nick Bailey
>Priority: Minor
> Attachments: 4252.txt
>
>
> Right now when moving a node we set the OperationMode only once we've 
> calculated the necessary ranges to transfer and if there actually are ranges 
> to transfer. Due to the sleep for ring settling this means there are 30 
> seconds where the node is moving but the operation mode isn't set 
> accordingly. Additionally if it turns out no data needs to be transferred 
> then the move will complete without ever switching the OperationMode to 
> moving.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (CASSANDRA-4252) Set operation mode to MOVING earlier

2012-05-17 Thread Nick Bailey (JIRA)

[ 
https://issues.apache.org/jira/browse/CASSANDRA-4252?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13278362#comment-13278362
 ] 

Nick Bailey commented on CASSANDRA-4252:


Ah you are right. I was under the impression we did the RING_DELAY sleep no 
matter what, but apparently not.

Regarding the 'fetching new ranges...' log message, we can call setMode 
multiple times (a pattern we use for other modes). So we can just call setMode 
earlier on with a more accurate log message in addition to the later call.

> Set operation mode to MOVING earlier
> 
>
> Key: CASSANDRA-4252
> URL: https://issues.apache.org/jira/browse/CASSANDRA-4252
> Project: Cassandra
>  Issue Type: Bug
>  Components: Core
>Affects Versions: 1.1.0
>Reporter: Nick Bailey
>Priority: Minor
>
> Right now when moving a node we set the OperationMode only once we've 
> calculated the necessary ranges to transfer and if there actually are ranges 
> to transfer. Due to the sleep for ring settling this means there are 30 
> seconds where the node is moving but the operation mode isn't set 
> accordingly. Additionally if it turns out no data needs to be transferred 
> then the move will complete without ever switching the OperationMode to 
> moving.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (CASSANDRA-3974) Per-CF TTL

2012-05-17 Thread Jonathan Ellis (JIRA)

[ 
https://issues.apache.org/jira/browse/CASSANDRA-3974?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13278360#comment-13278360
 ] 

Jonathan Ellis commented on CASSANDRA-3974:
---

CFS.removeDeleted is the one that's called during column reads. E.g., 
SliceByNamesReadCommand.getRow -> Table.getRow -> CFS.getColumnFamily -> 
CFS.removeDeleted

> Per-CF TTL
> --
>
> Key: CASSANDRA-3974
> URL: https://issues.apache.org/jira/browse/CASSANDRA-3974
> Project: Cassandra
>  Issue Type: New Feature
>Reporter: Jonathan Ellis
>Assignee: Kirk True
>Priority: Minor
> Fix For: 1.2
>
> Attachments: trunk-3974.txt
>
>
> Per-CF TTL would allow compaction optimizations ("drop an entire sstable's 
> worth of expired data") that we can't do with per-column.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (CASSANDRA-3497) BloomFilter FP ratio should be configurable or size-restricted some other way

2012-05-17 Thread Brandon Williams (JIRA)

[ 
https://issues.apache.org/jira/browse/CASSANDRA-3497?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13278356#comment-13278356
 ] 

Brandon Williams commented on CASSANDRA-3497:
-

Note for others trying to disable their BF: despite earlier discussion on this 
ticket, zero is NOT disabled, but instead sets it back to the default, since 0 
false positives is invalid.  You actually want to set it to 1 to have the 
smallest possible filter.

> BloomFilter FP ratio should be configurable or size-restricted some other way
> -
>
> Key: CASSANDRA-3497
> URL: https://issues.apache.org/jira/browse/CASSANDRA-3497
> Project: Cassandra
>  Issue Type: New Feature
>  Components: Core
>Reporter: Brandon Williams
>Assignee: Yuki Morishita
>Priority: Minor
> Fix For: 1.0.7
>
> Attachments: 0001-Add-bloom_filter_fp_chance-to-cli.patch, 
> 0001-give-default-val-to-fp_chance.patch, 3497-v3.txt, 3497-v4.txt, 
> CASSANDRA-1.0-3497.txt
>
>
> When you have a live dc and purely analytical dc, in many situations you can 
> have less nodes on the analytical side, but end up getting restricted by 
> having the BloomFilters in-memory, even though you have absolutely no use for 
> them.  It would be nice if you could reduce this memory requirement by tuning 
> the desired FP ratio, or even just disabling them altogether.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (CASSANDRA-4252) Set operation mode to MOVING earlier

2012-05-17 Thread Jonathan Ellis (JIRA)

[ 
https://issues.apache.org/jira/browse/CASSANDRA-4252?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13278357#comment-13278357
 ] 

Jonathan Ellis commented on CASSANDRA-4252:
---

bq. just nicer to set the mode immediately so that when a move is initiated the 
operation mode of the node changes immediately rather than waiting 30ish seconds

Fair enough.

bq. in the admittedly uncommon case of no data being transferred the operation 
mode gets set to moving at all

I think it's inside that check to avoid logging "fetching new ranges and 
streaming old ranges" when there's nothing to stream, which is also misleading.

Since we don't "push" modes I don't think there's any difference between not 
setting it at all, and setting it only to set back to NORMAL a nanosecond later.

> Set operation mode to MOVING earlier
> 
>
> Key: CASSANDRA-4252
> URL: https://issues.apache.org/jira/browse/CASSANDRA-4252
> Project: Cassandra
>  Issue Type: Bug
>  Components: Core
>Affects Versions: 1.1.0
>Reporter: Nick Bailey
>Priority: Minor
>
> Right now when moving a node we set the OperationMode only once we've 
> calculated the necessary ranges to transfer and if there actually are ranges 
> to transfer. Due to the sleep for ring settling this means there are 30 
> seconds where the node is moving but the operation mode isn't set 
> accordingly. Additionally if it turns out no data needs to be transferred 
> then the move will complete without ever switching the OperationMode to 
> moving.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (CASSANDRA-3974) Per-CF TTL

2012-05-17 Thread Kirk True (JIRA)

[ 
https://issues.apache.org/jira/browse/CASSANDRA-3974?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13278344#comment-13278344
 ] 

Kirk True commented on CASSANDRA-3974:
--

On IRC Jonathan suggested to look at {{ColumnFamilyStore.removeDeleted}} and 
{{PrecompactedRow.removeDeletedAndOldShards}}. However, at doesn't _appear_ 
that either of these are called during column reads so I can't rely on those to 
filter out results sent back to the client.

The logic that I see for filtering out results sent to the client is in places 
such as {{CassandraServer.thriftifyColumns}} via the 
{{IColumn.isMarkedForDelete}} call. However, as stated previously, since an 
{{IColumn}} doesn't internally store a {{CFMetaData}} object, we'd have to pass 
one in. {{isMarkedForDelete}} is used in a lot of places, so it has a ripple 
effect that causes a lot of changes.

Please advise.

> Per-CF TTL
> --
>
> Key: CASSANDRA-3974
> URL: https://issues.apache.org/jira/browse/CASSANDRA-3974
> Project: Cassandra
>  Issue Type: New Feature
>Reporter: Jonathan Ellis
>Assignee: Kirk True
>Priority: Minor
> Fix For: 1.2
>
> Attachments: trunk-3974.txt
>
>
> Per-CF TTL would allow compaction optimizations ("drop an entire sstable's 
> worth of expired data") that we can't do with per-column.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (CASSANDRA-4252) Set operation mode to MOVING earlier

2012-05-17 Thread Nick Bailey (JIRA)

[ 
https://issues.apache.org/jira/browse/CASSANDRA-4252?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13278343#comment-13278343
 ] 

Nick Bailey commented on CASSANDRA-4252:


>From a monitoring application perspective its just nicer to set the mode 
>immediately so that when a move is initiated the operation mode of the node 
>changes immediately rather than waiting 30ish seconds. Also so in the 
>admittedly uncommon case of no data being transferred the operation mode gets 
>set to moving at all, which it currently won't.

> Set operation mode to MOVING earlier
> 
>
> Key: CASSANDRA-4252
> URL: https://issues.apache.org/jira/browse/CASSANDRA-4252
> Project: Cassandra
>  Issue Type: Bug
>  Components: Core
>Affects Versions: 1.1.0
>Reporter: Nick Bailey
>Priority: Minor
>
> Right now when moving a node we set the OperationMode only once we've 
> calculated the necessary ranges to transfer and if there actually are ranges 
> to transfer. Due to the sleep for ring settling this means there are 30 
> seconds where the node is moving but the operation mode isn't set 
> accordingly. Additionally if it turns out no data needs to be transferred 
> then the move will complete without ever switching the OperationMode to 
> moving.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (CASSANDRA-4252) Set operation mode to MOVING earlier

2012-05-17 Thread Jonathan Ellis (JIRA)

[ 
https://issues.apache.org/jira/browse/CASSANDRA-4252?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13278320#comment-13278320
 ] 

Jonathan Ellis commented on CASSANDRA-4252:
---

What difference does it make as long as we set MOVING before streamRanges / 
requestRanges?

> Set operation mode to MOVING earlier
> 
>
> Key: CASSANDRA-4252
> URL: https://issues.apache.org/jira/browse/CASSANDRA-4252
> Project: Cassandra
>  Issue Type: Bug
>  Components: Core
>Affects Versions: 1.1.0
>Reporter: Nick Bailey
>Priority: Minor
>
> Right now when moving a node we set the OperationMode only once we've 
> calculated the necessary ranges to transfer and if there actually are ranges 
> to transfer. Due to the sleep for ring settling this means there are 30 
> seconds where the node is moving but the operation mode isn't set 
> accordingly. Additionally if it turns out no data needs to be transferred 
> then the move will complete without ever switching the OperationMode to 
> moving.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (CASSANDRA-3708) Support "composite prefix" tombstones

2012-05-17 Thread Yuki Morishita (JIRA)

[ 
https://issues.apache.org/jira/browse/CASSANDRA-3708?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13278308#comment-13278308
 ] 

Yuki Morishita commented on CASSANDRA-3708:
---

I checked out Sylvain's latest branch and overall it looked good to me. New on 
disk format works fine with compaction and streaming, as well as RowMutations 
among nodes.

One thing that doesn't work though is the following:
I created table as in dtest for 3708,

{code:sql}
CREATE TABLE test1 (
  k int,
  c1 int,
  c2 int,
  v1 int,
  v2 int,
  PRIMARY KEY (k, c1, c2)
);
{code}

and insert several rows.
Deleting using following statement works as expected in dtest:

{code:sql}
DELETE FROM test1 WHERE k = 0 AND c1 = 0;
{code}

But following delete statement doesn't work.

{code:sql}
DELETE FROM test1 WHERE k = 0 AND c1 = 0 AND c2 = 0;
{code}

Although specifying which columns to delete does work.

{code:sql}
DELETE v1, v2 FROM test1 WHERE k = 0 AND c1 = 0 AND c2 = 0;
{code}

>From the log, I did't see any DeletionInfo in RowMutation for the first (not 
>working) statement.

{code}
DEBUG [Thrift:4] 2012-05-17 16:27:46,515 StorageProxy.java (line 174) 
Mutations/ConsistencyLevel are [RowMutation(keyspace='Keyspace1', 
key='', modifications=[ColumnFamily(test1 [])])]/ONE
{code}

I think this is just the matter of DeleteStatement. Other than that, LGTM.

> Support "composite prefix" tombstones
> -
>
> Key: CASSANDRA-3708
> URL: https://issues.apache.org/jira/browse/CASSANDRA-3708
> Project: Cassandra
>  Issue Type: Sub-task
>Reporter: Jonathan Ellis
>Assignee: Sylvain Lebresne
> Fix For: 1.2
>
>


--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Updated] (CASSANDRA-4255) concurrent modif ex when repair is run on LCS

2012-05-17 Thread Jonathan Ellis (JIRA)

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

Jonathan Ellis updated CASSANDRA-4255:
--

Priority: Minor  (was: Major)

Looks like this only affects getEstimatedTasks, not actually repair.

> concurrent modif ex when repair is run on LCS
> -
>
> Key: CASSANDRA-4255
> URL: https://issues.apache.org/jira/browse/CASSANDRA-4255
> Project: Cassandra
>  Issue Type: Bug
>Affects Versions: 1.0.0
>Reporter: Jackson Chung
>Assignee: Jonathan Ellis
>Priority: Minor
>  Labels: compaction
> Fix For: 1.0.11, 1.1.1
>
> Attachments: 4255.txt
>
>
> came across this, will try to figure a way to systematically reprod this. But 
> the problem is the sstable list in the manifest is changing as the repair is 
> triggered:
> {panel}
> Exception in thread "main" java.util.ConcurrentModificationException 
>  at java.util.AbstractList$Itr.checkForComodification(Unknown Source)
>  at java.util.AbstractList$Itr.next(Unknown Source)
>  at org.apache.cassandra.io.sstable.SSTable.getTotalBytes(SSTable.java:250)
>  at 
> org.apache.cassandra.db.compaction.LeveledManifest.getEstimatedTasks(LeveledManifest.java:435)
>  at 
> org.apache.cassandra.db.compaction.LeveledCompactionStrategy.getEstimatedRemainingTasks(LeveledCompactionStrategy.java:128)
>  at 
> org.apache.cassandra.db.compaction.CompactionManager.getPendingTasks(CompactionManager.java:1063)
>  at sun.reflect.GeneratedMethodAccessor73.invoke(Unknown Source)
>  at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
>  at java.lang.reflect.Method.invoke(Unknown Source)
>  at com.sun.jmx.mbeanserver.StandardMBeanIntrospector.invokeM2(Unknown Source)
>  at com.sun.jmx.mbeanserver.StandardMBeanIntrospector.invokeM2(Unknown Source)
>  at com.sun.jmx.mbeanserver.MBeanIntrospector.invokeM(Unknown Source)
>  at com.sun.jmx.mbeanserver.PerInterface.getAttribute(Unknown Source)
>  at com.sun.jmx.mbeanserver.MBeanSupport.getAttribute(Unknown Source)
>  at 
> com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.getAttribute(Unknown 
> Source)
>  at com.sun.jmx.mbeanserver.JmxMBeanServer.getAttribute(Unknown Source)
>  at javax.management.remote.rmi.RMIConnectionImpl.doOperation(Unknown Source)
>  at javax.management.remote.rmi.RMIConnectionImpl.access$200(Unknown Source)
>  at 
> javax.management.remote.rmi.RMIConnectionImpl$PrivilegedOperation.run(Unknown 
> Source)
>  at 
> javax.management.remote.rmi.RMIConnectionImpl.doPrivilegedOperation(Unknown 
> Source)
>  at javax.management.remote.rmi.RMIConnectionImpl.getAttribute(Unknown Source)
>  at sun.reflect.GeneratedMethodAccessor7.invoke(Unknown Source)
>  at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
>  at java.lang.reflect.Method.invoke(Unknown Source)
>  at sun.rmi.server.UnicastServerRef.dispatch(Unknown Source)
>  at sun.rmi.transport.Transport$1.run(Unknown Source)
>  at java.security.AccessController.doPrivileged(Native Method)
>  at sun.rmi.transport.Transport.serviceCall(Unknown Source)
>  at sun.rmi.transport.tcp.TCPTransport.handleMessages(Unknown Source)
>  at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(Unknown Source)
>  at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(Unknown Source)
>  at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)
>  at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
>  at java.lang.Thread.run(Unknown Source)
> {panel}
> maybe we could change the list to a copyOnArrayList? just a suggestion, 
> haven't investigated much yet:
> {code:title=LeveledManifest.java}
> generations[i] = new ArrayList();
> {code}

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (CASSANDRA-4221) Error while deleting a columnfamily that is being compacted.

2012-05-17 Thread Pavel Yaskevich (JIRA)

[ 
https://issues.apache.org/jira/browse/CASSANDRA-4221?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13278219#comment-13278219
 ] 

Pavel Yaskevich commented on CASSANDRA-4221:


I see debug information I added right now, but there is no IOError in that log 
described in this task...

> Error while deleting a columnfamily that is being compacted.
> 
>
> Key: CASSANDRA-4221
> URL: https://issues.apache.org/jira/browse/CASSANDRA-4221
> Project: Cassandra
>  Issue Type: Bug
>  Components: Core
>Affects Versions: 1.1.0
> Environment: ccm, dtest, cassandra-1.1. The error does not happen in 
> cassandra-1.0.
>Reporter: Tyler Patterson
>Assignee: Pavel Yaskevich
> Fix For: 1.1.1
>
> Attachments: CASSANDRA-4221-logging.patch, CASSANDRA-4221.patch, 
> system_log.zip
>
>
> The following dtest command produces an error:
> {code}export CASSANDRA_VERSION=git:cassandra-1.1; nosetests --nocapture 
> --nologcapture 
> concurrent_schema_changes_test.py:TestConcurrentSchemaChanges.load_test{code}
> Here is the error:
> {code}
> Error occured during compaction
> java.util.concurrent.ExecutionException: java.io.IOError: 
> java.io.FileNotFoundException: 
> /tmp/dtest-6ECMgy/test/node1/data/Keyspace1/Standard1/Keyspace1-Standard1-hc-47-Data.db
>  (No such file or directory)
>   at java.util.concurrent.FutureTask$Sync.innerGet(FutureTask.java:252)
>   at java.util.concurrent.FutureTask.get(FutureTask.java:111)
>   at 
> org.apache.cassandra.db.compaction.CompactionManager.performMaximal(CompactionManager.java:239)
>   at 
> org.apache.cassandra.db.ColumnFamilyStore.forceMajorCompaction(ColumnFamilyStore.java:1580)
>   at 
> org.apache.cassandra.service.StorageService.forceTableCompaction(StorageService.java:1770)
>   at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>   at 
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
>   at 
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>   at java.lang.reflect.Method.invoke(Method.java:616)
>   at 
> com.sun.jmx.mbeanserver.StandardMBeanIntrospector.invokeM2(StandardMBeanIntrospector.java:111)
>   at 
> com.sun.jmx.mbeanserver.StandardMBeanIntrospector.invokeM2(StandardMBeanIntrospector.java:45)
>   at 
> com.sun.jmx.mbeanserver.MBeanIntrospector.invokeM(MBeanIntrospector.java:226)
>   at com.sun.jmx.mbeanserver.PerInterface.invoke(PerInterface.java:138)
>   at com.sun.jmx.mbeanserver.MBeanSupport.invoke(MBeanSupport.java:251)
>   at 
> com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:857)
>   at 
> com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:795)
>   at 
> javax.management.remote.rmi.RMIConnectionImpl.doOperation(RMIConnectionImpl.java:1450)
>   at 
> javax.management.remote.rmi.RMIConnectionImpl.access$200(RMIConnectionImpl.java:90)
>   at 
> javax.management.remote.rmi.RMIConnectionImpl$PrivilegedOperation.run(RMIConnectionImpl.java:1285)
>   at 
> javax.management.remote.rmi.RMIConnectionImpl.doPrivilegedOperation(RMIConnectionImpl.java:1383)
>   at 
> javax.management.remote.rmi.RMIConnectionImpl.invoke(RMIConnectionImpl.java:807)
>   at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>   at 
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
>   at 
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>   at java.lang.reflect.Method.invoke(Method.java:616)
>   at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:322)
>   at sun.rmi.transport.Transport$1.run(Transport.java:177)
>   at java.security.AccessController.doPrivileged(Native Method)
>   at sun.rmi.transport.Transport.serviceCall(Transport.java:173)
>   at 
> sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:553)
>   at 
> sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:808)
>   at 
> sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:667)
>   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:679)
> Caused by: java.io.IOError: java.io.FileNotFoundException: 
> /tmp/dtest-6ECMgy/test/node1/data/Keyspace1/Standard1/Keyspace1-Standard1-hc-47-Data.db
>  (No such file or directory)
>   at 
> org.apache.cassandra.io.sstable.SSTableScanner.(SSTableScanner.java:61)
>   at 
> org.apache.cassandra.io.sstable.SSTableReader.getDirectScanner(SS

[jira] [Comment Edited] (CASSANDRA-4233) overlapping sstables in leveled compaction strategy

2012-05-17 Thread Jonathan Ellis (JIRA)

[ 
https://issues.apache.org/jira/browse/CASSANDRA-4233?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13278204#comment-13278204
 ] 

Jonathan Ellis edited comment on CASSANDRA-4233 at 5/17/12 8:22 PM:


I think the status quo (and v1, which perpetuates it) are too fragile...  
Exhibit A being this bug, and exhibit B being my reading of the code leading me 
to believe that there was no way to disable LCS. Rather than try to prevent 
setting max inappropriately, much more clear to have LCS ignore min/max 
entirely, except via isCompactionDisabled.  This is closer to how it "should" 
be w/ min + max being STCS-specific options.

v4 rearranges background/maximal methods to continue allowing maximal to kick 
off a compaction when autocompaction is disabled.

  was (Author: jbellis):
I think the status quo (and v1, which perpetuates it) are too complex...  
Exhibit A being my reading of the code leading me to believe that there was no 
way to disable LCS. Much more clear to have LCS make clear that it doesn't deal 
with min/max at all, except via isCompactionDisabled.

v4 rearranges background/maximal methods to continue allowing maximal to kick 
off a compaction when autocompaction is disabled.
  
> overlapping sstables in leveled compaction strategy
> ---
>
> Key: CASSANDRA-4233
> URL: https://issues.apache.org/jira/browse/CASSANDRA-4233
> Project: Cassandra
>  Issue Type: Bug
>Affects Versions: 1.1.0
>Reporter: Jonathan Ellis
>Assignee: Sylvain Lebresne
> Fix For: 1.1.1
>
> Attachments: 
> 0001-Make-sure-Leveled-compaction-always-use-the-right-min-.txt, 
> 4233-assert.txt, 4233-v2.txt, 4233-v3.txt, 4233-v4.txt, system.log.bz2
>
>
> CASSANDRA-4142 introduces test failures, that are caused by overlapping 
> tables within a level, which Shouldn't Happen.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Updated] (CASSANDRA-4221) Error while deleting a columnfamily that is being compacted.

2012-05-17 Thread Tyler Patterson (JIRA)

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

Tyler Patterson updated CASSANDRA-4221:
---

Attachment: system_log.zip

Debug is enabled now; It looks like CCM overwrites the log level. Only the 
logging patch was applied in this run. 

> Error while deleting a columnfamily that is being compacted.
> 
>
> Key: CASSANDRA-4221
> URL: https://issues.apache.org/jira/browse/CASSANDRA-4221
> Project: Cassandra
>  Issue Type: Bug
>  Components: Core
>Affects Versions: 1.1.0
> Environment: ccm, dtest, cassandra-1.1. The error does not happen in 
> cassandra-1.0.
>Reporter: Tyler Patterson
>Assignee: Pavel Yaskevich
> Fix For: 1.1.1
>
> Attachments: CASSANDRA-4221-logging.patch, CASSANDRA-4221.patch, 
> system_log.zip
>
>
> The following dtest command produces an error:
> {code}export CASSANDRA_VERSION=git:cassandra-1.1; nosetests --nocapture 
> --nologcapture 
> concurrent_schema_changes_test.py:TestConcurrentSchemaChanges.load_test{code}
> Here is the error:
> {code}
> Error occured during compaction
> java.util.concurrent.ExecutionException: java.io.IOError: 
> java.io.FileNotFoundException: 
> /tmp/dtest-6ECMgy/test/node1/data/Keyspace1/Standard1/Keyspace1-Standard1-hc-47-Data.db
>  (No such file or directory)
>   at java.util.concurrent.FutureTask$Sync.innerGet(FutureTask.java:252)
>   at java.util.concurrent.FutureTask.get(FutureTask.java:111)
>   at 
> org.apache.cassandra.db.compaction.CompactionManager.performMaximal(CompactionManager.java:239)
>   at 
> org.apache.cassandra.db.ColumnFamilyStore.forceMajorCompaction(ColumnFamilyStore.java:1580)
>   at 
> org.apache.cassandra.service.StorageService.forceTableCompaction(StorageService.java:1770)
>   at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>   at 
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
>   at 
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>   at java.lang.reflect.Method.invoke(Method.java:616)
>   at 
> com.sun.jmx.mbeanserver.StandardMBeanIntrospector.invokeM2(StandardMBeanIntrospector.java:111)
>   at 
> com.sun.jmx.mbeanserver.StandardMBeanIntrospector.invokeM2(StandardMBeanIntrospector.java:45)
>   at 
> com.sun.jmx.mbeanserver.MBeanIntrospector.invokeM(MBeanIntrospector.java:226)
>   at com.sun.jmx.mbeanserver.PerInterface.invoke(PerInterface.java:138)
>   at com.sun.jmx.mbeanserver.MBeanSupport.invoke(MBeanSupport.java:251)
>   at 
> com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:857)
>   at 
> com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:795)
>   at 
> javax.management.remote.rmi.RMIConnectionImpl.doOperation(RMIConnectionImpl.java:1450)
>   at 
> javax.management.remote.rmi.RMIConnectionImpl.access$200(RMIConnectionImpl.java:90)
>   at 
> javax.management.remote.rmi.RMIConnectionImpl$PrivilegedOperation.run(RMIConnectionImpl.java:1285)
>   at 
> javax.management.remote.rmi.RMIConnectionImpl.doPrivilegedOperation(RMIConnectionImpl.java:1383)
>   at 
> javax.management.remote.rmi.RMIConnectionImpl.invoke(RMIConnectionImpl.java:807)
>   at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>   at 
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
>   at 
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>   at java.lang.reflect.Method.invoke(Method.java:616)
>   at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:322)
>   at sun.rmi.transport.Transport$1.run(Transport.java:177)
>   at java.security.AccessController.doPrivileged(Native Method)
>   at sun.rmi.transport.Transport.serviceCall(Transport.java:173)
>   at 
> sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:553)
>   at 
> sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:808)
>   at 
> sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:667)
>   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:679)
> Caused by: java.io.IOError: java.io.FileNotFoundException: 
> /tmp/dtest-6ECMgy/test/node1/data/Keyspace1/Standard1/Keyspace1-Standard1-hc-47-Data.db
>  (No such file or directory)
>   at 
> org.apache.cassandra.io.sstable.SSTableScanner.(SSTableScanner.java:61)
>   at 
> org.apache.cassandra.io.sstable.SSTableReader.getDirectScanner(SSTableReader.jav

[jira] [Updated] (CASSANDRA-4233) overlapping sstables in leveled compaction strategy

2012-05-17 Thread Jonathan Ellis (JIRA)

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

Jonathan Ellis updated CASSANDRA-4233:
--

Attachment: 4233-v4.txt

I think the status quo (and v1, which perpetuates it) are too complex...  
Exhibit A being my reading of the code leading me to believe that there was no 
way to disable LCS. Much more clear to have LCS make clear that it doesn't deal 
with min/max at all, except via isCompactionDisabled.

v4 rearranges background/maximal methods to continue allowing maximal to kick 
off a compaction when autocompaction is disabled.

> overlapping sstables in leveled compaction strategy
> ---
>
> Key: CASSANDRA-4233
> URL: https://issues.apache.org/jira/browse/CASSANDRA-4233
> Project: Cassandra
>  Issue Type: Bug
>Affects Versions: 1.1.0
>Reporter: Jonathan Ellis
>Assignee: Sylvain Lebresne
> Fix For: 1.1.1
>
> Attachments: 
> 0001-Make-sure-Leveled-compaction-always-use-the-right-min-.txt, 
> 4233-assert.txt, 4233-v2.txt, 4233-v3.txt, 4233-v4.txt, system.log.bz2
>
>
> CASSANDRA-4142 introduces test failures, that are caused by overlapping 
> tables within a level, which Shouldn't Happen.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Updated] (CASSANDRA-3794) Avoid ID conflicts from concurrent schema changes

2012-05-17 Thread Jonathan Ellis (JIRA)

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

Jonathan Ellis updated CASSANDRA-3794:
--

Summary: Avoid ID conflicts from concurrent schema changes  (was: Change 
ColumnFamily identifiers to be UUIDs instead of sequential Integers.)

> Avoid ID conflicts from concurrent schema changes
> -
>
> Key: CASSANDRA-3794
> URL: https://issues.apache.org/jira/browse/CASSANDRA-3794
> Project: Cassandra
>  Issue Type: Improvement
>  Components: Core
>Reporter: Pavel Yaskevich
>Assignee: Pavel Yaskevich
> Fix For: 1.1.1
>
>
> Change ColumnFamily identifiers to be UUIDs instead of sequential Integers. 
> Would be useful in the situation when nodes simultaneously trying to create 
> ColumnFamilies.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (CASSANDRA-4256) Include stress tool in debian packaging

2012-05-17 Thread Nick Bailey (JIRA)

[ 
https://issues.apache.org/jira/browse/CASSANDRA-4256?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13278158#comment-13278158
 ] 

Nick Bailey commented on CASSANDRA-4256:


Also I'll note it would be cool to get a 1.1.0-2 debian package out if we can. 
I guess this can't completely be considered solely a packaging change since the 
stress script itself changed, but I guess I'll leave that up to the committers.

> Include stress tool in debian packaging
> ---
>
> Key: CASSANDRA-4256
> URL: https://issues.apache.org/jira/browse/CASSANDRA-4256
> Project: Cassandra
>  Issue Type: Bug
>  Components: Tools
>Affects Versions: 1.1.0
>Reporter: Nick Bailey
>Assignee: Nick Bailey
>Priority: Minor
> Fix For: 1.1.1
>
> Attachments: 0001-Include-stress-in-debian-package.patch
>
>
> The stress tool isn't included in the debian packaging. We need to update 
> that to grab the stress shell script as well as put the stress.jar file in 
> lib.
> Also the stress shell script needs to be updated to include looking in 
> /usr/share/cassandra... when searching for the stress jar so it will run in 
> packaged installations.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Updated] (CASSANDRA-4256) Include stress tool in debian packaging

2012-05-17 Thread Nick Bailey (JIRA)

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

Nick Bailey updated CASSANDRA-4256:
---

Attachment: 0001-Include-stress-in-debian-package.patch

Includes stress stuff in debian package. Also slightly reorganizes the stress 
script so it will work better in packaged installs.

> Include stress tool in debian packaging
> ---
>
> Key: CASSANDRA-4256
> URL: https://issues.apache.org/jira/browse/CASSANDRA-4256
> Project: Cassandra
>  Issue Type: Bug
>  Components: Tools
>Affects Versions: 1.1.0
>Reporter: Nick Bailey
>Assignee: Nick Bailey
>Priority: Minor
> Fix For: 1.1.1
>
> Attachments: 0001-Include-stress-in-debian-package.patch
>
>
> The stress tool isn't included in the debian packaging. We need to update 
> that to grab the stress shell script as well as put the stress.jar file in 
> lib.
> Also the stress shell script needs to be updated to include looking in 
> /usr/share/cassandra... when searching for the stress jar so it will run in 
> packaged installations.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Updated] (CASSANDRA-4256) Include stress tool in debian packaging

2012-05-17 Thread Nick Bailey (JIRA)

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

Nick Bailey updated CASSANDRA-4256:
---

Reviewer: thepaul

> Include stress tool in debian packaging
> ---
>
> Key: CASSANDRA-4256
> URL: https://issues.apache.org/jira/browse/CASSANDRA-4256
> Project: Cassandra
>  Issue Type: Bug
>  Components: Tools
>Affects Versions: 1.1.0
>Reporter: Nick Bailey
>Assignee: Nick Bailey
>Priority: Minor
> Fix For: 1.1.1
>
> Attachments: 0001-Include-stress-in-debian-package.patch
>
>
> The stress tool isn't included in the debian packaging. We need to update 
> that to grab the stress shell script as well as put the stress.jar file in 
> lib.
> Also the stress shell script needs to be updated to include looking in 
> /usr/share/cassandra... when searching for the stress jar so it will run in 
> packaged installations.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Updated] (CASSANDRA-4255) concurrent modif ex when repair is run on LCS

2012-05-17 Thread Jonathan Ellis (JIRA)

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

Jonathan Ellis updated CASSANDRA-4255:
--

Attachment: 4255.txt

patch attached to synchronize getEstimatedTasks.  copyOnWriteArrayList would 
probably work too, but we already synchronize other accesses (to prevent 
cross-level races) so that's simplest here.

> concurrent modif ex when repair is run on LCS
> -
>
> Key: CASSANDRA-4255
> URL: https://issues.apache.org/jira/browse/CASSANDRA-4255
> Project: Cassandra
>  Issue Type: Bug
>Reporter: Jackson Chung
> Attachments: 4255.txt
>
>
> came across this, will try to figure a way to systematically reprod this. But 
> the problem is the sstable list in the manifest is changing as the repair is 
> triggered:
> {panel}
> Exception in thread "main" java.util.ConcurrentModificationException 
>  at java.util.AbstractList$Itr.checkForComodification(Unknown Source)
>  at java.util.AbstractList$Itr.next(Unknown Source)
>  at org.apache.cassandra.io.sstable.SSTable.getTotalBytes(SSTable.java:250)
>  at 
> org.apache.cassandra.db.compaction.LeveledManifest.getEstimatedTasks(LeveledManifest.java:435)
>  at 
> org.apache.cassandra.db.compaction.LeveledCompactionStrategy.getEstimatedRemainingTasks(LeveledCompactionStrategy.java:128)
>  at 
> org.apache.cassandra.db.compaction.CompactionManager.getPendingTasks(CompactionManager.java:1063)
>  at sun.reflect.GeneratedMethodAccessor73.invoke(Unknown Source)
>  at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
>  at java.lang.reflect.Method.invoke(Unknown Source)
>  at com.sun.jmx.mbeanserver.StandardMBeanIntrospector.invokeM2(Unknown Source)
>  at com.sun.jmx.mbeanserver.StandardMBeanIntrospector.invokeM2(Unknown Source)
>  at com.sun.jmx.mbeanserver.MBeanIntrospector.invokeM(Unknown Source)
>  at com.sun.jmx.mbeanserver.PerInterface.getAttribute(Unknown Source)
>  at com.sun.jmx.mbeanserver.MBeanSupport.getAttribute(Unknown Source)
>  at 
> com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.getAttribute(Unknown 
> Source)
>  at com.sun.jmx.mbeanserver.JmxMBeanServer.getAttribute(Unknown Source)
>  at javax.management.remote.rmi.RMIConnectionImpl.doOperation(Unknown Source)
>  at javax.management.remote.rmi.RMIConnectionImpl.access$200(Unknown Source)
>  at 
> javax.management.remote.rmi.RMIConnectionImpl$PrivilegedOperation.run(Unknown 
> Source)
>  at 
> javax.management.remote.rmi.RMIConnectionImpl.doPrivilegedOperation(Unknown 
> Source)
>  at javax.management.remote.rmi.RMIConnectionImpl.getAttribute(Unknown Source)
>  at sun.reflect.GeneratedMethodAccessor7.invoke(Unknown Source)
>  at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
>  at java.lang.reflect.Method.invoke(Unknown Source)
>  at sun.rmi.server.UnicastServerRef.dispatch(Unknown Source)
>  at sun.rmi.transport.Transport$1.run(Unknown Source)
>  at java.security.AccessController.doPrivileged(Native Method)
>  at sun.rmi.transport.Transport.serviceCall(Unknown Source)
>  at sun.rmi.transport.tcp.TCPTransport.handleMessages(Unknown Source)
>  at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(Unknown Source)
>  at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(Unknown Source)
>  at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)
>  at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
>  at java.lang.Thread.run(Unknown Source)
> {panel}
> maybe we could change the list to a copyOnArrayList? just a suggestion, 
> haven't investigated much yet:
> {code:title=LeveledManifest.java}
> generations[i] = new ArrayList();
> {code}

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Assigned] (CASSANDRA-4257) CQL3 range query with secondary index fails

2012-05-17 Thread Jonathan Ellis (JIRA)

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

Jonathan Ellis reassigned CASSANDRA-4257:
-

Assignee: Sylvain Lebresne

> CQL3 range query with secondary index fails
> ---
>
> Key: CASSANDRA-4257
> URL: https://issues.apache.org/jira/browse/CASSANDRA-4257
> Project: Cassandra
>  Issue Type: Bug
>  Components: API
>Affects Versions: 1.1.0
> Environment: Cassandra 1.1.0 and git cassandra-1.1 branch, as of 
> commit fd92c09d95a53d582cb8c4b0e77ac47fdd884935
>Reporter: Sean Billig
>Assignee: Sylvain Lebresne
>Priority: Minor
>  Labels: cql3, index
>
> This query fails:
> select * from indextest where setid = 0 and row < 1;
> when there's a secondary index on 'setid'; row isn't the primary key.
> {code:title=CQL3}
> bin$ ./cqlsh --cql3
> Connected to Git at localhost:9160.
> [cqlsh 2.2.0 | Cassandra 1.1.0-SNAPSHOT | CQL spec 3.0.0 | Thrift protocol 
> 19.31.0]
> Use HELP for help.
> cqlsh> use warehouse1;
> cqlsh:warehouse1> create table indextest (id int primary key, row int, setid 
> int);
> cqlsh:warehouse1> create index indextest_setid_idx on indextest (setid);
> cqlsh:warehouse1> insert into indextest (id, row, setid) values (0, 0, 0);
> cqlsh:warehouse1> insert into indextest (id, row, setid) values (1, 1, 0);
> cqlsh:warehouse1> insert into indextest (id, row, setid) values (2, 2, 0);
> cqlsh:warehouse1> select * from indextest where setid = 0;
>  id | row | setid
> +-+---
>   0 |   0 | 0
>   1 |   1 | 0
>   2 |   2 | 0
> cqlsh:warehouse1> select * from indextest where setid = 0 and row = 1;
>  id | row | setid
> +-+---
>   1 |   1 | 0
> cqlsh:warehouse1> select * from indextest where setid = 0 and row < 1;
> TSocket read 0 bytes
> {code}
> {code:title=Error message}
> ERROR 13:36:23,544 Error occurred during processing of message.
> java.lang.NullPointerException
>   at 
> org.apache.cassandra.cql3.statements.SelectStatement.getIndexExpressions(SelectStatement.java:546)
>   at 
> org.apache.cassandra.cql3.statements.SelectStatement.multiRangeSlice(SelectStatement.java:253)
>   at 
> org.apache.cassandra.cql3.statements.SelectStatement.execute(SelectStatement.java:132)
>   at 
> org.apache.cassandra.cql3.QueryProcessor.processStatement(QueryProcessor.java:108)
>   at org.apache.cassandra.cql3.QueryProcessor.process(QueryProcessor.java:121)
>   at 
> org.apache.cassandra.thrift.CassandraServer.execute_cql_query(CassandraServer.java:1237)
>   at 
> org.apache.cassandra.thrift.Cassandra$Processor$execute_cql_query.getResult(Cassandra.java:3542)
>   at 
> org.apache.cassandra.thrift.Cassandra$Processor$execute_cql_query.getResult(Cassandra.java:3530)
>   at org.apache.thrift.ProcessFunction.process(ProcessFunction.java:32)
>   at org.apache.thrift.TBaseProcessor.process(TBaseProcessor.java:34)
>   at 
> org.apache.cassandra.thrift.CustomTThreadPoolServer$WorkerProcess.run(CustomTThreadPoolServer.java:186)
>   at 
> java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
>   at 
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
>   at java.lang.Thread.run(Thread.java:680)
> {code}
> Works fine in CQL2:
> {code:title=CQL2}
> bin$ ./cqlsh_uuid --cql2
> Connected to Git at localhost:9160.
> [cqlsh 2.2.0 | Cassandra 1.1.0-SNAPSHOT | CQL spec 2.0.0 | Thrift protocol 
> 19.31.0]
> Use HELP for help.
> cqlsh> use warehouse1;
> cqlsh:warehouse1> select * from indextest where setid = 0 and row < 1;
>  id | row | setid
> +-+---
>   0 |   0 | 0
> cqlsh:warehouse1> select * from indextest where setid = 0 and row < 2;
>  id | row | setid
> +-+---
>   0 |   0 | 0
>   1 |   1 | 0
> {code}

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Created] (CASSANDRA-4257) CQL3 range query with secondary index fails

2012-05-17 Thread Sean Billig (JIRA)
Sean Billig created CASSANDRA-4257:
--

 Summary: CQL3 range query with secondary index fails
 Key: CASSANDRA-4257
 URL: https://issues.apache.org/jira/browse/CASSANDRA-4257
 Project: Cassandra
  Issue Type: Bug
  Components: API
Affects Versions: 1.1.0
 Environment: Cassandra 1.1.0 and git cassandra-1.1 branch, as of 
commit fd92c09d95a53d582cb8c4b0e77ac47fdd884935
Reporter: Sean Billig
Priority: Minor


This query fails:
select * from indextest where setid = 0 and row < 1;
when there's a secondary index on 'setid'; row isn't the primary key.

{code:title=CQL3}
bin$ ./cqlsh --cql3
Connected to Git at localhost:9160.
[cqlsh 2.2.0 | Cassandra 1.1.0-SNAPSHOT | CQL spec 3.0.0 | Thrift protocol 
19.31.0]
Use HELP for help.
cqlsh> use warehouse1;
cqlsh:warehouse1> create table indextest (id int primary key, row int, setid 
int);
cqlsh:warehouse1> create index indextest_setid_idx on indextest (setid);
cqlsh:warehouse1> insert into indextest (id, row, setid) values (0, 0, 0);
cqlsh:warehouse1> insert into indextest (id, row, setid) values (1, 1, 0);
cqlsh:warehouse1> insert into indextest (id, row, setid) values (2, 2, 0);
cqlsh:warehouse1> select * from indextest where setid = 0;
 id | row | setid
+-+---
  0 |   0 | 0
  1 |   1 | 0
  2 |   2 | 0

cqlsh:warehouse1> select * from indextest where setid = 0 and row = 1;
 id | row | setid
+-+---
  1 |   1 | 0

cqlsh:warehouse1> select * from indextest where setid = 0 and row < 1;
TSocket read 0 bytes
{code}

{code:title=Error message}
ERROR 13:36:23,544 Error occurred during processing of message.
java.lang.NullPointerException
  at 
org.apache.cassandra.cql3.statements.SelectStatement.getIndexExpressions(SelectStatement.java:546)
  at 
org.apache.cassandra.cql3.statements.SelectStatement.multiRangeSlice(SelectStatement.java:253)
  at 
org.apache.cassandra.cql3.statements.SelectStatement.execute(SelectStatement.java:132)
  at 
org.apache.cassandra.cql3.QueryProcessor.processStatement(QueryProcessor.java:108)
  at org.apache.cassandra.cql3.QueryProcessor.process(QueryProcessor.java:121)
  at 
org.apache.cassandra.thrift.CassandraServer.execute_cql_query(CassandraServer.java:1237)
  at 
org.apache.cassandra.thrift.Cassandra$Processor$execute_cql_query.getResult(Cassandra.java:3542)
  at 
org.apache.cassandra.thrift.Cassandra$Processor$execute_cql_query.getResult(Cassandra.java:3530)
  at org.apache.thrift.ProcessFunction.process(ProcessFunction.java:32)
  at org.apache.thrift.TBaseProcessor.process(TBaseProcessor.java:34)
  at 
org.apache.cassandra.thrift.CustomTThreadPoolServer$WorkerProcess.run(CustomTThreadPoolServer.java:186)
  at 
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
  at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
  at java.lang.Thread.run(Thread.java:680)
{code}

Works fine in CQL2:
{code:title=CQL2}
bin$ ./cqlsh_uuid --cql2
Connected to Git at localhost:9160.
[cqlsh 2.2.0 | Cassandra 1.1.0-SNAPSHOT | CQL spec 2.0.0 | Thrift protocol 
19.31.0]
Use HELP for help.
cqlsh> use warehouse1;
cqlsh:warehouse1> select * from indextest where setid = 0 and row < 1;
 id | row | setid
+-+---
  0 |   0 | 0

cqlsh:warehouse1> select * from indextest where setid = 0 and row < 2;
 id | row | setid
+-+---
  0 |   0 | 0
  1 |   1 | 0
{code}

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Assigned] (CASSANDRA-4256) Include stress tool in debian packaging

2012-05-17 Thread Nick Bailey (JIRA)

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

Nick Bailey reassigned CASSANDRA-4256:
--

Assignee: Nick Bailey

> Include stress tool in debian packaging
> ---
>
> Key: CASSANDRA-4256
> URL: https://issues.apache.org/jira/browse/CASSANDRA-4256
> Project: Cassandra
>  Issue Type: Bug
>  Components: Tools
>Affects Versions: 1.1.0
>Reporter: Nick Bailey
>Assignee: Nick Bailey
>Priority: Minor
> Fix For: 1.1.1
>
>
> The stress tool isn't included in the debian packaging. We need to update 
> that to grab the stress shell script as well as put the stress.jar file in 
> lib.
> Also the stress shell script needs to be updated to include looking in 
> /usr/share/cassandra... when searching for the stress jar so it will run in 
> packaged installations.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Created] (CASSANDRA-4256) Include stress tool in debian packaging

2012-05-17 Thread Nick Bailey (JIRA)
Nick Bailey created CASSANDRA-4256:
--

 Summary: Include stress tool in debian packaging
 Key: CASSANDRA-4256
 URL: https://issues.apache.org/jira/browse/CASSANDRA-4256
 Project: Cassandra
  Issue Type: Bug
  Components: Tools
Affects Versions: 1.1.0
Reporter: Nick Bailey
Priority: Minor
 Fix For: 1.1.1


The stress tool isn't included in the debian packaging. We need to update that 
to grab the stress shell script as well as put the stress.jar file in lib.

Also the stress shell script needs to be updated to include looking in 
/usr/share/cassandra... when searching for the stress jar so it will run in 
packaged installations.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Created] (CASSANDRA-4255) concurrent modif ex when repair is run on LCS

2012-05-17 Thread Jackson Chung (JIRA)
Jackson Chung created CASSANDRA-4255:


 Summary: concurrent modif ex when repair is run on LCS
 Key: CASSANDRA-4255
 URL: https://issues.apache.org/jira/browse/CASSANDRA-4255
 Project: Cassandra
  Issue Type: Bug
Reporter: Jackson Chung


came across this, will try to figure a way to systematically reprod this. But 
the problem is the sstable list in the manifest is changing as the repair is 
triggered:

{panel}
Exception in thread "main" java.util.ConcurrentModificationException 
 at java.util.AbstractList$Itr.checkForComodification(Unknown Source)
 at java.util.AbstractList$Itr.next(Unknown Source)
 at org.apache.cassandra.io.sstable.SSTable.getTotalBytes(SSTable.java:250)
 at 
org.apache.cassandra.db.compaction.LeveledManifest.getEstimatedTasks(LeveledManifest.java:435)
 at 
org.apache.cassandra.db.compaction.LeveledCompactionStrategy.getEstimatedRemainingTasks(LeveledCompactionStrategy.java:128)
 at 
org.apache.cassandra.db.compaction.CompactionManager.getPendingTasks(CompactionManager.java:1063)
 at sun.reflect.GeneratedMethodAccessor73.invoke(Unknown Source)
 at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
 at java.lang.reflect.Method.invoke(Unknown Source)
 at com.sun.jmx.mbeanserver.StandardMBeanIntrospector.invokeM2(Unknown Source)
 at com.sun.jmx.mbeanserver.StandardMBeanIntrospector.invokeM2(Unknown Source)
 at com.sun.jmx.mbeanserver.MBeanIntrospector.invokeM(Unknown Source)
 at com.sun.jmx.mbeanserver.PerInterface.getAttribute(Unknown Source)
 at com.sun.jmx.mbeanserver.MBeanSupport.getAttribute(Unknown Source)
 at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.getAttribute(Unknown 
Source)
 at com.sun.jmx.mbeanserver.JmxMBeanServer.getAttribute(Unknown Source)
 at javax.management.remote.rmi.RMIConnectionImpl.doOperation(Unknown Source)
 at javax.management.remote.rmi.RMIConnectionImpl.access$200(Unknown Source)
 at 
javax.management.remote.rmi.RMIConnectionImpl$PrivilegedOperation.run(Unknown 
Source)
 at javax.management.remote.rmi.RMIConnectionImpl.doPrivilegedOperation(Unknown 
Source)
 at javax.management.remote.rmi.RMIConnectionImpl.getAttribute(Unknown Source)
 at sun.reflect.GeneratedMethodAccessor7.invoke(Unknown Source)
 at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
 at java.lang.reflect.Method.invoke(Unknown Source)
 at sun.rmi.server.UnicastServerRef.dispatch(Unknown Source)
 at sun.rmi.transport.Transport$1.run(Unknown Source)
 at java.security.AccessController.doPrivileged(Native Method)
 at sun.rmi.transport.Transport.serviceCall(Unknown Source)
 at sun.rmi.transport.tcp.TCPTransport.handleMessages(Unknown Source)
 at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(Unknown Source)
 at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(Unknown Source)
 at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)
 at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
 at java.lang.Thread.run(Unknown Source)
{panel}

maybe we could change the list to a copyOnArrayList? just a suggestion, haven't 
investigated much yet:

{code:title=LeveledManifest.java}
generations[i] = new ArrayList();
{code}

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (CASSANDRA-4221) Error while deleting a columnfamily that is being compacted.

2012-05-17 Thread Tyler Patterson (JIRA)

[ 
https://issues.apache.org/jira/browse/CASSANDRA-4221?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13278043#comment-13278043
 ] 

Tyler Patterson commented on CASSANDRA-4221:


Somehow that server.log did not have the debug info. Looking into it now.

> Error while deleting a columnfamily that is being compacted.
> 
>
> Key: CASSANDRA-4221
> URL: https://issues.apache.org/jira/browse/CASSANDRA-4221
> Project: Cassandra
>  Issue Type: Bug
>  Components: Core
>Affects Versions: 1.1.0
> Environment: ccm, dtest, cassandra-1.1. The error does not happen in 
> cassandra-1.0.
>Reporter: Tyler Patterson
>Assignee: Pavel Yaskevich
> Fix For: 1.1.1
>
> Attachments: CASSANDRA-4221-logging.patch, CASSANDRA-4221.patch
>
>
> The following dtest command produces an error:
> {code}export CASSANDRA_VERSION=git:cassandra-1.1; nosetests --nocapture 
> --nologcapture 
> concurrent_schema_changes_test.py:TestConcurrentSchemaChanges.load_test{code}
> Here is the error:
> {code}
> Error occured during compaction
> java.util.concurrent.ExecutionException: java.io.IOError: 
> java.io.FileNotFoundException: 
> /tmp/dtest-6ECMgy/test/node1/data/Keyspace1/Standard1/Keyspace1-Standard1-hc-47-Data.db
>  (No such file or directory)
>   at java.util.concurrent.FutureTask$Sync.innerGet(FutureTask.java:252)
>   at java.util.concurrent.FutureTask.get(FutureTask.java:111)
>   at 
> org.apache.cassandra.db.compaction.CompactionManager.performMaximal(CompactionManager.java:239)
>   at 
> org.apache.cassandra.db.ColumnFamilyStore.forceMajorCompaction(ColumnFamilyStore.java:1580)
>   at 
> org.apache.cassandra.service.StorageService.forceTableCompaction(StorageService.java:1770)
>   at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>   at 
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
>   at 
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>   at java.lang.reflect.Method.invoke(Method.java:616)
>   at 
> com.sun.jmx.mbeanserver.StandardMBeanIntrospector.invokeM2(StandardMBeanIntrospector.java:111)
>   at 
> com.sun.jmx.mbeanserver.StandardMBeanIntrospector.invokeM2(StandardMBeanIntrospector.java:45)
>   at 
> com.sun.jmx.mbeanserver.MBeanIntrospector.invokeM(MBeanIntrospector.java:226)
>   at com.sun.jmx.mbeanserver.PerInterface.invoke(PerInterface.java:138)
>   at com.sun.jmx.mbeanserver.MBeanSupport.invoke(MBeanSupport.java:251)
>   at 
> com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:857)
>   at 
> com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:795)
>   at 
> javax.management.remote.rmi.RMIConnectionImpl.doOperation(RMIConnectionImpl.java:1450)
>   at 
> javax.management.remote.rmi.RMIConnectionImpl.access$200(RMIConnectionImpl.java:90)
>   at 
> javax.management.remote.rmi.RMIConnectionImpl$PrivilegedOperation.run(RMIConnectionImpl.java:1285)
>   at 
> javax.management.remote.rmi.RMIConnectionImpl.doPrivilegedOperation(RMIConnectionImpl.java:1383)
>   at 
> javax.management.remote.rmi.RMIConnectionImpl.invoke(RMIConnectionImpl.java:807)
>   at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>   at 
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
>   at 
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>   at java.lang.reflect.Method.invoke(Method.java:616)
>   at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:322)
>   at sun.rmi.transport.Transport$1.run(Transport.java:177)
>   at java.security.AccessController.doPrivileged(Native Method)
>   at sun.rmi.transport.Transport.serviceCall(Transport.java:173)
>   at 
> sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:553)
>   at 
> sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:808)
>   at 
> sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:667)
>   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:679)
> Caused by: java.io.IOError: java.io.FileNotFoundException: 
> /tmp/dtest-6ECMgy/test/node1/data/Keyspace1/Standard1/Keyspace1-Standard1-hc-47-Data.db
>  (No such file or directory)
>   at 
> org.apache.cassandra.io.sstable.SSTableScanner.(SSTableScanner.java:61)
>   at 
> org.apache.cassandra.io.sstable.SSTableReader.getDirectScanner(SSTableReader.java:839)
>   at 
> org.apache.cass

[jira] [Updated] (CASSANDRA-4221) Error while deleting a columnfamily that is being compacted.

2012-05-17 Thread Tyler Patterson (JIRA)

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

Tyler Patterson updated CASSANDRA-4221:
---

Attachment: (was: system.log)

> Error while deleting a columnfamily that is being compacted.
> 
>
> Key: CASSANDRA-4221
> URL: https://issues.apache.org/jira/browse/CASSANDRA-4221
> Project: Cassandra
>  Issue Type: Bug
>  Components: Core
>Affects Versions: 1.1.0
> Environment: ccm, dtest, cassandra-1.1. The error does not happen in 
> cassandra-1.0.
>Reporter: Tyler Patterson
>Assignee: Pavel Yaskevich
> Fix For: 1.1.1
>
> Attachments: CASSANDRA-4221-logging.patch, CASSANDRA-4221.patch
>
>
> The following dtest command produces an error:
> {code}export CASSANDRA_VERSION=git:cassandra-1.1; nosetests --nocapture 
> --nologcapture 
> concurrent_schema_changes_test.py:TestConcurrentSchemaChanges.load_test{code}
> Here is the error:
> {code}
> Error occured during compaction
> java.util.concurrent.ExecutionException: java.io.IOError: 
> java.io.FileNotFoundException: 
> /tmp/dtest-6ECMgy/test/node1/data/Keyspace1/Standard1/Keyspace1-Standard1-hc-47-Data.db
>  (No such file or directory)
>   at java.util.concurrent.FutureTask$Sync.innerGet(FutureTask.java:252)
>   at java.util.concurrent.FutureTask.get(FutureTask.java:111)
>   at 
> org.apache.cassandra.db.compaction.CompactionManager.performMaximal(CompactionManager.java:239)
>   at 
> org.apache.cassandra.db.ColumnFamilyStore.forceMajorCompaction(ColumnFamilyStore.java:1580)
>   at 
> org.apache.cassandra.service.StorageService.forceTableCompaction(StorageService.java:1770)
>   at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>   at 
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
>   at 
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>   at java.lang.reflect.Method.invoke(Method.java:616)
>   at 
> com.sun.jmx.mbeanserver.StandardMBeanIntrospector.invokeM2(StandardMBeanIntrospector.java:111)
>   at 
> com.sun.jmx.mbeanserver.StandardMBeanIntrospector.invokeM2(StandardMBeanIntrospector.java:45)
>   at 
> com.sun.jmx.mbeanserver.MBeanIntrospector.invokeM(MBeanIntrospector.java:226)
>   at com.sun.jmx.mbeanserver.PerInterface.invoke(PerInterface.java:138)
>   at com.sun.jmx.mbeanserver.MBeanSupport.invoke(MBeanSupport.java:251)
>   at 
> com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:857)
>   at 
> com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:795)
>   at 
> javax.management.remote.rmi.RMIConnectionImpl.doOperation(RMIConnectionImpl.java:1450)
>   at 
> javax.management.remote.rmi.RMIConnectionImpl.access$200(RMIConnectionImpl.java:90)
>   at 
> javax.management.remote.rmi.RMIConnectionImpl$PrivilegedOperation.run(RMIConnectionImpl.java:1285)
>   at 
> javax.management.remote.rmi.RMIConnectionImpl.doPrivilegedOperation(RMIConnectionImpl.java:1383)
>   at 
> javax.management.remote.rmi.RMIConnectionImpl.invoke(RMIConnectionImpl.java:807)
>   at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>   at 
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
>   at 
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>   at java.lang.reflect.Method.invoke(Method.java:616)
>   at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:322)
>   at sun.rmi.transport.Transport$1.run(Transport.java:177)
>   at java.security.AccessController.doPrivileged(Native Method)
>   at sun.rmi.transport.Transport.serviceCall(Transport.java:173)
>   at 
> sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:553)
>   at 
> sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:808)
>   at 
> sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:667)
>   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:679)
> Caused by: java.io.IOError: java.io.FileNotFoundException: 
> /tmp/dtest-6ECMgy/test/node1/data/Keyspace1/Standard1/Keyspace1-Standard1-hc-47-Data.db
>  (No such file or directory)
>   at 
> org.apache.cassandra.io.sstable.SSTableScanner.(SSTableScanner.java:61)
>   at 
> org.apache.cassandra.io.sstable.SSTableReader.getDirectScanner(SSTableReader.java:839)
>   at 
> org.apache.cassandra.io.sstable.SSTableReader.getDirectScanner(SSTableReader.java:851)
>   at 
> org.apache.cassandr

[jira] [Updated] (CASSANDRA-4221) Error while deleting a columnfamily that is being compacted.

2012-05-17 Thread Tyler Patterson (JIRA)

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

Tyler Patterson updated CASSANDRA-4221:
---

Attachment: system.log

This was after applying both patches to the cassandra-1.1 branch, and setting 
logging to DEBUG.

> Error while deleting a columnfamily that is being compacted.
> 
>
> Key: CASSANDRA-4221
> URL: https://issues.apache.org/jira/browse/CASSANDRA-4221
> Project: Cassandra
>  Issue Type: Bug
>  Components: Core
>Affects Versions: 1.1.0
> Environment: ccm, dtest, cassandra-1.1. The error does not happen in 
> cassandra-1.0.
>Reporter: Tyler Patterson
>Assignee: Pavel Yaskevich
> Fix For: 1.1.1
>
> Attachments: CASSANDRA-4221-logging.patch, CASSANDRA-4221.patch, 
> system.log
>
>
> The following dtest command produces an error:
> {code}export CASSANDRA_VERSION=git:cassandra-1.1; nosetests --nocapture 
> --nologcapture 
> concurrent_schema_changes_test.py:TestConcurrentSchemaChanges.load_test{code}
> Here is the error:
> {code}
> Error occured during compaction
> java.util.concurrent.ExecutionException: java.io.IOError: 
> java.io.FileNotFoundException: 
> /tmp/dtest-6ECMgy/test/node1/data/Keyspace1/Standard1/Keyspace1-Standard1-hc-47-Data.db
>  (No such file or directory)
>   at java.util.concurrent.FutureTask$Sync.innerGet(FutureTask.java:252)
>   at java.util.concurrent.FutureTask.get(FutureTask.java:111)
>   at 
> org.apache.cassandra.db.compaction.CompactionManager.performMaximal(CompactionManager.java:239)
>   at 
> org.apache.cassandra.db.ColumnFamilyStore.forceMajorCompaction(ColumnFamilyStore.java:1580)
>   at 
> org.apache.cassandra.service.StorageService.forceTableCompaction(StorageService.java:1770)
>   at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>   at 
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
>   at 
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>   at java.lang.reflect.Method.invoke(Method.java:616)
>   at 
> com.sun.jmx.mbeanserver.StandardMBeanIntrospector.invokeM2(StandardMBeanIntrospector.java:111)
>   at 
> com.sun.jmx.mbeanserver.StandardMBeanIntrospector.invokeM2(StandardMBeanIntrospector.java:45)
>   at 
> com.sun.jmx.mbeanserver.MBeanIntrospector.invokeM(MBeanIntrospector.java:226)
>   at com.sun.jmx.mbeanserver.PerInterface.invoke(PerInterface.java:138)
>   at com.sun.jmx.mbeanserver.MBeanSupport.invoke(MBeanSupport.java:251)
>   at 
> com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:857)
>   at 
> com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:795)
>   at 
> javax.management.remote.rmi.RMIConnectionImpl.doOperation(RMIConnectionImpl.java:1450)
>   at 
> javax.management.remote.rmi.RMIConnectionImpl.access$200(RMIConnectionImpl.java:90)
>   at 
> javax.management.remote.rmi.RMIConnectionImpl$PrivilegedOperation.run(RMIConnectionImpl.java:1285)
>   at 
> javax.management.remote.rmi.RMIConnectionImpl.doPrivilegedOperation(RMIConnectionImpl.java:1383)
>   at 
> javax.management.remote.rmi.RMIConnectionImpl.invoke(RMIConnectionImpl.java:807)
>   at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>   at 
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
>   at 
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>   at java.lang.reflect.Method.invoke(Method.java:616)
>   at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:322)
>   at sun.rmi.transport.Transport$1.run(Transport.java:177)
>   at java.security.AccessController.doPrivileged(Native Method)
>   at sun.rmi.transport.Transport.serviceCall(Transport.java:173)
>   at 
> sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:553)
>   at 
> sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:808)
>   at 
> sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:667)
>   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:679)
> Caused by: java.io.IOError: java.io.FileNotFoundException: 
> /tmp/dtest-6ECMgy/test/node1/data/Keyspace1/Standard1/Keyspace1-Standard1-hc-47-Data.db
>  (No such file or directory)
>   at 
> org.apache.cassandra.io.sstable.SSTableScanner.(SSTableScanner.java:61)
>   at 
> org.apache.cassandra.io.sstable.SSTableReader.getDirectScanner(SSTableReader.java:839)
>   at 
> org.ap

git commit: Correctly validate order by queries

2012-05-17 Thread slebresne
Updated Branches:
  refs/heads/cassandra-1.1 a0e0e2c13 -> fd92c09d9


Correctly validate order by queries

patch by slebresne; reviewed by jbellis for CASSANDRA-4246


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

Branch: refs/heads/cassandra-1.1
Commit: fd92c09d95a53d582cb8c4b0e77ac47fdd884935
Parents: a0e0e2c
Author: Sylvain Lebresne 
Authored: Thu May 17 14:37:49 2012 +0200
Committer: Sylvain Lebresne 
Committed: Thu May 17 19:37:12 2012 +0200

--
 CHANGES.txt|1 +
 .../cassandra/cql3/statements/SelectStatement.java |   16 +++---
 2 files changed, 9 insertions(+), 8 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/fd92c09d/CHANGES.txt
--
diff --git a/CHANGES.txt b/CHANGES.txt
index 70d9bbe..46646bf 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -48,6 +48,7 @@
  * fix SecondaryIndex LelevedManifest save upon snapshot (CASSANDRA-4230)
  * fix missing arrayOffset in FBUtilities.hash (CASSANDRA-4250)
  * (cql3) Add name of parameters in CqlResultSet (CASSANDRA-4242)
+ * (cql3) Correctly validat order by queries (CASSANDRA-4246)
 Merged from 1.0:
  * Fix super columns bug where cache is not updated (CASSANDRA-4190)
  * fix maxTimestamp to include row tombstones (CASSANDRA-4116)

http://git-wip-us.apache.org/repos/asf/cassandra/blob/fd92c09d/src/java/org/apache/cassandra/cql3/statements/SelectStatement.java
--
diff --git a/src/java/org/apache/cassandra/cql3/statements/SelectStatement.java 
b/src/java/org/apache/cassandra/cql3/statements/SelectStatement.java
index d3fb50a..35cb943 100644
--- a/src/java/org/apache/cassandra/cql3/statements/SelectStatement.java
+++ b/src/java/org/apache/cassandra/cql3/statements/SelectStatement.java
@@ -757,7 +757,8 @@ public class SelectStatement implements CQLStatement
 cqlRows.add(new CqlRow(row.key.key, thriftColumns));
 }
 }
-// We don't allow reversed on range scan, but we do on multiget (IN 
(...)), so let's reverse the rows there too.
+
+// Internal calls always return columns in the comparator order, even 
when reverse was set
 if (isReversed)
 Collections.reverse(cqlRows);
 
@@ -1013,14 +1014,13 @@ public class SelectStatement implements CQLStatement
 }
 assert isReversed != null;
 stmt.isReversed = isReversed;
-}
 
-// Only allow reversed if the row key restriction is an equality,
-// since we don't know how to reverse otherwise
-if (stmt.isReversed)
-{
-if (stmt.keyRestriction == null || 
!stmt.keyRestriction.isEquality())
-throw new InvalidRequestException("Descending order is 
only supported is the first part of the PRIMARY KEY is restricted by an Equal 
or a IN");
+// Only allow ordering if the row key restriction is an 
equality,
+// since otherwise the order will be primarily on the row key.
+// TODO: we could allow ordering for IN queries, as we can do 
the
+// sorting post-query easily, but we will have to add it
+if (stmt.keyRestriction == null || 
!stmt.keyRestriction.isEquality() || stmt.keyRestriction.eqValues.size() != 1)
+throw new InvalidRequestException("Ordering is only 
supported is the first part of the PRIMARY KEY is restricted by an Equal or a 
IN");
 }
 
 // If this is a query on tokens, it's necessary a range query 
(there can be more than one key per token), so reject IN queries (as we don't 
know how to do them)



[jira] [Commented] (CASSANDRA-4246) cql3 ORDER BY not ordering

2012-05-17 Thread Jonathan Ellis (JIRA)

[ 
https://issues.apache.org/jira/browse/CASSANDRA-4246?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13278001#comment-13278001
 ] 

Jonathan Ellis commented on CASSANDRA-4246:
---

+1

> cql3 ORDER BY not ordering
> --
>
> Key: CASSANDRA-4246
> URL: https://issues.apache.org/jira/browse/CASSANDRA-4246
> Project: Cassandra
>  Issue Type: Bug
>  Components: Core
>Affects Versions: 1.1.0
>Reporter: paul cannon
>Assignee: Sylvain Lebresne
>  Labels: cql3
> Fix For: 1.1.1
>
> Attachments: 4246-2.txt, 4246.txt
>
>
> Creating the simplest composite-key cql3 table I can think of, populating it 
> with a few rows of data, then trying to do a query with an ORDER BY does not 
> yield ordered results.
> Here's a cql script:
> {noformat}
> create keyspace test with strategy_class = 'SimpleStrategy'
>and strategy_options:replication_factor = 1;
> use test;
> create table moo (a int, b int, c int, primary key (a, b));
> insert into moo (a, b, c) values (123, 12, 3400);
> insert into moo (a, b, c) values (122, 13, 3500);
> insert into moo (a, b, c) values (124, 10, 3600);
> insert into moo (a, b, c) values (121, 11, 3700);
> select * from moo;
> select * from moo order by b;
> {noformat}
> Here is the output of those two queries:
> {noformat}
>  a   | b  | c
> -++--
>  121 | 11 | 3700
>  122 | 13 | 3500
>  124 | 10 | 3600
>  123 | 12 | 3400
>  a   | b  | c
> -++--
>  121 | 11 | 3700
>  122 | 13 | 3500
>  124 | 10 | 3600
>  123 | 12 | 3400
> {noformat}
> I also tried these using the bare thrift interface, to make sure it wasn't 
> python-cql or cqlsh doing something stupid. Same results. Am I totally 
> missing something important here about how this is supposed to work?

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Updated] (CASSANDRA-4246) cql3 ORDER BY not ordering

2012-05-17 Thread Sylvain Lebresne (JIRA)

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

Sylvain Lebresne updated CASSANDRA-4246:


Attachment: 4246-2.txt

I'm good with that. Attaching v2 with that change.

> cql3 ORDER BY not ordering
> --
>
> Key: CASSANDRA-4246
> URL: https://issues.apache.org/jira/browse/CASSANDRA-4246
> Project: Cassandra
>  Issue Type: Bug
>  Components: Core
>Affects Versions: 1.1.0
>Reporter: paul cannon
>Assignee: Sylvain Lebresne
>  Labels: cql3
> Fix For: 1.1.1
>
> Attachments: 4246-2.txt, 4246.txt
>
>
> Creating the simplest composite-key cql3 table I can think of, populating it 
> with a few rows of data, then trying to do a query with an ORDER BY does not 
> yield ordered results.
> Here's a cql script:
> {noformat}
> create keyspace test with strategy_class = 'SimpleStrategy'
>and strategy_options:replication_factor = 1;
> use test;
> create table moo (a int, b int, c int, primary key (a, b));
> insert into moo (a, b, c) values (123, 12, 3400);
> insert into moo (a, b, c) values (122, 13, 3500);
> insert into moo (a, b, c) values (124, 10, 3600);
> insert into moo (a, b, c) values (121, 11, 3700);
> select * from moo;
> select * from moo order by b;
> {noformat}
> Here is the output of those two queries:
> {noformat}
>  a   | b  | c
> -++--
>  121 | 11 | 3700
>  122 | 13 | 3500
>  124 | 10 | 3600
>  123 | 12 | 3400
>  a   | b  | c
> -++--
>  121 | 11 | 3700
>  122 | 13 | 3500
>  124 | 10 | 3600
>  123 | 12 | 3400
> {noformat}
> I also tried these using the bare thrift interface, to make sure it wasn't 
> python-cql or cqlsh doing something stupid. Same results. Am I totally 
> missing something important here about how this is supposed to work?

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (CASSANDRA-4246) cql3 ORDER BY not ordering

2012-05-17 Thread Jonathan Ellis (JIRA)

[ 
https://issues.apache.org/jira/browse/CASSANDRA-4246?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13277976#comment-13277976
 ] 

Jonathan Ellis commented on CASSANDRA-4246:
---

doh, demorgan fail :)

i do think it's a little clearer to have a chain of || than a mix of || and &&, 
though

> cql3 ORDER BY not ordering
> --
>
> Key: CASSANDRA-4246
> URL: https://issues.apache.org/jira/browse/CASSANDRA-4246
> Project: Cassandra
>  Issue Type: Bug
>  Components: Core
>Affects Versions: 1.1.0
>Reporter: paul cannon
>Assignee: Sylvain Lebresne
>  Labels: cql3
> Fix For: 1.1.1
>
> Attachments: 4246.txt
>
>
> Creating the simplest composite-key cql3 table I can think of, populating it 
> with a few rows of data, then trying to do a query with an ORDER BY does not 
> yield ordered results.
> Here's a cql script:
> {noformat}
> create keyspace test with strategy_class = 'SimpleStrategy'
>and strategy_options:replication_factor = 1;
> use test;
> create table moo (a int, b int, c int, primary key (a, b));
> insert into moo (a, b, c) values (123, 12, 3400);
> insert into moo (a, b, c) values (122, 13, 3500);
> insert into moo (a, b, c) values (124, 10, 3600);
> insert into moo (a, b, c) values (121, 11, 3700);
> select * from moo;
> select * from moo order by b;
> {noformat}
> Here is the output of those two queries:
> {noformat}
>  a   | b  | c
> -++--
>  121 | 11 | 3700
>  122 | 13 | 3500
>  124 | 10 | 3600
>  123 | 12 | 3400
>  a   | b  | c
> -++--
>  121 | 11 | 3700
>  122 | 13 | 3500
>  124 | 10 | 3600
>  123 | 12 | 3400
> {noformat}
> I also tried these using the bare thrift interface, to make sure it wasn't 
> python-cql or cqlsh doing something stupid. Same results. Am I totally 
> missing something important here about how this is supposed to work?

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (CASSANDRA-4233) overlapping sstables in leveled compaction strategy

2012-05-17 Thread Sylvain Lebresne (JIRA)

[ 
https://issues.apache.org/jira/browse/CASSANDRA-4233?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13277968#comment-13277968
 ] 

Sylvain Lebresne commented on CASSANDRA-4233:
-

I'd submit that my version was giving a slightly better feedback through JMX 
but I guess that's not a big deal.

But other than that, the definition of isCompactionDisabled so far has been to 
disallow automatic compaction, but forced compaction ("maximal" ones) was still 
allowed. v2 change that for LCS. I'll note that disabling compaction was 
respected for background tasks by LCS by the fact that 
DataTracker.maxCompacting was skipping compaction when maxCompactionThreshold 
is 0, but allowed for maximal tasks since the maxCompactionThreshold is 
overriden in compactionManager in that case. I don't know if it's a big deal 
though (I suspect some tests would fail if run with LCS because they rely on 
that) but wanted to mention it.

> overlapping sstables in leveled compaction strategy
> ---
>
> Key: CASSANDRA-4233
> URL: https://issues.apache.org/jira/browse/CASSANDRA-4233
> Project: Cassandra
>  Issue Type: Bug
>Affects Versions: 1.1.0
>Reporter: Jonathan Ellis
>Assignee: Sylvain Lebresne
> Fix For: 1.1.1
>
> Attachments: 
> 0001-Make-sure-Leveled-compaction-always-use-the-right-min-.txt, 
> 4233-assert.txt, 4233-v2.txt, 4233-v3.txt, system.log.bz2
>
>
> CASSANDRA-4142 introduces test failures, that are caused by overlapping 
> tables within a level, which Shouldn't Happen.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Updated] (CASSANDRA-4233) overlapping sstables in leveled compaction strategy

2012-05-17 Thread Jonathan Ellis (JIRA)

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

Jonathan Ellis updated CASSANDRA-4233:
--

Attachment: 4233-v3.txt

tweaked v3 to not mess w/ min/max settings at all (which would result in 
re-activating compaction if it's "disabled")

> overlapping sstables in leveled compaction strategy
> ---
>
> Key: CASSANDRA-4233
> URL: https://issues.apache.org/jira/browse/CASSANDRA-4233
> Project: Cassandra
>  Issue Type: Bug
>Affects Versions: 1.1.0
>Reporter: Jonathan Ellis
>Assignee: Sylvain Lebresne
> Fix For: 1.1.1
>
> Attachments: 
> 0001-Make-sure-Leveled-compaction-always-use-the-right-min-.txt, 
> 4233-assert.txt, 4233-v2.txt, 4233-v3.txt, system.log.bz2
>
>
> CASSANDRA-4142 introduces test failures, that are caused by overlapping 
> tables within a level, which Shouldn't Happen.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Updated] (CASSANDRA-4233) overlapping sstables in leveled compaction strategy

2012-05-17 Thread Jonathan Ellis (JIRA)

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

Jonathan Ellis updated CASSANDRA-4233:
--

Attachment: 4233-v2.txt

simpler v2 attached, to just ignore CFS min/max in the actual 
LeveledCompactionTask.

also respects isCompactionDisabled in LCS.

> overlapping sstables in leveled compaction strategy
> ---
>
> Key: CASSANDRA-4233
> URL: https://issues.apache.org/jira/browse/CASSANDRA-4233
> Project: Cassandra
>  Issue Type: Bug
>Affects Versions: 1.1.0
>Reporter: Jonathan Ellis
>Assignee: Sylvain Lebresne
> Fix For: 1.1.1
>
> Attachments: 
> 0001-Make-sure-Leveled-compaction-always-use-the-right-min-.txt, 
> 4233-assert.txt, 4233-v2.txt, system.log.bz2
>
>
> CASSANDRA-4142 introduces test failures, that are caused by overlapping 
> tables within a level, which Shouldn't Happen.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (CASSANDRA-4246) cql3 ORDER BY not ordering

2012-05-17 Thread Sylvain Lebresne (JIRA)

[ 
https://issues.apache.org/jira/browse/CASSANDRA-4246?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13277954#comment-13277954
 ] 

Sylvain Lebresne commented on CASSANDRA-4246:
-

Given that !(A&&B) == (!A)||(!B), I'd suggest that both are fine :)
But I'm fine going with the second one if you find it more readable.

> cql3 ORDER BY not ordering
> --
>
> Key: CASSANDRA-4246
> URL: https://issues.apache.org/jira/browse/CASSANDRA-4246
> Project: Cassandra
>  Issue Type: Bug
>  Components: Core
>Affects Versions: 1.1.0
>Reporter: paul cannon
>Assignee: Sylvain Lebresne
>  Labels: cql3
> Fix For: 1.1.1
>
> Attachments: 4246.txt
>
>
> Creating the simplest composite-key cql3 table I can think of, populating it 
> with a few rows of data, then trying to do a query with an ORDER BY does not 
> yield ordered results.
> Here's a cql script:
> {noformat}
> create keyspace test with strategy_class = 'SimpleStrategy'
>and strategy_options:replication_factor = 1;
> use test;
> create table moo (a int, b int, c int, primary key (a, b));
> insert into moo (a, b, c) values (123, 12, 3400);
> insert into moo (a, b, c) values (122, 13, 3500);
> insert into moo (a, b, c) values (124, 10, 3600);
> insert into moo (a, b, c) values (121, 11, 3700);
> select * from moo;
> select * from moo order by b;
> {noformat}
> Here is the output of those two queries:
> {noformat}
>  a   | b  | c
> -++--
>  121 | 11 | 3700
>  122 | 13 | 3500
>  124 | 10 | 3600
>  123 | 12 | 3400
>  a   | b  | c
> -++--
>  121 | 11 | 3700
>  122 | 13 | 3500
>  124 | 10 | 3600
>  123 | 12 | 3400
> {noformat}
> I also tried these using the bare thrift interface, to make sure it wasn't 
> python-cql or cqlsh doing something stupid. Same results. Am I totally 
> missing something important here about how this is supposed to work?

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (CASSANDRA-4246) cql3 ORDER BY not ordering

2012-05-17 Thread Jonathan Ellis (JIRA)

[ 
https://issues.apache.org/jira/browse/CASSANDRA-4246?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13277943#comment-13277943
 ] 

Jonathan Ellis commented on CASSANDRA-4246:
---

Is this right?

{code}
if (stmt.keyRestriction == null || 
!(stmt.keyRestriction.isEquality() && stmt.keyRestriction.eqValues.size() == 1))
{code}

I would have expected
{code}
if (stmt.keyRestriction == null || 
!stmt.keyRestriction.isEquality() || stmt.keyRestriction.eqValues.size() != 1)
{code}

> cql3 ORDER BY not ordering
> --
>
> Key: CASSANDRA-4246
> URL: https://issues.apache.org/jira/browse/CASSANDRA-4246
> Project: Cassandra
>  Issue Type: Bug
>  Components: Core
>Affects Versions: 1.1.0
>Reporter: paul cannon
>Assignee: Sylvain Lebresne
>  Labels: cql3
> Fix For: 1.1.1
>
> Attachments: 4246.txt
>
>
> Creating the simplest composite-key cql3 table I can think of, populating it 
> with a few rows of data, then trying to do a query with an ORDER BY does not 
> yield ordered results.
> Here's a cql script:
> {noformat}
> create keyspace test with strategy_class = 'SimpleStrategy'
>and strategy_options:replication_factor = 1;
> use test;
> create table moo (a int, b int, c int, primary key (a, b));
> insert into moo (a, b, c) values (123, 12, 3400);
> insert into moo (a, b, c) values (122, 13, 3500);
> insert into moo (a, b, c) values (124, 10, 3600);
> insert into moo (a, b, c) values (121, 11, 3700);
> select * from moo;
> select * from moo order by b;
> {noformat}
> Here is the output of those two queries:
> {noformat}
>  a   | b  | c
> -++--
>  121 | 11 | 3700
>  122 | 13 | 3500
>  124 | 10 | 3600
>  123 | 12 | 3400
>  a   | b  | c
> -++--
>  121 | 11 | 3700
>  122 | 13 | 3500
>  124 | 10 | 3600
>  123 | 12 | 3400
> {noformat}
> I also tried these using the bare thrift interface, to make sure it wasn't 
> python-cql or cqlsh doing something stupid. Same results. Am I totally 
> missing something important here about how this is supposed to work?

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Updated] (CASSANDRA-3991) Investigate importance of jsvc in debian packages

2012-05-17 Thread Jonathan Ellis (JIRA)

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

Jonathan Ellis updated CASSANDRA-3991:
--

Fix Version/s: (was: 1.1.1)
   1.2

Doesn't look like this is going to make 1.1.1, and 1.1.2 is probably too late 
to change this, so pushing to 1.2

> Investigate importance of jsvc in debian packages
> -
>
> Key: CASSANDRA-3991
> URL: https://issues.apache.org/jira/browse/CASSANDRA-3991
> Project: Cassandra
>  Issue Type: Improvement
>  Components: Core
>Reporter: Brandon Williams
>Assignee: Brandon Williams
>Priority: Minor
> Fix For: 1.2
>
>
> jsvc seems to be buggy at best.  For instance, if you set a small heap like 
> 128M it seems to completely ignore this and use as much memory as it wants.  
> I don't know what this is buying us over launching /usr/bin/cassandra 
> directly like the redhat scripts do, but I've seen multiple complaints about 
> its memory usage.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Resolved] (CASSANDRA-4244) RangeSlice command with CL.One doesn't do RR

2012-05-17 Thread Jonathan Ellis (JIRA)

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

Jonathan Ellis resolved CASSANDRA-4244.
---

   Resolution: Duplicate
Fix Version/s: (was: 1.1.1)
 Assignee: (was: Vijay)

duplicate of CASSANDRA-3687 and CASSANDRA-967

> RangeSlice command with CL.One doesn't do RR
> 
>
> Key: CASSANDRA-4244
> URL: https://issues.apache.org/jira/browse/CASSANDRA-4244
> Project: Cassandra
>  Issue Type: Bug
>  Components: Core
>Affects Versions: 1.0.10
>Reporter: Vijay
>Priority: Minor
>
> Looks like SP.getRangeSlice has the following code
> {quote}
> if (consistency_level == ConsistencyLevel.ONE && 
> !liveEndpoints.isEmpty() && 
> liveEndpoints.get(0).equals(FBUtilities.getBroadcastAddress()))
> {quote}
> We might want to change it to use LocalReadRunnable consistent with fetchRows.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Updated] (CASSANDRA-4233) overlapping sstables in leveled compaction strategy

2012-05-17 Thread Sylvain Lebresne (JIRA)

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

Sylvain Lebresne updated CASSANDRA-4233:


Attachment: 0001-Make-sure-Leveled-compaction-always-use-the-right-min-.txt

This was kind of a test problem, though this is kind of a bug.

The main problem is that LeveledCompaction should never get a 
maxCompactionThreshold < Integer.MAX_VALUE, otherwise it ends up not compaction 
what it should and this screw up the levels. However, the way we try to ensure 
that is by overriding the maxCompactionThreshold in LeveledCompactionStrategy 
constructor. This is however dangerous because it means that if anyone change 
the threshold afterward, it will break. And sure enough, that is what happens 
with CompactionsTest.

So attaching a patch that change the code to ensure this doesn't happen. To a 
large extend this patch is a hack and in the long run, we should refactor all 
this to move the min/max compaction threshold inside SizeTieredCompaction, 
where they belong. This is however a bigger refactor than I want to do on the 
1.1 branch as currently the thresholds are used to deactivate automatic 
compaction and whatnot.

> overlapping sstables in leveled compaction strategy
> ---
>
> Key: CASSANDRA-4233
> URL: https://issues.apache.org/jira/browse/CASSANDRA-4233
> Project: Cassandra
>  Issue Type: Bug
>Affects Versions: 1.1.0
>Reporter: Jonathan Ellis
> Fix For: 1.1.1
>
> Attachments: 
> 0001-Make-sure-Leveled-compaction-always-use-the-right-min-.txt, 
> 4233-assert.txt, system.log.bz2
>
>
> CASSANDRA-4142 introduces test failures, that are caused by overlapping 
> tables within a level, which Shouldn't Happen.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (CASSANDRA-4223) Non Unique Streaming session ID's

2012-05-17 Thread Yuki Morishita (JIRA)

[ 
https://issues.apache.org/jira/browse/CASSANDRA-4223?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13277889#comment-13277889
 ] 

Yuki Morishita commented on CASSANDRA-4223:
---

Aaron,

Go ahead. :)

> Non Unique Streaming session ID's
> -
>
> Key: CASSANDRA-4223
> URL: https://issues.apache.org/jira/browse/CASSANDRA-4223
> Project: Cassandra
>  Issue Type: Bug
>  Components: Core
> Environment: Ubuntu 10.04.2 LTS
> java version "1.6.0_24"
> Java(TM) SE Runtime Environment (build 1.6.0_24-b07)
> Java HotSpot(TM) 64-Bit Server VM (build 19.1-b02, mixed mode)
> "Bare metal" servers from 
> https://www.stormondemand.com/servers/baremetal.html 
> The servers run on a custom hypervisor.
>  
>Reporter: Aaron Morton
>Assignee: Aaron Morton
>  Labels: datastax_qa
> Fix For: 1.0.11, 1.1.1
>
> Attachments: 4223_counter_session_id-V2.diff, 
> 4223_counter_session_id.diff, NanoTest.java, fmm streaming bug.txt
>
>
> I have observed repair processes failing due to duplicate Streaming session 
> ID's. In this installation it is preventing rebalance from completing. I 
> believe it has also prevented repair from completing in the past. 
> The attached streaming-logs.txt file contains log messages and an explanation 
> of what was happening during a repair operation. it has the evidence for 
> duplicate session ID's.
> The duplicate session id's were generated on the repairing node and sent to 
> the streaming node. The streaming source replaced the first session with the 
> second which resulted in both sessions failing when the first FILE_COMPLETE 
> message was received. 
> The errors were:
> {code:java}
> DEBUG [MiscStage:1] 2012-05-03 21:40:33,997 StreamReplyVerbHandler.java (line 
> 47) Received StreamReply StreamReply(sessionId=26132848816442266, 
> file='/var/lib/cassandra/data/FMM_Studio/PartsData-hc-1-Data.db', 
> action=FILE_FINISHED)
> ERROR [MiscStage:1] 2012-05-03 21:40:34,027 AbstractCassandraDaemon.java 
> (line 139) Fatal exception in thread Thread[MiscStage:1,5,main]
> java.lang.IllegalStateException: target reports current file is 
> /var/lib/cassandra/data/FMM_Studio/PartsData-hc-1-Data.db but is null
> at 
> org.apache.cassandra.streaming.StreamOutSession.validateCurrentFile(StreamOutSession.java:195)
> at 
> org.apache.cassandra.streaming.StreamReplyVerbHandler.doVerb(StreamReplyVerbHandler.java:58)
> at 
> org.apache.cassandra.net.MessageDeliveryTask.run(MessageDeliveryTask.java:59)
> at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown 
> Source)
> at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
> at java.lang.Thread.run(Unknown Source)
> {code}
> and
> {code:java}
> DEBUG [MiscStage:2] 2012-05-03 21:40:36,497 StreamReplyVerbHandler.java (line 
> 47) Received StreamReply StreamReply(sessionId=26132848816442266, 
> file='/var/lib/cassandra/data/OpsCenter/rollups7200-hc-3-Data.db', 
> action=FILE_FINISHED)
> ERROR [MiscStage:2] 2012-05-03 21:40:36,497 AbstractCassandraDaemon.java 
> (line 139) Fatal exception in thread Thread[MiscStage:2,5,main]
> java.lang.IllegalStateException: target reports current file is 
> /var/lib/cassandra/data/OpsCenter/rollups7200-hc-3-Data.db but is null
> at 
> org.apache.cassandra.streaming.StreamOutSession.validateCurrentFile(StreamOutSession.java:195)
> at 
> org.apache.cassandra.streaming.StreamReplyVerbHandler.doVerb(StreamReplyVerbHandler.java:58)
> at 
> org.apache.cassandra.net.MessageDeliveryTask.run(MessageDeliveryTask.java:59)
> at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown 
> Source)
> at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
> at java.lang.Thread.run(Unknown Source)
> {code}
> I think this is because System.nanoTime() is used for the session ID when 
> creating the StreamInSession objects (driven from 
> StorageService.requestRanges()) . 
> From the documentation 
> (http://docs.oracle.com/javase/6/docs/api/java/lang/System.html#nanoTime()) 
> {quote}
> This method provides nanosecond precision, but not necessarily nanosecond 
> accuracy. No guarantees are made about how frequently values change. 
> {quote}
> Also some info here on clocks and timers 
> https://blogs.oracle.com/dholmes/entry/inside_the_hotspot_vm_clocks
> The hypervisor may be at fault here. But it seems like we cannot rely on 
> successive calls to nanoTime() to return different values. 
> To avoid message/interface changes on the StreamHeader it would be good to 
> keep the session ID a long. The simplest approach may be to make successive 
> calls to nanoTime until the result changes. We could fail if a certain number 
> of milliseconds have passed. 
> Hash

[jira] [Updated] (CASSANDRA-4233) overlapping sstables in leveled compaction strategy

2012-05-17 Thread Sylvain Lebresne (JIRA)

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

Sylvain Lebresne updated CASSANDRA-4233:


Affects Version/s: 1.1.0
Fix Version/s: 1.1.1

> overlapping sstables in leveled compaction strategy
> ---
>
> Key: CASSANDRA-4233
> URL: https://issues.apache.org/jira/browse/CASSANDRA-4233
> Project: Cassandra
>  Issue Type: Bug
>Affects Versions: 1.1.0
>Reporter: Jonathan Ellis
> Fix For: 1.1.1
>
> Attachments: 4233-assert.txt, system.log.bz2
>
>
> CASSANDRA-4142 introduces test failures, that are caused by overlapping 
> tables within a level, which Shouldn't Happen.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Updated] (CASSANDRA-4246) cql3 ORDER BY not ordering

2012-05-17 Thread Sylvain Lebresne (JIRA)

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

Sylvain Lebresne updated CASSANDRA-4246:


Attachment: 4246.txt

We were doing some validation that order by was not used when multiple internal 
rows are queried, but only for the reversed case for some reason. Patch 
attached to fix (it also refuse order by when a IN is used on the row key as 
this would require a bit more work to have it work correctly).

> cql3 ORDER BY not ordering
> --
>
> Key: CASSANDRA-4246
> URL: https://issues.apache.org/jira/browse/CASSANDRA-4246
> Project: Cassandra
>  Issue Type: Bug
>  Components: Core
>Affects Versions: 1.1.0
>Reporter: paul cannon
>Assignee: Sylvain Lebresne
>  Labels: cql3
> Attachments: 4246.txt
>
>
> Creating the simplest composite-key cql3 table I can think of, populating it 
> with a few rows of data, then trying to do a query with an ORDER BY does not 
> yield ordered results.
> Here's a cql script:
> {noformat}
> create keyspace test with strategy_class = 'SimpleStrategy'
>and strategy_options:replication_factor = 1;
> use test;
> create table moo (a int, b int, c int, primary key (a, b));
> insert into moo (a, b, c) values (123, 12, 3400);
> insert into moo (a, b, c) values (122, 13, 3500);
> insert into moo (a, b, c) values (124, 10, 3600);
> insert into moo (a, b, c) values (121, 11, 3700);
> select * from moo;
> select * from moo order by b;
> {noformat}
> Here is the output of those two queries:
> {noformat}
>  a   | b  | c
> -++--
>  121 | 11 | 3700
>  122 | 13 | 3500
>  124 | 10 | 3600
>  123 | 12 | 3400
>  a   | b  | c
> -++--
>  121 | 11 | 3700
>  122 | 13 | 3500
>  124 | 10 | 3600
>  123 | 12 | 3400
> {noformat}
> I also tried these using the bare thrift interface, to make sure it wasn't 
> python-cql or cqlsh doing something stupid. Same results. Am I totally 
> missing something important here about how this is supposed to work?

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (CASSANDRA-4245) Provide a UT8Type (case insensitive) comparator

2012-05-17 Thread Sylvain Lebresne (JIRA)

[ 
https://issues.apache.org/jira/browse/CASSANDRA-4245?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13277751#comment-13277751
 ] 

Sylvain Lebresne commented on CASSANDRA-4245:
-

bq.  Where the case of the string is preserved but then ignored in queries.

I don't think that this is what the '6 columns' option does. Namely, if we have 
6 columns, it means that we don't ignore the case in queries (since we have 
multiple values for the same name but with different case). In other words, if 
its case insensitivity we want, it's the 3 columns option, for which I kind of 
agree with Jonathan and Brandon, can be done client side fairly easily by 
lower-casing everything. The 6 columns option is more about having a different 
string order that puts strings that differ only by case closer, which can be 
neat, but is it so useful that it justify being a native type?

> Provide a UT8Type (case insensitive) comparator
> ---
>
> Key: CASSANDRA-4245
> URL: https://issues.apache.org/jira/browse/CASSANDRA-4245
> Project: Cassandra
>  Issue Type: New Feature
>Reporter: Ertio Lew
>Priority: Minor
>
> It is a common use case to use a bunch of entity names as column names & then 
> use the row as a search index, using search by range. For such use cases & 
> others, it is useful to have a UTF8 comparator that provides case insensitive 
> ordering of columns.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (CASSANDRA-4223) Non Unique Streaming session ID's

2012-05-17 Thread Aaron Morton (JIRA)

[ 
https://issues.apache.org/jira/browse/CASSANDRA-4223?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13277722#comment-13277722
 ] 

Aaron Morton commented on CASSANDRA-4223:
-

Yuki were you going to commit this or do you want me to?

> Non Unique Streaming session ID's
> -
>
> Key: CASSANDRA-4223
> URL: https://issues.apache.org/jira/browse/CASSANDRA-4223
> Project: Cassandra
>  Issue Type: Bug
>  Components: Core
> Environment: Ubuntu 10.04.2 LTS
> java version "1.6.0_24"
> Java(TM) SE Runtime Environment (build 1.6.0_24-b07)
> Java HotSpot(TM) 64-Bit Server VM (build 19.1-b02, mixed mode)
> "Bare metal" servers from 
> https://www.stormondemand.com/servers/baremetal.html 
> The servers run on a custom hypervisor.
>  
>Reporter: Aaron Morton
>Assignee: Aaron Morton
>  Labels: datastax_qa
> Fix For: 1.0.11, 1.1.1
>
> Attachments: 4223_counter_session_id-V2.diff, 
> 4223_counter_session_id.diff, NanoTest.java, fmm streaming bug.txt
>
>
> I have observed repair processes failing due to duplicate Streaming session 
> ID's. In this installation it is preventing rebalance from completing. I 
> believe it has also prevented repair from completing in the past. 
> The attached streaming-logs.txt file contains log messages and an explanation 
> of what was happening during a repair operation. it has the evidence for 
> duplicate session ID's.
> The duplicate session id's were generated on the repairing node and sent to 
> the streaming node. The streaming source replaced the first session with the 
> second which resulted in both sessions failing when the first FILE_COMPLETE 
> message was received. 
> The errors were:
> {code:java}
> DEBUG [MiscStage:1] 2012-05-03 21:40:33,997 StreamReplyVerbHandler.java (line 
> 47) Received StreamReply StreamReply(sessionId=26132848816442266, 
> file='/var/lib/cassandra/data/FMM_Studio/PartsData-hc-1-Data.db', 
> action=FILE_FINISHED)
> ERROR [MiscStage:1] 2012-05-03 21:40:34,027 AbstractCassandraDaemon.java 
> (line 139) Fatal exception in thread Thread[MiscStage:1,5,main]
> java.lang.IllegalStateException: target reports current file is 
> /var/lib/cassandra/data/FMM_Studio/PartsData-hc-1-Data.db but is null
> at 
> org.apache.cassandra.streaming.StreamOutSession.validateCurrentFile(StreamOutSession.java:195)
> at 
> org.apache.cassandra.streaming.StreamReplyVerbHandler.doVerb(StreamReplyVerbHandler.java:58)
> at 
> org.apache.cassandra.net.MessageDeliveryTask.run(MessageDeliveryTask.java:59)
> at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown 
> Source)
> at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
> at java.lang.Thread.run(Unknown Source)
> {code}
> and
> {code:java}
> DEBUG [MiscStage:2] 2012-05-03 21:40:36,497 StreamReplyVerbHandler.java (line 
> 47) Received StreamReply StreamReply(sessionId=26132848816442266, 
> file='/var/lib/cassandra/data/OpsCenter/rollups7200-hc-3-Data.db', 
> action=FILE_FINISHED)
> ERROR [MiscStage:2] 2012-05-03 21:40:36,497 AbstractCassandraDaemon.java 
> (line 139) Fatal exception in thread Thread[MiscStage:2,5,main]
> java.lang.IllegalStateException: target reports current file is 
> /var/lib/cassandra/data/OpsCenter/rollups7200-hc-3-Data.db but is null
> at 
> org.apache.cassandra.streaming.StreamOutSession.validateCurrentFile(StreamOutSession.java:195)
> at 
> org.apache.cassandra.streaming.StreamReplyVerbHandler.doVerb(StreamReplyVerbHandler.java:58)
> at 
> org.apache.cassandra.net.MessageDeliveryTask.run(MessageDeliveryTask.java:59)
> at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown 
> Source)
> at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
> at java.lang.Thread.run(Unknown Source)
> {code}
> I think this is because System.nanoTime() is used for the session ID when 
> creating the StreamInSession objects (driven from 
> StorageService.requestRanges()) . 
> From the documentation 
> (http://docs.oracle.com/javase/6/docs/api/java/lang/System.html#nanoTime()) 
> {quote}
> This method provides nanosecond precision, but not necessarily nanosecond 
> accuracy. No guarantees are made about how frequently values change. 
> {quote}
> Also some info here on clocks and timers 
> https://blogs.oracle.com/dholmes/entry/inside_the_hotspot_vm_clocks
> The hypervisor may be at fault here. But it seems like we cannot rely on 
> successive calls to nanoTime() to return different values. 
> To avoid message/interface changes on the StreamHeader it would be good to 
> keep the session ID a long. The simplest approach may be to make successive 
> calls to nanoTime until the result changes. We could fail if a certain number 
> of m

[jira] [Commented] (CASSANDRA-4245) Provide a UT8Type (case insensitive) comparator

2012-05-17 Thread Aaron Morton (JIRA)

[ 
https://issues.apache.org/jira/browse/CASSANDRA-4245?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13277721#comment-13277721
 ] 

Aaron Morton commented on CASSANDRA-4245:
-

bq.  "case-insensitive but case-preserving,"
Thinking about it, the "six columns" option more closely matches the RDBMS 
experience. Where the case of the string is preserved but then ignored in 
queries. It probably also take less to implement.

bq.  And providing a comparator per locale is clearly insane.
I would imagine the collation being a comparator property that was used to 
construct the java.text.Collator - e.g 
UTF8Type("query_collation"="english_CI_AS") for english local, case 
insensitive, accent sensitive. Would need to do some research on how to use the 
java.text.Collator correctly though. 

Still think there may be a need, but it's more than a drop in comparator.

> Provide a UT8Type (case insensitive) comparator
> ---
>
> Key: CASSANDRA-4245
> URL: https://issues.apache.org/jira/browse/CASSANDRA-4245
> Project: Cassandra
>  Issue Type: New Feature
>Reporter: Ertio Lew
>Priority: Minor
>
> It is a common use case to use a bunch of entity names as column names & then 
> use the row as a search index, using search by range. For such use cases & 
> others, it is useful to have a UTF8 comparator that provides case insensitive 
> ordering of columns.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Updated] (CASSANDRA-4221) Error while deleting a columnfamily that is being compacted.

2012-05-17 Thread Pavel Yaskevich (JIRA)

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

Pavel Yaskevich updated CASSANDRA-4221:
---

Attachment: CASSANDRA-4221-logging.patch

Interesting, I can't reproduce it myself. Can you please run it with logging 
patch attached (and enabled DEBUG logging) and attach debug log from your C* 
node to this task, so I can check that is happening inside of DataTracker in 
your case?... 

> Error while deleting a columnfamily that is being compacted.
> 
>
> Key: CASSANDRA-4221
> URL: https://issues.apache.org/jira/browse/CASSANDRA-4221
> Project: Cassandra
>  Issue Type: Bug
>  Components: Core
>Affects Versions: 1.1.0
> Environment: ccm, dtest, cassandra-1.1. The error does not happen in 
> cassandra-1.0.
>Reporter: Tyler Patterson
>Assignee: Pavel Yaskevich
> Fix For: 1.1.1
>
> Attachments: CASSANDRA-4221-logging.patch, CASSANDRA-4221.patch
>
>
> The following dtest command produces an error:
> {code}export CASSANDRA_VERSION=git:cassandra-1.1; nosetests --nocapture 
> --nologcapture 
> concurrent_schema_changes_test.py:TestConcurrentSchemaChanges.load_test{code}
> Here is the error:
> {code}
> Error occured during compaction
> java.util.concurrent.ExecutionException: java.io.IOError: 
> java.io.FileNotFoundException: 
> /tmp/dtest-6ECMgy/test/node1/data/Keyspace1/Standard1/Keyspace1-Standard1-hc-47-Data.db
>  (No such file or directory)
>   at java.util.concurrent.FutureTask$Sync.innerGet(FutureTask.java:252)
>   at java.util.concurrent.FutureTask.get(FutureTask.java:111)
>   at 
> org.apache.cassandra.db.compaction.CompactionManager.performMaximal(CompactionManager.java:239)
>   at 
> org.apache.cassandra.db.ColumnFamilyStore.forceMajorCompaction(ColumnFamilyStore.java:1580)
>   at 
> org.apache.cassandra.service.StorageService.forceTableCompaction(StorageService.java:1770)
>   at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>   at 
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
>   at 
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>   at java.lang.reflect.Method.invoke(Method.java:616)
>   at 
> com.sun.jmx.mbeanserver.StandardMBeanIntrospector.invokeM2(StandardMBeanIntrospector.java:111)
>   at 
> com.sun.jmx.mbeanserver.StandardMBeanIntrospector.invokeM2(StandardMBeanIntrospector.java:45)
>   at 
> com.sun.jmx.mbeanserver.MBeanIntrospector.invokeM(MBeanIntrospector.java:226)
>   at com.sun.jmx.mbeanserver.PerInterface.invoke(PerInterface.java:138)
>   at com.sun.jmx.mbeanserver.MBeanSupport.invoke(MBeanSupport.java:251)
>   at 
> com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:857)
>   at 
> com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:795)
>   at 
> javax.management.remote.rmi.RMIConnectionImpl.doOperation(RMIConnectionImpl.java:1450)
>   at 
> javax.management.remote.rmi.RMIConnectionImpl.access$200(RMIConnectionImpl.java:90)
>   at 
> javax.management.remote.rmi.RMIConnectionImpl$PrivilegedOperation.run(RMIConnectionImpl.java:1285)
>   at 
> javax.management.remote.rmi.RMIConnectionImpl.doPrivilegedOperation(RMIConnectionImpl.java:1383)
>   at 
> javax.management.remote.rmi.RMIConnectionImpl.invoke(RMIConnectionImpl.java:807)
>   at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>   at 
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
>   at 
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>   at java.lang.reflect.Method.invoke(Method.java:616)
>   at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:322)
>   at sun.rmi.transport.Transport$1.run(Transport.java:177)
>   at java.security.AccessController.doPrivileged(Native Method)
>   at sun.rmi.transport.Transport.serviceCall(Transport.java:173)
>   at 
> sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:553)
>   at 
> sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:808)
>   at 
> sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:667)
>   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:679)
> Caused by: java.io.IOError: java.io.FileNotFoundException: 
> /tmp/dtest-6ECMgy/test/node1/data/Keyspace1/Standard1/Keyspace1-Standard1-hc-47-Data.db
>  (No such file or directory)
>   at 
> org.apache.cassandra.io.sstable.SSTabl

[jira] [Commented] (CASSANDRA-2834) Avoid repair getting started twice at the same time for the same CF

2012-05-17 Thread Sylvain Lebresne (JIRA)

[ 
https://issues.apache.org/jira/browse/CASSANDRA-2834?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13277694#comment-13277694
 ] 

Sylvain Lebresne commented on CASSANDRA-2834:
-

You mean having a node skip a validation compaction if it is already running 
one for the same range? If we do that, what do we answer to the node that asked 
for a a merkle tree but we've decided to not do it? And even if we answer to 
the node a 'won't do it' (which probably already require a small protocol 
change), then what does that node do? Either it continue a repair that won't be 
complete, or he tries to abort it, but then we need a way to abort a repair. 
Besides, if 2 repair X and Y are started on 2 different nodes, there is no 
guarantee that one node won't skip a repair for session X, and another for 
session Y, so we're not even sure to make correct progress on any of those 
session. 

> Avoid repair getting started twice at the same time for the same CF
> ---
>
> Key: CASSANDRA-2834
> URL: https://issues.apache.org/jira/browse/CASSANDRA-2834
> Project: Cassandra
>  Issue Type: Improvement
>Reporter: Terje Marthinussen
>Assignee: Sylvain Lebresne
>Priority: Minor
>
> It may seem like it is possible to start repair twice at the same time on the 
> same CF?
> Not 100% verified, but if this is indeed the case, we may want to consider 
> avoiding that including making nodetool repair abort and return and error if 
> repair is attempted on the same CF as one which already have repair running.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira