43425128baclean up initialization / marshalling code. Lets some of the public mergeStat fields to be protected
sears
2010-12-14 00:06:32 +0000
eb4446f409readability fix: fields in mergeStats that are only used for computing extended stats for pretty print are now prefixed with "stats_", and can be optionally disabled at compile time
sears
2010-12-13 22:27:13 +0000
7e44641799move c1-c2 backpresure to linear backpressure model; removes a few hundred lines of fussy code, and should enable further simplifiactions
sears
2010-12-13 21:17:35 +0000
347a4126f3remove the NO_SNOWSHOVEL c-preprocessor stuff. There is no way it was working anyway...
sears
2010-12-11 01:04:33 +0000
8dddc7e168remove line from unit test that had no effect, but broke compilation
sears
2010-12-10 20:42:57 +0000
a8e905c0d6fix deadlock on shutdown; be more stingy with bloom filter RAM with small indexes, add bloom filter to c2, default back to old buffer manager
sears
2010-12-08 19:49:13 +0000
79936da79bloosen some scheduling parameters
sears
2010-12-08 19:46:55 +0000
ccf3895595conservatively make the bloom filter really big (should behave well down to 100 byte keys, waste ram otherwise...)
sears
2010-10-05 16:55:29 +0000
31cafbef6cget rid of -Wno-variadic-macros since it suddenly broke compilation for some reason
sears
2010-10-05 16:54:27 +0000
8936df750afix includes to avoid linker errors
sears
2010-10-05 16:52:32 +0000
0c5700257cre-re-re-...re-disable new buffer manager optimizations
sears
2010-10-05 16:50:39 +0000
b9dd11a7e4reduce default datapage_size to 1 (4096) to avoid useless seeks for small values
sears
2010-10-05 16:23:31 +0000
f9a1f411e1initial checkin of bloom filter logic for lsm trees
sears
2010-10-03 23:05:45 +0000
3619e86271initial checkin of bloom filter
sears
2010-10-03 18:06:19 +0000
6eaf5da8deport to newer gcc/g++
sears
2010-10-02 12:52:41 +0000
4c0e8a7186change cerr to log4cpp
sears
2010-09-29 17:58:34 +0000
105936eebapartially roll-back last commit, which contained some changes that turned requestDispatch->bulk_insert into a no-op for benchmarking
sears
2010-09-01 17:42:27 +0000
b1e5e3ad78fix minor memory leak
sears
2010-09-01 17:40:52 +0000
29d482cffeadd missing includes to check_util.h
sears
2010-09-01 17:40:20 +0000
b769e1866ffix deadlock and memory leak in network protocols
sears
2010-09-01 17:39:49 +0000
a1f3f92ccaadded bulk-insert APIs, prevent c1-c2 from outrunning c0-c1 by too much, and fix the overshoot computations in merge manager (roughly corresponds to run 20)
sears
2010-08-30 22:22:25 +0000
f8248240afcalculate c0->current_size more eagerly
sears
2010-08-25 16:36:17 +0000
960ff041e2remove old comments
sears
2010-08-24 00:40:48 +0000
6fd7dd0523cleaned up some code, moved pretty_print into its own thread, and fixed some buggy stats computations
sears
2010-08-23 23:28:29 +0000
98b88a227bfixed some statistics computations. They are still wrong. It crashes for an unknown reason. However, this version sometimes breaks 10K op/s for loads, and 1K op/s for workloada
sears
2010-08-23 17:11:31 +0000
bcea21c06afixed memory bug in client scams; better debugging status during merge backpressure
sears
2010-08-21 03:30:12 +0000
07b35f4e20scattered, and poorly tested fixes. finer grained latching for tree nodes; throttle c0-c1 merge when c0 is small; fix delta computations for c0 throttling; disable short pauses for c1-c2 merge. this gets the bulk load throughput up to 8500, but workloada is still slow
sears
2010-08-21 03:09:18 +0000
0d471bb912fix typo that leads to double frees
sears
2010-08-18 18:06:59 +0000
b894cebaf7add memTreeComponent::batchedRevalidatingIterator; amortize cost of red black latching during merge
sears
2010-08-18 17:29:25 +0000
1e487bbc54re-enable old merge policy for c1-c2 merger; implement shutdown (sort of)
sears
2010-08-17 21:23:39 +0000
a5cc4e5b53fix a deadlock (double setting thread_fd = -1 in race at startup), lazily spawn new worker threads. This will save some ram, and will lead to shorter server thread listings in gdb
sears
2010-08-11 23:27:39 +0000
bded48a306add new server implementation that uses FILE to buffer I/O, and handles a smaller, fixed number of connections -- leads to an almost 4x speedup on no-ops on nehalem
sears
2010-08-11 22:46:55 +0000
569b46363bmoved most of the request dispatching logic from logserver.cpp to requestDispatch.cpp
sears
2010-08-11 17:43:39 +0000
4a42e4f904tcpclient now usees fread/fwrite instead of read/write
sears
2010-08-10 23:56:54 +0000
2a45c2cda8add no-op network call, and a simple benchmark that exercises it
sears
2010-08-09 20:21:41 +0000
dc75f6d1f0Implemented snowshoveling, with caveats.
sears
2010-08-05 17:43:46 +0000
7bed4b67bafix a bunch of 64-bit integer signedness bugs
sears
2010-07-16 21:43:21 +0000
eb8b57378alaying the groundwork for snowshoveling; as of this commit, pointers and null padding happens in an order that should let us query incomplete tree components. We should only need short page latches at this point (so that we do not look at partially written keys/values)
sears
2010-07-14 22:42:26 +0000
9dcb624649improved bps estimation; add "minisleeps" to update_progress; they do not belong there long term, but this is better than nothing
sears
2010-07-14 21:46:27 +0000
cf6c6e5955incease UPDATE_PROGRESS_DELTA by 10x, and FORCE_INTERVAL by 2.5x; tick no longer grabs a writelock on header_mut, and instead uses its own mutex
sears
2010-06-21 22:59:05 +0000
fded91fec6two unrelated changes: release rb_mut before getting header_mut on read path (breaks delta tuples), and implement first-cut support for pulling in statistics when reopening logstores (required for correct recovery)
sears
2010-06-21 20:03:05 +0000
118ae94a9bcleaned up comments; upped force_interval to 10mb
sears
2010-06-18 23:52:17 +0000
8c35a1265afix bug in overshoot_fudge computation; reduce number of knobs
sears
2010-06-18 23:00:23 +0000
eda7c0fd12enable force interval; play with some knobs
sears
2010-06-18 02:07:55 +0000
2530009ec0fix deadlock; do not clear need_tick bit until overshoot is less than zero; tweak constants accordingly (fewer mutex acquistions! less blockage!)
sears
2010-06-18 00:06:46 +0000
0a2c4796a8removed bad assert
sears
2010-06-17 05:05:35 +0000
0fb644640aimproved concurrency for merger. not happy with worst case write latency on my dev machine anymore (seems to be less than 2.5 seconds, up from less than 1).
sears
2010-06-17 04:49:19 +0000
0ecd7491c7fix minor stats bugs; pull most stats computation into update_progress. The idea is that update_progress and tick, which are easily amortized, are the only stats things that need to grab latches
sears
2010-06-05 00:41:52 +0000
fe7ce3a785tweak some constants to silence latency sla warnings
sears
2010-06-03 00:12:31 +0000
eda514ddaaamortize the computation of statistics (but not mutex acuqisitions) across many tuple insertions. Also, refactor stats stuff with latch contention in mind (but it still grabs too many latches...). This commit causes check_tcpclient to emit warnings on my machine. Not sure if it will happen on production hardware
sears
2010-06-02 21:47:58 +0000
fcf0dcca99cleanup / reimplement some of the statistics calculations. dial back periodically_force
sears
2010-05-28 21:20:26 +0000
dca4fbe594revert server thread count (it was set to 5 for debugging, then accidentally committed...)
sears
2010-05-28 18:31:34 +0000
4050475de9more bugfixes / cleanup. latching is probably overly conservative at this point, but ycsb bulkload finally seems to work
sears
2010-05-28 01:29:10 +0000
6eecf1557arestore support for concurrent disk reads; logserver was accidentally using a findTuple function that assumed diffs. This commit uses rwlc, and requires Stasis -r1393 or better
sears
2010-05-27 01:49:27 +0000
aa7f7189d6admission control *almost* works; c1 sometimes blocks for a long time when a new c2 is created
sears
2010-05-26 00:58:17 +0000
c50c14d259admission control is now behaving properly (but there are still no concurrent writes, or bounds on how long admission control throttles a given writer)
sears
2010-05-21 23:43:17 +0000
2a1157602aRewrite merge thread synchronization code, update status messages, implement preliminary (and ineffective) admission control, and force write merged data every megabyte (so that prograess can be tracked by admission control. Also, refactor quite a few things.
sears
2010-05-19 23:42:06 +0000
1adb980555added throttling policy and better stats. the throttling makes a merge policy bug painfully obvious (committing because i plan to do some refactoring...)
sears
2010-05-12 22:16:41 +0000
fb073c5671fix integer arithmetic bug that caused C0 and C1 to merge arbitrarily often
sears
2010-03-31 22:54:26 +0000
2ea8b9ff44latching fixes, server no longer ignores --test, performance tuning
sears
2010-03-24 20:30:35 +0000
ead6207f86add --test argument to server, fix segfault due to scans with empty c0_mergeable
sears
2010-03-17 23:45:41 +0000
e1c937a602Refactoring of logtable. Cleaned a bunch of includes, and logtable is now a template. This is in preparation for the new merge policy
sears
2010-03-17 21:51:26 +0000
6cd1ccb5ffcommented about merge transaction strategy
sears
2010-03-16 17:58:19 +0000