19268b7c77WIP-- Not Yet Compiling or Functional -- WIP
Gregory Burd
2013-04-05 18:09:54 -0400
163a5073cbAn updated Emacs cmode leads to all sorts of whitespace fixes intermixed with some merge changes.
Gregory Burd
2013-04-02 09:42:07 -0400
9c379a21ddIgnore a bit more.
Gregory Burd
2013-04-02 09:39:05 -0400
254891e776Bumping reductions manually will not be supported in future releases of the BEAM and has dubious value anyway. Remove that and ignore queue depth for now.
Gregory Burd
2013-04-02 09:37:49 -0400
609676917dRename function to match new API.
Gregory Burd
2013-04-02 09:36:34 -0400
e3219ff2c5Add linker flags so that shared libraries are found relative to either the wterl layout or the Riak layout.
gsb-enable-compression
Gregory Burd
2013-03-28 22:21:36 -0400
1595ce3096Automatically load all WiredTiger extension shared libraries found in the priv dir at load time.
Gregory Burd
2013-03-28 10:45:24 -0400
3ef48e0ac0Change from static linking to dynamic. Enable snappy and bzip2 compression.
Gregory Burd
2013-03-28 10:24:26 -0400
46214daa06Remove check for other module.
Gregory Burd
2013-03-28 10:23:56 -0400
77e0dacdb5Use a set of {Session, Cursor} pairs ("passes") for calls into WiredTiger to avoid a) opening a large number of Sessions or Cursors and b) avoid reusing a Session/Cursor pair in more than one thread. Each operation, except folds, use the Session/Cursor pair corresponding to the scheduler id (roughly "core") they are running on. Each vnode instance will have (count(schedulers) + count(active folds)) Session/Cursor pairs in use so be sure to set session_max large enough when opening the connection to WiredTiger. This method will cause problems with scheduler threads going to "sleep" so be sure to run schedmon to wake them up.
Gregory Burd
2013-03-26 14:17:21 -0400
78e667bc09Depend on async_nif.h
Gregory Burd
2013-03-26 13:02:45 -0400
9f4e08ca6eQueue and execute work from scheduler threads on other threads to prevent schedulers from sleeping.
Gregory Burd
2013-03-24 21:00:48 -0400
85b84a5343Folds need a separate cursor, but not a separate session, so use the shared connection and session.
Gregory Burd
2013-03-21 21:39:47 -0400
9834f54991Cover a few more corner cases when encoding cache size and other values to config strings.
Gregory Burd
2013-03-21 21:05:01 -0400
9302def7ccLower cache size guess from 1/3 to 1/4 of available memory. Finally correct lsm_bloom_new/oldest config.
Gregory Burd
2013-03-21 18:56:01 -0400
0203b06a61Cursor delete operation only requires cursor handle and key (no need for a value)
Gregory Burd
2013-03-21 18:44:13 -0400
b905cce833Add lsm_bloom_{newest,oldest}=true to set of defaults.
Gregory Burd
2013-03-19 15:29:13 -0400
f9fcf305aeRevert list change.
Gregory Burd
2013-03-19 14:51:22 -0400
8ed1c4000eAdditional LSM Tree config parameters.
Gregory Burd
2013-03-19 14:34:01 -0400
33e66ec4e5Minor change to array construction.
Gregory Burd
2013-03-19 14:33:38 -0400
39fb4ff710Pass config into connection:open() rather than ignoring it and do a better job of integrating config options from the app environment as well as config file while we're at it.
Gregory Burd
2013-03-18 15:32:03 -0400
24527cf453Break out connection and session startup into functions.
Gregory Burd
2013-03-17 14:04:31 -0400
1129241fe0Only open a session/cursor when first needed. There is still a race between vnodes during startup, ideally wterl_conn would only be opened once.
Gregory Burd
2013-03-16 23:28:13 -0400
ab45690a4bPull via http to avoid certificate errors with https on certain platforms (Illumos, SmartOS, Solaris... I'm looking at you.) Speed up builds by running make in parallel (use all the cores!).
Gregory Burd
2013-03-16 16:41:26 -0400
fab5877ff5Mistakenly allowed a file rename from another branch here. Use "wterl" not just "wt" for the shared library name.
Gregory Burd
2013-03-14 17:36:45 -0400
3543b42df8Whitespace fixes (s/tab/space/g) and added two new configuration settings from the 1.5.0 release. Checkpoint every second, dump stats every 30 sec.
Gregory Burd
2013-03-14 15:26:28 -0400
85fadeec70Merge pull request #5 from basho-labs/gsb-cache-size-est
Steve Vinoski
2013-03-14 11:05:38 -0700
ef3e161f12Embelish rebar's config a bit.
Gregory Burd
2013-03-14 13:33:34 -0400
1d6dfee192Cache sizing is critical for performance. This change guesses at a reasonable setting for the WiredTiger cache size at runtime. This cache is shared across all vnodes regarless of how many are active at any given time. The algorithm is: max(1GB, 1/3 (RAM - Beam RSS size)). We don't enable direct_io on purpose and data will be double buffered in WiredTiger's cache and the filesystem buffer cache. This turns out to be faster than direct I/O despite wasting a bit of RAM.
gsb-cache-size-est
Gregory Burd
2013-03-14 13:27:59 -0400
efdeb70764Merge pull request #4 from basho-labs/gsb-shared-cursors
Steve Vinoski
2013-03-13 15:15:35 -0700
021dcb10f5Build from source pulled from a specific branch on GitHub for "basho" related work and integration of WiredTiger rather than the latest .tar.bz2 file they distribute.
gsb-optimize-for-kv-crud
Gregory Burd
2013-03-12 16:56:00 -0400
789c44b133Change the config to use a lsm tree rather than btree for tables. Stop using direct_io as it forces operations to sync more often, slowing things down, at the expense of double-buffering (this will use more RAM).
Gregory Burd
2013-03-08 13:33:12 -0500
c6eac27ea7Start with a more rational default configuration. (Before you ask... the answer is 'no'). So far there has been no effort to validate that these settings are in fact the best for Riak/KV or CS data access patterns. These particular settings are, at best, an educated guess based on past experience, the docs and reading about the benchmark the WiredTiger team published here:
Gregory Burd
2013-03-07 20:48:26 -0500
9a02718a2ePass configuration along when opening sessions.
Gregory Burd
2013-03-07 20:31:42 -0500
b47d15fa21Build from source pulled from a specific branch on GitHub for "basho" related work and integration of WiredTiger rather than the latest .tar.bz2 file they distribute.
Gregory Burd
2013-03-12 16:56:00 -0400
169a9663b2Set a lower bound for session_max to 1024 (which is a guess) or 2x ring_size (another guess).
gsb-shared-cache-across-vnodes
Gregory Burd
2013-03-12 10:29:33 -0400
7a7350be42Set session max based on ring size.
Gregory Burd
2013-03-11 20:34:21 -0400
f5a5208b1bFilter only the wt specific parts, not all of app.config
Gregory Burd
2013-03-11 15:44:19 -0400
db28e6b50dRenaming the repo to wt eventually.
Gregory Burd
2013-03-11 14:57:46 -0400
0ec817ae9fRestructure the way we create/merge default configuration setttings with user supplied settings. Move cache estimate to its own function.
Gregory Burd
2013-03-11 12:59:31 -0400
e6dc7a5936fix new config problems, tests all pass again
Steve Vinoski
2013-03-11 11:12:12 -0400
83dfc9e396Renaming from wterl to wt (less redundant and more meaningful name) and working on a shared single cache for all vnodes.
Gregory Burd
2013-03-10 21:42:31 -0400
57917f8bc6Change the config to use a lsm tree rather than btree for tables. Stop using direct_io as it forces operations to sync more often, slowing things down, at the expense of double-buffering (this will use more RAM).
Gregory Burd
2013-03-08 13:33:12 -0500
137088ff55Start with a more rational default configuration. (Before you ask... the answer is 'no'). So far there has been no effort to validate that these settings are in fact the best for Riak/KV or CS data access patterns. These particular settings are, at best, an educated guess based on past experience, the docs and reading about the benchmark the WiredTiger team published here:
Gregory Burd
2013-03-07 20:48:26 -0500
a8bc4bf6c0Pass configuration along when opening sessions.
Gregory Burd
2013-03-07 20:31:42 -0500
f002df1844Update default configuration settings for WiredTiger when used as a backend to better match their benchmark settings.
Gregory Burd
2012-12-04 14:27:47 -0500
6a47c89acdEnsure we have the proper number of arguments first. Pass configuration information on session open. Fix a few mistakes for preconditions.
Gregory Burd
2012-12-04 14:26:46 -0500
d169796c89Remove old release package.
Gregory Burd
2012-12-04 13:37:59 -0500
c59504d229Remove non-portable and unnecessary include.
Gregory Burd
2012-12-04 13:35:39 -0500
2a47d63ce9Enable compression in WiredTiger build.
Gregory Burd
2012-12-04 13:35:10 -0500
6768b86484update to WiredTiger 1.4.0
Steve Vinoski
2012-12-04 11:20:33 -0500
70f6e17505Update to version 1.4.0
Gregory Burd
2012-12-03 09:28:10 -0500