Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Dynamic decision to swap threads or not on Erlang Write operation #242

Open
wants to merge 42 commits into
base: develop
Choose a base branch
from

Conversation

matthewvon
Copy link
Contributor

eleveldb swaps each Erlang request from an Erlang scheduler thread to a local eleveldb worker thread. This is to prevent Erlang scheduler collapses. Write operations do not actually need to swap all the time. This branch creates the capability of dynamic selection to swap threads or not.

Detailed discussion is here:

https://github.com/basho/leveldb/wiki/mv-nonblocking-write2

bougueil and others added 30 commits August 13, 2015 10:04
These should only be appearing in riak.conf for documentation, as they
won't be needed unless a user is setting up multi_backend. Even then
they will probably want to change the backend name to something other
than "name".
…ion-settings

Make multi_backend compression settings commented
Don't use deprecated erlang:now/0 in tests
unsigned long for memory_sz so it compiles on scaleway C1 / arm
…ters. This fills some remaining race condition holes (of which one recently seen).
Switch to reference counted pointers instead of naked pointers.
Port submit_to_thread_queue() from riak_ts-develop to develop
Manually disabling dylib creation for snappy since OSX links the preferentially rather than the static library.  This resolves #236
Matthew Von-Maszewski and others added 12 commits January 26, 2017 13:07
A commit over 4 years ago disabled most of the eunit tests in the eleveldb module.
This enables them and adds a few, while refactoring so they clean up after themselves.
It also adds exported test helper functions to make it easier for other tests to clean up after themselves.
Tests now use helper functions from eleveldb module tests.
- Number of database instances is capped to keep filesystem footprint manageable.
- Complexity of some operations reduced to limit runtime.
- Generous timeouts added to more tests.
This value is an alternative to `-mmacosx-version-min=version` which
does not appear to be settable via the snappy configure script. This is
to allow support for historical versions of MacOSX
Added flag for MACOSX_DEPLOYMENT_TARGET = 10.8
…Doug and/or emacs happy (the former is the more worthy goal).

Sync with latest 'develop' branch.
… develop branch. git rebase sucks, i.e. unreliably bad.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants