Commit Graph

7 Commits

Author SHA1 Message Date
Jonathan Ellis f2260f107b add more robust sanity checking of get_column arguments. patch by jbellis; reviewed by Jun Rao for CASSANDRA-151
git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@773016 13f79535-47bb-0310-9956-ffa450edef68
2009-05-08 14:53:25 +00:00
Jonathan Ellis b2e2b1c116 use `block` flag instead of separate _blocking methods. throw exception on error instead of returning bool for success. patch by jbellis; reviewed by Eric Evans for CASSANDRA-131
git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@771761 13f79535-47bb-0310-9956-ffa450edef68
2009-05-05 14:54:05 +00:00
Jonathan Ellis 05281ee045 demonstrate problem with _blocking methods by checking insert return values.
patch by jbellis; reviewed by nk11 for CASSANDRA-120

git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@771398 13f79535-47bb-0310-9956-ffa450edef68
2009-05-04 19:01:46 +00:00
Jonathan Ellis 1c1b97c25d add tests for batch_insert_superColumn and the _blocking version. patch by jbellis.
git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@769883 13f79535-47bb-0310-9956-ffa450edef68
2009-04-29 19:13:43 +00:00
Jonathan Ellis 9db8da81b7 Add range query support, which requires using an OrderPreservingPartitioner. (Keys are returned in the order defined by the partitioner collation.) The fundamental approach (in table.getKeyRange) is simple: create a CollatedIterator that will return unique keys from different sources, each of which is already sorted. Then we just need Iterators for different key sources. For SSTables, this means adding seekTo and an Iterator interface to FileStruct. For Memtable, this means adding a DestructivePQIterator since unlike SSTable keys those are not inherently ordered already. This means that we only do M log N work sorting the memtable keys where M is the number of keys we actually read, and N is the total number of keys, where a naive sort-everything-first iterator would be N log N.
This does not yet implement range queries spanning multiple nodes.

patch by jbellis; reviewed by Jun Rao for CASSANDRA-71

git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@769874 13f79535-47bb-0310-9956-ffa450edef68
2009-04-29 18:57:35 +00:00
Jonathan Ellis ef2f631ebe fix regression introduced by ReadCommand refactor (get_slice can return column_t from a standard cf, or from a supercolumn in a super cf). patch by jbellis.
git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@769629 13f79535-47bb-0310-9956-ffa450edef68
2009-04-29 02:01:56 +00:00
Jonathan Ellis f836610fe0 add system tests. each method in test/system/test_server.py exercises part of the thrift API, and manages cleaning out data files and starting a fresh server for each test.
patch by jbellis; reviewed by Eric Evans for CASSANDRA-102

git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@769608 13f79535-47bb-0310-9956-ffa450edef68
2009-04-29 01:12:38 +00:00