Commit graph

16 commits

Author SHA1 Message Date
Gregory Burd
fc59ae3f90 WIP: Finished transitioning to a gen_server and a few other tasks. This works
except that when trying to enif_send a bunch of messages eventually one causes
a segv just after reporting: size_object: bad tag for 0x80
2013-04-22 17:45:48 -04:00
Gregory Burd
07061ed6e8 WIP -- more tests passing, plenty left to fix 2013-04-07 22:16:44 -04:00
Gregory Burd
2675aa501a Opening a connection now involves passing in both a configuration
string for the connection and for any sessions.  Don't convert
configuration proplists into strings (Erlang binaries) until calling
into the NIF layer.
2013-04-06 17:19:59 -04:00
Gregory Burd
3ef48e0ac0 Change from static linking to dynamic. Enable snappy and bzip2 compression. 2013-03-28 10:24:26 -04:00
Gregory Burd
9ab363adfe Indention 2013-03-21 14:12:03 -04:00
Gregory Burd
39fb4ff710 Pass 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.
2013-03-18 15:32:03 -04:00
Gregory Burd
1129241fe0 Only open a session/cursor when first needed. There is still a race
between vnodes during startup, ideally wterl_conn would only be opened
once.
2013-03-16 23:28:13 -04:00
Steve Vinoski
793c5c7338 allow WiredTiger config to be set in application env
WiredTiger connection options can be set in the wterl application
environment. If not set, appropriate defaults are used instead.
2012-04-09 16:50:01 -04:00
Steve Vinoski
145810d5b0 add wterl_ets to hold ets table for wterl_conn 2012-04-05 16:10:50 -04:00
Steve Vinoski
29acf9df7a make riak_kv_wterl_backend start the wterl app 2012-03-30 21:01:24 -04:00
Steve Vinoski
9c9075e70d add fold/3 to wterl.erl and fix dialyzer warnings
The backend fold_objects was failing because it was trying to use
wterl:fold_keys/3, which doesn't fold over values. Add fold/3 to
wterl.erl to fix this.

Also clean up a few dialyzer warnings.
2012-03-15 19:26:02 -04:00
Steve Vinoski
91a6acc2a4 add type specs 2012-03-11 20:18:59 -04:00
Steve Vinoski
7219281b31 increase session count and ignore table creation errors
WiredTiger session count defaults to 50, but we need at least one per
vnode, so for now hard-code it to 100. Also ignore table creation
results in the kv backend because WiredTiger is currently producing a
strange error if the table already exists.
2012-03-11 11:48:22 -04:00
Steve Vinoski
869efc46df add unit tests to wterl_conn 2012-02-27 22:01:27 -05:00
Steve Vinoski
9177bd5c10 initial version of riak_kv_wterl_backend
The riak_kv_wterl_backend really belongs in riak_kv, but we're putting
it here for now to keep it private.
2012-02-27 22:01:27 -05:00
Steve Vinoski
7e6d947765 make wterl an app, cache the WT connection
Add app, supervisor, and worker to open and cache the database
connection. Revert to using binaries for WT config in order to allow
wterl callers to use proplists for configuration. Change {error,
not_found} to not_found return values from wterl.
2012-02-17 00:42:22 -05:00