Commit Graph

7126 Commits

Author SHA1 Message Date
Gary Dusbabek 7840986e19 make KSMetaData immutable
git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@919156 13f79535-47bb-0310-9956-ffa450edef68
2010-03-04 20:17:20 +00:00
Gary Dusbabek 6b655b0f79 dump and load definition tables
git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@919155 13f79535-47bb-0310-9956-ffa450edef68
2010-03-04 20:17:12 +00:00
Gary Dusbabek 937d5c5887 CASSANDRA-825 use jug for TimeUUID generation
git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@919154 13f79535-47bb-0310-9956-ffa450edef68
2010-03-04 20:17:04 +00:00
Jonathan Ellis 95ead06d77 inline ThriftGlue methods. patch by Ted Zlatanov; reviewed by jbellis for CASSANDRA-848
git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@919059 13f79535-47bb-0310-9956-ffa450edef68
2010-03-04 16:44:12 +00:00
Jonathan Ellis 7d2115bf8b add optional bitmask matching to SliceRange. patch by Ted Zlatanov; reviewed by jbellis for CASSANDRA-764
git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@918844 13f79535-47bb-0310-9956-ffa450edef68
2010-03-04 03:42:05 +00:00
Jonathan Ellis 8f1376bcba merge from 0.6
git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@918566 13f79535-47bb-0310-9956-ffa450edef68
2010-03-03 16:51:24 +00:00
Jonathan Ellis 5086f498d4 r/m files to finish 0.6 merge of CASSANDRA-801
git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@916966 13f79535-47bb-0310-9956-ffa450edef68
2010-02-27 15:30:20 +00:00
Jonathan Ellis 5d4371a0c4 merge from 0.6
git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@916962 13f79535-47bb-0310-9956-ffa450edef68
2010-02-27 15:18:50 +00:00
Jonathan Ellis 24dbb2d08f avoid hardcoding unix-style path names. patch by jbellis
git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@916497 13f79535-47bb-0310-9956-ffa450edef68
2010-02-25 23:51:10 +00:00
Jonathan Ellis 0160ad5ae7 merge r915463 from 0.6 manually by running rat on trunk
git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@915575 13f79535-47bb-0310-9956-ffa450edef68
2010-02-23 23:07:01 +00:00
Gary Dusbabek fbda616f68 Refactor DatabaseDescriptor to isolate the code that establishes the keyspaces and column families. Patch by Gary Dusbabek, reviewed by Eric Evans. CASSANDRA-819
git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@915533 13f79535-47bb-0310-9956-ffa450edef68
2010-02-23 21:48:31 +00:00
Gary Dusbabek 81d713a7cf sstable versioning. Patch by Stu Hood, reviewed by Gary Dusbabek. CASSANDRA-389
git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@912650 13f79535-47bb-0310-9956-ffa450edef68
2010-02-22 16:48:55 +00:00
Eric Evans 5a5f9aa3d2 use less specific descriptors for Thrift{Address,Port}
Patch by eevans; reviewed by gdusbabek for CASSANDRA-811

git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@911989 13f79535-47bb-0310-9956-ffa450edef68
2010-02-19 21:30:32 +00:00
Gary Dusbabek b511d0f1b0 Using realy keyspaces in tests so that their replication strategies can be queried. Patch by Gary Dusbabek, reviewed by Stu Hood.
git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@911178 13f79535-47bb-0310-9956-ffa450edef68
2010-02-17 21:16:52 +00:00
Jonathan Ellis 5e4c5ce61b merge from 0.5
git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@910386 13f79535-47bb-0310-9956-ffa450edef68
2010-02-16 03:41:03 +00:00
Jonathan Ellis 9cc51b5f2c fix range queries and Range/Bounds intersections. patch by jbellis; tested by Jack Culpepper for CASSANDRA-781
git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@910380 13f79535-47bb-0310-9956-ffa450edef68
2010-02-16 02:47:57 +00:00
Jonathan Ellis 128821e5b9 fix SSTableExportTest to work on Windows. patch by jbellis
git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@910325 13f79535-47bb-0310-9956-ffa450edef68
2010-02-15 20:06:39 +00:00
Jonathan Ellis 03da50d62c mv RecoverManager.doRecovery() -> CommitLog.recover()
patch by jbellis; reviewed by junrao for CASSANDRA-783

git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@908831 13f79535-47bb-0310-9956-ffa450edef68
2010-02-11 03:50:40 +00:00
Jonathan Ellis fdba4279a0 encapsulate commitlog file operations in CommitLogSegment
patch by jbellis; reviewed by junrao for CASSANDRA-783

git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@908830 13f79535-47bb-0310-9956-ffa450edef68
2010-02-11 03:49:49 +00:00
Jonathan Ellis fbb188f91a mv commitlog classes into db.commitlog package. patch by jbellis
git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@908131 13f79535-47bb-0310-9956-ffa450edef68
2010-02-09 17:52:44 +00:00
Gary Dusbabek c8889a7087 Embedded cassandra service to facilitate testing apps that depend on cassandra. Patch by Ran Tavory, reviewed by Gary Dusbabek. CASSANDRA-740.
git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@908038 13f79535-47bb-0310-9956-ffa450edef68
2010-02-09 14:05:00 +00:00
Jonathan Ellis 2f99e71f30 have RangeSliceCommand take Range or Bounds (client bounds, start-inclusive, non-wrapping)
patch by jbellis; reviewed by Stu Hood for CASSANDRA-763

git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@907172 13f79535-47bb-0310-9956-ffa450edef68
2010-02-06 04:15:39 +00:00
Jonathan Ellis 478ba67b49 add Range.intersectsWith. patch by jbellis; reviewed by Stu Hood for CASSANDRA-763
git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@907171 13f79535-47bb-0310-9956-ffa450edef68
2010-02-06 04:14:44 +00:00
Jonathan Ellis 781aeaae06 format RangeTest. patch by jbellis
git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@906791 13f79535-47bb-0310-9956-ffa450edef68
2010-02-05 03:14:57 +00:00
Gary Dusbabek 979d92fa45 missing file intended for r906521. CASSANDRA-620
git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@906528 13f79535-47bb-0310-9956-ffa450edef68
2010-02-04 15:41:31 +00:00
Gary Dusbabek 3577fd8252 add per-keyspace replication factor and replication strategy. Patch by Gary Dusbabek, reviewed by Jaakko Laine. CASSANDRA-620
git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@906521 13f79535-47bb-0310-9956-ffa450edef68
2010-02-04 15:21:31 +00:00
Jonathan Ellis ecdcc00ff3 add option to skip start key in range query (StorageProxy only for now) and test.
patch by jbellis; reviewed by stuhood for CASSANDRA-759

git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@906272 13f79535-47bb-0310-9956-ffa450edef68
2010-02-03 22:44:56 +00:00
Jonathan Ellis 30f0216a8f reformat, cleanup Range. patch by jbellis
git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@906231 13f79535-47bb-0310-9956-ffa450edef68
2010-02-03 20:40:10 +00:00
Jonathan Ellis 7af12623b1 allow wrapped range queries. patch by jbellis; reviewed by stuhood for CASSANDRA-758
git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@906209 13f79535-47bb-0310-9956-ffa450edef68
2010-02-03 20:00:46 +00:00
Jonathan Ellis 3852009c14 make CFS.getKeyRange private; replace w/ getRangeSlice in tests. also clean up test imports.
patch by jbellis

git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@906073 13f79535-47bb-0310-9956-ffa450edef68
2010-02-03 14:46:12 +00:00
Jonathan Ellis 77335589c8 r/m SSTR.openedFiles; clean up decorated key iteration
patch by jbellis; reviewed by stuhood for CASSANDRA-753

git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@905869 13f79535-47bb-0310-9956-ffa450edef68
2010-02-03 02:22:16 +00:00
Jonathan Ellis 4922a87b54 clean up Table iteration; add Table.all, CFS.all
patch by jbellis; reviewed by stuhood for CASSANDRA-753

git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@905868 13f79535-47bb-0310-9956-ffa450edef68
2010-02-03 02:20:45 +00:00
Jonathan Ellis 210c98ee3f mv InitiatedFile -> PendingFile
patch by jbellis; reviewed by stuhood for CASSANDRA-751

git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@904933 13f79535-47bb-0310-9956-ffa450edef68
2010-01-31 00:30:19 +00:00
Jonathan Ellis 6224d8b25d move IncomingStreamReader, StreamInitiateMessage, and BootstrapTest to streaming package. r/m 'public' modifier from streaming classes that don't need it
patch by jbellis; reviewed by stuhood for CASSANDRA-751

git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@904932 13f79535-47bb-0310-9956-ffa450edef68
2010-01-31 00:29:37 +00:00
Jonathan Ellis 9e695b5765 rename StreamContextManager -> StreamInManager, StreamManger -> StreamOutManager, extract SCM.StreamContext -> InitiatedFile
patch by jbellis; reviewed by stuhood for CASSANDRA-751

git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@904927 13f79535-47bb-0310-9956-ffa450edef68
2010-01-31 00:23:19 +00:00
Jonathan Ellis c14e573cc0 split Streaming into StreamOut and StreamIn; clean up StreamManager
patch by jbellis; reviewed by stuhood for CASSANDRA-751

git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@904925 13f79535-47bb-0310-9956-ffa450edef68
2010-01-31 00:22:29 +00:00
Jonathan Ellis cc9737abaf centralize streaming code in org.apache.cassandra.streaming; split out verbs & handlers into top-level classes
patch by jbellis; reviewed by stuhood for CASSANDRA-751

git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@904924 13f79535-47bb-0310-9956-ffa450edef68
2010-01-31 00:21:36 +00:00
Jonathan Ellis 8b7038b2ac merge from 0.5
git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@904687 13f79535-47bb-0310-9956-ffa450edef68
2010-01-30 00:10:56 +00:00
Jonathan Ellis d6c2bb0907 make empty strings always return the MINIMUM token, and DecoratedKeys containing the MINIMUM token always be considered empty. This is something we probably should be doing anyway for consistency. (It was already true for OPP, but not COPP or RP.)
No further special casing should be necessary because we have already abstracted out code that needs to work across multiple partitioners to use IPartitioner.isEmpty, including getRangeSlice.

patch by jbellis; reviewed by Stu Hood for CASSANDRA-745

git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@904605 13f79535-47bb-0310-9956-ffa450edef68
2010-01-29 19:31:32 +00:00
Eric Evans 542bd7904d refactor thrift-specific code ...server -> ...thrift
This was mostly an IDE-driven effort.

Patch by eevans

git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@904540 13f79535-47bb-0310-9956-ffa450edef68
2010-01-29 16:24:28 +00:00
Jonathan Ellis d6682ffb7b use 0-capacity cache instead of null to indicate no caching; this means we don't need to worry about creating & destroying cache objects from JMX
patch by jbellis; reviewed by goffinet for CASSANDRA-708

git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@902914 13f79535-47bb-0310-9956-ffa450edef68
2010-01-25 18:36:00 +00:00
Laine Jaakko Olavi 2d7132069c fixed broken test. CASSANDRA-644
git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@902750 13f79535-47bb-0310-9956-ffa450edef68
2010-01-25 09:38:49 +00:00
Jonathan Ellis 6065d714a1 invalidate cache after compaction so we read what's in the new sstable instead of the cache
patch by jbellis; reviewed by goffinet for CASSANDRA-719

git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@901956 13f79535-47bb-0310-9956-ffa450edef68
2010-01-22 01:14:02 +00:00
Gary Dusbabek 001b80b803 merging from 0.5 branch
git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@901915 13f79535-47bb-0310-9956-ffa450edef68
2010-01-21 23:10:23 +00:00
Jonathan Ellis 5b522404d6 convert gossip to use tcp. this finishes the removal of nio
patch by jbellis; reviewed by Brandon Williams for CASSANDRA-705

git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@901437 13f79535-47bb-0310-9956-ffa450edef68
2010-01-20 23:38:20 +00:00
Jonathan Ellis 2126f608ed make shutdown non-reentrant and make MS a true singleton
patch by jbellis; tested by Brandon Williams for CASSANDRA-705

git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@901432 13f79535-47bb-0310-9956-ffa450edef68
2010-01-20 23:36:32 +00:00
Gary Dusbabek ea2eded3b8 remove get_key_rang. Patch by Gary Dusbabek, reviewed by Jonathan Ellis. CASSANDRA-710
git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@901207 13f79535-47bb-0310-9956-ffa450edef68
2010-01-20 13:57:49 +00:00
Jonathan Ellis 3e06414b61 expose failing test by moving it where other tests are not covering it up somehow. patch by jbellis
git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@900964 13f79535-47bb-0310-9956-ffa450edef68
2010-01-19 21:23:08 +00:00
Jonathan Ellis a2e2c03435 replace instance() accessors with public final fields. patch by Jeff Hodges; reviewed by Gary Dusbabek and jbellis for CASSANDRA-700
git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@899791 13f79535-47bb-0310-9956-ffa450edef68
2010-01-15 19:54:58 +00:00
Jonathan Ellis 820390faf1 add bin/sstablekeys, listing just the keys from an sstable (actually, from its index file), one per line.
patch by Brandon Williams and jbellis for CASSANDRA-679

git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@899781 13f79535-47bb-0310-9956-ffa450edef68
2010-01-15 19:36:11 +00:00
Jonathan Ellis e8fa8651d4 merge from 0.5 branch
git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@899042 13f79535-47bb-0310-9956-ffa450edef68
2010-01-14 03:18:34 +00:00
Jonathan Ellis a6cd2727d0 inline IStage.executorService, removing the useless Stage wrappers
git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@898049 13f79535-47bb-0310-9956-ffa450edef68
2010-01-11 20:14:53 +00:00
Jonathan Ellis 6b5d8bf802 centralize stage creation in StageManager and standardize stage naming
patch by jbellis; reviewed by gdusbabek for CASSANDRA-684

git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@898035 13f79535-47bb-0310-9956-ffa450edef68
2010-01-11 19:59:58 +00:00
Jonathan Ellis d6bdce610d store data information for any index entries spanning a mmap segment boundary when reading the index (with a BufferedRAF) so we don't have to deal with that at read time.
patch by jbellis; tested by Brandon Williams for CASSANDRA-669

git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@896741 13f79535-47bb-0310-9956-ffa450edef68
2010-01-07 02:56:16 +00:00
Gary Dusbabek dcaf84e356 Remove unused partitioner member from ReplicationStrategy classes. Patch by gdusbabek, reviewed by jbellis.
git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@896447 13f79535-47bb-0310-9956-ffa450edef68
2010-01-06 13:59:30 +00:00
Eric Evans 01c02cca68 cleanup test and contrib breakage from thrift upgrade
Patch by eevans for CASSANDRA-547

git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@896210 13f79535-47bb-0310-9956-ffa450edef68
2010-01-05 20:34:37 +00:00
Jonathan Ellis b2c2a6031a productize mmap approach: handle files > 2GB by chunking w/ fallback to BRAF
when a row crosses chunk boundaries (you don't want to have to check for crossing
boundary in each read() call, or you'll almost certainly waste more time than
the BRAF approach); add retrying-delete to wait for mmapped files to be unmapped
by finalizer after compaction

patch by jbellis; reviewed by Brandon Williams and goffinet for CASSANDRA-408

git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@894944 13f79535-47bb-0310-9956-ffa450edef68
2009-12-31 21:32:13 +00:00
Jonathan Ellis c8def03073 extend cleanuphelper in more places, and make cleanuphelper stricter about cleaning out old data. fixes test heisenbugs. patch by jbellis
git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@894517 13f79535-47bb-0310-9956-ffa450edef68
2009-12-29 23:40:44 +00:00
Jonathan Ellis 6b1e0a42a9 convert Runnables containing code involving checked exceptions to WrappedRunnable, which reduces the boilerplate of rethrowing as RuntimeException. Also replace one-off Runner class from test suite that served a similar purpose. patch by jbellis
git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@894467 13f79535-47bb-0310-9956-ffa450edef68
2009-12-29 19:25:18 +00:00
Jonathan Ellis 3655e91f56 move deleteAsync into DeletionService. patch by jbellis
git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@894451 13f79535-47bb-0310-9956-ffa450edef68
2009-12-29 17:33:24 +00:00
Jonathan Ellis dc6e4fe55f move generic classes w/ no cassandra dependencies into cassandra.io.util. patch by jbellis
git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@894447 13f79535-47bb-0310-9956-ffa450edef68
2009-12-29 17:14:20 +00:00
Jonathan Ellis 1cb079400f replace DataInputBuffer with ByteArrayInputStream/DataInputStream. patch by Todd Blose; reviewed by jbellis for CASSANDRA-656
git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@894312 13f79535-47bb-0310-9956-ffa450edef68
2009-12-29 06:13:04 +00:00
Jonathan Ellis b2b057ffde make estimation of pendingtasks for CompactionManager sane. patch by jbellis; reviewed by eevans for CASSANDRA-599
git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@893605 13f79535-47bb-0310-9956-ffa450edef68
2009-12-23 19:20:16 +00:00
Jonathan Ellis 453c8171d9 clean up compactions api and move into CompactionManager. patch by jbellis; reviewed by eevans for CASSANDRA-599
git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@893600 13f79535-47bb-0310-9956-ffa450edef68
2009-12-23 19:18:05 +00:00
Jonathan Ellis 720c49a277 merge from 0.5
git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@892926 13f79535-47bb-0310-9956-ffa450edef68
2009-12-21 18:50:09 +00:00
Chris Goffinet c1f2757da6 Repair should never reuse a tree. AEService currently 'caches' MerkleTrees that have been generated by the local node, and can respond to a request for a tree with a cached version. patch by stuhood; reviewed by junaro for CASSNADRA-640
git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@892450 13f79535-47bb-0310-9956-ffa450edef68
2009-12-19 08:03:40 +00:00
Eric Evans d9663f5eb6 merge with 0.5 branch
git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@892349 13f79535-47bb-0310-9956-ffa450edef68
2009-12-18 19:01:00 +00:00
Jonathan Ellis c10813c98b merge from 0.5
git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@891430 13f79535-47bb-0310-9956-ffa450edef68
2009-12-16 21:28:55 +00:00
Jun Rao c52be53daf use xor for hash in inner nodes in Merkle tree; patched by Stu Hood, reviewed by junrao for CASSANDRA-629
git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@891040 13f79535-47bb-0310-9956-ffa450edef68
2009-12-15 22:30:06 +00:00
Eric Evans 9572076a8e unittest that demonstrates bug
Patch by Ramzi Rabah; reviewed by eevans for CASSANDRA-618

git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@890478 13f79535-47bb-0310-9956-ffa450edef68
2009-12-14 21:10:43 +00:00
Jonathan Ellis da65fdaf5f clean up CompactionManager. patch by jbellis
git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@890022 13f79535-47bb-0310-9956-ffa450edef68
2009-12-13 04:16:59 +00:00
Jonathan Ellis 5bcdbcfa27 r/m unused RecoveryManager instance (class is entirely static). patch by jbellis
git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@889705 13f79535-47bb-0310-9956-ffa450edef68
2009-12-11 17:11:40 +00:00
Jonathan Ellis b4cae03720 merge from 0.5 branch
git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@889499 13f79535-47bb-0310-9956-ffa450edef68
2009-12-11 04:12:48 +00:00
Jonathan Ellis 3e574a962c only GC when compacting all sstables, to avoid situations where the data a tombstone is intended to supress is in an sstable that is not part of the compaction set.
patch by jbellis; reviewed by Ramzi Rabah for CASSANDRA-604

git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@888512 13f79535-47bb-0310-9956-ffa450edef68
2009-12-08 18:45:55 +00:00
Jonathan Ellis 8417db8fa9 compute major-ness of compaction in the compaction method, rather than relying on caller to do it correctly (as some tests were not). patch by jbellis
git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@888279 13f79535-47bb-0310-9956-ffa450edef68
2009-12-08 06:19:30 +00:00
Jonathan Ellis 71084e306e implement streaming repairs; repair-via-rangecommand TODO
patch by Stu Hood; reviewed by jbellis for CASSANDRA-520

git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@888171 13f79535-47bb-0310-9956-ffa450edef68
2009-12-07 22:51:46 +00:00
Jonathan Ellis b1810fd428 cleanup Streaming and rename transferOneTable -> transferSSTables. patch by Stu Hood; reviewed by jbellis for CASSANDRA-520
git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@888170 13f79535-47bb-0310-9956-ffa450edef68
2009-12-07 22:51:05 +00:00
Jonathan Ellis 4a6b002090 support wrapping ranges in IPartitioner.midpoint. patch by Stu Hood; reviewed by jbellis for CASSANDRA-519
git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@888140 13f79535-47bb-0310-9956-ffa450edef68
2009-12-07 21:20:25 +00:00
Jun Rao ac398bd0a7 add AntiEntropyService; patched by Stu Hood, reviewed by junrao for CASSANDRA-193
git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@887575 13f79535-47bb-0310-9956-ffa450edef68
2009-12-05 18:47:55 +00:00
Jun Rao f62d4ec14c preparation for AntiEntropyService; patched by Stu Hood, reviewed by junrao for CASSANDRA-193
git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@887574 13f79535-47bb-0310-9956-ffa450edef68
2009-12-05 18:46:52 +00:00
Jun Rao c2709044d3 add Merkle tree; patched by Stu Hood, reviewed by junrao for CASSANDRA-193
git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@887573 13f79535-47bb-0310-9956-ffa450edef68
2009-12-05 18:44:25 +00:00
Jun Rao e202f1f4e0 preparation for Merkle tree; patched by Stu Hood, reviewed by junrao for CASSANDRA-193
git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@887572 13f79535-47bb-0310-9956-ffa450edef68
2009-12-05 18:42:26 +00:00
Jonathan Ellis c9bbba13f5 move resolve, diff out of Row and into CF static methods
patch by jbellis; reviewed by Stu Hood for CASSANDRA-568

git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@887467 13f79535-47bb-0310-9956-ffa450edef68
2009-12-05 00:30:22 +00:00
Jonathan Ellis 40ed496b91 zero-pad single hex digits in bytesToHex. patch by Stu Hood; reviewed by gdusbabek for CASSANDRA-602
git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@887342 13f79535-47bb-0310-9956-ffa450edef68
2009-12-04 20:19:28 +00:00
Jonathan Ellis 83cce240bf Fix not returning live subcolumns of deleted supercolumns
patch by jbellis; reviewed by junrao for CASSANDRA-583

git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@886886 13f79535-47bb-0310-9956-ffa450edef68
2009-12-03 19:17:03 +00:00
Jonathan Ellis 360d9b6a98 improve testing of StorageService init, and fix shutdown of messagingservice.
patch by gdusbabek; reviewed by jbellis for CASSANDRA-535

git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@886254 13f79535-47bb-0310-9956-ffa450edef68
2009-12-02 18:54:07 +00:00
Eric Evans e65ce8dcd7 JSON importer/exporter tests
git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@885325 13f79535-47bb-0310-9956-ffa450edef68
2009-11-30 03:25:15 +00:00
Jonathan Ellis 95cbb3461a allow serializing null CF; add get_range_slice test exercising this
patch by jbellis; tested by Dan Di Spaltro for CASSANDRA-578

git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@884333 13f79535-47bb-0310-9956-ffa450edef68
2009-11-25 23:16:58 +00:00
Jonathan Ellis 994487d755 make Row contain a single, final CF reference
patch by jbellis; tested by Dan Di Spaltro for CASSANDRA-578

git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@884332 13f79535-47bb-0310-9956-ffa450edef68
2009-11-25 23:16:48 +00:00
Jonathan Ellis 7c4166444b r/m unused Row code, and move table variable into callers rather than serializing it redundantly
patch by jbellis; tested by Dan Di Spaltro for CASSANDRA-578

git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@884331 13f79535-47bb-0310-9956-ffa450edef68
2009-11-25 23:16:34 +00:00
Jonathan Ellis e972ec8dfe add license headers. patch by jbellis
git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@881384 13f79535-47bb-0310-9956-ffa450edef68
2009-11-17 17:19:40 +00:00
Jonathan Ellis 183f51dc21 r/m unused bootstrap directory and ensure streaming files live to be streamed
patch by jbellis; reviewed by Jun Rao for CASSANDRA-538

git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@835446 13f79535-47bb-0310-9956-ffa450edef68
2009-11-12 17:03:52 +00:00
Jonathan Ellis d0db57ad10 move more generic streaming code into Streaming.java
patch by jbellis; reviewed by Jaakko Laine for CASSANDRA-435

git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@834939 13f79535-47bb-0310-9956-ffa450edef68
2009-11-11 16:11:44 +00:00
Jonathan Ellis 93c5afa5c9 r/m unused storageport from ReplicationStrategies. patch by jbellis
git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@834920 13f79535-47bb-0310-9956-ffa450edef68
2009-11-11 15:48:45 +00:00
Eric Evans b294cd555a consolodate BasicUtilities and FBUtilities
Patch by Gary Dusbabek; reviewed by eevans for CASSANDRA-516

git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@834185 13f79535-47bb-0310-9956-ffa450edef68
2009-11-09 19:32:09 +00:00
Jonathan Ellis 5d447035ba containing isBootstrapping and BootstrapTokenAddress information in TokenMetadata is the wrong level of abstraction. Switch to pendingRanges instead.
patch by jbellis and Jaakko Laine for CASSANDRA-525

git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@833579 13f79535-47bb-0310-9956-ffa450edef68
2009-11-06 22:17:26 +00:00
Jonathan Ellis 538dc69515 return clones of supercolumns from memtable so caller can't accidentally mutate them, fixing the failing test.
convert removeDeleted on SC to remove-oriented instead of clone-then-add-back to make this hurt performance less.

patch by jbellis; reviewed by gdusbabek for CASSANDRA-510

git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@832798 13f79535-47bb-0310-9956-ffa450edef68
2009-11-04 17:07:49 +00:00
Jonathan Ellis f6b71a507d add failing test for removing a single subcolumn.
patch by jbellis; reviewed by gdusbabek for CASSANDRA-510

git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@832796 13f79535-47bb-0310-9956-ffa450edef68
2009-11-04 17:07:37 +00:00
Jonathan Ellis 57f0725560 optimize away unnecessary seeks during range scan
patch by Gary Dusbabek; reviewed by jbellis for CASSANDRA-350

git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@832287 13f79535-47bb-0310-9956-ffa450edef68
2009-11-03 03:20:43 +00:00
Jonathan Ellis a08630fce0 prefer bootstrapping into ring sections that are not already being bootstrapped into
patch by jbellis; reviewed by Vijay Parthasarathy for CASSANDRA-517

git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@832285 13f79535-47bb-0310-9956-ffa450edef68
2009-11-03 03:12:16 +00:00
Jonathan Ellis e946c63806 refactor getDefaultToken into default checking + getRandomToken. Decorate OPP keys so we don't have to special case IndexedDKs for getSplits.
patch by jbellis and Vijay Parthasarathy for CASSANDRA-513

git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@832272 13f79535-47bb-0310-9956-ffa450edef68
2009-11-03 02:27:43 +00:00
Jonathan Ellis 3678daa0be brute-force replacement of throwing maps around with encapsulated TokenMetadata
patch by jbellis for CASSANDRA-522

git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@832267 13f79535-47bb-0310-9956-ffa450edef68
2009-11-03 02:24:05 +00:00
Jonathan Ellis 242fa0231b CASSANDRA-522
convert replication strategy methods to multimap
patch by jbellis for CASSANDRA-522

git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@832266 13f79535-47bb-0310-9956-ffa450edef68
2009-11-03 02:23:53 +00:00
Jonathan Ellis 128cb03a5f make BootStrapperTest use of TokenMetadata match actual BootStrapper use better. patch by jbellis for CASSANDRA-502
git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@830218 13f79535-47bb-0310-9956-ffa450edef68
2009-10-27 14:53:18 +00:00
Jonathan Ellis 4856460f0e refactor bootstrap to only concern itself with bootstrapping the local node, which greatly simplifies things
patch by jbellis; reviewed by goffinet for CASSANDRA-483

git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@830214 13f79535-47bb-0310-9956-ffa450edef68
2009-10-27 14:40:29 +00:00
Jonathan Ellis 0287d0dd87 fix the bootstrap interaction with gossip; there were two main problems:
1) token and bootstrap state are not guaranteed to be gossiped together; since we only updated TMD.bootstrapNodes on an update of the token, this means we could actually miss the bootstrap notice
2) deletions of state are not actually supported by Gossiper; there is no concept of that at the protocol level. so if we delete state locally it will never get gossiped. Instead, we have a MODE that is either MOVING or NORMAL, corresponding to bootstrap & normal operation.

patch by jbellis; reviewed by goffinet for CASSANDRA-483

git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@830212 13f79535-47bb-0310-9956-ffa450edef68
2009-10-27 14:40:18 +00:00
Jonathan Ellis 7518f7ce9f all rows go through deserialize/removeDeleted so we can GC tombstones.
patch by jbellis; reviewed by junrao for CASSANDRA-507

git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@828755 13f79535-47bb-0310-9956-ffa450edef68
2009-10-22 15:41:11 +00:00
Jonathan Ellis 26971fb3ff CLHM, fixed version
patch by jbellis; reviewed by goffinet for CASSANDRA-423

git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@828734 13f79535-47bb-0310-9956-ffa450edef68
2009-10-22 14:58:53 +00:00
Jonathan Ellis 924c7e5fcb rename "readstorage" endpoints to "natural," "writestorage" to "write" and "hintedstorage" to "hinted"
make ReplicationStrategy deal with List<InetAddress> instead of InetAddress[] -- we use the former both in RS and externally, so forcing RS to convert to [] and external users to convert back to List is silly
patch by jbellis

git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@828148 13f79535-47bb-0310-9956-ffa450edef68
2009-10-21 19:18:43 +00:00
Jonathan Ellis b767bf7e7d convert EndPoint to InetAddress (removes MembershipCleaner, the code to drop a node from the cluster entirely. we're probably going to want to resurrect that at some point)
patch by jbellis; reviewed by Brandon Williams for CASSANDRA-498

git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@828130 13f79535-47bb-0310-9956-ffa450edef68
2009-10-21 18:26:02 +00:00
Jonathan Ellis 694a6115c7 r/m uses of EndPoint(port) constructor; rename EndPoint methods to make porting easier; r/m gratuitous uses of getHost
patch by jbellis; reviewed by Brandon Williams for CASSANDRA-498

git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@828128 13f79535-47bb-0310-9956-ffa450edef68
2009-10-21 18:25:35 +00:00
Jonathan Ellis 7dbbca6698 make write targets computable independent of replication strategy (i.e., make getReadStorageEndPoints the only method a Strategy needs to implement). we do this by computing the token/endpoint -> Range[] map from the read endpoints, then using that to determine if a bootstrapping node needs to receive a write (if the token being written falls in any of its ranges). Also, make the StorageProxy insert methods aware that bootstrap can entail having extra write targets temporarily, and include those in its consistencylevel calculations.
patch by jbellis; reviewed by Sandeep Tata for CASSANDRA-497

git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@828029 13f79535-47bb-0310-9956-ffa450edef68
2009-10-21 14:18:18 +00:00
Jonathan Ellis b0e6053b85 add test catching regression; call removeDeleted during compaction.
patch by jbellis; reviewed by eevans for CASSANDRA-500

git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@827761 13f79535-47bb-0310-9956-ffa450edef68
2009-10-20 18:41:19 +00:00
Jonathan Ellis b1c5077f44 fix token to cover (left, right] like the rest of Cassandra (and Range.toString). patch by Stu Hood; reviewed by jbellis for CASSANDRA-495
git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@825684 13f79535-47bb-0310-9956-ffa450edef68
2009-10-15 22:21:15 +00:00
Eric Evans 074eef97d6 merging with 0.4 branch
git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@825333 13f79535-47bb-0310-9956-ffa450edef68
2009-10-14 23:07:44 +00:00
Jonathan Ellis 51ec66cccb move bootstrap-related code into Bootstrapper
patch by jbellis; reviewed by Eric Evans for CASSANDRA-477

git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@823616 13f79535-47bb-0310-9956-ffa450edef68
2009-10-09 17:07:14 +00:00
Jonathan Ellis 67ae1ee589 Use DecoratedKey objects in Memtable, SSTableReader/Writer objects.
patch by johano; reviewed by jbellis for CASSANDRA-446

git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@821134 13f79535-47bb-0310-9956-ffa450edef68
2009-10-02 19:04:54 +00:00
Jonathan Ellis 370082fae4 fix heisenbug in RecoveryManager2Test where a compaction could add back a new sstable to the "cleared" ColumnFamilyStore
patch by jbellis; reviewed by junrao for CASSANDRA-463

git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@821128 13f79535-47bb-0310-9956-ffa450edef68
2009-10-02 18:40:35 +00:00
Jonathan Ellis 15599f78de merge from 0.4 branch
git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@820408 13f79535-47bb-0310-9956-ffa450edef68
2009-09-30 19:26:57 +00:00
Jonathan Ellis 60839fea85 fix tests
patch by jbellis for CASSANDRA-459

git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@819827 13f79535-47bb-0310-9956-ffa450edef68
2009-09-29 03:48:21 +00:00
Jonathan Ellis e849e97773 merge from 0.4 branch
git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@819123 13f79535-47bb-0310-9956-ffa450edef68
2009-09-26 12:48:55 +00:00
Jonathan Ellis d309c5dc77 record gossipped enpoint/token pairs as we see them. also clean up SystemTable code to avoid unnecessary CF fetches. patch by Gary Dusbabek and jbellis for CASSANDRA-437
git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@818712 13f79535-47bb-0310-9956-ffa450edef68
2009-09-25 04:01:35 +00:00
Jonathan Ellis 1d0cf136f6 remove unused skip argument from anticompaction. change HHM to perform a major compaction instead of anticompaction since that's really what we want there
patch by jbellis; reviewed by junrao for CASSANDRA-454

git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@818517 13f79535-47bb-0310-9956-ffa450edef68
2009-09-24 15:32:21 +00:00
Jonathan Ellis d293b77bed serialize row outside of commitlog executor to improve parallelizability
patch by jbellis; reviewed by junrao for CASSANDRA-444

git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@816745 13f79535-47bb-0310-9956-ffa450edef68
2009-09-18 19:02:49 +00:00
Jonathan Ellis b618106f3c Replace PriorityQueue mess with a CompactionIterator that efficiently yields compacted Rows from a set of sstables by feeding CollationIterator into a ReducingIterator transform. ("Efficiently" means we never deserialize data until it is needed, so the number of sstables that can be compacted at once is virtually unlimited, and if only one sstable contains a given key that row data will be copied over without an intermediate de/serialize step.) This is a very natural fit for the compaction algorithm and almost entirely gets rid of duplicated code between doFileCompaction and doAntiCompaction.
patch by jbellis; reviewed by goffinet for CASSANDRA-436

git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@816382 13f79535-47bb-0310-9956-ffa450edef68
2009-09-17 21:10:09 +00:00
Jonathan Ellis bb5a2700d7 minor fixes
patch by jbellis; reviewed by goffinet for CASSANDRA-436

git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@816379 13f79535-47bb-0310-9956-ffa450edef68
2009-09-17 21:09:52 +00:00
Jonathan Ellis 0c84342d3a rename MinorCompactionManager -> CompactionManager. patch by jbellis for CASSANDRA-447
git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@815498 13f79535-47bb-0310-9956-ffa450edef68
2009-09-15 21:30:26 +00:00
Jonathan Ellis 39982f3649 make anticompaction return a list of the split-out sstables, instead of a mostly-useless boolean
patch by jbellis; reviewed by goffinet for CASSANDRA-431

git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@814756 13f79535-47bb-0310-9956-ffa450edef68
2009-09-14 18:04:46 +00:00
Jonathan Ellis bee816c68a Replace sstableLock with SSTableTracker, which performs updates to the sstable list atomically
without readers ever having to block.  (Readers will always either see the old list, or the new.)
We avoid a race on the delete of the old SSTable files on-disk by using a ReferenceQueue:
when the last reference is gone, a PhantomReference is added to the queue and can do cleanup.
In case Cassandra is killed between compaction and this cleanup, a -Compacted empty file
is written to disk; Cassandra removes any files thus tagged on startup.

patch by jbellis; reviewed by Chris Goffinet for CASSANDRA-414

git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@813544 13f79535-47bb-0310-9956-ffa450edef68
2009-09-10 18:48:35 +00:00
Jonathan Ellis 40c154ab4b make compaction code use SSTableReader objects. r/m SSTableReader.get static method
patch by jbellis; reviewed by Eric Evans for CASSANDRA-424

git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@812641 13f79535-47bb-0310-9956-ffa450edef68
2009-09-08 18:59:28 +00:00
Eric Evans bb2c187d20 merged with cassandra-0.4 branch
git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@812262 13f79535-47bb-0310-9956-ffa450edef68
2009-09-07 19:19:00 +00:00
Jonathan Ellis ab392a6ee7 remove buggy concurrentlinkedhashmap library and lru cache. too late in 0.4 to try to debug the library -- will revisit for 0.5. patch by jbellis; reviewed by Chris Goffinet for CASSANDRA-405
git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@810540 13f79535-47bb-0310-9956-ffa450edef68
2009-09-02 15:04:16 +00:00
Jonathan Ellis fe28c47406 merge from 0.4 branch
git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@810335 13f79535-47bb-0310-9956-ffa450edef68
2009-09-02 02:02:30 +00:00
Jonathan Ellis eb83251bda r/m unnecessary IReplicationStrategy interface. r/m LoadVerbHandler and unused endpoint-related code. rename AbstractStrategy -> AbstractReplicationStrategy and getEndpoint methods.
patch by jbellis; reviewed by Sandeep Tata for CASSANDRA-393

git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@809586 13f79535-47bb-0310-9956-ffa450edef68
2009-08-31 13:35:46 +00:00
Jonathan Ellis 29515c11d7 call doAntiCompaction in the tests the same way we do in the actual code -- by submitting it to the MinorCompactionManager so it serializes with other compaction tasks. patch by Sandeep Tata; reviewed by jbellis for CASSANDRA-395
git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@808742 13f79535-47bb-0310-9956-ffa450edef68
2009-08-28 03:05:49 +00:00
Jonathan Ellis 3427b4b7d2 add apache license boilerplate
git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@808590 13f79535-47bb-0310-9956-ffa450edef68
2009-08-27 20:07:16 +00:00
Jonathan Ellis 866b06ec3d better fix for COPP. patch by jbellis
git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@808271 13f79535-47bb-0310-9956-ffa450edef68
2009-08-27 03:19:40 +00:00
Jonathan Ellis eb6d11d549 fix unit test. patch by jbellis for CASSANDRA-242
git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@808268 13f79535-47bb-0310-9956-ffa450edef68
2009-08-27 03:13:50 +00:00
Jonathan Ellis 021ab75a5f add midpoint method to IPartitioner. patch by Stu Hood; reviewed by jbellis for CASSANDRA-242
git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@808206 13f79535-47bb-0310-9956-ffa450edef68
2009-08-26 22:20:23 +00:00
Jonathan Ellis f8fa6d2431 refactors COPP to use BytesToken. patch by Stu Hood; reviewed by jbellis for CASSANDRA-242
git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@808205 13f79535-47bb-0310-9956-ffa450edef68
2009-08-26 22:20:13 +00:00
Jonathan Ellis 847f3b0293 1. Switch bootstrapNodes in TokenMetadata to Map<Token,EndPoint> so RackUnawareStrategy can use it.
2. Fix AbstractStrategy and RackUnawareStrategy to incorporate the bootstrapping nodes for
getHintedStorageEndPoints through StorageService.getNStorageEndPointMap (now used by insert and
insertBlocking after 383)
3. Add unit test fot RackUnawareStrategy to test if bootstrapping nodes are being returned correctly.

patch by Sandeep Tata; reviewed by jbellis for CASSANDRA-375

git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@808161 13f79535-47bb-0310-9956-ffa450edef68
2009-08-26 19:04:07 +00:00
Jun Rao c4992f48ce Expose ring map to client for more direct access; patch by junrao; reviewed by jbellis for CASSANDRA-197
git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@807431 13f79535-47bb-0310-9956-ffa450edef68
2009-08-24 23:39:27 +00:00
Jonathan Ellis e959b2c7f6 rename getInitialToken to getToken; it doesn't actually have anything to do w/ initial or default tokens. log token on startup.
patch by jbellis; reviewed by Sammy Yu for CASSANDRA-364

git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@806016 13f79535-47bb-0310-9956-ffa450edef68
2009-08-20 01:03:31 +00:00
Jonathan Ellis 0c5cd149a3 Add "bootstrap mode" to node startup. This causes the node to tell the
nodes that have data it needs to send it the data, and not otherwise
participate in reads or writes until the bootstrap is complete.
patch by Sandeep Tata; reviewed by jbellis for CASSANDRA-195

git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@805968 13f79535-47bb-0310-9956-ffa450edef68
2009-08-19 20:51:06 +00:00
Jonathan Ellis eb886e9999 make StorageTable.StorageMetadata a singleton, so multiple initMetadatas are safe.
patch by Bill de hOra and jbellis; reviewed by Michael Greene for CASSANDRA-358

git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@804372 13f79535-47bb-0310-9956-ffa450edef68
2009-08-14 21:00:18 +00:00
Jonathan Ellis 1aeca2b625 add license headers to new-since-0.3 files.
patch by jbellis; reviewed by Eric Evans for CASSANDRA-365

git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@804294 13f79535-47bb-0310-9956-ffa450edef68
2009-08-14 16:52:55 +00:00
Jonathan Ellis 6b7a1c300f switch "!isAscending" for "reversed."
patch by jbellis, Carl Bystrom, and Bill de hOra. reviewed by Eric Evans for CASSANDRA-311

git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@802953 13f79535-47bb-0310-9956-ffa450edef68
2009-08-10 23:17:08 +00:00
Jonathan Ellis a7f0fb64ae r/m unwanted file. patch by jbellis
git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@802268 13f79535-47bb-0310-9956-ffa450edef68
2009-08-07 23:30:32 +00:00
Jonathan Ellis d748648b23 fix broken casts. patch by Bill de hOra; reviewed by jbellis for CASSANDRA-338
git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@802267 13f79535-47bb-0310-9956-ffa450edef68
2009-08-07 23:29:50 +00:00
Jonathan Ellis 8a9c25ae0e - switch from trying to get the next endpoint by increasing offset to asking tokenMetadata for "the next
one." this will always be correct where the offset approach will not (usually you want offset to just be 1,
but sometimes you have to keep increasing it if no results are found but the range is still not finished)
 - merge results differently when the endpoint responsible for where the ring wraps is involved, since
that endpoint can hold keys from both the beginning and end of the range.

patch by jbellis; tested by Mark Robson for CASSANDRA-348

git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@802180 13f79535-47bb-0310-9956-ffa450edef68
2009-08-07 20:48:45 +00:00
Jonathan Ellis fba03ce691 move getKeyRange to CFS, where it encapsulates better.
patch by jbellis; reviewed by Eric Evans for CASSANDRA-345

git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@802098 13f79535-47bb-0310-9956-ffa450edef68
2009-08-07 17:35:25 +00:00
Jonathan Ellis d221a41719 tests + fix for bsearch returning not-found-to-the-right
patch by jbellis; reviewed by Jun Rao for CASSANDRA-351

git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@802078 13f79535-47bb-0310-9956-ffa450edef68
2009-08-07 16:24:54 +00:00
Jonathan Ellis 00190bf20e inline excessively abstracted reTest setup
patch by jbellis; reviewed by Jun Rao for CASSANDRA-351

git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@802077 13f79535-47bb-0310-9956-ffa450edef68
2009-08-07 16:24:41 +00:00
Jonathan Ellis 1dd5f60422 compact slicelarge row to ensure we are in fact testing with more than the minimum index count
patch by jbellis; reviewed by Jun Rao for CASSANDRA-351

git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@802076 13f79535-47bb-0310-9956-ffa450edef68
2009-08-07 16:24:31 +00:00
Jonathan Ellis a9c6a1e7d6 always write at least one index (with first and last column of the range) for the columns in row. this vastly simplifies column reading code and makes indexing bugs much more obvious (since there is only one read path each for names / slices now).
patch by jbellis; reviewed by Jun Rao for CASSANDRA-332

git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@802072 13f79535-47bb-0310-9956-ffa450edef68
2009-08-07 16:24:04 +00:00
Jonathan Ellis b3b9cd8d51 add test for multi-block reversal.
patch by jbellis; reviewed by Jun Rao for CASSANDRA-332

git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@802070 13f79535-47bb-0310-9956-ffa450edef68
2009-08-07 16:23:42 +00:00
Jonathan Ellis 6c49231027 Bootstrap code + tests. Patch by Sandeep Tata; reviewed by jbellis for CASSANDRA-213
git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@800561 13f79535-47bb-0310-9956-ffa450edef68
2009-08-03 20:59:32 +00:00
Jonathan Ellis 45514cf1be remove AbstractWriter. all it was providing was append methods, which are inlined into SSTableWriter now; the rest was all wrappers. also, rename some variables in SST/SSTW.
patch by jbellis; reviewed by Stu Hood for CASSANDRA-330

git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@799950 13f79535-47bb-0310-9956-ffa450edef68
2009-08-01 22:31:24 +00:00
Jonathan Ellis 8203a6cfb2 r/m special case that no column names=all columns; add test for no-columns cases.
patch by jbellis; reviewed by Stu Hood for CASSANDRA-330

git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@799945 13f79535-47bb-0310-9956-ffa450edef68
2009-08-01 22:30:49 +00:00
Jonathan Ellis 0f95411c03 r/m SF.next(DataOutput) in favor of more-efficient IteratingRow.
patch by jbellis; reviewed by Stu Hood for CASSANDRA-330

git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@799944 13f79535-47bb-0310-9956-ffa450edef68
2009-08-01 22:30:40 +00:00
Jonathan Ellis 70ce402fdd Make range queries continue on the next node when necessary.
Patch by Arin Sarkissian; reviewed by jbellis for CASSANDRA-212

git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@799684 13f79535-47bb-0310-9956-ffa450edef68
2009-07-31 18:29:52 +00:00
Jonathan Ellis 9164940f41 allow start of [] to mean "start with the largest value" when ascending=false. patch by Jun Rao; reviewed by jbellis for CASSANDRA-263
git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@799632 13f79535-47bb-0310-9956-ffa450edef68
2009-07-31 15:06:35 +00:00
Jonathan Ellis 066ef58a96 run source files through dos2unix to standardize on \n line endings. patch by Jeff Hodges; reviewed by Michael Greene for CASSANDRA-111
git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@799331 13f79535-47bb-0310-9956-ffa450edef68
2009-07-30 15:30:21 +00:00
Jonathan Ellis 572b5f852d table -> keyspace
patch by jbellis; reviewed by Michael Greene for CASSANDRA-271

git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@799140 13f79535-47bb-0310-9956-ffa450edef68
2009-07-30 00:29:28 +00:00
Jonathan Ellis e3aef8e0ed fix bug in comparing-to-empty-array; realize that we need compare-to-empty-array to specify start/finish of slices.
patch by jbellis; reviewed by Stu Hood for CASSANDRA-119

git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@798273 13f79535-47bb-0310-9956-ffa450edef68
2009-07-27 20:19:53 +00:00
Jonathan Ellis b866f81415 add SubcolumnCompareWith option and subcolumnComparator code.
patch by jbellis; reviewed by Eric Evans for CASSANDRA-304

git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@796132 13f79535-47bb-0310-9956-ffa450edef68
2009-07-21 03:01:55 +00:00
Jonathan Ellis e425474af2 add get_slice for supercolumn, tests. add back updated TimeSortTest. we need to pass gcBefore to the filters so Slice can count correctly.
patch by jbellis; reviewed by Eric Evans for CASSANDRA-303

git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@796129 13f79535-47bb-0310-9956-ffa450edef68
2009-07-21 02:58:20 +00:00
Jonathan Ellis 986cee6806 change String column names to byte[] to allow user-defined ordering.
patch by jbellis; reviewed by Sandeep Tata for CASSANDRA-185

git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@796108 13f79535-47bb-0310-9956-ffa450edef68
2009-07-21 01:36:52 +00:00
Jonathan Ellis 8ff63a92ba r/m time-sorted columns.
patch by jbellis; reviewed by Sandeep Tata for CASSANDRA-185

git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@796107 13f79535-47bb-0310-9956-ffa450edef68
2009-07-21 01:36:10 +00:00
Jonathan Ellis 7435fc82c0 introduce column() compatibility layer to make writing tests a little less verbose.
patch by jbellis; reviewed by Sandeep Tata for CASSANDRA-185

git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@796106 13f79535-47bb-0310-9956-ffa450edef68
2009-07-21 01:35:47 +00:00
Jonathan Ellis 840a64dcb9 move data files into per-table subdirectories. patch by Arin Sarkissian; reviewed by Michael Greene and jbellis
git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@794784 13f79535-47bb-0310-9956-ffa450edef68
2009-07-16 19:10:06 +00:00
Jonathan Ellis ff764ff22b r/m offset from slice api; we could live with being inefficient but not with breaking read repair.
patch by jbellis; reviewed by Evan Weaver for CASSANDRA-286

git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@794474 13f79535-47bb-0310-9956-ffa450edef68
2009-07-16 00:38:53 +00:00
Jonathan Ellis f2da00fb0f thrift changes to remove : api.
use ColumnPath, ColumnParent, etc. structs to encapsulate optional SuperColumns (and occasionally, optional Columns).
patch by jbellis; reviewed by Evan Weaver and Sandeep Tata for CASSANDRA-139

git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@794429 13f79535-47bb-0310-9956-ffa450edef68
2009-07-15 22:04:43 +00:00
Jonathan Ellis dd4f4be2b4 add IdentityQueryFilter and finish removing IFilter.
patch by jbellis; reviewed by Jun Rao for CASSANDRA-287

git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@793055 13f79535-47bb-0310-9956-ffa450edef68
2009-07-10 17:49:18 +00:00
Jonathan Ellis 48093358fb replace namesfilter with NamesQueryFilter. mv filter code into separate package.
patch by jbellis; reviewed by Jun Rao for CASSANDRA-287

git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@793053 13f79535-47bb-0310-9956-ffa450edef68
2009-07-10 17:49:01 +00:00
Jonathan Ellis f5a787af72 r/m unused (and dangerous) RowReadCommand.
patch by jbellis; reviewed by Jun Rao for CASSANDRA-287

git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@793050 13f79535-47bb-0310-9956-ffa450edef68
2009-07-10 17:48:41 +00:00
Jonathan Ellis 2b18bade55 make get_key_range act on a single CF.
patch by jbellis; reviewed by Eric Evans for CASSANDRA-280

git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@791961 13f79535-47bb-0310-9956-ffa450edef68
2009-07-07 19:57:37 +00:00
Jonathan Ellis 23fa1bc0bd combine range version of get_slice into get_slice itself.
patch by jbellis; reviewed by Michael Greene for CASSANDRA-277

git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@791872 13f79535-47bb-0310-9956-ffa450edef68
2009-07-07 15:40:46 +00:00
Jonathan Ellis b54de30a02 per-table key cache size.
patch by jbellis; reviewed by Jun Rao for CASSANDRA-259

git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@791592 13f79535-47bb-0310-9956-ffa450edef68
2009-07-06 19:58:13 +00:00
Jonathan Ellis d6c0b0f259 refactor sstable into SSTable, SSTableReader, and SSTableWriter.
patch by jbellis; reviewed by Jun Rao for CASSANDRA-259

git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@791591 13f79535-47bb-0310-9956-ffa450edef68
2009-07-06 19:58:05 +00:00
Jonathan Ellis cdd8b17062 add offset support to get_slice. patch by Jun Rao; reviewed by jbellis for CASSANDRA-261
git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@791553 13f79535-47bb-0310-9956-ffa450edef68
2009-07-06 17:50:16 +00:00
Jonathan Ellis 0172497ad2 minor code cleanups. patch by Edward Ribeiro; reviewed by jbellis for CASSANDRA-273
git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@791059 13f79535-47bb-0310-9956-ffa450edef68
2009-07-04 05:55:09 +00:00
Jonathan Ellis 83b203e61e add test catching buggy update of header on flush; refactor so there is only one version of code doing those writes (the correct one).
patch by jbellis; reviewed by Jun Rao for CASSANDRA-264

git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@789465 13f79535-47bb-0310-9956-ffa450edef68
2009-06-29 22:07:49 +00:00
Jonathan Ellis f55dd06ec5 avoid optimization of not checking older memtable and SSTables if we find _an_ answer early on; it causes bugs
git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@788776 13f79535-47bb-0310-9956-ffa450edef68
2009-06-26 17:26:36 +00:00
Jonathan Ellis 479c1a40af add test showing timefilter failure
git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@788775 13f79535-47bb-0310-9956-ffa450edef68
2009-06-26 17:26:26 +00:00
Jonathan Ellis b9da215e06 some gms tests. patch by johano; reviewed by jbellis for CASSANDRA-249
git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@788771 13f79535-47bb-0310-9956-ffa450edef68
2009-06-26 17:22:40 +00:00
Jonathan Ellis 6342512a34 CASSANDRA-217 rename get_slice_from to get_slice. implement get_slice_super in terms of SliceFrom too.
(time-based columns can continue to be sliced with get_columns_since)

patch by jbellis; reviewed by Eric Evans for CASSANDRA-217

git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@788516 13f79535-47bb-0310-9956-ffa450edef68
2009-06-25 21:26:33 +00:00
Jonathan Ellis 963a1b3bfd add tests for supercolumnfamily removal; fix bugs.
(both the assert removal and the "if" removal are bug fixes.)

patch by jbellis; reviewed by Sandeep Tata for CASSANDRA-255

git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@788511 13f79535-47bb-0310-9956-ffa450edef68
2009-06-25 21:07:45 +00:00
Jonathan Ellis 4e7f8deac0 switch to passing a single filename to open an sstable for writing. this makes open-for-read and open-for-write consistent.
patch by jbellis; reviewed by Eric Evans for CASSANDRA-254

git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@788473 13f79535-47bb-0310-9956-ffa450edef68
2009-06-25 19:14:07 +00:00
Jonathan Ellis 81dd8ee5f6 use normal Table for system metadata
patch by jbellis; reviewed by Jun Rao for CASSANDRA-235

git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@788144 13f79535-47bb-0310-9956-ffa450edef68
2009-06-24 19:25:33 +00:00
Jonathan Ellis f9a1343d92 make static methods of SSTable that take a filename and then use the cache to grab an sstable object, simple non-static methods instead
patch by jbellis; reviewed by Eric Evans for CASSANDRA-224

git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@787762 13f79535-47bb-0310-9956-ffa450edef68
2009-06-23 17:48:18 +00:00
Jonathan Ellis 2f322a8bd0 encapsulate sstable bloom filter
patch by jbellis; reviewed by Eric Evans for CASSANDRA-224

git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@787761 13f79535-47bb-0310-9956-ffa450edef68
2009-06-23 17:48:08 +00:00
Jonathan Ellis 2493c9a565 encapsulate sstable index
patch by jbellis; reviewed by Eric Evans for CASSANDRA-224

git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@787760 13f79535-47bb-0310-9956-ffa450edef68
2009-06-23 17:48:18 +00:00
Jonathan Ellis a2f9b40183 refactor read-only constructor to SSTable.open
patch by jbellis; reviewed by Eric Evans for CASSANDRA-224

git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@787759 13f79535-47bb-0310-9956-ffa450edef68
2009-06-23 17:47:53 +00:00
Jonathan Ellis 509cbb85de remove table_ from CommitLog and add multitable tests.
patch by jbellis; reviewed by goffinet for CASSANDRA-79

git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@787407 13f79535-47bb-0310-9956-ffa450edef68
2009-06-22 21:18:12 +00:00
Jonathan Ellis 3673e28186 multitable support.
fix CF table dependencies, making CommitLogTest pass.  Also fixes CASSANDRA-188 in passing.

fix tablename being null bugs by always parsing tablename from filename.

fix last part of SequenceFile.

patch by jbellis; reviewed by goffinet for CASSANDRA-79

git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@787404 13f79535-47bb-0310-9956-ffa450edef68
2009-06-22 21:17:46 +00:00
Jonathan Ellis 9aeef94db8 Pass and write table parameter as needed throughout the codebase to add multitable support.
(Many places cheated and just assumed that tables.get(0) was the only table.)
Patch builds but does not yet pass tests.

Patch by goffinet; reviewed by jbellis for CASSANDRA-79

git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@787403 13f79535-47bb-0310-9956-ffa450edef68
2009-06-22 21:17:59 +00:00
Jonathan Ellis a0c2b2a380 add CommitLog and RecoveryManager tests. patch by jbellis; reviewed by goffinet for CASSANDRA-237
git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@786243 13f79535-47bb-0310-9956-ffa450edef68
2009-06-18 20:22:10 +00:00
Jonathan Ellis c1545f5214 fix off-by-one error in Range.contains(Token): the endpoint (right) of the range is always supposed to be exclusive, but it was inclusive in the non-wrapping case. patch by Stu Hood; reviewed by jbellis for CASSANDRA-236
git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@785697 13f79535-47bb-0310-9956-ffa450edef68
2009-06-17 16:08:39 +00:00
Jonathan Ellis 16306e02de apply rows atomically, rather than one-column-at-a-time. this avoids exposing the bug in time-sorted
columns discussed in #223.
patch by jbellis; reviewed by Jun Rao for CASSANDRA-208

git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@783078 13f79535-47bb-0310-9956-ffa450edef68
2009-06-09 17:46:47 +00:00
Jonathan Ellis 72e6eea9e4 split sstable into data, index, and bloom filter files. this allows us to avoid saving up index chunks
in memory until the sstable data is completely written, while still allowing fast scanning of the index
on startup.  it also simplifies the sstable/sequencefile code considerably.
patch by jbellis; reviewed by Jun Rao for  CASSANDRA-208

git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@783077 13f79535-47bb-0310-9956-ffa450edef68
2009-06-09 17:46:42 +00:00
Jonathan Ellis 30b1f5f3d3 add test covering use of column indexes. patch by Jun Rao; reviewed by jbellis for CASSANDRA-210
git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@780853 13f79535-47bb-0310-9956-ffa450edef68
2009-06-01 22:16:58 +00:00
Jonathan Ellis bb0d6dfa20 allow specifying a subset of columnfamilies to check for get_key_range.
patch by jbellis; reviewed by Eric Evans for CASSANDRA-152

git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@779261 13f79535-47bb-0310-9956-ffa450edef68
2009-05-27 18:04:56 +00:00
Jonathan Ellis 4ac9118f7c Add get_slice_from functionality using column indexes for efficiency.
Patch by Jun Rao and jbellis for CASSANDRA-172

git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@777578 13f79535-47bb-0310-9956-ffa450edef68
2009-05-22 15:33:42 +00:00
Jonathan Ellis d03d80b6ed merge from 0.3 branch
git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@776716 13f79535-47bb-0310-9956-ffa450edef68
2009-05-20 14:44:41 +00:00
Jonathan Ellis 88edbed30c merge from 0.3 branch
git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@775983 13f79535-47bb-0310-9956-ffa450edef68
2009-05-18 15:22:23 +00:00
Jonathan Ellis 20f7d032c7 add get_slice_by_name_range command. patch by Sandeep Tata; reviewed by jbellis for CASSANDRA-53
git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@775308 13f79535-47bb-0310-9956-ffa450edef68
2009-05-15 20:18:55 +00:00
Jonathan Ellis ae70cea79a fix RackUnawareStrategyTest -- endpoint asserts 'host' is an ip address (to make sure we're not mixing hostnames in again) so create a suitable fake IP for the test. patch by jbellis for CASSANDRA-163
git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@774097 13f79535-47bb-0310-9956-ffa450edef68
2009-05-12 21:26:42 +00:00
Jonathan Ellis b460bd71c5 test to more reliably reproduce CME during range. fix by locking out compact during range query.
patch by jbellis; reviewed by Eric Evans for CASSANDRA-161

git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@774024 13f79535-47bb-0310-9956-ffa450edef68
2009-05-12 19:11:27 +00:00
Jonathan Ellis 5886b7c9ac fix race condition in compaction -- it was possible for a read thread to "snapshot" ssTables_, then have
the compactor thread delete those (after merging them into a new file) before the read thread checked
them.  Since the read thread's "snapshot" doesn't include the new merged sstable, it incorrectly tells
the caller that the key does not exist.
patch by jbellis; reviewed by Eric Evans for CASSANDRA-161

git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@774023 13f79535-47bb-0310-9956-ffa450edef68
2009-05-12 19:11:21 +00:00
Jonathan Ellis 5964cd4c04 extract tests that could conflict with each other to a separate test class (= gets own jvm)
patch by jbellis; reviewed by Sandeep Tata for CASSANDRA-162

git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@773941 13f79535-47bb-0310-9956-ffa450edef68
2009-05-12 15:26:52 +00:00
Jonathan Ellis 97fc5cb8ef migrate to JUnit 4.6. patch by jbellis; reviewed by Sandeep Tata for CASSANDRA-162
git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@773940 13f79535-47bb-0310-9956-ffa450edef68
2009-05-12 15:26:38 +00:00
Jonathan Ellis 8054e4e715 test different data sizes for namesort. patch by jbellis
git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@773730 13f79535-47bb-0310-9956-ffa450edef68
2009-05-11 23:52:23 +00:00
Jonathan Ellis dfa41ec103 cannonicalize all accesses to indexMetadataMap.
patch by jbellis; reviewed by Jun Rao for CASSANDRA-153

git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@773726 13f79535-47bb-0310-9956-ffa450edef68
2009-05-11 23:48:28 +00:00
Jonathan Ellis 69bc7e97c8 unit test to expose bug system test is running into. patch by jbellis; reviewed by Jun Rao for CASSANDRA-153
git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@773725 13f79535-47bb-0310-9956-ffa450edef68
2009-05-11 23:48:20 +00:00
Jonathan Ellis fb347bd3d1 fix CF.digest NPE. patch by jbellis; reviewed by Eric Evans for CASSANDRA-149
git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@772690 13f79535-47bb-0310-9956-ffa450edef68
2009-05-07 16:03:32 +00:00
Jonathan Ellis 65f66e982d force flush when there are pending ops on the memtable executor even when none have finished yet. this fixes test case intermittent failures. patch by jbellis; reviewed by Eric Evans for CASSANDRA-141
git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@772361 13f79535-47bb-0310-9956-ffa450edef68
2009-05-06 17:04:32 +00:00
Jonathan Ellis c568dc733e add test for null configFileName_. patch by Jeff Hodges; reviewed by jbellis for CASSANDRA-129
git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@772027 13f79535-47bb-0310-9956-ffa450edef68
2009-05-06 02:00:06 +00:00
Jonathan Ellis 362f287c84 refactor IColumn.addColumn to remove redundant name parameter. patch by Sandeep Tata; reviewed by jbellis for CASSANDRA-96
git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@772000 13f79535-47bb-0310-9956-ffa450edef68
2009-05-05 22:47:22 +00:00
Jonathan Ellis 4a5620dea2 avoid raising an exception in SequenceFile.next when a key does not exist (e.g. when bloom filter gives a false positive). patch by Jun Rao; reviewed by jbellis for CASSANDRA-126
git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@770517 13f79535-47bb-0310-9956-ffa450edef68
2009-05-01 02:24:10 +00:00
Jonathan Ellis 7bb094f086 r/m copied JDK code
patch by jbellis; reviewed by Eric Evans for CASSANDRA-37

git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@769088 13f79535-47bb-0310-9956-ffa450edef68
2009-04-27 18:24:25 +00:00
Jonathan Ellis d2a61c67b0 add SSTable tests. in particular we want to be sure to test bloomfilter
[de]serialize since that's going to change a lot.
patch by jbellis; reviewed by Eric Evans for CASSANDRA-37

git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@769087 13f79535-47bb-0310-9956-ffa450edef68
2009-04-27 18:24:18 +00:00
Jonathan Ellis bfb2e95220 rename getDefaultToken -> getInitialToken
patch by jbellis; reviewed by Jun Rao for CASSANDRA-65

git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@769019 13f79535-47bb-0310-9956-ffa450edef68
2009-04-27 15:01:51 +00:00
Jonathan Ellis ec7f04b4df r/m StorageService.token in favor of explicitly passing a Partitioner object. this allows testing of components independent of the static SS.
patch by jbellis; reviewed by Jun Rao for CASSANDRA-65

git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@769017 13f79535-47bb-0310-9956-ffa450edef68
2009-04-27 15:01:36 +00:00
Jonathan Ellis 907d92e21b replace BigInteger tokens with BigIntegerToken and StringToken in RandomPartitioner and OrderPreservingPartitioner, respectively. (OrderPreservingHashPartitioner is no more.)
Doing order preserving partitioning based on the raw string has a number of compelling advantages:
 - there is no key length that all tokens must be padded to (which can be expensive if there is a range of key lengths) and which cannot be increased after deployment
 - it allows user-defined collations [sorting] rather than being limited to sorting by code point value (which is useless in the unicode world, and not always what you want even for ascii keys)
 - it will work with all UTF-16 characters, not just the UCS-2 subset (this is a limitation of using as a base 2**16, i.e., assuming for your order preserving hash that all characters are two bytes).

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

git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@769016 13f79535-47bb-0310-9956-ffa450edef68
2009-04-27 15:01:29 +00:00
Jonathan Ellis afd3c2765b move testng code to test/unit. patch by johano; reviewed by jbellis for #104
git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@768584 13f79535-47bb-0310-9956-ffa450edef68
2009-04-25 19:07:00 +00:00