You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by jb...@apache.org on 2009/08/27 22:07:13 UTC

svn commit: r808589 [1/3] - in /incubator/cassandra/trunk: interface/ interface/gen-java/org/apache/cassandra/service/ src/java/org/apache/cassandra/net/ src/java/org/apache/cassandra/service/ test/system/

Author: jbellis
Date: Thu Aug 27 20:07:12 2009
New Revision: 808589

URL: http://svn.apache.org/viewvc?rev=808589&view=rev
Log:
Update AsyncResult to know when it started waiting so you can get() multiple Results in serial but have them wait in parallel.  Use this to implement multiget methods.  Remove unused MultiAsyncResult code and StorageProxy methods using it.
Patch by Chris Goffinet; reviewed by jbellis for CASSANDRA-70

Removed:
    incubator/cassandra/trunk/src/java/org/apache/cassandra/net/MultiAsyncResult.java
Modified:
    incubator/cassandra/trunk/interface/cassandra.thrift
    incubator/cassandra/trunk/interface/gen-java/org/apache/cassandra/service/Cassandra.java
    incubator/cassandra/trunk/src/java/org/apache/cassandra/net/AsyncResult.java
    incubator/cassandra/trunk/src/java/org/apache/cassandra/net/IAsyncResult.java
    incubator/cassandra/trunk/src/java/org/apache/cassandra/net/IMessagingService.java
    incubator/cassandra/trunk/src/java/org/apache/cassandra/net/MessagingService.java
    incubator/cassandra/trunk/src/java/org/apache/cassandra/service/CassandraServer.java
    incubator/cassandra/trunk/src/java/org/apache/cassandra/service/QuorumResponseHandler.java
    incubator/cassandra/trunk/src/java/org/apache/cassandra/service/StorageProxy.java
    incubator/cassandra/trunk/test/system/test_server.py

Modified: incubator/cassandra/trunk/interface/cassandra.thrift
URL: http://svn.apache.org/viewvc/incubator/cassandra/trunk/interface/cassandra.thrift?rev=808589&r1=808588&r2=808589&view=diff
==============================================================================
--- incubator/cassandra/trunk/interface/cassandra.thrift (original)
+++ incubator/cassandra/trunk/interface/cassandra.thrift Thu Aug 27 20:07:12 2009
@@ -117,12 +117,21 @@
   list<ColumnOrSuperColumn> get_slice(1:string keyspace, 2:string key, 3:ColumnParent column_parent, 4:SlicePredicate predicate, 5:ConsistencyLevel consistency_level=1)
   throws (1: InvalidRequestException ire, 2: NotFoundException nfe),
 
+  map<string,list<ColumnOrSuperColumn>> multiget_slice(1:string keyspace, 2:list<string> keys, 3:ColumnParent column_parent, 4:SlicePredicate predicate, 5:ConsistencyLevel consistency_level=1)
+  throws (1: InvalidRequestException ire),
+
   ColumnOrSuperColumn get(1:string keyspace, 2:string key, 3:ColumnPath column_path, 4:ConsistencyLevel consistency_level=1)
   throws (1: InvalidRequestException ire, 2: NotFoundException nfe),
 
+  map<string,ColumnOrSuperColumn> multiget(1:string keyspace, 2:list<string> keys, 3:ColumnPath column_path, 4:ConsistencyLevel consistency_level=1)
+  throws (1: InvalidRequestException ire),
+
   i32 get_count(1:string keyspace, 2:string key, 3:ColumnParent column_parent, 5:ConsistencyLevel consistency_level=1)
   throws (1: InvalidRequestException ire),
 
+  map<string,i32> multiget_count(1:string keyspace, 2:list<string> keys, 3:ColumnParent column_parent, 5:ConsistencyLevel consistency_level=1)
+  throws (1: InvalidRequestException ire),
+
   void     insert(1:string keyspace, 2:string key, 3:ColumnPath column_path, 4:binary value, 5:i64 timestamp, 6:ConsistencyLevel consistency_level=0)
   throws (1: InvalidRequestException ire, 2: UnavailableException ue),