[jira] [Updated] (CASSANDRA-5017) Preparing UPDATE queries with collections returns suboptimal metadata

2012-12-04 Thread Sylvain Lebresne (JIRA)

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

Sylvain Lebresne updated CASSANDRA-5017:


Attachment: 0003-Fix-handling-of-prepared-marker-for-deletes.txt
0002-Fix-prepared-list-index-and-using-integer-for-map-keys.txt
0001-Return-correct-metadata-when-preparing-map.txt

Attaching 3 small patches that fixes a number of problems with prepared queries 
and collections, including this one, the fact that you weren't allowed to 
prepare a list index and the fact that delete wasn't working correctly when 
either a list index or a map key was prepared.

I note we have a small problem for the metadata return in all those cases, in 
that if you do
{noformat}
UPDATE foo SET amap[?] = ? WHERE ...
{noformat}
then it's unclear what name to return for the prepared variables in the 
metadata. The choice made by the patch is to return 'key(amap)' and 
'value(amap)' respectively (and when preparing a list index, we return 
'index(alist)').


 Preparing UPDATE queries with collections returns suboptimal metadata
 -

 Key: CASSANDRA-5017
 URL: https://issues.apache.org/jira/browse/CASSANDRA-5017
 Project: Cassandra
  Issue Type: Bug
Affects Versions: 1.2.0 beta 2
Reporter: Aleksey Yeschenko
Assignee: Sylvain Lebresne
Priority: Minor
 Attachments: 0001-Return-correct-metadata-when-preparing-map.txt, 
 0002-Fix-prepared-list-index-and-using-integer-for-map-keys.txt, 
 0003-Fix-handling-of-prepared-marker-for-deletes.txt


 CQL3, binary protocol.
 collections (id int primary key, amap mapint, varchar);
 preparing UPDATE test.collections SET amap[?] = ? WHERE id = ? returns the 
 following metadata:
 [{column,test,collections,amap,
{map,int,varchar}},
{column,test,collections,amap,
{map,int,varchar}},
{column,test,collections,id,int}]
 Ideally it should return [int, varchar, int] types. Less ideally [{map, int, 
 varchar}, int] and expect an encoded map with a single key-value pair. But 
 certainly not what it currently returns.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Resolved] (CASSANDRA-5018) Some queries with collections require quoting the key even when the key is an integer

2012-12-04 Thread Sylvain Lebresne (JIRA)

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

Sylvain Lebresne resolved CASSANDRA-5018.
-

Resolution: Duplicate

Marking this a duplicate of CASSANDRA-5017 because the 2nd patch attached to 
that issue happens to fix this issue too.

 Some queries with collections require quoting the key even when the key is an 
 integer
 -

 Key: CASSANDRA-5018
 URL: https://issues.apache.org/jira/browse/CASSANDRA-5018
 Project: Cassandra
  Issue Type: Bug
Affects Versions: 1.2.0 beta 2
Reporter: Aleksey Yeschenko
Assignee: Sylvain Lebresne
Priority: Trivial

 collections (id int primary key, amap mapint, varchar);
 UPDATE test.collections SET amap[1] = 'text' WHERE id = 0 - List 
 operations are only supported on List typed columns
 UPDATE test.collections SET amap['1'] = 'text' WHERE id = 0 - ok
 Not sure if boolean/double/uuid/etc. are affected or require quoting as well.
 DELETE is not affected though: DELETE amap[1] from test.collections where id 
 = 0 - ok

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Commented] (CASSANDRA-4071) Topology changes can lead to bad counters (at RF=1)

2012-12-04 Thread Sylvain Lebresne (JIRA)

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

Sylvain Lebresne commented on CASSANDRA-4071:
-

bq. Could we introduce something like gc_g_s for node ids so renewing doesn't 
have to be avoided so religiously?

The problem is that when we renew a counterId, the existing shards are still 
parts of all those counters. So the only way to get rid of those shards would 
be to merge their values into some newer shard. But as far as I can tell (and 
I've put quite some though into that), this is really hard to do correctly, 
because it's not something you can do in isolation of other nodes.

That being said, we do have some mechanism that does exactly that shard merging 
in a few cases. I.e. if a node detects that a counter has 2 shards for 2 old 
counterId of itself, it merges them in two phases: first we merge one of the 
shard into the other but we keep the first shard with a value of 0. And only 
when we consider this has been propagated to all replica (after gc_grace 
basically), do we remove the zeroed shard. However:
# this shard merging is already a fairly dark and hacky corner of the counter 
implementation. I'd rather remove it than complicate it further.
# it only works for counter that don't change ownership basically. As soon as a 
counter changes ownership, whatever old counterId it has won't ever be merged.  
The reason is that a  node only knows about it's own counterId because that's 
the only simple way I've found to ensure 2 nodes don't start doing the 2-phase 
merge on the same counterIds at the same time.


 Topology changes can lead to bad counters (at RF=1)
 ---

 Key: CASSANDRA-4071
 URL: https://issues.apache.org/jira/browse/CASSANDRA-4071
 Project: Cassandra
  Issue Type: Bug
  Components: Core
Affects Versions: 1.0.0
Reporter: Sylvain Lebresne
  Labels: counters

 A counter is broken into shards (partitions), each shard being 'owned' by a 
 given replica (meaning that only this replica will increment that shard).  
 For a given node A, the resolution of 2 shards (having the same owner) 
 follows the following rules:
 * if the shards are owned by A, then sum the values (in the original patch, 
 'owned by A' was based on the machine IP address, in the current code, it's 
 based on the shard having a delta flag but the principle is the same)
 * otherwise, keep the maximum value (based on the shards clocks)
 During topology changes (boostrap/move/decommission), we transfer data from A 
 to B, but the shards owned by A are not owned by B (and we cannot make them 
 owned by B because during those operations (boostrap, ...) a given shard 
 would be owned by A and B which would break counters). But this means that B 
 won't interpret the streamed shards correctly.
 Concretely, if A receives a number of counter increments that end up in 
 different sstables (the shards should thus be summed) and then those 
 increments are streamed to B as part of boostrap, B will not sum the 
 increments but use the clocks to keep the maximum value.
 I've pushed a test that show the breakeage at 
 https://github.com/riptano/cassandra-dtest/commits/counters_test (the test 
 needs CASSANDRA-4070 to work correctly).
 Note that in practice, replication will hide this (even though B will have 
 the bad value after the boostrap, read or read/repair from the other replica 
 will repair it). This is a problem for RF=1 however.
 Another problem is that during repair, a node won't correctly repair other 
 nodes on it's own shards (unless everything is fully compacted).

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[Cassandra Wiki] Update of RelatedProjects by TerranceShepherd

2012-12-04 Thread Apache Wiki
Dear Wiki user,

You have subscribed to a wiki page or wiki category on Cassandra Wiki for 
change notification.

The RelatedProjects page has been changed by TerranceShepherd:
http://wiki.apache.org/cassandra/RelatedProjects?action=diffrev1=7rev2=8

   * https://github.com/flewton/flewton the extensible Netflow collector
   * https://github.com/ticktock/qsandra A Cassandra backed PersistenceAdapter 
for ActiveMQ
   * http://esper.codehaus.org/ A Cassandra backend for Esper CEP
+  * https://github.com/canausa/cassandra-teaspoon An simplification in 
managing the installation of Cassandra and Sun Java 1.6 on a Debian-like system.
  
  == Cassandra clients ==
  See ClientOptions


[jira] [Created] (CASSANDRA-5025) Schema push/pull race

2012-12-04 Thread Jonathan Ellis (JIRA)
Jonathan Ellis created CASSANDRA-5025:
-

 Summary: Schema push/pull race
 Key: CASSANDRA-5025
 URL: https://issues.apache.org/jira/browse/CASSANDRA-5025
 Project: Cassandra
  Issue Type: Bug
  Components: Core
Affects Versions: 1.1.0
Reporter: Jonathan Ellis
Priority: Minor
 Fix For: 1.1.8


When a schema change is made, the coordinator pushes the delta to the other 
nodes in the cluster.  This is more efficient than sending the entire schema.  
But the coordinator also announces the new schema version, so the other nodes' 
reception of the new version races with processing the delta, and usually 
seeing the new schema wins.  So the other nodes also issue a pull to the 
coordinator for the entire schema.

Thus, schema changes tend to become O(n) in the number of KS and CF present.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Updated] (CASSANDRA-5009) RangeStreamer has no way to report failures, allowing bootstrap/move etc to complete without data

2012-12-04 Thread Brandon Williams (JIRA)

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

Brandon Williams updated CASSANDRA-5009:


Fix Version/s: 1.1.8

 RangeStreamer has no way to report failures, allowing bootstrap/move etc to 
 complete without data
 -

 Key: CASSANDRA-5009
 URL: https://issues.apache.org/jira/browse/CASSANDRA-5009
 Project: Cassandra
  Issue Type: Bug
  Components: Core
Affects Versions: 1.1.0
Reporter: Brandon Williams
Assignee: Brandon Williams
Priority: Critical
 Fix For: 1.1.8, 1.2.0 beta 3

 Attachments: 5009.txt, 5009-v2.txt


 It looks like we fixed this for 1.2 by having RS.fetch() throw, but in 1.1 it 
 does not and there doesn't appear to be a way to detect an RS failure, which 
 among other things will cause bootstrap to succeed even though it failed to 
 fetch any data.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Updated] (CASSANDRA-5022) Can't prepare an UPDATE query with a counter column (CQL3)

2012-12-04 Thread Sylvain Lebresne (JIRA)

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

Sylvain Lebresne updated CASSANDRA-5022:


Attachment: 5002.txt

Attaching patch to fix that. The patch also move some small bit of validation 
that were done at execution time to preparation time (since there is no good 
reason not to do it there).

 Can't prepare an UPDATE query with a counter column (CQL3)
 --

 Key: CASSANDRA-5022
 URL: https://issues.apache.org/jira/browse/CASSANDRA-5022
 Project: Cassandra
  Issue Type: Bug
Affects Versions: 1.2.0 beta 2
Reporter: Aleksey Yeschenko
Assignee: Sylvain Lebresne
Priority: Minor
 Fix For: 1.2.0 rc1

 Attachments: 5002.txt


 CQL3, binary protocol:
 demo(id int primary key, counter counter)
 Preparing UPDATE test.counters SET counter = counter + ? WHERE id = ? 
 yields 8704, Invalid operation for commutative columnfamily counters error.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


Git Push Summary

2012-12-04 Thread slebresne
Updated Tags:  refs/tags/cassandra-1.2.0-beta3 [created] eb2d12ab7


Git Push Summary

2012-12-04 Thread slebresne
Updated Tags:  refs/tags/1.2.0-beta3-tentative [deleted] b86f75dcd


svn commit: r1417120 - in /cassandra/site: publish/download/index.html src/settings.py

2012-12-04 Thread slebresne
Author: slebresne
Date: Tue Dec  4 19:09:17 2012
New Revision: 1417120

URL: http://svn.apache.org/viewvc?rev=1417120view=rev
Log:
Update website for 1.2.0-beta3 release

Modified:
cassandra/site/publish/download/index.html
cassandra/site/src/settings.py

Modified: cassandra/site/publish/download/index.html
URL: 
http://svn.apache.org/viewvc/cassandra/site/publish/download/index.html?rev=1417120r1=1417119r2=1417120view=diff
==
--- cassandra/site/publish/download/index.html (original)
+++ cassandra/site/publish/download/index.html Tue Dec  4 19:09:17 2012
@@ -107,16 +107,16 @@
 
   h2 class=hdrDevelopment Cassandra Server Releases (not production 
ready)/h2
   p
-  The latest development release is 1.2.0-beta2 (released on
-  2012-11-09).
+  The latest development release is 1.2.0-beta3 (released on
+  2012-12-04).
   /p
 
   ul
 li
-a class=filename 
href=http://www.apache.org/dyn/closer.cgi?path=/cassandra/1.2.0/apache-cassandra-1.2.0-beta2-bin.tar.gz;apache-cassandra-1.2.0-beta2-bin.tar.gz/a
-[a 
href=http://www.apache.org/dist/cassandra/1.2.0/apache-cassandra-1.2.0-beta2-bin.tar.gz.asc;PGP/a]
-[a 
href=http://www.apache.org/dist/cassandra/1.2.0/apache-cassandra-1.2.0-beta2-bin.tar.gz.md5;MD5/a]
-[a 
href=http://www.apache.org/dist/cassandra/1.2.0/apache-cassandra-1.2.0-beta2-bin.tar.gz.sha1;SHA1/a]
+a class=filename 
href=http://www.apache.org/dyn/closer.cgi?path=/cassandra/1.2.0/apache-cassandra-1.2.0-beta3-bin.tar.gz;apache-cassandra-1.2.0-beta3-bin.tar.gz/a
+[a 
href=http://www.apache.org/dist/cassandra/1.2.0/apache-cassandra-1.2.0-beta3-bin.tar.gz.asc;PGP/a]
+[a 
href=http://www.apache.org/dist/cassandra/1.2.0/apache-cassandra-1.2.0-beta3-bin.tar.gz.md5;MD5/a]
+[a 
href=http://www.apache.org/dist/cassandra/1.2.0/apache-cassandra-1.2.0-beta3-bin.tar.gz.sha1;SHA1/a]
 /li
   /ul
   
@@ -195,10 +195,10 @@
   
   
 li
-a class=filename 
href=http://www.apache.org/dyn/closer.cgi?path=/cassandra/1.2.0/apache-cassandra-1.2.0-beta2-src.tar.gz;apache-cassandra-1.2.0-beta2-src.tar.gz/a
-[a 
href=http://www.apache.org/dist/cassandra/1.2.0/apache-cassandra-1.2.0-beta2-src.tar.gz.asc;PGP/a]
-[a 
href=http://www.apache.org/dist/cassandra/1.2.0/apache-cassandra-1.2.0-beta2-src.tar.gz.md5;MD5/a]
-[a 
href=http://www.apache.org/dist/cassandra/1.2.0/apache-cassandra-1.2.0-beta2-src.tar.gz.sha1;SHA1/a]
+a class=filename 
href=http://www.apache.org/dyn/closer.cgi?path=/cassandra/1.2.0/apache-cassandra-1.2.0-beta3-src.tar.gz;apache-cassandra-1.2.0-beta3-src.tar.gz/a
+[a 
href=http://www.apache.org/dist/cassandra/1.2.0/apache-cassandra-1.2.0-beta3-src.tar.gz.asc;PGP/a]
+[a 
href=http://www.apache.org/dist/cassandra/1.2.0/apache-cassandra-1.2.0-beta3-src.tar.gz.md5;MD5/a]
+[a 
href=http://www.apache.org/dist/cassandra/1.2.0/apache-cassandra-1.2.0-beta3-src.tar.gz.sha1;SHA1/a]
 /li
   
   /ul 

Modified: cassandra/site/src/settings.py
URL: 
http://svn.apache.org/viewvc/cassandra/site/src/settings.py?rev=1417120r1=1417119r2=1417120view=diff
==
--- cassandra/site/src/settings.py (original)
+++ cassandra/site/src/settings.py Tue Dec  4 19:09:17 2012
@@ -100,8 +100,8 @@ class CassandraDef(object):
 veryoldstable_exists = True
 stable_version = '1.1.7'
 stable_release_date = '2012-11-30'
-devel_version = '1.2.0-beta2'
-devel_release_date = '2012-11-09'
+devel_version = '1.2.0-beta3'
+devel_release_date = '2012-12-04'
 devel_exists = True
 _apache_base_url = 'http://www.apache.org'
 _svn_base_url = 'https://svn.apache.org/repos/asf'




[jira] [Commented] (CASSANDRA-5023) Upgrading from 1.0 to 1.1 makes secondary indexes no longer work

2012-12-04 Thread Yuki Morishita (JIRA)

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

Yuki Morishita commented on CASSANDRA-5023:
---

In above case, inserting via CQL stores value(and key in index) in 
IntegerType(BigInteger), and you are querying that with 1 byte 
ByteBuffer(ByteBufferUtil.bytes(0)). If you change the line

{code}
indexExpressions.add(new 
IndexExpression(ByteBufferUtil.bytes(numberOfDeloreans), IndexOperator.EQ, 
ByteBufferUtil.bytes(0)));
{code}

to

{code}
indexExpressions.add(new 
IndexExpression(ByteBufferUtil.bytes(numberOfDeloreans), IndexOperator.EQ, 
IntegerType.instance.fromString(0)));
{code}

it all works fine.

So why the code has been working with 1.0? In 1.0, DecoratedKey#compareTo just 
compares two tokens. LocalToken, which is used for secondary index, from 
ByteBufferUtil.bytes(0) ...(1) and from 
IntegerType.instance.fromString(0)...(2) are considered equal when using 
IntegerType, and that's why you can query IntegerTyped DK with both (1) and (2).

DK#comparedTo changed since 1.1(CASSANDRA-1034), and now DKs are compared by 
key itself byte by byte if two tokens are considered equal. In above case, 
tokens are equal but keys are different byte-wise. So you only can query 
IndexedTyped value with the same IndexTyped value now.

So I conclude that the behavior of 1.0 can be considered as a bug.

 Upgrading from 1.0 to 1.1 makes secondary indexes no longer work
 

 Key: CASSANDRA-5023
 URL: https://issues.apache.org/jira/browse/CASSANDRA-5023
 Project: Cassandra
  Issue Type: Bug
  Components: Core
Reporter: Jeremy Hanna
Assignee: Yuki Morishita
 Fix For: 1.1.8


 To reproduce:
 Create column family with C* 1.0.8:
 {code}
 CREATE KEYSPACE Keyspace1 
 with placement_strategy = 'org.apache.cassandra.locator.SimpleStrategy'
 and strategy_options = {replication_factor:1};
 use Keyspace1;
 CREATE COLUMN FAMILY 'User' WITH
  key_validation_class = 'UTF8Type' AND
  comparator = 'UTF8Type' AND
  default_validation_class = 'UTF8Type' AND
  compression_options = 
 {sstable_compression:SnappyCompressor,chunk_length_kb:64} AND
  column_metadata = [
  {column_name: 'numberOfDeloreans', validation_class: 'IntegerType', 
 index_type: KEYS}
 ];
 {code}
 Then in cqlsh add some data:
 {code}
 use Keyspace1;
 update User set 'numberOfDeloreans'=0 where key = 'marty';
 update User set 'userId'='themartymcfly' where key = 'marty';
 {code}
 In cqlsh, do
 {code}select * from User where numberOfDeloreans=0;{code}
 Then in thrift do:
 {code}
 package org.mostlyharmless;
 import org.apache.cassandra.thrift.*;
 import org.apache.cassandra.utils.ByteBufferUtil;
 import org.apache.thrift.TException;
 import org.apache.thrift.protocol.TProtocol;
 import org.apache.thrift.transport.TFramedTransport;
 import org.apache.thrift.transport.TSocket;
 import org.apache.thrift.transport.TTransport;
 import java.io.UnsupportedEncodingException;
 import java.nio.ByteBuffer;
 import java.util.ArrayList;
 import java.util.List;
 public class ThriftQuery {
 public static void main(String[] args)
 throws TException, InvalidRequestException, UnavailableException, 
 UnsupportedEncodingException, NotFoundException, TimedOutException
 {
 TTransport tr = new TFramedTransport(new TSocket(localhost, 9160));
 TProtocol proto = new TBinaryProtocol(tr);
 Cassandra.Client client = new Cassandra.Client(proto);
 tr.open();
 client.set_keyspace(Keyspace1);
 ColumnParent columnParent = new ColumnParent(User);
 SlicePredicate slicePredicate = new SlicePredicate();
 ListByteBuffer columnNames = new ArrayListByteBuffer();
 columnNames.add(ByteBufferUtil.bytes(userId));
 slicePredicate.setColumn_names(columnNames);
 KeyRange keyRange = new KeyRange();
 keyRange.setStart_token(0);
 keyRange.setEnd_token(0);
 ListIndexExpression indexExpressions = new 
 ArrayListIndexExpression();
 indexExpressions.add(new 
 IndexExpression(ByteBufferUtil.bytes(numberOfDeloreans), IndexOperator.EQ, 
 ByteBufferUtil.bytes(0)));
 keyRange.setRow_filter(indexExpressions);
 ListKeySlice keySlices = client.get_range_slices(columnParent, 
 slicePredicate, keyRange, ConsistencyLevel.ONE);
 System.out.println(number of keyslices returned:  + 
 keySlices.size());
 tr.close();
 }
 }
 {code}
 Note that 1 record is returned in both instances.
 Run nodetool drain on 1.0.8.  Start 1.1.7.  Do the cqlsh query again, returns 
 the result.  Run the thrift code again, get 0 results.
 Tried both upgradesstables and rebuild_index.  Didn't help.

--
This message is automatically generated by JIRA.

[jira] [Updated] (CASSANDRA-3378) Allow configuration of storage protocol socket buffer

2012-12-04 Thread JIRA

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

Michał Michalski updated CASSANDRA-3378:


Attachment: cassandra-3378-v2.patch

Thanks for reviewing, Brandon. 

Changes in v2:
1) Remove receive buffer setting from OutboundTcpConnection - as it's being 
used for Messaging purposes only and not really needed there
2) Set receive buffer (only) for IncommingTcpConnection. My concern is the way 
of changing this parameter in a kind of wide way - not only for streaming 
(for which it makes sense for me), but much earlier, so it affects messaging 
parts of code too. I'm unsure of the impact it may have on the messaging 
service in general - I don't have that much experience with Cassandra  network 
programming to judge it just like that.

 Allow configuration of storage protocol socket buffer
 -

 Key: CASSANDRA-3378
 URL: https://issues.apache.org/jira/browse/CASSANDRA-3378
 Project: Cassandra
  Issue Type: New Feature
  Components: Core
Reporter: Brandon Williams
Assignee: Michał Michalski
Priority: Minor
  Labels: lhf
 Attachments: cassandra-3378-v1.patch, cassandra-3378-v2.patch


 Similar to rpc_[send,recv]_buff_size_in_bytes, we should expose this for high 
 latency connections.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Commented] (CASSANDRA-4191) Add `nodetool cfstats ks cf` abilities

2012-12-04 Thread Jackson Chung (JIRA)

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

Jackson Chung commented on CASSANDRA-4191:
--

the 2nd index option would be nice  :)

 Add `nodetool cfstats ks cf` abilities
 --

 Key: CASSANDRA-4191
 URL: https://issues.apache.org/jira/browse/CASSANDRA-4191
 Project: Cassandra
  Issue Type: New Feature
Affects Versions: 1.2.0 beta 1
Reporter: Joaquin Casares
Assignee: Dave Brosius
Priority: Minor
  Labels: datastax_qa
 Attachments: 4191_specific_cfstats.diff


 This way cfstats will only print information per keyspace/column family 
 combinations.
 Another related proposal as an alternative to this ticket:
 Allow for `nodetool cfstats` to use --excludes or --includes to accept 
 keyspace and column family arguments.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Resolved] (CASSANDRA-5023) Upgrading from 1.0 to 1.1 makes secondary indexes no longer work

2012-12-04 Thread Brandon Williams (JIRA)

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

Brandon Williams resolved CASSANDRA-5023.
-

Resolution: Not A Problem

 Upgrading from 1.0 to 1.1 makes secondary indexes no longer work
 

 Key: CASSANDRA-5023
 URL: https://issues.apache.org/jira/browse/CASSANDRA-5023
 Project: Cassandra
  Issue Type: Bug
  Components: Core
Reporter: Jeremy Hanna
Assignee: Yuki Morishita
 Fix For: 1.1.8


 To reproduce:
 Create column family with C* 1.0.8:
 {code}
 CREATE KEYSPACE Keyspace1 
 with placement_strategy = 'org.apache.cassandra.locator.SimpleStrategy'
 and strategy_options = {replication_factor:1};
 use Keyspace1;
 CREATE COLUMN FAMILY 'User' WITH
  key_validation_class = 'UTF8Type' AND
  comparator = 'UTF8Type' AND
  default_validation_class = 'UTF8Type' AND
  compression_options = 
 {sstable_compression:SnappyCompressor,chunk_length_kb:64} AND
  column_metadata = [
  {column_name: 'numberOfDeloreans', validation_class: 'IntegerType', 
 index_type: KEYS}
 ];
 {code}
 Then in cqlsh add some data:
 {code}
 use Keyspace1;
 update User set 'numberOfDeloreans'=0 where key = 'marty';
 update User set 'userId'='themartymcfly' where key = 'marty';
 {code}
 In cqlsh, do
 {code}select * from User where numberOfDeloreans=0;{code}
 Then in thrift do:
 {code}
 package org.mostlyharmless;
 import org.apache.cassandra.thrift.*;
 import org.apache.cassandra.utils.ByteBufferUtil;
 import org.apache.thrift.TException;
 import org.apache.thrift.protocol.TProtocol;
 import org.apache.thrift.transport.TFramedTransport;
 import org.apache.thrift.transport.TSocket;
 import org.apache.thrift.transport.TTransport;
 import java.io.UnsupportedEncodingException;
 import java.nio.ByteBuffer;
 import java.util.ArrayList;
 import java.util.List;
 public class ThriftQuery {
 public static void main(String[] args)
 throws TException, InvalidRequestException, UnavailableException, 
 UnsupportedEncodingException, NotFoundException, TimedOutException
 {
 TTransport tr = new TFramedTransport(new TSocket(localhost, 9160));
 TProtocol proto = new TBinaryProtocol(tr);
 Cassandra.Client client = new Cassandra.Client(proto);
 tr.open();
 client.set_keyspace(Keyspace1);
 ColumnParent columnParent = new ColumnParent(User);
 SlicePredicate slicePredicate = new SlicePredicate();
 ListByteBuffer columnNames = new ArrayListByteBuffer();
 columnNames.add(ByteBufferUtil.bytes(userId));
 slicePredicate.setColumn_names(columnNames);
 KeyRange keyRange = new KeyRange();
 keyRange.setStart_token(0);
 keyRange.setEnd_token(0);
 ListIndexExpression indexExpressions = new 
 ArrayListIndexExpression();
 indexExpressions.add(new 
 IndexExpression(ByteBufferUtil.bytes(numberOfDeloreans), IndexOperator.EQ, 
 ByteBufferUtil.bytes(0)));
 keyRange.setRow_filter(indexExpressions);
 ListKeySlice keySlices = client.get_range_slices(columnParent, 
 slicePredicate, keyRange, ConsistencyLevel.ONE);
 System.out.println(number of keyslices returned:  + 
 keySlices.size());
 tr.close();
 }
 }
 {code}
 Note that 1 record is returned in both instances.
 Run nodetool drain on 1.0.8.  Start 1.1.7.  Do the cqlsh query again, returns 
 the result.  Run the thrift code again, get 0 results.
 Tried both upgradesstables and rebuild_index.  Didn't help.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Commented] (CASSANDRA-5005) Add a latency histogram option to stress

2012-12-04 Thread Brandon Williams (JIRA)

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

Brandon Williams commented on CASSANDRA-5005:
-

+1, with minor nit: it'd be better to keep with the CSV-style separator instead 
of using '/'

 Add a latency histogram option to stress
 

 Key: CASSANDRA-5005
 URL: https://issues.apache.org/jira/browse/CASSANDRA-5005
 Project: Cassandra
  Issue Type: Improvement
Reporter: Brandon Williams
Assignee: Jonathan Ellis
Priority: Minor
  Labels: stress
 Fix For: 1.2.0 rc1

 Attachments: 5005.txt


 Averages just aren't always enough and it should be easy to wire our existing 
 histogram utils into stress.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[3/3] git commit: cleanup

2012-12-04 Thread jbellis
cleanup


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

Branch: refs/heads/trunk
Commit: f07effb1c3f22d29f1fc10492d4658fd944c0ea1
Parents: 7abc634
Author: Jonathan Ellis jbel...@apache.org
Authored: Sat Dec 1 21:13:06 2012 +0900
Committer: Jonathan Ellis jbel...@apache.org
Committed: Tue Dec 4 14:32:13 2012 -0600

--
 .../apache/cassandra/stress/util/Operation.java|5 ++---
 1 files changed, 2 insertions(+), 3 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/f07effb1/tools/stress/src/org/apache/cassandra/stress/util/Operation.java
--
diff --git a/tools/stress/src/org/apache/cassandra/stress/util/Operation.java 
b/tools/stress/src/org/apache/cassandra/stress/util/Operation.java
index 4737692..3a90517 100644
--- a/tools/stress/src/org/apache/cassandra/stress/util/Operation.java
+++ b/tools/stress/src/org/apache/cassandra/stress/util/Operation.java
@@ -84,7 +84,7 @@ public abstract class Operation
 int times = session.getColumnSize() / hash.length();
 int sumReminder = session.getColumnSize() % hash.length();
 
-String value = new StringBuilder(multiplyString(hash, 
times)).append(hash.substring(0, sumReminder)).toString();
+String value = multiplyString(hash, times) + hash.substring(0, 
sumReminder);
 values.add(ByteBuffer.wrap(value.getBytes()));
 }
 
@@ -244,7 +244,6 @@ public abstract class Operation
 {
 return Lists.transform(queryParams, new FunctionString, ByteBuffer()
 {
-@Override
 public ByteBuffer apply(String param)
 {
 return ByteBufferUtil.bytes(param);
@@ -262,7 +261,7 @@ public abstract class Operation
  */
 protected static String formatCqlQuery(String query, ListString parms)
 {
-int marker = 0, position = 0;
+int marker, position = 0;
 StringBuilder result = new StringBuilder();
 
 if (-1 == (marker = query.indexOf('?')) || parms.size() == 0)



[1/3] git commit: add 95th and 99th percentile latency reporting to Stress patch by jbellis; reviewed by brandonwilliams for CASSANDRA-5005

2012-12-04 Thread jbellis
Updated Branches:
  refs/heads/trunk fe7c0553e - 85d9ce1ba


add 95th and 99th percentile latency reporting to Stress
patch by jbellis; reviewed by brandonwilliams for CASSANDRA-5005


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

Branch: refs/heads/trunk
Commit: 85d9ce1ba079f12c1a42a9d402ea3e8f038e262e
Parents: f07effb
Author: Jonathan Ellis jbel...@apache.org
Authored: Sun Dec 2 04:38:59 2012 +0900
Committer: Jonathan Ellis jbel...@apache.org
Committed: Tue Dec 4 14:33:10 2012 -0600

--
 .../src/org/apache/cassandra/stress/Session.java   |   12 -
 .../org/apache/cassandra/stress/StressAction.java  |   19 --
 .../cassandra/stress/operations/CounterAdder.java  |5 ++-
 .../cassandra/stress/operations/CounterGetter.java |   10 
 .../stress/operations/CqlCounterAdder.java |5 ++-
 .../stress/operations/CqlCounterGetter.java|6 ++--
 .../stress/operations/CqlIndexedRangeSlicer.java   |5 ++-
 .../cassandra/stress/operations/CqlInserter.java   |5 ++-
 .../stress/operations/CqlRangeSlicer.java  |5 ++-
 .../cassandra/stress/operations/CqlReader.java |5 ++-
 .../stress/operations/IndexedRangeSlicer.java  |5 ++-
 .../cassandra/stress/operations/Inserter.java  |5 ++-
 .../cassandra/stress/operations/MultiGetter.java   |9 ---
 .../cassandra/stress/operations/RangeSlicer.java   |9 ---
 .../apache/cassandra/stress/operations/Reader.java |9 ---
 15 files changed, 63 insertions(+), 51 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/85d9ce1b/tools/stress/src/org/apache/cassandra/stress/Session.java
--
diff --git a/tools/stress/src/org/apache/cassandra/stress/Session.java 
b/tools/stress/src/org/apache/cassandra/stress/Session.java
index a0c3617..804e4e8 100644
--- a/tools/stress/src/org/apache/cassandra/stress/Session.java
+++ b/tools/stress/src/org/apache/cassandra/stress/Session.java
@@ -25,6 +25,8 @@ import java.util.*;
 import java.util.concurrent.atomic.AtomicInteger;
 import java.util.concurrent.atomic.AtomicLong;
 
+import com.yammer.metrics.Metrics;
+import com.yammer.metrics.core.Histogram;
 import org.apache.cassandra.cli.transport.FramedTransportFactory;
 import org.apache.cassandra.config.CFMetaData;
 import org.apache.cassandra.config.EncryptionOptions;
@@ -56,9 +58,9 @@ public class Session implements Serializable
 
 private static InetAddress localInetAddress;
 
-public final AtomicInteger operations;
-public final AtomicInteger keys;
-public final AtomicLonglatency;
+public final AtomicInteger operations = new AtomicInteger();
+public final AtomicInteger keys = new AtomicInteger();
+public final com.yammer.metrics.core.Timer latency = 
Metrics.newTimer(Session.class, latency);
 
 private static final String SSL_TRUSTSTORE = truststore;
 private static final String SSL_TRUSTSTORE_PW = truststore-password;
@@ -436,10 +438,6 @@ public class Session implements Serializable
 
 mean  = numDifferentKeys / 2;
 sigma = numDifferentKeys * STDev;
-
-operations = new AtomicInteger();
-keys = new AtomicInteger();
-latency = new AtomicLong();
 }
 
 private TTransportFactory validateAndSetTransportFactory(String 
transportFactory)

http://git-wip-us.apache.org/repos/asf/cassandra/blob/85d9ce1b/tools/stress/src/org/apache/cassandra/stress/StressAction.java
--
diff --git a/tools/stress/src/org/apache/cassandra/stress/StressAction.java 
b/tools/stress/src/org/apache/cassandra/stress/StressAction.java
index b5a7e6e..27675d1 100644
--- a/tools/stress/src/org/apache/cassandra/stress/StressAction.java
+++ b/tools/stress/src/org/apache/cassandra/stress/StressAction.java
@@ -21,6 +21,7 @@ import java.io.PrintStream;
 import java.util.concurrent.BlockingQueue;
 import java.util.concurrent.SynchronousQueue;
 
+import com.yammer.metrics.stats.Snapshot;
 import org.apache.cassandra.stress.operations.*;
 import org.apache.cassandra.stress.util.CassandraClient;
 import org.apache.cassandra.stress.util.Operation;
@@ -50,7 +51,8 @@ public class StressAction extends Thread
 
 public void run()
 {
-long latency, oldLatency;
+Snapshot latency;
+long oldLatency;
 int epoch, total, oldTotal, keyCount, oldKeyCount;
 
 // creating keyspace and column families
@@ -60,7 +62,7 @@ public class StressAction extends Thread
 int threadCount = client.getThreads();
 

[2/3] git commit: reduce object allocations done by inserter

2012-12-04 Thread jbellis
reduce object allocations done by inserter


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

Branch: refs/heads/trunk
Commit: 7abc634d520dc926de3559e234ba38857a51cc26
Parents: fe7c055
Author: Jonathan Ellis jbel...@apache.org
Authored: Sat Dec 1 20:50:54 2012 +0900
Committer: Jonathan Ellis jbel...@apache.org
Committed: Tue Dec 4 14:32:13 2012 -0600

--
 .../cassandra/stress/operations/Inserter.java  |   40 +-
 1 files changed, 14 insertions(+), 26 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/7abc634d/tools/stress/src/org/apache/cassandra/stress/operations/Inserter.java
--
diff --git 
a/tools/stress/src/org/apache/cassandra/stress/operations/Inserter.java 
b/tools/stress/src/org/apache/cassandra/stress/operations/Inserter.java
index 0623e4c..24c7eaa 100644
--- a/tools/stress/src/org/apache/cassandra/stress/operations/Inserter.java
+++ b/tools/stress/src/org/apache/cassandra/stress/operations/Inserter.java
@@ -27,10 +27,7 @@ import org.apache.cassandra.utils.FBUtilities;
 
 import java.io.IOException;
 import java.nio.ByteBuffer;
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
+import java.util.*;
 
 public class Inserter extends Operation
 {
@@ -46,8 +43,8 @@ public class Inserter extends Operation
 if (values == null)
 values = generateValues();
 
-ListColumn columns = new ArrayListColumn();
-ListSuperColumn superColumns = new ArrayListSuperColumn();
+ListColumn columns = new 
ArrayListColumn(session.getColumnsPerKey());
+ListSuperColumn superColumns = null;
 
 // format used for keys
 String format = %0 + session.getTotalKeysLength() + d;
@@ -55,12 +52,13 @@ public class Inserter extends Operation
 for (int i = 0; i  session.getColumnsPerKey(); i++)
 {
 columns.add(new Column(columnName(i, session.timeUUIDComparator))
-.setValue(values.get(i % values.size()))
-.setTimestamp(FBUtilities.timestampMicros()));
+.setValue(values.get(i % values.size()))
+.setTimestamp(FBUtilities.timestampMicros()));
 }
 
 if (session.getColumnFamilyType() == ColumnFamilyType.Super)
 {
+superColumns = new ArrayListSuperColumn();
 // supers = [SuperColumn('S' + str(j), columns) for j in 
xrange(supers_per_key)]
 for (int i = 0; i  session.getSuperColumns(); i++)
 {
@@ -70,17 +68,15 @@ public class Inserter extends Operation
 }
 
 String rawKey = String.format(format, index);
-MapByteBuffer, MapString, ListMutation record = new 
HashMapByteBuffer, MapString, ListMutation();
-
-record.put(ByteBufferUtil.bytes(rawKey), session.getColumnFamilyType() 
== ColumnFamilyType.Super
-   
 ? getSuperColumnsMutationMap(superColumns)
-   
 : getColumnsMutationMap(columns));
+MapString, ListMutation row = session.getColumnFamilyType() == 
ColumnFamilyType.Super
+? 
getSuperColumnsMutationMap(superColumns)
+: getColumnsMutationMap(columns);
+MapByteBuffer, MapString, ListMutation record = 
Collections.singletonMap(ByteBufferUtil.bytes(rawKey), row);
 
 long start = System.currentTimeMillis();
 
 boolean success = false;
 String exceptionMessage = null;
-
 for (int t = 0; t  session.getRetryTimes(); t++)
 {
 if (success)
@@ -114,33 +110,25 @@ public class Inserter extends Operation
 
 private MapString, ListMutation 
getSuperColumnsMutationMap(ListSuperColumn superColumns)
 {
-ListMutation mutations = new ArrayListMutation();
-MapString, ListMutation mutationMap = new HashMapString, 
ListMutation();
-
+ListMutation mutations = new 
ArrayListMutation(superColumns.size());
 for (SuperColumn s : superColumns)
 {
 ColumnOrSuperColumn superColumn = new 
ColumnOrSuperColumn().setSuper_column(s);
 mutations.add(new 
Mutation().setColumn_or_supercolumn(superColumn));
 }
 
-mutationMap.put(Super1, mutations);
-
-return mutationMap;
+return Collections.singletonMap(Super1, mutations);
 }
 
 private MapString, 

[1/7] git commit: Merge branch 'cassandra-1.2' into trunk

2012-12-04 Thread jbellis
Updated Branches:
  refs/heads/cassandra-1.2 aa9a6029d - b475602be
  refs/heads/trunk 85d9ce1ba - 55aefb007


Merge branch 'cassandra-1.2' into trunk


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

Branch: refs/heads/trunk
Commit: 55aefb0077c64fdae138e9d0b854a10475391de6
Parents: 85d9ce1 b475602
Author: Jonathan Ellis jbel...@apache.org
Authored: Tue Dec 4 14:34:15 2012 -0600
Committer: Jonathan Ellis jbel...@apache.org
Committed: Tue Dec 4 14:34:15 2012 -0600

--

--




[2/7] git commit: add 95th and 99th percentile latency reporting to Stress patch by jbellis; reviewed by brandonwilliams for CASSANDRA-5005

2012-12-04 Thread jbellis
add 95th and 99th percentile latency reporting to Stress
patch by jbellis; reviewed by brandonwilliams for CASSANDRA-5005


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

Branch: refs/heads/cassandra-1.2
Commit: b475602be82230ad3d20da8d0b56b99f47b9d192
Parents: ae9faf0
Author: Jonathan Ellis jbel...@apache.org
Authored: Sun Dec 2 04:38:59 2012 +0900
Committer: Jonathan Ellis jbel...@apache.org
Committed: Tue Dec 4 14:34:01 2012 -0600

--
 .../src/org/apache/cassandra/stress/Session.java   |   12 -
 .../org/apache/cassandra/stress/StressAction.java  |   19 --
 .../cassandra/stress/operations/CounterAdder.java  |5 ++-
 .../cassandra/stress/operations/CounterGetter.java |   10 
 .../stress/operations/CqlCounterAdder.java |5 ++-
 .../stress/operations/CqlCounterGetter.java|6 ++--
 .../stress/operations/CqlIndexedRangeSlicer.java   |5 ++-
 .../cassandra/stress/operations/CqlInserter.java   |5 ++-
 .../stress/operations/CqlRangeSlicer.java  |5 ++-
 .../cassandra/stress/operations/CqlReader.java |5 ++-
 .../stress/operations/IndexedRangeSlicer.java  |5 ++-
 .../cassandra/stress/operations/Inserter.java  |5 ++-
 .../cassandra/stress/operations/MultiGetter.java   |9 ---
 .../cassandra/stress/operations/RangeSlicer.java   |9 ---
 .../apache/cassandra/stress/operations/Reader.java |9 ---
 15 files changed, 63 insertions(+), 51 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/b475602b/tools/stress/src/org/apache/cassandra/stress/Session.java
--
diff --git a/tools/stress/src/org/apache/cassandra/stress/Session.java 
b/tools/stress/src/org/apache/cassandra/stress/Session.java
index a0c3617..804e4e8 100644
--- a/tools/stress/src/org/apache/cassandra/stress/Session.java
+++ b/tools/stress/src/org/apache/cassandra/stress/Session.java
@@ -25,6 +25,8 @@ import java.util.*;
 import java.util.concurrent.atomic.AtomicInteger;
 import java.util.concurrent.atomic.AtomicLong;
 
+import com.yammer.metrics.Metrics;
+import com.yammer.metrics.core.Histogram;
 import org.apache.cassandra.cli.transport.FramedTransportFactory;
 import org.apache.cassandra.config.CFMetaData;
 import org.apache.cassandra.config.EncryptionOptions;
@@ -56,9 +58,9 @@ public class Session implements Serializable
 
 private static InetAddress localInetAddress;
 
-public final AtomicInteger operations;
-public final AtomicInteger keys;
-public final AtomicLonglatency;
+public final AtomicInteger operations = new AtomicInteger();
+public final AtomicInteger keys = new AtomicInteger();
+public final com.yammer.metrics.core.Timer latency = 
Metrics.newTimer(Session.class, latency);
 
 private static final String SSL_TRUSTSTORE = truststore;
 private static final String SSL_TRUSTSTORE_PW = truststore-password;
@@ -436,10 +438,6 @@ public class Session implements Serializable
 
 mean  = numDifferentKeys / 2;
 sigma = numDifferentKeys * STDev;
-
-operations = new AtomicInteger();
-keys = new AtomicInteger();
-latency = new AtomicLong();
 }
 
 private TTransportFactory validateAndSetTransportFactory(String 
transportFactory)

http://git-wip-us.apache.org/repos/asf/cassandra/blob/b475602b/tools/stress/src/org/apache/cassandra/stress/StressAction.java
--
diff --git a/tools/stress/src/org/apache/cassandra/stress/StressAction.java 
b/tools/stress/src/org/apache/cassandra/stress/StressAction.java
index b5a7e6e..27675d1 100644
--- a/tools/stress/src/org/apache/cassandra/stress/StressAction.java
+++ b/tools/stress/src/org/apache/cassandra/stress/StressAction.java
@@ -21,6 +21,7 @@ import java.io.PrintStream;
 import java.util.concurrent.BlockingQueue;
 import java.util.concurrent.SynchronousQueue;
 
+import com.yammer.metrics.stats.Snapshot;
 import org.apache.cassandra.stress.operations.*;
 import org.apache.cassandra.stress.util.CassandraClient;
 import org.apache.cassandra.stress.util.Operation;
@@ -50,7 +51,8 @@ public class StressAction extends Thread
 
 public void run()
 {
-long latency, oldLatency;
+Snapshot latency;
+long oldLatency;
 int epoch, total, oldTotal, keyCount, oldKeyCount;
 
 // creating keyspace and column families
@@ -60,7 +62,7 @@ public class StressAction extends Thread
 int threadCount = client.getThreads();
 Consumer[] consumers = new Consumer[threadCount];
 
-

[4/7] git commit: cleanup

2012-12-04 Thread jbellis
cleanup


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

Branch: refs/heads/cassandra-1.2
Commit: ae9faf080d215cb52a5ae6047d155cf38bc9b65e
Parents: 25bf3bf
Author: Jonathan Ellis jbel...@apache.org
Authored: Sat Dec 1 21:13:06 2012 +0900
Committer: Jonathan Ellis jbel...@apache.org
Committed: Tue Dec 4 14:34:00 2012 -0600

--
 .../apache/cassandra/stress/util/Operation.java|5 ++---
 1 files changed, 2 insertions(+), 3 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/ae9faf08/tools/stress/src/org/apache/cassandra/stress/util/Operation.java
--
diff --git a/tools/stress/src/org/apache/cassandra/stress/util/Operation.java 
b/tools/stress/src/org/apache/cassandra/stress/util/Operation.java
index 4737692..3a90517 100644
--- a/tools/stress/src/org/apache/cassandra/stress/util/Operation.java
+++ b/tools/stress/src/org/apache/cassandra/stress/util/Operation.java
@@ -84,7 +84,7 @@ public abstract class Operation
 int times = session.getColumnSize() / hash.length();
 int sumReminder = session.getColumnSize() % hash.length();
 
-String value = new StringBuilder(multiplyString(hash, 
times)).append(hash.substring(0, sumReminder)).toString();
+String value = multiplyString(hash, times) + hash.substring(0, 
sumReminder);
 values.add(ByteBuffer.wrap(value.getBytes()));
 }
 
@@ -244,7 +244,6 @@ public abstract class Operation
 {
 return Lists.transform(queryParams, new FunctionString, ByteBuffer()
 {
-@Override
 public ByteBuffer apply(String param)
 {
 return ByteBufferUtil.bytes(param);
@@ -262,7 +261,7 @@ public abstract class Operation
  */
 protected static String formatCqlQuery(String query, ListString parms)
 {
-int marker = 0, position = 0;
+int marker, position = 0;
 StringBuilder result = new StringBuilder();
 
 if (-1 == (marker = query.indexOf('?')) || parms.size() == 0)



[3/7] git commit: add 95th and 99th percentile latency reporting to Stress patch by jbellis; reviewed by brandonwilliams for CASSANDRA-5005

2012-12-04 Thread jbellis
add 95th and 99th percentile latency reporting to Stress
patch by jbellis; reviewed by brandonwilliams for CASSANDRA-5005


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

Branch: refs/heads/trunk
Commit: b475602be82230ad3d20da8d0b56b99f47b9d192
Parents: ae9faf0
Author: Jonathan Ellis jbel...@apache.org
Authored: Sun Dec 2 04:38:59 2012 +0900
Committer: Jonathan Ellis jbel...@apache.org
Committed: Tue Dec 4 14:34:01 2012 -0600

--
 .../src/org/apache/cassandra/stress/Session.java   |   12 -
 .../org/apache/cassandra/stress/StressAction.java  |   19 --
 .../cassandra/stress/operations/CounterAdder.java  |5 ++-
 .../cassandra/stress/operations/CounterGetter.java |   10 
 .../stress/operations/CqlCounterAdder.java |5 ++-
 .../stress/operations/CqlCounterGetter.java|6 ++--
 .../stress/operations/CqlIndexedRangeSlicer.java   |5 ++-
 .../cassandra/stress/operations/CqlInserter.java   |5 ++-
 .../stress/operations/CqlRangeSlicer.java  |5 ++-
 .../cassandra/stress/operations/CqlReader.java |5 ++-
 .../stress/operations/IndexedRangeSlicer.java  |5 ++-
 .../cassandra/stress/operations/Inserter.java  |5 ++-
 .../cassandra/stress/operations/MultiGetter.java   |9 ---
 .../cassandra/stress/operations/RangeSlicer.java   |9 ---
 .../apache/cassandra/stress/operations/Reader.java |9 ---
 15 files changed, 63 insertions(+), 51 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/b475602b/tools/stress/src/org/apache/cassandra/stress/Session.java
--
diff --git a/tools/stress/src/org/apache/cassandra/stress/Session.java 
b/tools/stress/src/org/apache/cassandra/stress/Session.java
index a0c3617..804e4e8 100644
--- a/tools/stress/src/org/apache/cassandra/stress/Session.java
+++ b/tools/stress/src/org/apache/cassandra/stress/Session.java
@@ -25,6 +25,8 @@ import java.util.*;
 import java.util.concurrent.atomic.AtomicInteger;
 import java.util.concurrent.atomic.AtomicLong;
 
+import com.yammer.metrics.Metrics;
+import com.yammer.metrics.core.Histogram;
 import org.apache.cassandra.cli.transport.FramedTransportFactory;
 import org.apache.cassandra.config.CFMetaData;
 import org.apache.cassandra.config.EncryptionOptions;
@@ -56,9 +58,9 @@ public class Session implements Serializable
 
 private static InetAddress localInetAddress;
 
-public final AtomicInteger operations;
-public final AtomicInteger keys;
-public final AtomicLonglatency;
+public final AtomicInteger operations = new AtomicInteger();
+public final AtomicInteger keys = new AtomicInteger();
+public final com.yammer.metrics.core.Timer latency = 
Metrics.newTimer(Session.class, latency);
 
 private static final String SSL_TRUSTSTORE = truststore;
 private static final String SSL_TRUSTSTORE_PW = truststore-password;
@@ -436,10 +438,6 @@ public class Session implements Serializable
 
 mean  = numDifferentKeys / 2;
 sigma = numDifferentKeys * STDev;
-
-operations = new AtomicInteger();
-keys = new AtomicInteger();
-latency = new AtomicLong();
 }
 
 private TTransportFactory validateAndSetTransportFactory(String 
transportFactory)

http://git-wip-us.apache.org/repos/asf/cassandra/blob/b475602b/tools/stress/src/org/apache/cassandra/stress/StressAction.java
--
diff --git a/tools/stress/src/org/apache/cassandra/stress/StressAction.java 
b/tools/stress/src/org/apache/cassandra/stress/StressAction.java
index b5a7e6e..27675d1 100644
--- a/tools/stress/src/org/apache/cassandra/stress/StressAction.java
+++ b/tools/stress/src/org/apache/cassandra/stress/StressAction.java
@@ -21,6 +21,7 @@ import java.io.PrintStream;
 import java.util.concurrent.BlockingQueue;
 import java.util.concurrent.SynchronousQueue;
 
+import com.yammer.metrics.stats.Snapshot;
 import org.apache.cassandra.stress.operations.*;
 import org.apache.cassandra.stress.util.CassandraClient;
 import org.apache.cassandra.stress.util.Operation;
@@ -50,7 +51,8 @@ public class StressAction extends Thread
 
 public void run()
 {
-long latency, oldLatency;
+Snapshot latency;
+long oldLatency;
 int epoch, total, oldTotal, keyCount, oldKeyCount;
 
 // creating keyspace and column families
@@ -60,7 +62,7 @@ public class StressAction extends Thread
 int threadCount = client.getThreads();
 Consumer[] consumers = new Consumer[threadCount];
 
-

[5/7] git commit: cleanup

2012-12-04 Thread jbellis
cleanup


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

Branch: refs/heads/trunk
Commit: ae9faf080d215cb52a5ae6047d155cf38bc9b65e
Parents: 25bf3bf
Author: Jonathan Ellis jbel...@apache.org
Authored: Sat Dec 1 21:13:06 2012 +0900
Committer: Jonathan Ellis jbel...@apache.org
Committed: Tue Dec 4 14:34:00 2012 -0600

--
 .../apache/cassandra/stress/util/Operation.java|5 ++---
 1 files changed, 2 insertions(+), 3 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/ae9faf08/tools/stress/src/org/apache/cassandra/stress/util/Operation.java
--
diff --git a/tools/stress/src/org/apache/cassandra/stress/util/Operation.java 
b/tools/stress/src/org/apache/cassandra/stress/util/Operation.java
index 4737692..3a90517 100644
--- a/tools/stress/src/org/apache/cassandra/stress/util/Operation.java
+++ b/tools/stress/src/org/apache/cassandra/stress/util/Operation.java
@@ -84,7 +84,7 @@ public abstract class Operation
 int times = session.getColumnSize() / hash.length();
 int sumReminder = session.getColumnSize() % hash.length();
 
-String value = new StringBuilder(multiplyString(hash, 
times)).append(hash.substring(0, sumReminder)).toString();
+String value = multiplyString(hash, times) + hash.substring(0, 
sumReminder);
 values.add(ByteBuffer.wrap(value.getBytes()));
 }
 
@@ -244,7 +244,6 @@ public abstract class Operation
 {
 return Lists.transform(queryParams, new FunctionString, ByteBuffer()
 {
-@Override
 public ByteBuffer apply(String param)
 {
 return ByteBufferUtil.bytes(param);
@@ -262,7 +261,7 @@ public abstract class Operation
  */
 protected static String formatCqlQuery(String query, ListString parms)
 {
-int marker = 0, position = 0;
+int marker, position = 0;
 StringBuilder result = new StringBuilder();
 
 if (-1 == (marker = query.indexOf('?')) || parms.size() == 0)



[6/7] git commit: reduce object allocations done by inserter

2012-12-04 Thread jbellis
reduce object allocations done by inserter


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

Branch: refs/heads/trunk
Commit: 25bf3bf04e9a43006114be520c99a953ac90bb3f
Parents: aa9a602
Author: Jonathan Ellis jbel...@apache.org
Authored: Sat Dec 1 20:50:54 2012 +0900
Committer: Jonathan Ellis jbel...@apache.org
Committed: Tue Dec 4 14:33:58 2012 -0600

--
 .../cassandra/stress/operations/Inserter.java  |   40 +-
 1 files changed, 14 insertions(+), 26 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/25bf3bf0/tools/stress/src/org/apache/cassandra/stress/operations/Inserter.java
--
diff --git 
a/tools/stress/src/org/apache/cassandra/stress/operations/Inserter.java 
b/tools/stress/src/org/apache/cassandra/stress/operations/Inserter.java
index 0623e4c..24c7eaa 100644
--- a/tools/stress/src/org/apache/cassandra/stress/operations/Inserter.java
+++ b/tools/stress/src/org/apache/cassandra/stress/operations/Inserter.java
@@ -27,10 +27,7 @@ import org.apache.cassandra.utils.FBUtilities;
 
 import java.io.IOException;
 import java.nio.ByteBuffer;
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
+import java.util.*;
 
 public class Inserter extends Operation
 {
@@ -46,8 +43,8 @@ public class Inserter extends Operation
 if (values == null)
 values = generateValues();
 
-ListColumn columns = new ArrayListColumn();
-ListSuperColumn superColumns = new ArrayListSuperColumn();
+ListColumn columns = new 
ArrayListColumn(session.getColumnsPerKey());
+ListSuperColumn superColumns = null;
 
 // format used for keys
 String format = %0 + session.getTotalKeysLength() + d;
@@ -55,12 +52,13 @@ public class Inserter extends Operation
 for (int i = 0; i  session.getColumnsPerKey(); i++)
 {
 columns.add(new Column(columnName(i, session.timeUUIDComparator))
-.setValue(values.get(i % values.size()))
-.setTimestamp(FBUtilities.timestampMicros()));
+.setValue(values.get(i % values.size()))
+.setTimestamp(FBUtilities.timestampMicros()));
 }
 
 if (session.getColumnFamilyType() == ColumnFamilyType.Super)
 {
+superColumns = new ArrayListSuperColumn();
 // supers = [SuperColumn('S' + str(j), columns) for j in 
xrange(supers_per_key)]
 for (int i = 0; i  session.getSuperColumns(); i++)
 {
@@ -70,17 +68,15 @@ public class Inserter extends Operation
 }
 
 String rawKey = String.format(format, index);
-MapByteBuffer, MapString, ListMutation record = new 
HashMapByteBuffer, MapString, ListMutation();
-
-record.put(ByteBufferUtil.bytes(rawKey), session.getColumnFamilyType() 
== ColumnFamilyType.Super
-   
 ? getSuperColumnsMutationMap(superColumns)
-   
 : getColumnsMutationMap(columns));
+MapString, ListMutation row = session.getColumnFamilyType() == 
ColumnFamilyType.Super
+? 
getSuperColumnsMutationMap(superColumns)
+: getColumnsMutationMap(columns);
+MapByteBuffer, MapString, ListMutation record = 
Collections.singletonMap(ByteBufferUtil.bytes(rawKey), row);
 
 long start = System.currentTimeMillis();
 
 boolean success = false;
 String exceptionMessage = null;
-
 for (int t = 0; t  session.getRetryTimes(); t++)
 {
 if (success)
@@ -114,33 +110,25 @@ public class Inserter extends Operation
 
 private MapString, ListMutation 
getSuperColumnsMutationMap(ListSuperColumn superColumns)
 {
-ListMutation mutations = new ArrayListMutation();
-MapString, ListMutation mutationMap = new HashMapString, 
ListMutation();
-
+ListMutation mutations = new 
ArrayListMutation(superColumns.size());
 for (SuperColumn s : superColumns)
 {
 ColumnOrSuperColumn superColumn = new 
ColumnOrSuperColumn().setSuper_column(s);
 mutations.add(new 
Mutation().setColumn_or_supercolumn(superColumn));
 }
 
-mutationMap.put(Super1, mutations);
-
-return mutationMap;
+return Collections.singletonMap(Super1, mutations);
 }
 
 private MapString, 

[7/7] git commit: reduce object allocations done by inserter

2012-12-04 Thread jbellis
reduce object allocations done by inserter


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

Branch: refs/heads/cassandra-1.2
Commit: 25bf3bf04e9a43006114be520c99a953ac90bb3f
Parents: aa9a602
Author: Jonathan Ellis jbel...@apache.org
Authored: Sat Dec 1 20:50:54 2012 +0900
Committer: Jonathan Ellis jbel...@apache.org
Committed: Tue Dec 4 14:33:58 2012 -0600

--
 .../cassandra/stress/operations/Inserter.java  |   40 +-
 1 files changed, 14 insertions(+), 26 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/25bf3bf0/tools/stress/src/org/apache/cassandra/stress/operations/Inserter.java
--
diff --git 
a/tools/stress/src/org/apache/cassandra/stress/operations/Inserter.java 
b/tools/stress/src/org/apache/cassandra/stress/operations/Inserter.java
index 0623e4c..24c7eaa 100644
--- a/tools/stress/src/org/apache/cassandra/stress/operations/Inserter.java
+++ b/tools/stress/src/org/apache/cassandra/stress/operations/Inserter.java
@@ -27,10 +27,7 @@ import org.apache.cassandra.utils.FBUtilities;
 
 import java.io.IOException;
 import java.nio.ByteBuffer;
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
+import java.util.*;
 
 public class Inserter extends Operation
 {
@@ -46,8 +43,8 @@ public class Inserter extends Operation
 if (values == null)
 values = generateValues();
 
-ListColumn columns = new ArrayListColumn();
-ListSuperColumn superColumns = new ArrayListSuperColumn();
+ListColumn columns = new 
ArrayListColumn(session.getColumnsPerKey());
+ListSuperColumn superColumns = null;
 
 // format used for keys
 String format = %0 + session.getTotalKeysLength() + d;
@@ -55,12 +52,13 @@ public class Inserter extends Operation
 for (int i = 0; i  session.getColumnsPerKey(); i++)
 {
 columns.add(new Column(columnName(i, session.timeUUIDComparator))
-.setValue(values.get(i % values.size()))
-.setTimestamp(FBUtilities.timestampMicros()));
+.setValue(values.get(i % values.size()))
+.setTimestamp(FBUtilities.timestampMicros()));
 }
 
 if (session.getColumnFamilyType() == ColumnFamilyType.Super)
 {
+superColumns = new ArrayListSuperColumn();
 // supers = [SuperColumn('S' + str(j), columns) for j in 
xrange(supers_per_key)]
 for (int i = 0; i  session.getSuperColumns(); i++)
 {
@@ -70,17 +68,15 @@ public class Inserter extends Operation
 }
 
 String rawKey = String.format(format, index);
-MapByteBuffer, MapString, ListMutation record = new 
HashMapByteBuffer, MapString, ListMutation();
-
-record.put(ByteBufferUtil.bytes(rawKey), session.getColumnFamilyType() 
== ColumnFamilyType.Super
-   
 ? getSuperColumnsMutationMap(superColumns)
-   
 : getColumnsMutationMap(columns));
+MapString, ListMutation row = session.getColumnFamilyType() == 
ColumnFamilyType.Super
+? 
getSuperColumnsMutationMap(superColumns)
+: getColumnsMutationMap(columns);
+MapByteBuffer, MapString, ListMutation record = 
Collections.singletonMap(ByteBufferUtil.bytes(rawKey), row);
 
 long start = System.currentTimeMillis();
 
 boolean success = false;
 String exceptionMessage = null;
-
 for (int t = 0; t  session.getRetryTimes(); t++)
 {
 if (success)
@@ -114,33 +110,25 @@ public class Inserter extends Operation
 
 private MapString, ListMutation 
getSuperColumnsMutationMap(ListSuperColumn superColumns)
 {
-ListMutation mutations = new ArrayListMutation();
-MapString, ListMutation mutationMap = new HashMapString, 
ListMutation();
-
+ListMutation mutations = new 
ArrayListMutation(superColumns.size());
 for (SuperColumn s : superColumns)
 {
 ColumnOrSuperColumn superColumn = new 
ColumnOrSuperColumn().setSuper_column(s);
 mutations.add(new 
Mutation().setColumn_or_supercolumn(superColumn));
 }
 
-mutationMap.put(Super1, mutations);
-
-return mutationMap;
+return Collections.singletonMap(Super1, mutations);
 }
 
 private MapString, 

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

2012-12-04 Thread jbellis
Updated Branches:
  refs/heads/cassandra-1.1 32135741b - 2e271233f
  refs/heads/cassandra-1.2 b475602be - b58e1b853
  refs/heads/cassandra-1.2.0 91f36f6dc - 66026510d
  refs/heads/trunk 55aefb007 - b57d25020


Merge branch 'cassandra-1.2' into trunk


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

Branch: refs/heads/trunk
Commit: b57d250206cc70f8e03e3f7729c2ae31a5ab2e08
Parents: 55aefb0 b58e1b8
Author: Jonathan Ellis jbel...@apache.org
Authored: Tue Dec 4 14:39:35 2012 -0600
Committer: Jonathan Ellis jbel...@apache.org
Committed: Tue Dec 4 14:39:35 2012 -0600

--
 .../apache/cassandra/service/MigrationManager.java |5 ++---
 1 files changed, 2 insertions(+), 3 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/b57d2502/src/java/org/apache/cassandra/service/MigrationManager.java
--



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

2012-12-04 Thread jbellis
Merge branch 'cassandra-1.2.0' into cassandra-1.2


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

Branch: refs/heads/cassandra-1.2
Commit: b58e1b85392a9bad36f3fcaaf70e9204b4db6d4d
Parents: b475602 6602651
Author: Jonathan Ellis jbel...@apache.org
Authored: Tue Dec 4 14:39:26 2012 -0600
Committer: Jonathan Ellis jbel...@apache.org
Committed: Tue Dec 4 14:39:26 2012 -0600

--
 .../apache/cassandra/service/MigrationManager.java |5 ++---
 1 files changed, 2 insertions(+), 3 deletions(-)
--




[3/10] git commit: Merge branch 'cassandra-1.2.0' into cassandra-1.2

2012-12-04 Thread jbellis
Merge branch 'cassandra-1.2.0' into cassandra-1.2


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

Branch: refs/heads/trunk
Commit: b58e1b85392a9bad36f3fcaaf70e9204b4db6d4d
Parents: b475602 6602651
Author: Jonathan Ellis jbel...@apache.org
Authored: Tue Dec 4 14:39:26 2012 -0600
Committer: Jonathan Ellis jbel...@apache.org
Committed: Tue Dec 4 14:39:26 2012 -0600

--
 .../apache/cassandra/service/MigrationManager.java |5 ++---
 1 files changed, 2 insertions(+), 3 deletions(-)
--




[4/10] git commit: Merge branch 'cassandra-1.1' into cassandra-1.2.0

2012-12-04 Thread jbellis
Merge branch 'cassandra-1.1' into cassandra-1.2.0


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

Branch: refs/heads/trunk
Commit: 66026510dfb300b6d66e114ea1df70f46112b7c7
Parents: 91f36f6 2e27123
Author: Jonathan Ellis jbel...@apache.org
Authored: Tue Dec 4 14:39:18 2012 -0600
Committer: Jonathan Ellis jbel...@apache.org
Committed: Tue Dec 4 14:39:18 2012 -0600

--
 .../apache/cassandra/service/MigrationManager.java |5 ++---
 1 files changed, 2 insertions(+), 3 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/66026510/src/java/org/apache/cassandra/service/MigrationManager.java
--



[5/10] git commit: Merge branch 'cassandra-1.1' into cassandra-1.2.0

2012-12-04 Thread jbellis
Merge branch 'cassandra-1.1' into cassandra-1.2.0


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

Branch: refs/heads/cassandra-1.2.0
Commit: 66026510dfb300b6d66e114ea1df70f46112b7c7
Parents: 91f36f6 2e27123
Author: Jonathan Ellis jbel...@apache.org
Authored: Tue Dec 4 14:39:18 2012 -0600
Committer: Jonathan Ellis jbel...@apache.org
Committed: Tue Dec 4 14:39:18 2012 -0600

--
 .../apache/cassandra/service/MigrationManager.java |5 ++---
 1 files changed, 2 insertions(+), 3 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/66026510/src/java/org/apache/cassandra/service/MigrationManager.java
--



[7/10] git commit: switch from Callable-returns-null to Runnable

2012-12-04 Thread jbellis
switch from Callable-returns-null to Runnable


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

Branch: refs/heads/trunk
Commit: 2e271233ffeaef9881fdc38704051d4879879021
Parents: 3213574
Author: Jonathan Ellis jbel...@apache.org
Authored: Tue Dec 4 14:37:23 2012 -0600
Committer: Jonathan Ellis jbel...@apache.org
Committed: Tue Dec 4 14:37:23 2012 -0600

--
 .../apache/cassandra/service/MigrationManager.java |5 ++---
 1 files changed, 2 insertions(+), 3 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/2e271233/src/java/org/apache/cassandra/service/MigrationManager.java
--
diff --git a/src/java/org/apache/cassandra/service/MigrationManager.java 
b/src/java/org/apache/cassandra/service/MigrationManager.java
index 53c3035..94c0dcc 100644
--- a/src/java/org/apache/cassandra/service/MigrationManager.java
+++ b/src/java/org/apache/cassandra/service/MigrationManager.java
@@ -210,12 +210,11 @@ public class MigrationManager implements 
IEndpointStateChangeSubscriber
 // Returns a future on the local application of the schema
 private static Future? announce(final CollectionRowMutation schema)
 {
-Future? f = StageManager.getStage(Stage.MIGRATION).submit(new 
CallableObject()
+Future? f = StageManager.getStage(Stage.MIGRATION).submit(new 
WrappedRunnable()
 {
-public Object call() throws Exception
+protected void runMayThrow() throws IOException, 
ConfigurationException
 {
 DefsTable.mergeSchema(schema);
-return null;
 }
 });
 



[6/10] git commit: Merge branch 'cassandra-1.1' into cassandra-1.2.0

2012-12-04 Thread jbellis
Merge branch 'cassandra-1.1' into cassandra-1.2.0


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

Branch: refs/heads/cassandra-1.2
Commit: 66026510dfb300b6d66e114ea1df70f46112b7c7
Parents: 91f36f6 2e27123
Author: Jonathan Ellis jbel...@apache.org
Authored: Tue Dec 4 14:39:18 2012 -0600
Committer: Jonathan Ellis jbel...@apache.org
Committed: Tue Dec 4 14:39:18 2012 -0600

--
 .../apache/cassandra/service/MigrationManager.java |5 ++---
 1 files changed, 2 insertions(+), 3 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/66026510/src/java/org/apache/cassandra/service/MigrationManager.java
--



[9/10] git commit: switch from Callable-returns-null to Runnable

2012-12-04 Thread jbellis
switch from Callable-returns-null to Runnable


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

Branch: refs/heads/cassandra-1.2.0
Commit: 2e271233ffeaef9881fdc38704051d4879879021
Parents: 3213574
Author: Jonathan Ellis jbel...@apache.org
Authored: Tue Dec 4 14:37:23 2012 -0600
Committer: Jonathan Ellis jbel...@apache.org
Committed: Tue Dec 4 14:37:23 2012 -0600

--
 .../apache/cassandra/service/MigrationManager.java |5 ++---
 1 files changed, 2 insertions(+), 3 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/2e271233/src/java/org/apache/cassandra/service/MigrationManager.java
--
diff --git a/src/java/org/apache/cassandra/service/MigrationManager.java 
b/src/java/org/apache/cassandra/service/MigrationManager.java
index 53c3035..94c0dcc 100644
--- a/src/java/org/apache/cassandra/service/MigrationManager.java
+++ b/src/java/org/apache/cassandra/service/MigrationManager.java
@@ -210,12 +210,11 @@ public class MigrationManager implements 
IEndpointStateChangeSubscriber
 // Returns a future on the local application of the schema
 private static Future? announce(final CollectionRowMutation schema)
 {
-Future? f = StageManager.getStage(Stage.MIGRATION).submit(new 
CallableObject()
+Future? f = StageManager.getStage(Stage.MIGRATION).submit(new 
WrappedRunnable()
 {
-public Object call() throws Exception
+protected void runMayThrow() throws IOException, 
ConfigurationException
 {
 DefsTable.mergeSchema(schema);
-return null;
 }
 });
 



[8/10] git commit: switch from Callable-returns-null to Runnable

2012-12-04 Thread jbellis
switch from Callable-returns-null to Runnable


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

Branch: refs/heads/cassandra-1.2
Commit: 2e271233ffeaef9881fdc38704051d4879879021
Parents: 3213574
Author: Jonathan Ellis jbel...@apache.org
Authored: Tue Dec 4 14:37:23 2012 -0600
Committer: Jonathan Ellis jbel...@apache.org
Committed: Tue Dec 4 14:37:23 2012 -0600

--
 .../apache/cassandra/service/MigrationManager.java |5 ++---
 1 files changed, 2 insertions(+), 3 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/2e271233/src/java/org/apache/cassandra/service/MigrationManager.java
--
diff --git a/src/java/org/apache/cassandra/service/MigrationManager.java 
b/src/java/org/apache/cassandra/service/MigrationManager.java
index 53c3035..94c0dcc 100644
--- a/src/java/org/apache/cassandra/service/MigrationManager.java
+++ b/src/java/org/apache/cassandra/service/MigrationManager.java
@@ -210,12 +210,11 @@ public class MigrationManager implements 
IEndpointStateChangeSubscriber
 // Returns a future on the local application of the schema
 private static Future? announce(final CollectionRowMutation schema)
 {
-Future? f = StageManager.getStage(Stage.MIGRATION).submit(new 
CallableObject()
+Future? f = StageManager.getStage(Stage.MIGRATION).submit(new 
WrappedRunnable()
 {
-public Object call() throws Exception
+protected void runMayThrow() throws IOException, 
ConfigurationException
 {
 DefsTable.mergeSchema(schema);
-return null;
 }
 });
 



[10/10] git commit: switch from Callable-returns-null to Runnable

2012-12-04 Thread jbellis
switch from Callable-returns-null to Runnable


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

Branch: refs/heads/cassandra-1.1
Commit: 2e271233ffeaef9881fdc38704051d4879879021
Parents: 3213574
Author: Jonathan Ellis jbel...@apache.org
Authored: Tue Dec 4 14:37:23 2012 -0600
Committer: Jonathan Ellis jbel...@apache.org
Committed: Tue Dec 4 14:37:23 2012 -0600

--
 .../apache/cassandra/service/MigrationManager.java |5 ++---
 1 files changed, 2 insertions(+), 3 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/2e271233/src/java/org/apache/cassandra/service/MigrationManager.java
--
diff --git a/src/java/org/apache/cassandra/service/MigrationManager.java 
b/src/java/org/apache/cassandra/service/MigrationManager.java
index 53c3035..94c0dcc 100644
--- a/src/java/org/apache/cassandra/service/MigrationManager.java
+++ b/src/java/org/apache/cassandra/service/MigrationManager.java
@@ -210,12 +210,11 @@ public class MigrationManager implements 
IEndpointStateChangeSubscriber
 // Returns a future on the local application of the schema
 private static Future? announce(final CollectionRowMutation schema)
 {
-Future? f = StageManager.getStage(Stage.MIGRATION).submit(new 
CallableObject()
+Future? f = StageManager.getStage(Stage.MIGRATION).submit(new 
WrappedRunnable()
 {
-public Object call() throws Exception
+protected void runMayThrow() throws IOException, 
ConfigurationException
 {
 DefsTable.mergeSchema(schema);
-return null;
 }
 });
 



buildbot failure in ASF Buildbot on cassandra-trunk

2012-12-04 Thread buildbot
The Buildbot has detected a new failure on builder cassandra-trunk while 
building cassandra.
Full details are available at:
 http://ci.apache.org/builders/cassandra-trunk/builds/2145

Buildbot URL: http://ci.apache.org/

Buildslave for this Build: portunus_ubuntu

Build Reason: scheduler
Build Source Stamp: [branch trunk] b57d250206cc70f8e03e3f7729c2ae31a5ab2e08
Blamelist: Jonathan Ellis jbel...@apache.org

BUILD FAILED: failed compile

sincerely,
 -The Buildbot





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

2012-12-04 Thread jbellis
Updated Branches:
  refs/heads/cassandra-1.2 b58e1b853 - d25182f0d
  refs/heads/cassandra-1.2.0 66026510d - 0d6990167
  refs/heads/trunk b57d25020 - bb229f25f


Merge branch 'cassandra-1.2' into trunk


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

Branch: refs/heads/trunk
Commit: bb229f25f4585993fa8aff6467c501486a6492b2
Parents: b57d250 d25182f
Author: Jonathan Ellis jbel...@apache.org
Authored: Tue Dec 4 14:49:22 2012 -0600
Committer: Jonathan Ellis jbel...@apache.org
Committed: Tue Dec 4 14:49:22 2012 -0600

--
 .../apache/cassandra/service/MigrationManager.java |1 +
 1 files changed, 1 insertions(+), 0 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/bb229f25/src/java/org/apache/cassandra/service/MigrationManager.java
--



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

2012-12-04 Thread jbellis
Merge branch 'cassandra-1.2.0' into cassandra-1.2


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

Branch: refs/heads/cassandra-1.2
Commit: d25182f0df0bca3c1815adbb2c28d4920693e2c0
Parents: b58e1b8 0d69901
Author: Jonathan Ellis jbel...@apache.org
Authored: Tue Dec 4 14:49:14 2012 -0600
Committer: Jonathan Ellis jbel...@apache.org
Committed: Tue Dec 4 14:49:14 2012 -0600

--
 .../apache/cassandra/service/MigrationManager.java |1 +
 1 files changed, 1 insertions(+), 0 deletions(-)
--




[3/6] git commit: Merge branch 'cassandra-1.2.0' into cassandra-1.2

2012-12-04 Thread jbellis
Merge branch 'cassandra-1.2.0' into cassandra-1.2


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

Branch: refs/heads/trunk
Commit: d25182f0df0bca3c1815adbb2c28d4920693e2c0
Parents: b58e1b8 0d69901
Author: Jonathan Ellis jbel...@apache.org
Authored: Tue Dec 4 14:49:14 2012 -0600
Committer: Jonathan Ellis jbel...@apache.org
Committed: Tue Dec 4 14:49:14 2012 -0600

--
 .../apache/cassandra/service/MigrationManager.java |1 +
 1 files changed, 1 insertions(+), 0 deletions(-)
--




[5/6] git commit: missing import from merge

2012-12-04 Thread jbellis
missing import from merge


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

Branch: refs/heads/cassandra-1.2.0
Commit: 0d699016734014761a214261a7fdebb600a499ea
Parents: 6602651
Author: Jonathan Ellis jbel...@apache.org
Authored: Tue Dec 4 14:49:02 2012 -0600
Committer: Jonathan Ellis jbel...@apache.org
Committed: Tue Dec 4 14:49:02 2012 -0600

--
 .../apache/cassandra/service/MigrationManager.java |1 +
 1 files changed, 1 insertions(+), 0 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/0d699016/src/java/org/apache/cassandra/service/MigrationManager.java
--
diff --git a/src/java/org/apache/cassandra/service/MigrationManager.java 
b/src/java/org/apache/cassandra/service/MigrationManager.java
index f67840e..80f8cd9 100644
--- a/src/java/org/apache/cassandra/service/MigrationManager.java
+++ b/src/java/org/apache/cassandra/service/MigrationManager.java
@@ -49,6 +49,7 @@ import org.apache.cassandra.net.MessagingService;
 import org.apache.cassandra.utils.ByteBufferUtil;
 import org.apache.cassandra.utils.FBUtilities;
 import org.apache.cassandra.utils.UUIDGen;
+import org.apache.cassandra.utils.WrappedRunnable;
 
 public class MigrationManager implements IEndpointStateChangeSubscriber
 {



[6/6] git commit: missing import from merge

2012-12-04 Thread jbellis
missing import from merge


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

Branch: refs/heads/cassandra-1.2
Commit: 0d699016734014761a214261a7fdebb600a499ea
Parents: 6602651
Author: Jonathan Ellis jbel...@apache.org
Authored: Tue Dec 4 14:49:02 2012 -0600
Committer: Jonathan Ellis jbel...@apache.org
Committed: Tue Dec 4 14:49:02 2012 -0600

--
 .../apache/cassandra/service/MigrationManager.java |1 +
 1 files changed, 1 insertions(+), 0 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/0d699016/src/java/org/apache/cassandra/service/MigrationManager.java
--
diff --git a/src/java/org/apache/cassandra/service/MigrationManager.java 
b/src/java/org/apache/cassandra/service/MigrationManager.java
index f67840e..80f8cd9 100644
--- a/src/java/org/apache/cassandra/service/MigrationManager.java
+++ b/src/java/org/apache/cassandra/service/MigrationManager.java
@@ -49,6 +49,7 @@ import org.apache.cassandra.net.MessagingService;
 import org.apache.cassandra.utils.ByteBufferUtil;
 import org.apache.cassandra.utils.FBUtilities;
 import org.apache.cassandra.utils.UUIDGen;
+import org.apache.cassandra.utils.WrappedRunnable;
 
 public class MigrationManager implements IEndpointStateChangeSubscriber
 {



[4/6] git commit: missing import from merge

2012-12-04 Thread jbellis
missing import from merge


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

Branch: refs/heads/trunk
Commit: 0d699016734014761a214261a7fdebb600a499ea
Parents: 6602651
Author: Jonathan Ellis jbel...@apache.org
Authored: Tue Dec 4 14:49:02 2012 -0600
Committer: Jonathan Ellis jbel...@apache.org
Committed: Tue Dec 4 14:49:02 2012 -0600

--
 .../apache/cassandra/service/MigrationManager.java |1 +
 1 files changed, 1 insertions(+), 0 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/0d699016/src/java/org/apache/cassandra/service/MigrationManager.java
--
diff --git a/src/java/org/apache/cassandra/service/MigrationManager.java 
b/src/java/org/apache/cassandra/service/MigrationManager.java
index f67840e..80f8cd9 100644
--- a/src/java/org/apache/cassandra/service/MigrationManager.java
+++ b/src/java/org/apache/cassandra/service/MigrationManager.java
@@ -49,6 +49,7 @@ import org.apache.cassandra.net.MessagingService;
 import org.apache.cassandra.utils.ByteBufferUtil;
 import org.apache.cassandra.utils.FBUtilities;
 import org.apache.cassandra.utils.UUIDGen;
+import org.apache.cassandra.utils.WrappedRunnable;
 
 public class MigrationManager implements IEndpointStateChangeSubscriber
 {



[3/6] git commit: Merge branch 'cassandra-1.2.0' into cassandra-1.2

2012-12-04 Thread jbellis
Merge branch 'cassandra-1.2.0' into cassandra-1.2


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

Branch: refs/heads/trunk
Commit: 6bd56cf04a0071ecd490b34aa004630b969830ff
Parents: d25182f ffb2eba
Author: Jonathan Ellis jbel...@apache.org
Authored: Tue Dec 4 14:56:39 2012 -0600
Committer: Jonathan Ellis jbel...@apache.org
Committed: Tue Dec 4 14:56:39 2012 -0600

--
 CHANGES.txt |   35 ++-
 1 files changed, 10 insertions(+), 25 deletions(-)
--


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



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

2012-12-04 Thread jbellis
Updated Branches:
  refs/heads/cassandra-1.2 d25182f0d - 6bd56cf04
  refs/heads/cassandra-1.2.0 0d6990167 - ffb2eba6c
  refs/heads/trunk bb229f25f - a6dd34a0b


Merge branch 'cassandra-1.2' into trunk


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

Branch: refs/heads/trunk
Commit: a6dd34a0b9d20c54dafa416bcc5d2765afe3e28d
Parents: bb229f2 6bd56cf
Author: Jonathan Ellis jbel...@apache.org
Authored: Tue Dec 4 14:56:50 2012 -0600
Committer: Jonathan Ellis jbel...@apache.org
Committed: Tue Dec 4 14:56:50 2012 -0600

--
 CHANGES.txt |   35 ++-
 1 files changed, 10 insertions(+), 25 deletions(-)
--


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



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

2012-12-04 Thread jbellis
Merge branch 'cassandra-1.2.0' into cassandra-1.2


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

Branch: refs/heads/cassandra-1.2
Commit: 6bd56cf04a0071ecd490b34aa004630b969830ff
Parents: d25182f ffb2eba
Author: Jonathan Ellis jbel...@apache.org
Authored: Tue Dec 4 14:56:39 2012 -0600
Committer: Jonathan Ellis jbel...@apache.org
Committed: Tue Dec 4 14:56:39 2012 -0600

--
 CHANGES.txt |   35 ++-
 1 files changed, 10 insertions(+), 25 deletions(-)
--


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



[4/6] git commit: fix CHANGES merging

2012-12-04 Thread jbellis
fix CHANGES merging


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

Branch: refs/heads/trunk
Commit: ffb2eba6ca15038476a724884bc8628250ae9031
Parents: 0d69901
Author: Jonathan Ellis jbel...@apache.org
Authored: Tue Dec 4 14:56:30 2012 -0600
Committer: Jonathan Ellis jbel...@apache.org
Committed: Tue Dec 4 14:56:30 2012 -0600

--
 CHANGES.txt |   35 ++-
 1 files changed, 10 insertions(+), 25 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/ffb2eba6/CHANGES.txt
--
diff --git a/CHANGES.txt b/CHANGES.txt
index 40f6de6..339cf1d 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -26,27 +26,25 @@
  * Fix allowing collections with compact storage (CASSANDRA-4990)
  * Refuse ttl/writetime function on collections (CASSANDRA-4992)
  * Replace IAuthority with new IAuthorizer (CASSANDRA-4874)
+ * clqsh: fix KEY pseudocolumn escaping when describing Thrift tables
+   in CQL3 mode (CASSANDRA-4955)
+ * add basic authentication support for Pig CassandraStorage (CASSANDRA-3042)
+ * fix CQL2 ALTER TABLE compaction_strategy_class altering (CASSANDRA-4965)
 Merged from 1.1:
-===
-1.1.8
  * Fall back to old describe_splits if d_s_ex is not available (CASSANDRA-4803)
  * Improve error reporting when streaming ranges fail (CASSANDRA-5009)
-
-
-1.1.7
- * cqlsh: improve COPY FROM performance (CASSANDRA-4921)
- * Fall back to old describe_splits if d_s_ex is not available (CASSANDRA-4803)
- * add basic authentication support for Pig CassandraStorage (CASSANDRA-3042)
- * fix CQL2 ALTER TABLE compaction_strategy_class altering (CASSANDRA-4965)
+ * Fix cqlsh timestamp formatting of timezone info (CASSANDRA-4746)
+ * Fix assertion failure with leveled compaction (CASSANDRA-4799)
+ * Check for null end_token in get_range_slice (CASSANDRA-4804)
+ * Remove all remnants of removed nodes (CASSANDRA-4840)
+ * Add aut-reloading of the log4j file in debian package (CASSANDRA-4855)
+ * Fix estimated row cache entry size (CASSANDRA-4860)
  * reset getRangeSlice filter after finishing a row for get_paged_slice
(CASSANDRA-4919)
  * expunge row cache post-truncate (CASSANDRA-4940)
- * remove IAuthority2 (CASSANDRA-4875)
  * Allow static CF definition with compact storage (CASSANDRA-4910)
  * Fix endless loop/compaction of schema_* CFs due to broken timestamps 
(CASSANDRA-4880)
  * Fix 'wrong class type' assertion in CounterColumn (CASSANDRA-4976)
- * clqsh: fix KEY pseudocolumn escaping when describing Thrift tables
-   in CQL3 mode (CASSANDRA-4955)
 
 
 1.2-beta2
@@ -118,22 +116,9 @@ Merged from 1.1:
  * (CQL) fix CREATE COLUMNFAMILY permissions check (CASSANDRA-4864)
  * Fix DynamicCompositeType same type comparison (CASSANDRA-4711)
  * Fix duplicate SSTable reference when stream session failed (CASSANDRA-3306)
- HEAD
-||| merged common ancestors
- * Allow static CF definition with compact storage (CASSANDRA-4910)
- * Fix endless loop/compaction of schema_* CFs due to broken timestamps 
(CASSANDRA-4880)
- * Fix 'wrong class type' assertion in CounterColumn (CASSANDRA-4976)
-===
  * Allow static CF definition with compact storage (CASSANDRA-4910)
  * Fix endless loop/compaction of schema_* CFs due to broken timestamps 
(CASSANDRA-4880)
  * Fix 'wrong class type' assertion in CounterColumn (CASSANDRA-4976)
- * Fix cqlsh timestamp formatting of timezone info (CASSANDRA-4746)
- * Fix assertion failure with leveled compaction (CASSANDRA-4799)
- * Check for null end_token in get_range_slice (CASSANDRA-4804)
- * Remove all remnants of removed nodes (CASSANDRA-4840)
- * Add aut-reloading of the log4j file in debian package (CASSANDRA-4855)
- * Fix estimated row cache entry size (CASSANDRA-4860)
- cassandra-1.1
 
 
 1.2-beta1



[5/6] git commit: fix CHANGES merging

2012-12-04 Thread jbellis
fix CHANGES merging


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

Branch: refs/heads/cassandra-1.2.0
Commit: ffb2eba6ca15038476a724884bc8628250ae9031
Parents: 0d69901
Author: Jonathan Ellis jbel...@apache.org
Authored: Tue Dec 4 14:56:30 2012 -0600
Committer: Jonathan Ellis jbel...@apache.org
Committed: Tue Dec 4 14:56:30 2012 -0600

--
 CHANGES.txt |   35 ++-
 1 files changed, 10 insertions(+), 25 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/ffb2eba6/CHANGES.txt
--
diff --git a/CHANGES.txt b/CHANGES.txt
index 40f6de6..339cf1d 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -26,27 +26,25 @@
  * Fix allowing collections with compact storage (CASSANDRA-4990)
  * Refuse ttl/writetime function on collections (CASSANDRA-4992)
  * Replace IAuthority with new IAuthorizer (CASSANDRA-4874)
+ * clqsh: fix KEY pseudocolumn escaping when describing Thrift tables
+   in CQL3 mode (CASSANDRA-4955)
+ * add basic authentication support for Pig CassandraStorage (CASSANDRA-3042)
+ * fix CQL2 ALTER TABLE compaction_strategy_class altering (CASSANDRA-4965)
 Merged from 1.1:
-===
-1.1.8
  * Fall back to old describe_splits if d_s_ex is not available (CASSANDRA-4803)
  * Improve error reporting when streaming ranges fail (CASSANDRA-5009)
-
-
-1.1.7
- * cqlsh: improve COPY FROM performance (CASSANDRA-4921)
- * Fall back to old describe_splits if d_s_ex is not available (CASSANDRA-4803)
- * add basic authentication support for Pig CassandraStorage (CASSANDRA-3042)
- * fix CQL2 ALTER TABLE compaction_strategy_class altering (CASSANDRA-4965)
+ * Fix cqlsh timestamp formatting of timezone info (CASSANDRA-4746)
+ * Fix assertion failure with leveled compaction (CASSANDRA-4799)
+ * Check for null end_token in get_range_slice (CASSANDRA-4804)
+ * Remove all remnants of removed nodes (CASSANDRA-4840)
+ * Add aut-reloading of the log4j file in debian package (CASSANDRA-4855)
+ * Fix estimated row cache entry size (CASSANDRA-4860)
  * reset getRangeSlice filter after finishing a row for get_paged_slice
(CASSANDRA-4919)
  * expunge row cache post-truncate (CASSANDRA-4940)
- * remove IAuthority2 (CASSANDRA-4875)
  * Allow static CF definition with compact storage (CASSANDRA-4910)
  * Fix endless loop/compaction of schema_* CFs due to broken timestamps 
(CASSANDRA-4880)
  * Fix 'wrong class type' assertion in CounterColumn (CASSANDRA-4976)
- * clqsh: fix KEY pseudocolumn escaping when describing Thrift tables
-   in CQL3 mode (CASSANDRA-4955)
 
 
 1.2-beta2
@@ -118,22 +116,9 @@ Merged from 1.1:
  * (CQL) fix CREATE COLUMNFAMILY permissions check (CASSANDRA-4864)
  * Fix DynamicCompositeType same type comparison (CASSANDRA-4711)
  * Fix duplicate SSTable reference when stream session failed (CASSANDRA-3306)
- HEAD
-||| merged common ancestors
- * Allow static CF definition with compact storage (CASSANDRA-4910)
- * Fix endless loop/compaction of schema_* CFs due to broken timestamps 
(CASSANDRA-4880)
- * Fix 'wrong class type' assertion in CounterColumn (CASSANDRA-4976)
-===
  * Allow static CF definition with compact storage (CASSANDRA-4910)
  * Fix endless loop/compaction of schema_* CFs due to broken timestamps 
(CASSANDRA-4880)
  * Fix 'wrong class type' assertion in CounterColumn (CASSANDRA-4976)
- * Fix cqlsh timestamp formatting of timezone info (CASSANDRA-4746)
- * Fix assertion failure with leveled compaction (CASSANDRA-4799)
- * Check for null end_token in get_range_slice (CASSANDRA-4804)
- * Remove all remnants of removed nodes (CASSANDRA-4840)
- * Add aut-reloading of the log4j file in debian package (CASSANDRA-4855)
- * Fix estimated row cache entry size (CASSANDRA-4860)
- cassandra-1.1
 
 
 1.2-beta1



[jira] [Updated] (CASSANDRA-5003) Update IAuthenticator to allow dynamic user creation and removal

2012-12-04 Thread Aleksey Yeschenko (JIRA)

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

Aleksey Yeschenko updated CASSANDRA-5003:
-

Attachment: 5003.txt

 Update IAuthenticator to allow dynamic user creation and removal
 

 Key: CASSANDRA-5003
 URL: https://issues.apache.org/jira/browse/CASSANDRA-5003
 Project: Cassandra
  Issue Type: Improvement
Reporter: Aleksey Yeschenko
Assignee: Aleksey Yeschenko
 Fix For: 1.2.0 rc1

 Attachments: 5003.txt


 - add new methods to IAuthenticator (createUser, alterUser, dropUser)
 - add CREATE USER, ALTER USER, DROP USER and LIST USERS CQL3 statements
 - add a command-line tool for user creation (for recovery and first 
 super-user creation)
 - add an abstract LegacyAuthenticator class to ease transition to the updated 
 interface (LegacyAuthenticator will have stubs for all the new methods)

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Updated] (CASSANDRA-4919) StorageProxy.getRangeSlice sometimes returns incorrect number of columns

2012-12-04 Thread Jonathan Ellis (JIRA)

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

Jonathan Ellis updated CASSANDRA-4919:
--

Affects Version/s: (was: 1.1.6)
   1.1.0
Fix Version/s: 1.1.8

 StorageProxy.getRangeSlice sometimes returns incorrect number of columns
 

 Key: CASSANDRA-4919
 URL: https://issues.apache.org/jira/browse/CASSANDRA-4919
 Project: Cassandra
  Issue Type: Bug
Affects Versions: 1.1.0
Reporter: Piotr Kołaczkowski
Assignee: Piotr Kołaczkowski
 Fix For: 1.1.8, 1.2.0 beta 3

 Attachments: 
 0001-Fix-getRangeSlice-paging-reset-predicate-after-fetch.patch


 When deployed on a single node, number of columns is correct.
 When deployed on a cluster, total number of returned columns is slightly 
 lower than desired. 

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Updated] (CASSANDRA-5003) Update IAuthenticator to allow dynamic user creation and removal

2012-12-04 Thread Aleksey Yeschenko (JIRA)

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

Aleksey Yeschenko updated CASSANDRA-5003:
-

Description: 
- add new methods to IAuthenticator (createUser, alterUser, dropUser)
- add CREATE USER, ALTER USER, DROP USER and LIST USERS CQL3 statements

  was:
- add new methods to IAuthenticator (createUser, alterUser, dropUser)
- add CREATE USER, ALTER USER, DROP USER and LIST USERS CQL3 statements
- add a command-line tool for user creation (for recovery and first super-user 
creation)
- add an abstract LegacyAuthenticator class to ease transition to the updated 
interface (LegacyAuthenticator will have stubs for all the new methods)


 Update IAuthenticator to allow dynamic user creation and removal
 

 Key: CASSANDRA-5003
 URL: https://issues.apache.org/jira/browse/CASSANDRA-5003
 Project: Cassandra
  Issue Type: Improvement
Reporter: Aleksey Yeschenko
Assignee: Aleksey Yeschenko
 Fix For: 1.2.0 rc1

 Attachments: 5003.txt


 - add new methods to IAuthenticator (createUser, alterUser, dropUser)
 - add CREATE USER, ALTER USER, DROP USER and LIST USERS CQL3 statements

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Commented] (CASSANDRA-5023) Upgrading from 1.0 to 1.1 makes secondary indexes no longer work

2012-12-04 Thread Jeremy Hanna (JIRA)

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

Jeremy Hanna commented on CASSANDRA-5023:
-

Great - this also fixes some code that was done in hector - using the 
IntegerType.instance.fromString instead of hector's IntegerSerializer's 
toByteBuffer.  Thank you Yuki.

 Upgrading from 1.0 to 1.1 makes secondary indexes no longer work
 

 Key: CASSANDRA-5023
 URL: https://issues.apache.org/jira/browse/CASSANDRA-5023
 Project: Cassandra
  Issue Type: Bug
  Components: Core
Reporter: Jeremy Hanna
Assignee: Yuki Morishita
 Fix For: 1.1.8


 To reproduce:
 Create column family with C* 1.0.8:
 {code}
 CREATE KEYSPACE Keyspace1 
 with placement_strategy = 'org.apache.cassandra.locator.SimpleStrategy'
 and strategy_options = {replication_factor:1};
 use Keyspace1;
 CREATE COLUMN FAMILY 'User' WITH
  key_validation_class = 'UTF8Type' AND
  comparator = 'UTF8Type' AND
  default_validation_class = 'UTF8Type' AND
  compression_options = 
 {sstable_compression:SnappyCompressor,chunk_length_kb:64} AND
  column_metadata = [
  {column_name: 'numberOfDeloreans', validation_class: 'IntegerType', 
 index_type: KEYS}
 ];
 {code}
 Then in cqlsh add some data:
 {code}
 use Keyspace1;
 update User set 'numberOfDeloreans'=0 where key = 'marty';
 update User set 'userId'='themartymcfly' where key = 'marty';
 {code}
 In cqlsh, do
 {code}select * from User where numberOfDeloreans=0;{code}
 Then in thrift do:
 {code}
 package org.mostlyharmless;
 import org.apache.cassandra.thrift.*;
 import org.apache.cassandra.utils.ByteBufferUtil;
 import org.apache.thrift.TException;
 import org.apache.thrift.protocol.TProtocol;
 import org.apache.thrift.transport.TFramedTransport;
 import org.apache.thrift.transport.TSocket;
 import org.apache.thrift.transport.TTransport;
 import java.io.UnsupportedEncodingException;
 import java.nio.ByteBuffer;
 import java.util.ArrayList;
 import java.util.List;
 public class ThriftQuery {
 public static void main(String[] args)
 throws TException, InvalidRequestException, UnavailableException, 
 UnsupportedEncodingException, NotFoundException, TimedOutException
 {
 TTransport tr = new TFramedTransport(new TSocket(localhost, 9160));
 TProtocol proto = new TBinaryProtocol(tr);
 Cassandra.Client client = new Cassandra.Client(proto);
 tr.open();
 client.set_keyspace(Keyspace1);
 ColumnParent columnParent = new ColumnParent(User);
 SlicePredicate slicePredicate = new SlicePredicate();
 ListByteBuffer columnNames = new ArrayListByteBuffer();
 columnNames.add(ByteBufferUtil.bytes(userId));
 slicePredicate.setColumn_names(columnNames);
 KeyRange keyRange = new KeyRange();
 keyRange.setStart_token(0);
 keyRange.setEnd_token(0);
 ListIndexExpression indexExpressions = new 
 ArrayListIndexExpression();
 indexExpressions.add(new 
 IndexExpression(ByteBufferUtil.bytes(numberOfDeloreans), IndexOperator.EQ, 
 ByteBufferUtil.bytes(0)));
 keyRange.setRow_filter(indexExpressions);
 ListKeySlice keySlices = client.get_range_slices(columnParent, 
 slicePredicate, keyRange, ConsistencyLevel.ONE);
 System.out.println(number of keyslices returned:  + 
 keySlices.size());
 tr.close();
 }
 }
 {code}
 Note that 1 record is returned in both instances.
 Run nodetool drain on 1.0.8.  Start 1.1.7.  Do the cqlsh query again, returns 
 the result.  Run the thrift code again, get 0 results.
 Tried both upgradesstables and rebuild_index.  Didn't help.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Commented] (CASSANDRA-5025) Schema push/pull race

2012-12-04 Thread Jonathan Ellis (JIRA)

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

Jonathan Ellis commented on CASSANDRA-5025:
---

patch attached to add a delay to rectifySchema to give concurrent changes a 
chance to propagate first

 Schema push/pull race
 -

 Key: CASSANDRA-5025
 URL: https://issues.apache.org/jira/browse/CASSANDRA-5025
 Project: Cassandra
  Issue Type: Bug
  Components: Core
Affects Versions: 1.1.0
Reporter: Jonathan Ellis
Priority: Minor
 Fix For: 1.1.8

 Attachments: 5025.txt


 When a schema change is made, the coordinator pushes the delta to the other 
 nodes in the cluster.  This is more efficient than sending the entire schema. 
  But the coordinator also announces the new schema version, so the other 
 nodes' reception of the new version races with processing the delta, and 
 usually seeing the new schema wins.  So the other nodes also issue a pull to 
 the coordinator for the entire schema.
 Thus, schema changes tend to become O(n) in the number of KS and CF present.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Updated] (CASSANDRA-5025) Schema push/pull race

2012-12-04 Thread Jonathan Ellis (JIRA)

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

Jonathan Ellis updated CASSANDRA-5025:
--

Attachment: 5025.txt

 Schema push/pull race
 -

 Key: CASSANDRA-5025
 URL: https://issues.apache.org/jira/browse/CASSANDRA-5025
 Project: Cassandra
  Issue Type: Bug
  Components: Core
Affects Versions: 1.1.0
Reporter: Jonathan Ellis
Priority: Minor
 Fix For: 1.1.8

 Attachments: 5025.txt


 When a schema change is made, the coordinator pushes the delta to the other 
 nodes in the cluster.  This is more efficient than sending the entire schema. 
  But the coordinator also announces the new schema version, so the other 
 nodes' reception of the new version races with processing the delta, and 
 usually seeing the new schema wins.  So the other nodes also issue a pull to 
 the coordinator for the entire schema.
 Thus, schema changes tend to become O(n) in the number of KS and CF present.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


buildbot success in ASF Buildbot on cassandra-trunk

2012-12-04 Thread buildbot
The Buildbot has detected a restored build on builder cassandra-trunk while 
building cassandra.
Full details are available at:
 http://ci.apache.org/builders/cassandra-trunk/builds/2146

Buildbot URL: http://ci.apache.org/

Buildslave for this Build: portunus_ubuntu

Build Reason: scheduler
Build Source Stamp: [branch trunk] bb229f25f4585993fa8aff6467c501486a6492b2
Blamelist: Jonathan Ellis jbel...@apache.org

Build succeeded!

sincerely,
 -The Buildbot





[jira] [Commented] (CASSANDRA-5005) Add a latency histogram option to stress

2012-12-04 Thread Jonathan Ellis (JIRA)

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

Jonathan Ellis commented on CASSANDRA-5005:
---

committed w/ that change

 Add a latency histogram option to stress
 

 Key: CASSANDRA-5005
 URL: https://issues.apache.org/jira/browse/CASSANDRA-5005
 Project: Cassandra
  Issue Type: Improvement
Reporter: Brandon Williams
Assignee: Jonathan Ellis
Priority: Minor
  Labels: stress
 Fix For: 1.2.1

 Attachments: 5005.txt


 Averages just aren't always enough and it should be easy to wire our existing 
 histogram utils into stress.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Created] (CASSANDRA-5026) Reduce log spam from counter shard warnings

2012-12-04 Thread Jonathan Ellis (JIRA)
Jonathan Ellis created CASSANDRA-5026:
-

 Summary: Reduce log spam from counter shard warnings
 Key: CASSANDRA-5026
 URL: https://issues.apache.org/jira/browse/CASSANDRA-5026
 Project: Cassandra
  Issue Type: Improvement
  Components: Core
Reporter: Jonathan Ellis
Assignee: Sylvain Lebresne
Priority: Minor
 Fix For: 1.1.8


The invalid counter shard warning we can get after unclean shutdown in periodic 
commitlog mode or after node movement (CASSANDRA-4071) can spam the log hard 
since it is logged once per read until compaction merges it away.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Commented] (CASSANDRA-5026) Reduce log spam from counter shard warnings

2012-12-04 Thread Jonathan Ellis (JIRA)

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

Jonathan Ellis commented on CASSANDRA-5026:
---

Possible fixes include: 

# forcing compaction when we see the problem
# keeping a Map of shards we've logged it for and shutting up about it after 
the first time
# only logging it during compaction instead of the read path

(1) is conceptually simple but problematic for LCS.  (2) intertwines logging w/ 
server logic at a level that makes me uncomfortable.  Which leaves (3) as the 
best option IMO.

 Reduce log spam from counter shard warnings
 ---

 Key: CASSANDRA-5026
 URL: https://issues.apache.org/jira/browse/CASSANDRA-5026
 Project: Cassandra
  Issue Type: Improvement
  Components: Core
Reporter: Jonathan Ellis
Assignee: Sylvain Lebresne
Priority: Minor
 Fix For: 1.1.8


 The invalid counter shard warning we can get after unclean shutdown in 
 periodic commitlog mode or after node movement (CASSANDRA-4071) can spam the 
 log hard since it is logged once per read until compaction merges it away.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Updated] (CASSANDRA-5000) Null pointer exception in SecondaryIndexManager.getIndexKeyFor in Cassandra 1.1.x

2012-12-04 Thread David Tootill (JIRA)

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

David Tootill updated CASSANDRA-5000:
-

Attachment: Cassandra Defect 5000 Reproduction and Background.docx
CassandraDefect5000-1.0-SNAPSHOT-2.tar.gz
CassandraDefect5000-1.0-SNAPSHOT-1.tar.gz

The two gzipped files contain a reproduction sandbox for this defect.   
Download both into the same directory, unzip and untar them, and run script 
run.sh in the CassandraDefect5000-1.0-SNAPSHOT that results.  Cassandra 1.1.x 
gets an NPE; Cassandra 1.0.x does not.

The Word document describes the schema and includes the Java source that 
created it.

 Null pointer exception in SecondaryIndexManager.getIndexKeyFor in Cassandra 
 1.1.x 
 --

 Key: CASSANDRA-5000
 URL: https://issues.apache.org/jira/browse/CASSANDRA-5000
 Project: Cassandra
  Issue Type: Bug
  Components: Core
Affects Versions: 1.1.0, 1.1.1, 1.1.2, 1.1.3, 1.1.4, 1.1.5, 1.1.6
 Environment: Linux (exact environment doesn't appear to be relevant; 
 reproduced on RedHat and Centos)
Reporter: David Tootill
Priority: Critical
 Attachments: CassandraDefect5000-1.0-SNAPSHOT-1.tar.gz, 
 CassandraDefect5000-1.0-SNAPSHOT-2.tar.gz, Cassandra Defect 5000 Reproduction 
 and Background.docx, stdlog.txt, system.log


 Cassandra 1.1.0 and following releases gets an NPE in SecondaryIndexManager 
 writing a CF with multiple secondary keys.   Problem did not occur in 1.0.x, 
 and can be resolved by downgrading the Cassandra server.   Stack trace is:
 ERROR [MutationStage:47] 2012-11-28 11:24:30,865 AbstractCassandraDaemon.java 
 (line 134) Exception in thread Thread[MutationStage:47,5,main]
 java.lang.RuntimeException: java.lang.NullPointerException
   at 
 org.apache.cassandra.service.StorageProxy$DroppableRunnable.run(StorageProxy.java:1254)
   at 
 java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
   at 
 java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
   at java.lang.Thread.run(Thread.java:722)
 Caused by: java.lang.NullPointerException
   at 
 org.apache.cassandra.db.index.SecondaryIndexManager.getIndexKeyFor(SecondaryIndexManager.java:299)
   at 
 org.apache.cassandra.db.index.SecondaryIndexManager.applyIndexUpdates(SecondaryIndexManager.java:463)
   at org.apache.cassandra.db.Table.apply(Table.java:459)
   at org.apache.cassandra.db.Table.apply(Table.java:384)
   at org.apache.cassandra.db.RowMutation.apply(RowMutation.java:294)
   at 
 org.apache.cassandra.service.StorageProxy$6.runMayThrow(StorageProxy.java:453)
   at 
 org.apache.cassandra.service.StorageProxy$DroppableRunnable.run(StorageProxy.java:1250)
 Client stack trace is:
 me.prettyprint.hector.api.exceptions.HTimedOutException: TimedOutException()
   at 
 me.prettyprint.cassandra.service.ExceptionsTranslatorImpl.translate(ExceptionsTranslatorImpl.java:35)[hector-core-1.0-5.jar:]
   at 
 me.prettyprint.cassandra.connection.HConnectionManager.operateWithFailover(HConnectionManager.java:264)[hector-core-1.0-5.jar:]
   at 
 me.prettyprint.cassandra.model.ExecutingKeyspace.doExecuteOperation(ExecutingKeyspace.java:97)[hector-core-1.0-5.jar:]
   at 
 me.prettyprint.cassandra.model.MutatorImpl.execute(MutatorImpl.java:243)[hector-core-1.0-5.jar:]
   ... 3 more

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


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

2012-12-04 Thread jbellis
Updated Branches:
  refs/heads/cassandra-1.2 6bd56cf04 - 07c6ff1b3
  refs/heads/cassandra-1.2.0 ffb2eba6c - aaf9409f5
  refs/heads/trunk a6dd34a0b - 387b10226


Merge branch 'cassandra-1.2' into trunk


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

Branch: refs/heads/trunk
Commit: 387b10226d885dde467da3697c78299287911d7e
Parents: a6dd34a 07c6ff1
Author: Jonathan Ellis jbel...@apache.org
Authored: Tue Dec 4 16:19:38 2012 -0600
Committer: Jonathan Ellis jbel...@apache.org
Committed: Tue Dec 4 16:19:38 2012 -0600

--
 CHANGES.txt |   18 ++
 1 files changed, 10 insertions(+), 8 deletions(-)
--


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



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

2012-12-04 Thread jbellis
Merge branch 'cassandra-1.2.0' into cassandra-1.2


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

Branch: refs/heads/cassandra-1.2
Commit: 07c6ff1b3a288a186cfb813d0c5d80ca14751233
Parents: 6bd56cf aaf9409
Author: Jonathan Ellis jbel...@apache.org
Authored: Tue Dec 4 16:19:31 2012 -0600
Committer: Jonathan Ellis jbel...@apache.org
Committed: Tue Dec 4 16:19:31 2012 -0600

--
 CHANGES.txt |   18 ++
 1 files changed, 10 insertions(+), 8 deletions(-)
--


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



[3/6] git commit: Merge branch 'cassandra-1.2.0' into cassandra-1.2

2012-12-04 Thread jbellis
Merge branch 'cassandra-1.2.0' into cassandra-1.2


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

Branch: refs/heads/trunk
Commit: 07c6ff1b3a288a186cfb813d0c5d80ca14751233
Parents: 6bd56cf aaf9409
Author: Jonathan Ellis jbel...@apache.org
Authored: Tue Dec 4 16:19:31 2012 -0600
Committer: Jonathan Ellis jbel...@apache.org
Committed: Tue Dec 4 16:19:31 2012 -0600

--
 CHANGES.txt |   18 ++
 1 files changed, 10 insertions(+), 8 deletions(-)
--


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



[6/6] git commit: CHANGES cleanup

2012-12-04 Thread jbellis
CHANGES cleanup


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

Branch: refs/heads/cassandra-1.2
Commit: aaf9409f5d2f1af6b6b78ef0a0b307a749be3e71
Parents: ffb2eba
Author: Jonathan Ellis jbel...@apache.org
Authored: Tue Dec 4 16:19:24 2012 -0600
Committer: Jonathan Ellis jbel...@apache.org
Committed: Tue Dec 4 16:19:24 2012 -0600

--
 CHANGES.txt |   18 ++
 1 files changed, 10 insertions(+), 8 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/aaf9409f/CHANGES.txt
--
diff --git a/CHANGES.txt b/CHANGES.txt
index 339cf1d..70e465c 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -12,19 +12,19 @@
  * Separate tracing from Log4J (CASSANDRA-4861)
  * Exclude gcable tombstones from merkle-tree computation (CASSANDRA-4905)
  * Better printing of AbstractBounds for tracing (CASSANDRA-4931)
- * Optimize mostRecentTomstone check in CC.collectAllData (CASSANDRA-4883)
+ * Optimize mostRecentTombstone check in CC.collectAllData (CASSANDRA-4883)
  * Change stream session ID to UUID to avoid collision from same node 
(CASSANDRA-4813)
  * Use Stats.db when bulk loading if present (CASSANDRA-4957)
  * Skip repair on system_trace and keyspaces with RF=1 (CASSANDRA-4956)
- * Remove select arbitrary limit (CASSANDRA-4918)
+ * (cql3) Remove arbitrary SELECT limit (CASSANDRA-4918)
  * Correctly handle prepared operation on collections (CASSANDRA-4945)
  * Fix CQL3 LIMIT (CASSANDRA-4877)
  * Fix Stress for CQL3 (CASSANDRA-4979)
  * Remove cassandra specific exceptions from JMX interface (CASSANDRA-4893)
  * (CQL3) Force using ALLOW FILTERING on potentially inefficient queries 
(CASSANDRA-4915)
- * Fix adding column when the table has collections (CASSANDRA-4982)
- * Fix allowing collections with compact storage (CASSANDRA-4990)
- * Refuse ttl/writetime function on collections (CASSANDRA-4992)
+ * (cql3) Fix adding column when the table has collections (CASSANDRA-4982)
+ * (cql3) Fix allowing collections with compact storage (CASSANDRA-4990)
+ * (cql3) Refuse ttl/writetime function on collections (CASSANDRA-4992)
  * Replace IAuthority with new IAuthorizer (CASSANDRA-4874)
  * clqsh: fix KEY pseudocolumn escaping when describing Thrift tables
in CQL3 mode (CASSANDRA-4955)
@@ -94,11 +94,12 @@ Merged from 1.1:
  * Fix binary protocol NEW_NODE event (CASSANDRA-4679)
  * Fix potential infinite loop in tombstone compaction (CASSANDRA-4781)
  * Remove system tables accounting from schema (CASSANDRA-4850)
- * Force provided columns in clustering key order in 'CLUSTERING ORDER BY' 
(CASSANDRA-4881)
+ * (cql3) Force provided columns in clustering key order in 
+   'CLUSTERING ORDER BY' (CASSANDRA-4881)
  * Fix composite index bug (CASSANDRA-4884)
  * Fix short read protection for CQL3 (CASSANDRA-4882)
  * Add tracing support to the binary protocol (CASSANDRA-4699)
- * Don't allow prepared marker inside collections (CASSANDRA-4890)
+ * (cql3) Don't allow prepared marker inside collections (CASSANDRA-4890)
  * Re-allow order by on non-selected columns (CASSANDRA-4645)
  * Bug when composite index is created in a table having collections 
(CASSANDRA-4909)
  * log index scan subject in CompositesSearcher (CASSANDRA-4904)
@@ -189,6 +190,7 @@ Merged from 1.1:
  * (cql3) Fix queries using LIMIT missing results (CASSANDRA-4579)
  * fix cross-version gossip messaging (CASSANDRA-4576)
 
+
 1.1.6
  * Wait for writes on synchronous read digest mismatch (CASSANDRA-4792)
  * fix commitlog replay for nanotime-infected sstables (CASSANDRA-4782)
@@ -664,7 +666,7 @@ Merged from 0.8:
case (CASSANDRA-3251)
  * fix thread safety issues in commitlog replay, primarily affecting
systems with many (100s) of CF definitions (CASSANDRA-3751)
- * Fix relevant tomstone ignored with super columns (CASSANDRA-3875)
+ * Fix relevant tombstone ignored with super columns (CASSANDRA-3875)
 
 
 1.0.7



[4/6] git commit: CHANGES cleanup

2012-12-04 Thread jbellis
CHANGES cleanup


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

Branch: refs/heads/trunk
Commit: aaf9409f5d2f1af6b6b78ef0a0b307a749be3e71
Parents: ffb2eba
Author: Jonathan Ellis jbel...@apache.org
Authored: Tue Dec 4 16:19:24 2012 -0600
Committer: Jonathan Ellis jbel...@apache.org
Committed: Tue Dec 4 16:19:24 2012 -0600

--
 CHANGES.txt |   18 ++
 1 files changed, 10 insertions(+), 8 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/aaf9409f/CHANGES.txt
--
diff --git a/CHANGES.txt b/CHANGES.txt
index 339cf1d..70e465c 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -12,19 +12,19 @@
  * Separate tracing from Log4J (CASSANDRA-4861)
  * Exclude gcable tombstones from merkle-tree computation (CASSANDRA-4905)
  * Better printing of AbstractBounds for tracing (CASSANDRA-4931)
- * Optimize mostRecentTomstone check in CC.collectAllData (CASSANDRA-4883)
+ * Optimize mostRecentTombstone check in CC.collectAllData (CASSANDRA-4883)
  * Change stream session ID to UUID to avoid collision from same node 
(CASSANDRA-4813)
  * Use Stats.db when bulk loading if present (CASSANDRA-4957)
  * Skip repair on system_trace and keyspaces with RF=1 (CASSANDRA-4956)
- * Remove select arbitrary limit (CASSANDRA-4918)
+ * (cql3) Remove arbitrary SELECT limit (CASSANDRA-4918)
  * Correctly handle prepared operation on collections (CASSANDRA-4945)
  * Fix CQL3 LIMIT (CASSANDRA-4877)
  * Fix Stress for CQL3 (CASSANDRA-4979)
  * Remove cassandra specific exceptions from JMX interface (CASSANDRA-4893)
  * (CQL3) Force using ALLOW FILTERING on potentially inefficient queries 
(CASSANDRA-4915)
- * Fix adding column when the table has collections (CASSANDRA-4982)
- * Fix allowing collections with compact storage (CASSANDRA-4990)
- * Refuse ttl/writetime function on collections (CASSANDRA-4992)
+ * (cql3) Fix adding column when the table has collections (CASSANDRA-4982)
+ * (cql3) Fix allowing collections with compact storage (CASSANDRA-4990)
+ * (cql3) Refuse ttl/writetime function on collections (CASSANDRA-4992)
  * Replace IAuthority with new IAuthorizer (CASSANDRA-4874)
  * clqsh: fix KEY pseudocolumn escaping when describing Thrift tables
in CQL3 mode (CASSANDRA-4955)
@@ -94,11 +94,12 @@ Merged from 1.1:
  * Fix binary protocol NEW_NODE event (CASSANDRA-4679)
  * Fix potential infinite loop in tombstone compaction (CASSANDRA-4781)
  * Remove system tables accounting from schema (CASSANDRA-4850)
- * Force provided columns in clustering key order in 'CLUSTERING ORDER BY' 
(CASSANDRA-4881)
+ * (cql3) Force provided columns in clustering key order in 
+   'CLUSTERING ORDER BY' (CASSANDRA-4881)
  * Fix composite index bug (CASSANDRA-4884)
  * Fix short read protection for CQL3 (CASSANDRA-4882)
  * Add tracing support to the binary protocol (CASSANDRA-4699)
- * Don't allow prepared marker inside collections (CASSANDRA-4890)
+ * (cql3) Don't allow prepared marker inside collections (CASSANDRA-4890)
  * Re-allow order by on non-selected columns (CASSANDRA-4645)
  * Bug when composite index is created in a table having collections 
(CASSANDRA-4909)
  * log index scan subject in CompositesSearcher (CASSANDRA-4904)
@@ -189,6 +190,7 @@ Merged from 1.1:
  * (cql3) Fix queries using LIMIT missing results (CASSANDRA-4579)
  * fix cross-version gossip messaging (CASSANDRA-4576)
 
+
 1.1.6
  * Wait for writes on synchronous read digest mismatch (CASSANDRA-4792)
  * fix commitlog replay for nanotime-infected sstables (CASSANDRA-4782)
@@ -664,7 +666,7 @@ Merged from 0.8:
case (CASSANDRA-3251)
  * fix thread safety issues in commitlog replay, primarily affecting
systems with many (100s) of CF definitions (CASSANDRA-3751)
- * Fix relevant tomstone ignored with super columns (CASSANDRA-3875)
+ * Fix relevant tombstone ignored with super columns (CASSANDRA-3875)
 
 
 1.0.7



[5/6] git commit: CHANGES cleanup

2012-12-04 Thread jbellis
CHANGES cleanup


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

Branch: refs/heads/cassandra-1.2.0
Commit: aaf9409f5d2f1af6b6b78ef0a0b307a749be3e71
Parents: ffb2eba
Author: Jonathan Ellis jbel...@apache.org
Authored: Tue Dec 4 16:19:24 2012 -0600
Committer: Jonathan Ellis jbel...@apache.org
Committed: Tue Dec 4 16:19:24 2012 -0600

--
 CHANGES.txt |   18 ++
 1 files changed, 10 insertions(+), 8 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/aaf9409f/CHANGES.txt
--
diff --git a/CHANGES.txt b/CHANGES.txt
index 339cf1d..70e465c 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -12,19 +12,19 @@
  * Separate tracing from Log4J (CASSANDRA-4861)
  * Exclude gcable tombstones from merkle-tree computation (CASSANDRA-4905)
  * Better printing of AbstractBounds for tracing (CASSANDRA-4931)
- * Optimize mostRecentTomstone check in CC.collectAllData (CASSANDRA-4883)
+ * Optimize mostRecentTombstone check in CC.collectAllData (CASSANDRA-4883)
  * Change stream session ID to UUID to avoid collision from same node 
(CASSANDRA-4813)
  * Use Stats.db when bulk loading if present (CASSANDRA-4957)
  * Skip repair on system_trace and keyspaces with RF=1 (CASSANDRA-4956)
- * Remove select arbitrary limit (CASSANDRA-4918)
+ * (cql3) Remove arbitrary SELECT limit (CASSANDRA-4918)
  * Correctly handle prepared operation on collections (CASSANDRA-4945)
  * Fix CQL3 LIMIT (CASSANDRA-4877)
  * Fix Stress for CQL3 (CASSANDRA-4979)
  * Remove cassandra specific exceptions from JMX interface (CASSANDRA-4893)
  * (CQL3) Force using ALLOW FILTERING on potentially inefficient queries 
(CASSANDRA-4915)
- * Fix adding column when the table has collections (CASSANDRA-4982)
- * Fix allowing collections with compact storage (CASSANDRA-4990)
- * Refuse ttl/writetime function on collections (CASSANDRA-4992)
+ * (cql3) Fix adding column when the table has collections (CASSANDRA-4982)
+ * (cql3) Fix allowing collections with compact storage (CASSANDRA-4990)
+ * (cql3) Refuse ttl/writetime function on collections (CASSANDRA-4992)
  * Replace IAuthority with new IAuthorizer (CASSANDRA-4874)
  * clqsh: fix KEY pseudocolumn escaping when describing Thrift tables
in CQL3 mode (CASSANDRA-4955)
@@ -94,11 +94,12 @@ Merged from 1.1:
  * Fix binary protocol NEW_NODE event (CASSANDRA-4679)
  * Fix potential infinite loop in tombstone compaction (CASSANDRA-4781)
  * Remove system tables accounting from schema (CASSANDRA-4850)
- * Force provided columns in clustering key order in 'CLUSTERING ORDER BY' 
(CASSANDRA-4881)
+ * (cql3) Force provided columns in clustering key order in 
+   'CLUSTERING ORDER BY' (CASSANDRA-4881)
  * Fix composite index bug (CASSANDRA-4884)
  * Fix short read protection for CQL3 (CASSANDRA-4882)
  * Add tracing support to the binary protocol (CASSANDRA-4699)
- * Don't allow prepared marker inside collections (CASSANDRA-4890)
+ * (cql3) Don't allow prepared marker inside collections (CASSANDRA-4890)
  * Re-allow order by on non-selected columns (CASSANDRA-4645)
  * Bug when composite index is created in a table having collections 
(CASSANDRA-4909)
  * log index scan subject in CompositesSearcher (CASSANDRA-4904)
@@ -189,6 +190,7 @@ Merged from 1.1:
  * (cql3) Fix queries using LIMIT missing results (CASSANDRA-4579)
  * fix cross-version gossip messaging (CASSANDRA-4576)
 
+
 1.1.6
  * Wait for writes on synchronous read digest mismatch (CASSANDRA-4792)
  * fix commitlog replay for nanotime-infected sstables (CASSANDRA-4782)
@@ -664,7 +666,7 @@ Merged from 0.8:
case (CASSANDRA-3251)
  * fix thread safety issues in commitlog replay, primarily affecting
systems with many (100s) of CF definitions (CASSANDRA-3751)
- * Fix relevant tomstone ignored with super columns (CASSANDRA-3875)
+ * Fix relevant tombstone ignored with super columns (CASSANDRA-3875)
 
 
 1.0.7



[jira] [Commented] (CASSANDRA-4718) More-efficient ExecutorService for improved throughput

2012-12-04 Thread Jonathan Ellis (JIRA)

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

Jonathan Ellis commented on CASSANDRA-4718:
---

I posted a quick translation of LBQ to LTQ at 
https://github.com/jbellis/cassandra/branches/ltq.

 More-efficient ExecutorService for improved throughput
 --

 Key: CASSANDRA-4718
 URL: https://issues.apache.org/jira/browse/CASSANDRA-4718
 Project: Cassandra
  Issue Type: Improvement
Reporter: Jonathan Ellis
Priority: Minor

 Currently all our execution stages dequeue tasks one at a time.  This can 
 result in contention between producers and consumers (although we do our best 
 to minimize this by using LinkedBlockingQueue).
 One approach to mitigating this would be to make consumer threads do more 
 work in bulk instead of just one task per dequeue.  (Producer threads tend 
 to be single-task oriented by nature, so I don't see an equivalent 
 opportunity there.)
 BlockingQueue has a drainTo(collection, int) method that would be perfect for 
 this.  However, no ExecutorService in the jdk supports using drainTo, nor 
 could I google one.
 What I would like to do here is create just such a beast and wire it into (at 
 least) the write and read stages.  (Other possible candidates for such an 
 optimization, such as the CommitLog and OutboundTCPConnection, are not 
 ExecutorService-based and will need to be one-offs.)
 AbstractExecutorService may be useful.  The implementations of 
 ICommitLogExecutorService may also be useful. (Despite the name these are not 
 actual ExecutorServices, although they share the most important properties of 
 one.)

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Updated] (CASSANDRA-5000) Null pointer exception in SecondaryIndexManager.getIndexKeyFor in Cassandra 1.1.x

2012-12-04 Thread Jonathan Ellis (JIRA)

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

Jonathan Ellis updated CASSANDRA-5000:
--

 Reviewer: jbellis
 Priority: Major  (was: Critical)
Affects Version/s: (was: 1.1.6)
   (was: 1.1.5)
   (was: 1.1.4)
   (was: 1.1.3)
   (was: 1.1.2)
   (was: 1.1.1)
Fix Version/s: 1.1.8
 Assignee: Yuki Morishita

Thanks, David.

 Null pointer exception in SecondaryIndexManager.getIndexKeyFor in Cassandra 
 1.1.x 
 --

 Key: CASSANDRA-5000
 URL: https://issues.apache.org/jira/browse/CASSANDRA-5000
 Project: Cassandra
  Issue Type: Bug
  Components: Core
Affects Versions: 1.1.0
 Environment: Linux (exact environment doesn't appear to be relevant; 
 reproduced on RedHat and Centos)
Reporter: David Tootill
Assignee: Yuki Morishita
 Fix For: 1.1.8

 Attachments: CassandraDefect5000-1.0-SNAPSHOT-1.tar.gz, 
 CassandraDefect5000-1.0-SNAPSHOT-2.tar.gz, Cassandra Defect 5000 Reproduction 
 and Background.docx, stdlog.txt, system.log


 Cassandra 1.1.0 and following releases gets an NPE in SecondaryIndexManager 
 writing a CF with multiple secondary keys.   Problem did not occur in 1.0.x, 
 and can be resolved by downgrading the Cassandra server.   Stack trace is:
 ERROR [MutationStage:47] 2012-11-28 11:24:30,865 AbstractCassandraDaemon.java 
 (line 134) Exception in thread Thread[MutationStage:47,5,main]
 java.lang.RuntimeException: java.lang.NullPointerException
   at 
 org.apache.cassandra.service.StorageProxy$DroppableRunnable.run(StorageProxy.java:1254)
   at 
 java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
   at 
 java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
   at java.lang.Thread.run(Thread.java:722)
 Caused by: java.lang.NullPointerException
   at 
 org.apache.cassandra.db.index.SecondaryIndexManager.getIndexKeyFor(SecondaryIndexManager.java:299)
   at 
 org.apache.cassandra.db.index.SecondaryIndexManager.applyIndexUpdates(SecondaryIndexManager.java:463)
   at org.apache.cassandra.db.Table.apply(Table.java:459)
   at org.apache.cassandra.db.Table.apply(Table.java:384)
   at org.apache.cassandra.db.RowMutation.apply(RowMutation.java:294)
   at 
 org.apache.cassandra.service.StorageProxy$6.runMayThrow(StorageProxy.java:453)
   at 
 org.apache.cassandra.service.StorageProxy$DroppableRunnable.run(StorageProxy.java:1250)
 Client stack trace is:
 me.prettyprint.hector.api.exceptions.HTimedOutException: TimedOutException()
   at 
 me.prettyprint.cassandra.service.ExceptionsTranslatorImpl.translate(ExceptionsTranslatorImpl.java:35)[hector-core-1.0-5.jar:]
   at 
 me.prettyprint.cassandra.connection.HConnectionManager.operateWithFailover(HConnectionManager.java:264)[hector-core-1.0-5.jar:]
   at 
 me.prettyprint.cassandra.model.ExecutingKeyspace.doExecuteOperation(ExecutingKeyspace.java:97)[hector-core-1.0-5.jar:]
   at 
 me.prettyprint.cassandra.model.MutatorImpl.execute(MutatorImpl.java:243)[hector-core-1.0-5.jar:]
   ... 3 more

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Commented] (CASSANDRA-4718) More-efficient ExecutorService for improved throughput

2012-12-04 Thread Brandon Williams (JIRA)

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

Brandon Williams commented on CASSANDRA-4718:
-

Performance tests conclude that LTQ is significantly slower for both reads and 
writes :(

 More-efficient ExecutorService for improved throughput
 --

 Key: CASSANDRA-4718
 URL: https://issues.apache.org/jira/browse/CASSANDRA-4718
 Project: Cassandra
  Issue Type: Improvement
Reporter: Jonathan Ellis
Priority: Minor

 Currently all our execution stages dequeue tasks one at a time.  This can 
 result in contention between producers and consumers (although we do our best 
 to minimize this by using LinkedBlockingQueue).
 One approach to mitigating this would be to make consumer threads do more 
 work in bulk instead of just one task per dequeue.  (Producer threads tend 
 to be single-task oriented by nature, so I don't see an equivalent 
 opportunity there.)
 BlockingQueue has a drainTo(collection, int) method that would be perfect for 
 this.  However, no ExecutorService in the jdk supports using drainTo, nor 
 could I google one.
 What I would like to do here is create just such a beast and wire it into (at 
 least) the write and read stages.  (Other possible candidates for such an 
 optimization, such as the CommitLog and OutboundTCPConnection, are not 
 ExecutorService-based and will need to be one-offs.)
 AbstractExecutorService may be useful.  The implementations of 
 ICommitLogExecutorService may also be useful. (Despite the name these are not 
 actual ExecutorServices, although they share the most important properties of 
 one.)

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Commented] (CASSANDRA-5025) Schema push/pull race

2012-12-04 Thread Chris Herron (JIRA)

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

Chris Herron commented on CASSANDRA-5025:
-

For patch 5025.txt:

A single schema migration will result in N (num nodes) gossips of the new 
schema version (as before). Through 
MigrationManager.onChange()-rectifySchema(), those will each result in a 
delayed comparison of value 'theirVersion', but that value is now one minute 
old.

Further, if some new schema migration happens to be underway, the same effect 
of redundant repeat RowMutations will occur.

Schema migrations tend to happen in bursts - so this patch seems like it might 
reduce the problem but not eliminate it.

Would it not be better to have DefsTable.mergeSchema call 
Schema.instance.updateVersion instead of 
Schema.instance.updateVersionAndAnnounce and then deal with temporarily 
unavailable nodes by doing a MigrationManager.passiveAnnounce(version) if/when 
we see them come back online?

 Schema push/pull race
 -

 Key: CASSANDRA-5025
 URL: https://issues.apache.org/jira/browse/CASSANDRA-5025
 Project: Cassandra
  Issue Type: Bug
  Components: Core
Affects Versions: 1.1.0
Reporter: Jonathan Ellis
Assignee: Jonathan Ellis
Priority: Minor
 Fix For: 1.1.8

 Attachments: 5025.txt


 When a schema change is made, the coordinator pushes the delta to the other 
 nodes in the cluster.  This is more efficient than sending the entire schema. 
  But the coordinator also announces the new schema version, so the other 
 nodes' reception of the new version races with processing the delta, and 
 usually seeing the new schema wins.  So the other nodes also issue a pull to 
 the coordinator for the entire schema.
 Thus, schema changes tend to become O(n) in the number of KS and CF present.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Commented] (CASSANDRA-5025) Schema push/pull race

2012-12-04 Thread Jonathan Ellis (JIRA)

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

Jonathan Ellis commented on CASSANDRA-5025:
---

I really don't want to reinvent HH poorly for schema migrations.  Maybe Pavel 
has a better suggestion.

 Schema push/pull race
 -

 Key: CASSANDRA-5025
 URL: https://issues.apache.org/jira/browse/CASSANDRA-5025
 Project: Cassandra
  Issue Type: Bug
  Components: Core
Affects Versions: 1.1.0
Reporter: Jonathan Ellis
Assignee: Jonathan Ellis
Priority: Minor
 Fix For: 1.1.8

 Attachments: 5025.txt


 When a schema change is made, the coordinator pushes the delta to the other 
 nodes in the cluster.  This is more efficient than sending the entire schema. 
  But the coordinator also announces the new schema version, so the other 
 nodes' reception of the new version races with processing the delta, and 
 usually seeing the new schema wins.  So the other nodes also issue a pull to 
 the coordinator for the entire schema.
 Thus, schema changes tend to become O(n) in the number of KS and CF present.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Updated] (CASSANDRA-5017) Preparing UPDATE queries with collections returns suboptimal metadata

2012-12-04 Thread Aleksey Yeschenko (JIRA)

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

Aleksey Yeschenko updated CASSANDRA-5017:
-

Reviewer: iamaleksey

 Preparing UPDATE queries with collections returns suboptimal metadata
 -

 Key: CASSANDRA-5017
 URL: https://issues.apache.org/jira/browse/CASSANDRA-5017
 Project: Cassandra
  Issue Type: Bug
Affects Versions: 1.2.0 beta 2
Reporter: Aleksey Yeschenko
Assignee: Sylvain Lebresne
Priority: Minor
 Fix For: 1.2.0 rc1

 Attachments: 0001-Return-correct-metadata-when-preparing-map.txt, 
 0002-Fix-prepared-list-index-and-using-integer-for-map-keys.txt, 
 0003-Fix-handling-of-prepared-marker-for-deletes.txt


 CQL3, binary protocol.
 collections (id int primary key, amap mapint, varchar);
 preparing UPDATE test.collections SET amap[?] = ? WHERE id = ? returns the 
 following metadata:
 [{column,test,collections,amap,
{map,int,varchar}},
{column,test,collections,amap,
{map,int,varchar}},
{column,test,collections,id,int}]
 Ideally it should return [int, varchar, int] types. Less ideally [{map, int, 
 varchar}, int] and expect an encoded map with a single key-value pair. But 
 certainly not what it currently returns.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Updated] (CASSANDRA-5016) Can't prepare an INSERT query

2012-12-04 Thread Aleksey Yeschenko (JIRA)

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

Aleksey Yeschenko updated CASSANDRA-5016:
-

Reviewer: iamaleksey

 Can't prepare an INSERT query
 -

 Key: CASSANDRA-5016
 URL: https://issues.apache.org/jira/browse/CASSANDRA-5016
 Project: Cassandra
  Issue Type: Bug
Affects Versions: 1.2.0 beta 2
Reporter: Aleksey Yeschenko
Assignee: Sylvain Lebresne
 Fix For: 1.2.0 rc1

 Attachments: 5016.patch


 Preparing an INSERT query fails with CQL3+binary protocol (maybe thrift as 
 well, haven't checked). Preparing an equivalent UPDATE query works just fine.
 demo (id int primary key, value text)
 preparing INSERT INTO test.demo (id, value) VALUES (?, ?) - 8704, Invalid 
 definition for id, not a collection type
 prparing UPDATE test.demo SET value = ? WHERE id = ? - ok

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Updated] (CASSANDRA-5022) Can't prepare an UPDATE query with a counter column (CQL3)

2012-12-04 Thread Aleksey Yeschenko (JIRA)

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

Aleksey Yeschenko updated CASSANDRA-5022:
-

Reviewer: iamaleksey

 Can't prepare an UPDATE query with a counter column (CQL3)
 --

 Key: CASSANDRA-5022
 URL: https://issues.apache.org/jira/browse/CASSANDRA-5022
 Project: Cassandra
  Issue Type: Bug
Affects Versions: 1.2.0 beta 2
Reporter: Aleksey Yeschenko
Assignee: Sylvain Lebresne
Priority: Minor
 Fix For: 1.2.0 rc1

 Attachments: 5002.txt


 CQL3, binary protocol:
 demo(id int primary key, counter counter)
 Preparing UPDATE test.counters SET counter = counter + ? WHERE id = ? 
 yields 8704, Invalid operation for commutative columnfamily counters error.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Commented] (CASSANDRA-5016) Can't prepare an INSERT query

2012-12-04 Thread Aleksey Yeschenko (JIRA)

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

Aleksey Yeschenko commented on CASSANDRA-5016:
--

+1

 Can't prepare an INSERT query
 -

 Key: CASSANDRA-5016
 URL: https://issues.apache.org/jira/browse/CASSANDRA-5016
 Project: Cassandra
  Issue Type: Bug
Affects Versions: 1.2.0 beta 2
Reporter: Aleksey Yeschenko
Assignee: Sylvain Lebresne
 Fix For: 1.2.0 rc1

 Attachments: 5016.patch


 Preparing an INSERT query fails with CQL3+binary protocol (maybe thrift as 
 well, haven't checked). Preparing an equivalent UPDATE query works just fine.
 demo (id int primary key, value text)
 preparing INSERT INTO test.demo (id, value) VALUES (?, ?) - 8704, Invalid 
 definition for id, not a collection type
 prparing UPDATE test.demo SET value = ? WHERE id = ? - ok

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Commented] (CASSANDRA-5022) Can't prepare an UPDATE query with a counter column (CQL3)

2012-12-04 Thread Aleksey Yeschenko (JIRA)

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

Aleksey Yeschenko commented on CASSANDRA-5022:
--

+1

 Can't prepare an UPDATE query with a counter column (CQL3)
 --

 Key: CASSANDRA-5022
 URL: https://issues.apache.org/jira/browse/CASSANDRA-5022
 Project: Cassandra
  Issue Type: Bug
Affects Versions: 1.2.0 beta 2
Reporter: Aleksey Yeschenko
Assignee: Sylvain Lebresne
Priority: Minor
 Fix For: 1.2.0 rc1

 Attachments: 5002.txt


 CQL3, binary protocol:
 demo(id int primary key, counter counter)
 Preparing UPDATE test.counters SET counter = counter + ? WHERE id = ? 
 yields 8704, Invalid operation for commutative columnfamily counters error.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Created] (CASSANDRA-5027) rename rpc_timeout options to request_timeout

2012-12-04 Thread Jonathan Ellis (JIRA)
Jonathan Ellis created CASSANDRA-5027:
-

 Summary: rename rpc_timeout options to request_timeout
 Key: CASSANDRA-5027
 URL: https://issues.apache.org/jira/browse/CASSANDRA-5027
 Project: Cassandra
  Issue Type: Improvement
  Components: Core
Affects Versions: 1.2.0 beta 1
Reporter: Jonathan Ellis
Assignee: Jonathan Ellis
Priority: Minor
 Fix For: 1.2.0 rc1


binary protocol is not rpc based but timeouts will apply to both that and 
thrift.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Updated] (CASSANDRA-5027) rename rpc_timeout options to request_timeout

2012-12-04 Thread Jonathan Ellis (JIRA)

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

Jonathan Ellis updated CASSANDRA-5027:
--

Attachment: 5027.txt

 rename rpc_timeout options to request_timeout
 -

 Key: CASSANDRA-5027
 URL: https://issues.apache.org/jira/browse/CASSANDRA-5027
 Project: Cassandra
  Issue Type: Improvement
  Components: Core
Affects Versions: 1.2.0 beta 1
Reporter: Jonathan Ellis
Assignee: Jonathan Ellis
Priority: Minor
 Fix For: 1.2.0 rc1

 Attachments: 5027.txt


 binary protocol is not rpc based but timeouts will apply to both that and 
 thrift.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Commented] (CASSANDRA-5017) Preparing UPDATE queries with collections returns suboptimal metadata

2012-12-04 Thread Aleksey Yeschenko (JIRA)

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

Aleksey Yeschenko commented on CASSANDRA-5017:
--

CASSANDRA-5018 in indeed no longer an issue. Also I do get the right columns in 
my metadata now:

{ok, R} = seestar_client:prepare(Pid, update test.collections set amap[?] = ? 
WHERE id = ?).
{ok,{prepared,21,71,235,65,143,167,200,103,53,75,239,64,
92,235,243,145,
  [{column,test,collections,key(amap),int},
   {column,test,collections,value(amap),
   varchar},
   {column,test,collections,id,int}]}}

However, when I try to execute the query (or just run it in cqlsh), I get Bad 
Request: List operations are only supported on List typed columns, but 
org.apache.cassandra.db.marshal.MapType(org.apache.cassandra.db.marshal.Int32Type,org.apache.cassandra.db.marshal.UTF8Type)
 given error.

 Preparing UPDATE queries with collections returns suboptimal metadata
 -

 Key: CASSANDRA-5017
 URL: https://issues.apache.org/jira/browse/CASSANDRA-5017
 Project: Cassandra
  Issue Type: Bug
Affects Versions: 1.2.0 beta 2
Reporter: Aleksey Yeschenko
Assignee: Sylvain Lebresne
Priority: Minor
 Fix For: 1.2.0 rc1

 Attachments: 0001-Return-correct-metadata-when-preparing-map.txt, 
 0002-Fix-prepared-list-index-and-using-integer-for-map-keys.txt, 
 0003-Fix-handling-of-prepared-marker-for-deletes.txt


 CQL3, binary protocol.
 collections (id int primary key, amap mapint, varchar);
 preparing UPDATE test.collections SET amap[?] = ? WHERE id = ? returns the 
 following metadata:
 [{column,test,collections,amap,
{map,int,varchar}},
{column,test,collections,amap,
{map,int,varchar}},
{column,test,collections,id,int}]
 Ideally it should return [int, varchar, int] types. Less ideally [{map, int, 
 varchar}, int] and expect an encoded map with a single key-value pair. But 
 certainly not what it currently returns.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Commented] (CASSANDRA-5027) rename rpc_timeout options to request_timeout

2012-12-04 Thread Brandon Williams (JIRA)

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

Brandon Williams commented on CASSANDRA-5027:
-

+1

 rename rpc_timeout options to request_timeout
 -

 Key: CASSANDRA-5027
 URL: https://issues.apache.org/jira/browse/CASSANDRA-5027
 Project: Cassandra
  Issue Type: Improvement
  Components: Core
Affects Versions: 1.2.0 beta 1
Reporter: Jonathan Ellis
Assignee: Jonathan Ellis
Priority: Minor
 Fix For: 1.2.0 rc1

 Attachments: 5027.txt


 binary protocol is not rpc based but timeouts will apply to both that and 
 thrift.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Updated] (CASSANDRA-5028) Native protocol prepared INSERT broken

2012-12-04 Thread Jonathan Rudenberg (JIRA)

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

Jonathan Rudenberg updated CASSANDRA-5028:
--

Description: 
b4f2f201 breaks prepared inserts via the native protocol (a regression from 
1.2.0-beta2).


{noformat}
cassandra.Exec(INSERT INTO tests (id, content) VALUES (?, ?), 1, test)

Error: Invalid definition for id, not a collection type
{noformat}

{noformat}
cqlsh CREATE KEYSPACE test WITH replication = { 'class' : 'SimpleStrategy', 
'replication_factor' : 1 };
cqlsh USE test;
cqlsh:test CREATE TABLE tests (id bigint PRIMARY KEY, content text);
{noformat}


Repro code: https://gist.github.com/edafe5383c81c22aed5a

  was:
b4f2f201 breaks prepared inserts via the native protocol (a regression from 
1.2.0-beta2).

{noformat}
cassandra.Exec(INSERT INTO tests (id, content) VALUES (?, ?), 1, test)

Error: Invalid definition for id, not a collection type
{noformat}

{noformat}
cqlsh CREATE KEYSPACE test WITH replication = { 'class' : 'SimpleStrategy', 
'replication_factor' : 1 };
cqlsh USE test;
cqlsh:test CREATE TABLE tests (id bigint PRIMARY KEY, content text);
{noformat}


Repro code: https://gist.github.com/edafe5383c81c22aed5a


 Native protocol prepared INSERT broken
 --

 Key: CASSANDRA-5028
 URL: https://issues.apache.org/jira/browse/CASSANDRA-5028
 Project: Cassandra
  Issue Type: Bug
Affects Versions: 1.2.0 beta 3
 Environment: Cassandra 1.2.0-beta3-SNAPSHOT (b86f75d)
Reporter: Jonathan Rudenberg

 b4f2f201 breaks prepared inserts via the native protocol (a regression from 
 1.2.0-beta2).
 {noformat}
 cassandra.Exec(INSERT INTO tests (id, content) VALUES (?, ?), 1, test)
 Error: Invalid definition for id, not a collection type
 {noformat}
 {noformat}
 cqlsh CREATE KEYSPACE test WITH replication = { 'class' : 'SimpleStrategy', 
 'replication_factor' : 1 };
 cqlsh USE test;
 cqlsh:test CREATE TABLE tests (id bigint PRIMARY KEY, content text);
 {noformat}
 Repro code: https://gist.github.com/edafe5383c81c22aed5a

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Created] (CASSANDRA-5028) Native protocol prepared INSERT broken

2012-12-04 Thread Jonathan Rudenberg (JIRA)
Jonathan Rudenberg created CASSANDRA-5028:
-

 Summary: Native protocol prepared INSERT broken
 Key: CASSANDRA-5028
 URL: https://issues.apache.org/jira/browse/CASSANDRA-5028
 Project: Cassandra
  Issue Type: Bug
Affects Versions: 1.2.0 beta 3
 Environment: Cassandra 1.2.0-beta3-SNAPSHOT (b86f75d)
Reporter: Jonathan Rudenberg


b4f2f201 breaks prepared inserts via the native protocol (a regression from 
1.2.0-beta2).

{noformat}
cassandra.Exec(INSERT INTO tests (id, content) VALUES (?, ?), 1, test)

Error: Invalid definition for id, not a collection type
{noformat}

{noformat}
cqlsh CREATE KEYSPACE test WITH replication = { 'class' : 'SimpleStrategy', 
'replication_factor' : 1 };
cqlsh USE test;
cqlsh:test CREATE TABLE tests (id bigint PRIMARY KEY, content text);
{noformat}


Repro code: https://gist.github.com/edafe5383c81c22aed5a

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Assigned] (CASSANDRA-5028) Native protocol prepared INSERT broken

2012-12-04 Thread Brandon Williams (JIRA)

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

Brandon Williams reassigned CASSANDRA-5028:
---

Assignee: Sylvain Lebresne

 Native protocol prepared INSERT broken
 --

 Key: CASSANDRA-5028
 URL: https://issues.apache.org/jira/browse/CASSANDRA-5028
 Project: Cassandra
  Issue Type: Bug
Affects Versions: 1.2.0 beta 3
 Environment: Cassandra 1.2.0-beta3-SNAPSHOT (b86f75d)
Reporter: Jonathan Rudenberg
Assignee: Sylvain Lebresne

 b4f2f201 breaks prepared inserts via the native protocol (a regression from 
 1.2.0-beta2).
 {noformat}
 cassandra.Exec(INSERT INTO tests (id, content) VALUES (?, ?), 1, test)
 Error: Invalid definition for id, not a collection type
 {noformat}
 {noformat}
 cqlsh CREATE KEYSPACE test WITH replication = { 'class' : 'SimpleStrategy', 
 'replication_factor' : 1 };
 cqlsh USE test;
 cqlsh:test CREATE TABLE tests (id bigint PRIMARY KEY, content text);
 {noformat}
 Repro code: https://gist.github.com/edafe5383c81c22aed5a

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Updated] (CASSANDRA-5028) Native protocol prepared INSERT broken

2012-12-04 Thread Brandon Williams (JIRA)

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

Brandon Williams updated CASSANDRA-5028:


Fix Version/s: 1.2.0 rc1

 Native protocol prepared INSERT broken
 --

 Key: CASSANDRA-5028
 URL: https://issues.apache.org/jira/browse/CASSANDRA-5028
 Project: Cassandra
  Issue Type: Bug
Affects Versions: 1.2.0 beta 3
 Environment: Cassandra 1.2.0-beta3-SNAPSHOT (b86f75d)
Reporter: Jonathan Rudenberg
Assignee: Sylvain Lebresne
 Fix For: 1.2.0 rc1


 b4f2f201 breaks prepared inserts via the native protocol (a regression from 
 1.2.0-beta2).
 {noformat}
 cassandra.Exec(INSERT INTO tests (id, content) VALUES (?, ?), 1, test)
 Error: Invalid definition for id, not a collection type
 {noformat}
 {noformat}
 cqlsh CREATE KEYSPACE test WITH replication = { 'class' : 'SimpleStrategy', 
 'replication_factor' : 1 };
 cqlsh USE test;
 cqlsh:test CREATE TABLE tests (id bigint PRIMARY KEY, content text);
 {noformat}
 Repro code: https://gist.github.com/edafe5383c81c22aed5a

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[6/6] git commit: rename rpc_timeout settings to request_timeout patch by jbellis; reviewed by brandonwilliams for CASSANDRA-5027

2012-12-04 Thread jbellis
rename rpc_timeout settings to request_timeout
patch by jbellis; reviewed by brandonwilliams for CASSANDRA-5027


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

Branch: refs/heads/cassandra-1.2
Commit: 8a96ec702168430eea7400d41fc476b93c7e7404
Parents: aaf9409
Author: Jonathan Ellis jbel...@apache.org
Authored: Tue Dec 4 21:44:55 2012 -0600
Committer: Jonathan Ellis jbel...@apache.org
Committed: Tue Dec 4 21:45:15 2012 -0600

--
 CHANGES.txt|4 +++
 conf/cassandra.yaml|   15 +--
 src/java/org/apache/cassandra/config/Config.java   |   10 +++---
 .../cassandra/config/DatabaseDescriptor.java   |   20 +++---
 .../org/apache/cassandra/net/MessagingService.java |2 +-
 5 files changed, 27 insertions(+), 24 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/8a96ec70/CHANGES.txt
--
diff --git a/CHANGES.txt b/CHANGES.txt
index 70e465c..a08e78a 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -1,3 +1,7 @@
+1.2-rc1
+ * rename rpc_timeout settings to request_timeout (CASSANDRA-5027)
+
+
 1.2-beta3
  * make consistency level configurable in cqlsh (CASSANDRA-4829)
  * fix cqlsh rendering of blob fields (CASSANDRA-4970)

http://git-wip-us.apache.org/repos/asf/cassandra/blob/8a96ec70/conf/cassandra.yaml
--
diff --git a/conf/cassandra.yaml b/conf/cassandra.yaml
index 9594672..f2be64a 100644
--- a/conf/cassandra.yaml
+++ b/conf/cassandra.yaml
@@ -449,18 +449,17 @@ compaction_preheat_key_cache: true
 # stream_throughput_outbound_megabits_per_sec: 400
 
 # How long the coordinator should wait for read operations to complete
-read_rpc_timeout_in_ms: 1
+read_request_timeout_in_ms: 1
 # How long the coordinator should wait for seq or index scans to complete
-range_rpc_timeout_in_ms: 1
+range_request_timeout_in_ms: 1
 # How long the coordinator should wait for writes to complete
-write_rpc_timeout_in_ms: 1
+write_request_timeout_in_ms: 1
 # How long the coordinator should wait for truncates to complete
-# (This can be much longer, because we need to flush all CFs
-# to make sure we can clear out anythink in the commitlog that could
-# cause truncated data to reappear.)
-truncate_rpc_timeout_in_ms: 30
+# (This can be much longer, because unless auto_snapshot is disabled
+# we need to flush first so we can snapshot before removing the data.)
+truncate_request_timeout_in_ms: 6
 # The default timeout for other, miscellaneous operations
-rpc_timeout_in_ms: 1
+request_timeout_in_ms: 1
 
 # Enable operation timeout information exchange between nodes to accurately
 # measure request timeouts, If disabled cassandra will assuming the request

http://git-wip-us.apache.org/repos/asf/cassandra/blob/8a96ec70/src/java/org/apache/cassandra/config/Config.java
--
diff --git a/src/java/org/apache/cassandra/config/Config.java 
b/src/java/org/apache/cassandra/config/Config.java
index 3e6abe1..fa8f273 100644
--- a/src/java/org/apache/cassandra/config/Config.java
+++ b/src/java/org/apache/cassandra/config/Config.java
@@ -49,15 +49,15 @@ public class Config
 public String initial_token;
 public Integer num_tokens = 1;
 
-public volatile Long rpc_timeout_in_ms = new Long(1);
+public volatile Long request_timeout_in_ms = new Long(1);
 
-public Long read_rpc_timeout_in_ms = new Long(1);
+public Long read_request_timeout_in_ms = new Long(1);
 
-public Long range_rpc_timeout_in_ms = new Long(1);
+public Long range_request_timeout_in_ms = new Long(1);
 
-public Long write_rpc_timeout_in_ms = new Long(1);
+public Long write_request_timeout_in_ms = new Long(1);
 
-public Long truncate_rpc_timeout_in_ms = new Long(30);
+public Long truncate_request_timeout_in_ms = new Long(6);
 
 public Integer streaming_socket_timeout_in_ms = new Integer(0);
 

http://git-wip-us.apache.org/repos/asf/cassandra/blob/8a96ec70/src/java/org/apache/cassandra/config/DatabaseDescriptor.java
--
diff --git a/src/java/org/apache/cassandra/config/DatabaseDescriptor.java 
b/src/java/org/apache/cassandra/config/DatabaseDescriptor.java
index 1451e61..641ac64 100644
--- a/src/java/org/apache/cassandra/config/DatabaseDescriptor.java
+++ b/src/java/org/apache/cassandra/config/DatabaseDescriptor.java
@@ -735,52 +735,52 @@ public 

[4/6] git commit: rename rpc_timeout settings to request_timeout patch by jbellis; reviewed by brandonwilliams for CASSANDRA-5027

2012-12-04 Thread jbellis
rename rpc_timeout settings to request_timeout
patch by jbellis; reviewed by brandonwilliams for CASSANDRA-5027


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

Branch: refs/heads/trunk
Commit: 8a96ec702168430eea7400d41fc476b93c7e7404
Parents: aaf9409
Author: Jonathan Ellis jbel...@apache.org
Authored: Tue Dec 4 21:44:55 2012 -0600
Committer: Jonathan Ellis jbel...@apache.org
Committed: Tue Dec 4 21:45:15 2012 -0600

--
 CHANGES.txt|4 +++
 conf/cassandra.yaml|   15 +--
 src/java/org/apache/cassandra/config/Config.java   |   10 +++---
 .../cassandra/config/DatabaseDescriptor.java   |   20 +++---
 .../org/apache/cassandra/net/MessagingService.java |2 +-
 5 files changed, 27 insertions(+), 24 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/8a96ec70/CHANGES.txt
--
diff --git a/CHANGES.txt b/CHANGES.txt
index 70e465c..a08e78a 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -1,3 +1,7 @@
+1.2-rc1
+ * rename rpc_timeout settings to request_timeout (CASSANDRA-5027)
+
+
 1.2-beta3
  * make consistency level configurable in cqlsh (CASSANDRA-4829)
  * fix cqlsh rendering of blob fields (CASSANDRA-4970)

http://git-wip-us.apache.org/repos/asf/cassandra/blob/8a96ec70/conf/cassandra.yaml
--
diff --git a/conf/cassandra.yaml b/conf/cassandra.yaml
index 9594672..f2be64a 100644
--- a/conf/cassandra.yaml
+++ b/conf/cassandra.yaml
@@ -449,18 +449,17 @@ compaction_preheat_key_cache: true
 # stream_throughput_outbound_megabits_per_sec: 400
 
 # How long the coordinator should wait for read operations to complete
-read_rpc_timeout_in_ms: 1
+read_request_timeout_in_ms: 1
 # How long the coordinator should wait for seq or index scans to complete
-range_rpc_timeout_in_ms: 1
+range_request_timeout_in_ms: 1
 # How long the coordinator should wait for writes to complete
-write_rpc_timeout_in_ms: 1
+write_request_timeout_in_ms: 1
 # How long the coordinator should wait for truncates to complete
-# (This can be much longer, because we need to flush all CFs
-# to make sure we can clear out anythink in the commitlog that could
-# cause truncated data to reappear.)
-truncate_rpc_timeout_in_ms: 30
+# (This can be much longer, because unless auto_snapshot is disabled
+# we need to flush first so we can snapshot before removing the data.)
+truncate_request_timeout_in_ms: 6
 # The default timeout for other, miscellaneous operations
-rpc_timeout_in_ms: 1
+request_timeout_in_ms: 1
 
 # Enable operation timeout information exchange between nodes to accurately
 # measure request timeouts, If disabled cassandra will assuming the request

http://git-wip-us.apache.org/repos/asf/cassandra/blob/8a96ec70/src/java/org/apache/cassandra/config/Config.java
--
diff --git a/src/java/org/apache/cassandra/config/Config.java 
b/src/java/org/apache/cassandra/config/Config.java
index 3e6abe1..fa8f273 100644
--- a/src/java/org/apache/cassandra/config/Config.java
+++ b/src/java/org/apache/cassandra/config/Config.java
@@ -49,15 +49,15 @@ public class Config
 public String initial_token;
 public Integer num_tokens = 1;
 
-public volatile Long rpc_timeout_in_ms = new Long(1);
+public volatile Long request_timeout_in_ms = new Long(1);
 
-public Long read_rpc_timeout_in_ms = new Long(1);
+public Long read_request_timeout_in_ms = new Long(1);
 
-public Long range_rpc_timeout_in_ms = new Long(1);
+public Long range_request_timeout_in_ms = new Long(1);
 
-public Long write_rpc_timeout_in_ms = new Long(1);
+public Long write_request_timeout_in_ms = new Long(1);
 
-public Long truncate_rpc_timeout_in_ms = new Long(30);
+public Long truncate_request_timeout_in_ms = new Long(6);
 
 public Integer streaming_socket_timeout_in_ms = new Integer(0);
 

http://git-wip-us.apache.org/repos/asf/cassandra/blob/8a96ec70/src/java/org/apache/cassandra/config/DatabaseDescriptor.java
--
diff --git a/src/java/org/apache/cassandra/config/DatabaseDescriptor.java 
b/src/java/org/apache/cassandra/config/DatabaseDescriptor.java
index 1451e61..641ac64 100644
--- a/src/java/org/apache/cassandra/config/DatabaseDescriptor.java
+++ b/src/java/org/apache/cassandra/config/DatabaseDescriptor.java
@@ -735,52 +735,52 @@ public class 

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

2012-12-04 Thread jbellis
Updated Branches:
  refs/heads/cassandra-1.2 07c6ff1b3 - dfc7b2753
  refs/heads/cassandra-1.2.0 aaf9409f5 - 8a96ec702
  refs/heads/trunk 387b10226 - 513f0a065


Merge branch 'cassandra-1.2' into trunk


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

Branch: refs/heads/trunk
Commit: 513f0a065311daaf4c47e18aa73bd926faf0cc80
Parents: 387b102 dfc7b27
Author: Jonathan Ellis jbel...@apache.org
Authored: Tue Dec 4 21:46:07 2012 -0600
Committer: Jonathan Ellis jbel...@apache.org
Committed: Tue Dec 4 21:46:07 2012 -0600

--
 CHANGES.txt|4 +++
 conf/cassandra.yaml|   15 +--
 src/java/org/apache/cassandra/config/Config.java   |   10 +++---
 .../cassandra/config/DatabaseDescriptor.java   |   20 +++---
 .../org/apache/cassandra/net/MessagingService.java |2 +-
 5 files changed, 27 insertions(+), 24 deletions(-)
--


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

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

http://git-wip-us.apache.org/repos/asf/cassandra/blob/513f0a06/src/java/org/apache/cassandra/config/Config.java
--

http://git-wip-us.apache.org/repos/asf/cassandra/blob/513f0a06/src/java/org/apache/cassandra/config/DatabaseDescriptor.java
--



[3/6] git commit: merge from 1.2.0

2012-12-04 Thread jbellis
merge from 1.2.0


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

Branch: refs/heads/trunk
Commit: dfc7b2753ba76b1ca2efce3eb20e3a72f55ce2d0
Parents: 07c6ff1 8a96ec7
Author: Jonathan Ellis jbel...@apache.org
Authored: Tue Dec 4 21:46:02 2012 -0600
Committer: Jonathan Ellis jbel...@apache.org
Committed: Tue Dec 4 21:46:02 2012 -0600

--
 CHANGES.txt|4 +++
 conf/cassandra.yaml|   15 +--
 src/java/org/apache/cassandra/config/Config.java   |   10 +++---
 .../cassandra/config/DatabaseDescriptor.java   |   20 +++---
 .../org/apache/cassandra/net/MessagingService.java |2 +-
 5 files changed, 27 insertions(+), 24 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/dfc7b275/CHANGES.txt
--
diff --cc CHANGES.txt
index ccbdcb4,a08e78a..8d40f09
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@@ -1,11 -1,7 +1,15 @@@
 +1.2.1
 + * pool [Compressed]RandomAccessReader objects on the partitioned read path
 +   (CASSANDRA-4942)
 + * Add debug logging to list filenames processed by Directories.migrateFile 
 +   method (CASSANDRA-4939)
 + * Expose black-listed directories via JMX (CASSANDRA-4848)
 +
 +
+ 1.2-rc1
+  * rename rpc_timeout settings to request_timeout (CASSANDRA-5027)
+ 
+ 
  1.2-beta3
   * make consistency level configurable in cqlsh (CASSANDRA-4829)
   * fix cqlsh rendering of blob fields (CASSANDRA-4970)



[2/6] git commit: merge from 1.2.0

2012-12-04 Thread jbellis
merge from 1.2.0


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

Branch: refs/heads/cassandra-1.2
Commit: dfc7b2753ba76b1ca2efce3eb20e3a72f55ce2d0
Parents: 07c6ff1 8a96ec7
Author: Jonathan Ellis jbel...@apache.org
Authored: Tue Dec 4 21:46:02 2012 -0600
Committer: Jonathan Ellis jbel...@apache.org
Committed: Tue Dec 4 21:46:02 2012 -0600

--
 CHANGES.txt|4 +++
 conf/cassandra.yaml|   15 +--
 src/java/org/apache/cassandra/config/Config.java   |   10 +++---
 .../cassandra/config/DatabaseDescriptor.java   |   20 +++---
 .../org/apache/cassandra/net/MessagingService.java |2 +-
 5 files changed, 27 insertions(+), 24 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/dfc7b275/CHANGES.txt
--
diff --cc CHANGES.txt
index ccbdcb4,a08e78a..8d40f09
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@@ -1,11 -1,7 +1,15 @@@
 +1.2.1
 + * pool [Compressed]RandomAccessReader objects on the partitioned read path
 +   (CASSANDRA-4942)
 + * Add debug logging to list filenames processed by Directories.migrateFile 
 +   method (CASSANDRA-4939)
 + * Expose black-listed directories via JMX (CASSANDRA-4848)
 +
 +
+ 1.2-rc1
+  * rename rpc_timeout settings to request_timeout (CASSANDRA-5027)
+ 
+ 
  1.2-beta3
   * make consistency level configurable in cqlsh (CASSANDRA-4829)
   * fix cqlsh rendering of blob fields (CASSANDRA-4970)



[5/6] git commit: rename rpc_timeout settings to request_timeout patch by jbellis; reviewed by brandonwilliams for CASSANDRA-5027

2012-12-04 Thread jbellis
rename rpc_timeout settings to request_timeout
patch by jbellis; reviewed by brandonwilliams for CASSANDRA-5027


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

Branch: refs/heads/cassandra-1.2.0
Commit: 8a96ec702168430eea7400d41fc476b93c7e7404
Parents: aaf9409
Author: Jonathan Ellis jbel...@apache.org
Authored: Tue Dec 4 21:44:55 2012 -0600
Committer: Jonathan Ellis jbel...@apache.org
Committed: Tue Dec 4 21:45:15 2012 -0600

--
 CHANGES.txt|4 +++
 conf/cassandra.yaml|   15 +--
 src/java/org/apache/cassandra/config/Config.java   |   10 +++---
 .../cassandra/config/DatabaseDescriptor.java   |   20 +++---
 .../org/apache/cassandra/net/MessagingService.java |2 +-
 5 files changed, 27 insertions(+), 24 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/8a96ec70/CHANGES.txt
--
diff --git a/CHANGES.txt b/CHANGES.txt
index 70e465c..a08e78a 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -1,3 +1,7 @@
+1.2-rc1
+ * rename rpc_timeout settings to request_timeout (CASSANDRA-5027)
+
+
 1.2-beta3
  * make consistency level configurable in cqlsh (CASSANDRA-4829)
  * fix cqlsh rendering of blob fields (CASSANDRA-4970)

http://git-wip-us.apache.org/repos/asf/cassandra/blob/8a96ec70/conf/cassandra.yaml
--
diff --git a/conf/cassandra.yaml b/conf/cassandra.yaml
index 9594672..f2be64a 100644
--- a/conf/cassandra.yaml
+++ b/conf/cassandra.yaml
@@ -449,18 +449,17 @@ compaction_preheat_key_cache: true
 # stream_throughput_outbound_megabits_per_sec: 400
 
 # How long the coordinator should wait for read operations to complete
-read_rpc_timeout_in_ms: 1
+read_request_timeout_in_ms: 1
 # How long the coordinator should wait for seq or index scans to complete
-range_rpc_timeout_in_ms: 1
+range_request_timeout_in_ms: 1
 # How long the coordinator should wait for writes to complete
-write_rpc_timeout_in_ms: 1
+write_request_timeout_in_ms: 1
 # How long the coordinator should wait for truncates to complete
-# (This can be much longer, because we need to flush all CFs
-# to make sure we can clear out anythink in the commitlog that could
-# cause truncated data to reappear.)
-truncate_rpc_timeout_in_ms: 30
+# (This can be much longer, because unless auto_snapshot is disabled
+# we need to flush first so we can snapshot before removing the data.)
+truncate_request_timeout_in_ms: 6
 # The default timeout for other, miscellaneous operations
-rpc_timeout_in_ms: 1
+request_timeout_in_ms: 1
 
 # Enable operation timeout information exchange between nodes to accurately
 # measure request timeouts, If disabled cassandra will assuming the request

http://git-wip-us.apache.org/repos/asf/cassandra/blob/8a96ec70/src/java/org/apache/cassandra/config/Config.java
--
diff --git a/src/java/org/apache/cassandra/config/Config.java 
b/src/java/org/apache/cassandra/config/Config.java
index 3e6abe1..fa8f273 100644
--- a/src/java/org/apache/cassandra/config/Config.java
+++ b/src/java/org/apache/cassandra/config/Config.java
@@ -49,15 +49,15 @@ public class Config
 public String initial_token;
 public Integer num_tokens = 1;
 
-public volatile Long rpc_timeout_in_ms = new Long(1);
+public volatile Long request_timeout_in_ms = new Long(1);
 
-public Long read_rpc_timeout_in_ms = new Long(1);
+public Long read_request_timeout_in_ms = new Long(1);
 
-public Long range_rpc_timeout_in_ms = new Long(1);
+public Long range_request_timeout_in_ms = new Long(1);
 
-public Long write_rpc_timeout_in_ms = new Long(1);
+public Long write_request_timeout_in_ms = new Long(1);
 
-public Long truncate_rpc_timeout_in_ms = new Long(30);
+public Long truncate_request_timeout_in_ms = new Long(6);
 
 public Integer streaming_socket_timeout_in_ms = new Integer(0);
 

http://git-wip-us.apache.org/repos/asf/cassandra/blob/8a96ec70/src/java/org/apache/cassandra/config/DatabaseDescriptor.java
--
diff --git a/src/java/org/apache/cassandra/config/DatabaseDescriptor.java 
b/src/java/org/apache/cassandra/config/DatabaseDescriptor.java
index 1451e61..641ac64 100644
--- a/src/java/org/apache/cassandra/config/DatabaseDescriptor.java
+++ b/src/java/org/apache/cassandra/config/DatabaseDescriptor.java
@@ -735,52 +735,52 @@ 

buildbot failure in ASF Buildbot on cassandra-trunk

2012-12-04 Thread buildbot
The Buildbot has detected a new failure on builder cassandra-trunk while 
building cassandra.
Full details are available at:
 http://ci.apache.org/builders/cassandra-trunk/builds/2149

Buildbot URL: http://ci.apache.org/

Buildslave for this Build: portunus_ubuntu

Build Reason: scheduler
Build Source Stamp: [branch trunk] 513f0a065311daaf4c47e18aa73bd926faf0cc80
Blamelist: Jonathan Ellis jbel...@apache.org

BUILD FAILED: failed shell

sincerely,
 -The Buildbot





[5/6] git commit: r/m obsolete and unnecessary rpc_timeout_in_ms override from test config

2012-12-04 Thread jbellis
r/m obsolete and unnecessary rpc_timeout_in_ms override from test config


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

Branch: refs/heads/cassandra-1.2.0
Commit: 40e22489cd989651da5111902e2ce2d378ba8804
Parents: 8a96ec7
Author: Jonathan Ellis jbel...@apache.org
Authored: Tue Dec 4 21:58:20 2012 -0600
Committer: Jonathan Ellis jbel...@apache.org
Committed: Tue Dec 4 21:58:20 2012 -0600

--
 test/conf/cassandra.yaml |1 -
 1 files changed, 0 insertions(+), 1 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/40e22489/test/conf/cassandra.yaml
--
diff --git a/test/conf/cassandra.yaml b/test/conf/cassandra.yaml
index 782b64c..133e033 100644
--- a/test/conf/cassandra.yaml
+++ b/test/conf/cassandra.yaml
@@ -7,7 +7,6 @@ in_memory_compaction_limit_in_mb: 1
 commitlog_sync: batch
 commitlog_sync_batch_window_in_ms: 1.0
 partitioner: org.apache.cassandra.dht.ByteOrderedPartitioner
-rpc_timeout_in_ms: 5000
 listen_address: 127.0.0.1
 storage_port: 7010
 rpc_port: 9170



[4/6] git commit: r/m obsolete and unnecessary rpc_timeout_in_ms override from test config

2012-12-04 Thread jbellis
r/m obsolete and unnecessary rpc_timeout_in_ms override from test config


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

Branch: refs/heads/trunk
Commit: 40e22489cd989651da5111902e2ce2d378ba8804
Parents: 8a96ec7
Author: Jonathan Ellis jbel...@apache.org
Authored: Tue Dec 4 21:58:20 2012 -0600
Committer: Jonathan Ellis jbel...@apache.org
Committed: Tue Dec 4 21:58:20 2012 -0600

--
 test/conf/cassandra.yaml |1 -
 1 files changed, 0 insertions(+), 1 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/40e22489/test/conf/cassandra.yaml
--
diff --git a/test/conf/cassandra.yaml b/test/conf/cassandra.yaml
index 782b64c..133e033 100644
--- a/test/conf/cassandra.yaml
+++ b/test/conf/cassandra.yaml
@@ -7,7 +7,6 @@ in_memory_compaction_limit_in_mb: 1
 commitlog_sync: batch
 commitlog_sync_batch_window_in_ms: 1.0
 partitioner: org.apache.cassandra.dht.ByteOrderedPartitioner
-rpc_timeout_in_ms: 5000
 listen_address: 127.0.0.1
 storage_port: 7010
 rpc_port: 9170



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

2012-12-04 Thread jbellis
Updated Branches:
  refs/heads/cassandra-1.2 dfc7b2753 - 0f7521526
  refs/heads/cassandra-1.2.0 8a96ec702 - 40e22489c
  refs/heads/trunk 513f0a065 - 19b96b5da


Merge branch 'cassandra-1.2' into trunk


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

Branch: refs/heads/trunk
Commit: 19b96b5da5e65a61338e3c601828039d0eda8bb4
Parents: 513f0a0 0f75215
Author: Jonathan Ellis jbel...@apache.org
Authored: Tue Dec 4 21:58:32 2012 -0600
Committer: Jonathan Ellis jbel...@apache.org
Committed: Tue Dec 4 21:58:32 2012 -0600

--
 test/conf/cassandra.yaml |1 -
 1 files changed, 0 insertions(+), 1 deletions(-)
--




[6/6] git commit: r/m obsolete and unnecessary rpc_timeout_in_ms override from test config

2012-12-04 Thread jbellis
r/m obsolete and unnecessary rpc_timeout_in_ms override from test config


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

Branch: refs/heads/cassandra-1.2
Commit: 40e22489cd989651da5111902e2ce2d378ba8804
Parents: 8a96ec7
Author: Jonathan Ellis jbel...@apache.org
Authored: Tue Dec 4 21:58:20 2012 -0600
Committer: Jonathan Ellis jbel...@apache.org
Committed: Tue Dec 4 21:58:20 2012 -0600

--
 test/conf/cassandra.yaml |1 -
 1 files changed, 0 insertions(+), 1 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/40e22489/test/conf/cassandra.yaml
--
diff --git a/test/conf/cassandra.yaml b/test/conf/cassandra.yaml
index 782b64c..133e033 100644
--- a/test/conf/cassandra.yaml
+++ b/test/conf/cassandra.yaml
@@ -7,7 +7,6 @@ in_memory_compaction_limit_in_mb: 1
 commitlog_sync: batch
 commitlog_sync_batch_window_in_ms: 1.0
 partitioner: org.apache.cassandra.dht.ByteOrderedPartitioner
-rpc_timeout_in_ms: 5000
 listen_address: 127.0.0.1
 storage_port: 7010
 rpc_port: 9170



buildbot success in ASF Buildbot on cassandra-trunk

2012-12-04 Thread buildbot
The Buildbot has detected a restored build on builder cassandra-trunk while 
building cassandra.
Full details are available at:
 http://ci.apache.org/builders/cassandra-trunk/builds/2151

Buildbot URL: http://ci.apache.org/

Buildslave for this Build: portunus_ubuntu

Build Reason: scheduler
Build Source Stamp: [branch trunk] 19b96b5da5e65a61338e3c601828039d0eda8bb4
Blamelist: Jonathan Ellis jbel...@apache.org

Build succeeded!

sincerely,
 -The Buildbot





[jira] [Created] (CASSANDRA-5029) Add back bloom filter to LCS

2012-12-04 Thread Jonathan Ellis (JIRA)
Jonathan Ellis created CASSANDRA-5029:
-

 Summary: Add back bloom filter to LCS
 Key: CASSANDRA-5029
 URL: https://issues.apache.org/jira/browse/CASSANDRA-5029
 Project: Cassandra
  Issue Type: Improvement
Reporter: Jonathan Ellis
Assignee: Jonathan Ellis


Even with LCS you're going to frequently have 6 or 7 levels, with data in only 
one or two of those.  With randomly distributed writes you'll have overlapping 
sstables in the other levels so having a bloom filter will be good to avoid 
hitting disk.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Commented] (CASSANDRA-5029) Add back bloom filter to LCS

2012-12-04 Thread Jonathan Ellis (JIRA)

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

Jonathan Ellis commented on CASSANDRA-5029:
---

Patch makes LCS default to 0.1 FP, which is half the size (5 buckets vs 10 per 
row) of the default 0.01 for STCS.

 Add back bloom filter to LCS
 

 Key: CASSANDRA-5029
 URL: https://issues.apache.org/jira/browse/CASSANDRA-5029
 Project: Cassandra
  Issue Type: Improvement
Reporter: Jonathan Ellis
Assignee: Jonathan Ellis
 Attachments: 5029.txt


 Even with LCS you're going to frequently have 6 or 7 levels, with data in 
 only one or two of those.  With randomly distributed writes you'll have 
 overlapping sstables in the other levels so having a bloom filter will be 
 good to avoid hitting disk.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Updated] (CASSANDRA-5029) Add back bloom filter to LCS

2012-12-04 Thread Jonathan Ellis (JIRA)

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

Jonathan Ellis updated CASSANDRA-5029:
--

Attachment: 5029.txt

 Add back bloom filter to LCS
 

 Key: CASSANDRA-5029
 URL: https://issues.apache.org/jira/browse/CASSANDRA-5029
 Project: Cassandra
  Issue Type: Improvement
Reporter: Jonathan Ellis
Assignee: Jonathan Ellis
 Attachments: 5029.txt


 Even with LCS you're going to frequently have 6 or 7 levels, with data in 
 only one or two of those.  With randomly distributed writes you'll have 
 overlapping sstables in the other levels so having a bloom filter will be 
 good to avoid hitting disk.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Updated] (CASSANDRA-5029) Add back bloom filter to LCS

2012-12-04 Thread Jonathan Ellis (JIRA)

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

Jonathan Ellis updated CASSANDRA-5029:
--

Affects Version/s: 1.2.0 beta 2
Fix Version/s: 1.2.0 rc1

 Add back bloom filter to LCS
 

 Key: CASSANDRA-5029
 URL: https://issues.apache.org/jira/browse/CASSANDRA-5029
 Project: Cassandra
  Issue Type: Improvement
Affects Versions: 1.2.0 beta 2
Reporter: Jonathan Ellis
Assignee: Jonathan Ellis
 Fix For: 1.2.0 rc1

 Attachments: 5029.txt


 Even with LCS you're going to frequently have 6 or 7 levels, with data in 
 only one or two of those.  With randomly distributed writes you'll have 
 overlapping sstables in the other levels so having a bloom filter will be 
 good to avoid hitting disk.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Commented] (CASSANDRA-5029) Add back bloom filter to LCS

2012-12-04 Thread Brandon Williams (JIRA)

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

Brandon Williams commented on CASSANDRA-5029:
-

+1

 Add back bloom filter to LCS
 

 Key: CASSANDRA-5029
 URL: https://issues.apache.org/jira/browse/CASSANDRA-5029
 Project: Cassandra
  Issue Type: Improvement
Affects Versions: 1.2.0 beta 2
Reporter: Jonathan Ellis
Assignee: Jonathan Ellis
 Fix For: 1.2.0 rc1

 Attachments: 5029.txt


 Even with LCS you're going to frequently have 6 or 7 levels, with data in 
 only one or two of those.  With randomly distributed writes you'll have 
 overlapping sstables in the other levels so having a bloom filter will be 
 good to avoid hitting disk.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[5/6] git commit: add BF with 0.1 FP to LCS by default patch by jbellis; reviewed by brandonwilliams for CASSANDRA-5029

2012-12-04 Thread jbellis
add BF with 0.1 FP to LCS by default
patch by jbellis; reviewed by brandonwilliams for CASSANDRA-5029


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

Branch: refs/heads/cassandra-1.2.0
Commit: 21581315760d8d6764da120dd07dd9d4cf53093e
Parents: 40e2248
Author: Jonathan Ellis jbel...@apache.org
Authored: Tue Dec 4 23:13:50 2012 -0600
Committer: Jonathan Ellis jbel...@apache.org
Committed: Tue Dec 4 23:13:50 2012 -0600

--
 CHANGES.txt|1 +
 .../org/apache/cassandra/config/CFMetaData.java|2 +-
 2 files changed, 2 insertions(+), 1 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cassandra/blob/21581315/CHANGES.txt
--
diff --git a/CHANGES.txt b/CHANGES.txt
index a08e78a..732cc5d 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -1,5 +1,6 @@
 1.2-rc1
  * rename rpc_timeout settings to request_timeout (CASSANDRA-5027)
+ * add BF with 0.1 FP to LCS by default (CASSANDRA-5029)
 
 
 1.2-beta3

http://git-wip-us.apache.org/repos/asf/cassandra/blob/21581315/src/java/org/apache/cassandra/config/CFMetaData.java
--
diff --git a/src/java/org/apache/cassandra/config/CFMetaData.java 
b/src/java/org/apache/cassandra/config/CFMetaData.java
index cb760f1..c2aa768 100644
--- a/src/java/org/apache/cassandra/config/CFMetaData.java
+++ b/src/java/org/apache/cassandra/config/CFMetaData.java
@@ -531,7 +531,7 @@ public final class CFMetaData
 public double getBloomFilterFpChance()
 {
 return bloomFilterFpChance == null
-   ? compactionStrategyClass == LeveledCompactionStrategy.class ? 
1.0 : 0.01
+   ? compactionStrategyClass == LeveledCompactionStrategy.class ? 
0.1 : 0.01
: bloomFilterFpChance;
 }
 



  1   2   >