Permalink
Switch branches/tags
Commits on Feb 16, 2012
  1. And again

    Vagabond committed Feb 16, 2012
  2. Desperation

    Vagabond committed Feb 16, 2012
Commits on Feb 9, 2012
  1. Merge pull request #141 from basho/az1072-slide-data-dir-default

    seancribbs committed Feb 9, 2012
    Add eunit test for private_dir/0 (and cleanup some whitespace).
Commits on Feb 6, 2012
Commits on Feb 2, 2012
  1. Merge pull request #139 from basho/adt-dont-double-register-modules

    Jared Morrow committed Feb 2, 2012
    Make sure duplicates don't exist in the registered modules
Commits on Feb 1, 2012
  1. Merge pull request #140 from basho/adt-list-lager-as-dep

    Vagabond committed Feb 1, 2012
    List lager as an application riak_core depends on
Commits on Jan 31, 2012
  1. Make sure duplicates don't exist in the registered modules

    Vagabond committed Jan 31, 2012
    Allowing duplicates was breaking the pipe and kv unit tests.
  2. Merge pull request #138 from basho/az1072-slide-data-dir-default

    seancribbs committed Jan 31, 2012
    Use platfom_data_dir as root of slide data if not explicitly configured.
Commits on Jan 30, 2012
Commits on Jan 13, 2012
Commits on Jan 10, 2012
Commits on Jan 6, 2012
  1. Merge pull request #135 from basho/adt-poolboy-update

    Vagabond committed Jan 6, 2012
    Update for new poolboy API
Commits on Jan 5, 2012
  1. Update for new poolboy API

    Vagabond committed Jan 5, 2012
Commits on Jan 4, 2012
Commits on Jan 3, 2012
  1. Merge of slf-core-ets-match-replacement + hand-edits onto master.

    slfritchie committed Jan 3, 2012
    Avoid use of ets:match() in hot code paths
    
    Profiling with DTrace on Solaris suggests that ets:match() is causing
    a much higher than necessary lock contention rate within the Erlang
    R14B03 and R14B04 VMs.  Eliminating ets:match() in the riak_core and
    riak_kv applications is substantial when using Pthread locking instead
    of Ericsson's hand-tuned locking (which is the default).  The results
    are more ambiguous when the default locking strategy is used.
    
    Hand-edits were required due to changes in master after the 1.0 branch
    was created.
Commits on Dec 23, 2011
  1. Fix handoff issues in vnode/vnode manager

    jtuple committed Dec 23, 2011
    Change trigger_handoff and finish_handoff events in the
    vnode to be ignored if the vnode modstate is already deleted.
    
    Add periodic timer to vnode manager to perform various management
    activities. Currently re-triggers ownership handoff so that handoff
    under load is not triggered only on ring changes.
  2. Merge branch 'az896-vnode-manager-rewrite-part2-rb'

    jtuple committed Dec 23, 2011
    Conflicts:
    	src/riak_core_vnode.erl
  3. Refactor riak_core vnode management (part 2)

    jtuple committed Dec 2, 2011
    Move forwarding and handoff decisions from individual vnode processes
    and into the vnode manager. The vnode manager makes handoff and
    forwarding decisions whenever the ring changes, and triggers vnode
    state changes as appropriate.
    
    Rewrite the logic by which per vnode handoff is marked as complete in
    the ring. In particular, move the logic from riak_core_gossip and into
    riak_core_vnode. The underlying ring changes are still serialized by
    riak_core_ring_manager through the ring_trans function.
    
    Change gossip throttling logic to trigger gossip whenever gossip tokens
    reset, replacing the gossip interval approach.
    
    Perform various tuning and additional minor changes that improve cluster
    operation during a heavy gossip spike.
  4. Check if receiver hungup, assume handoff_concurrency

    rzezeski committed Dec 21, 2011
    Now that handoff_concurrency enforces both outbound and inbound connections
    there is a chance that the receiver will decide to reject the incoming handoff
    and close the socket.  Since the current protocol has no way to express this
    the sender must assume that a socket handup is the receiver rejecting the
    handoff.
    
    This is a normal occurance and should not be logged as an error/warning.
  5. Have handoff sender monitor vnode and use helper process

    rzezeski committed Dec 19, 2011
    Now that the handoff sender and vnode are no longer linked it is unsafe
    to use the master's `sync_command` call.  If the vnode fails the sync_command
    call will never return and the sender will be stuck indefinitely unless it is
    manually killed at the console.  Adding a timeout could fix this but would cause
    other complications if you set it too low.
    
    This patch gets around the issue by using a helper process to perform the fold.
    The sender process then monitors the vnode and spawn_links the helper.  If
    either the vnode or helper gets into trouble the sender will know about it.
    In the happy path the sender will get the fold result back and exit cleanly.
  6. Merge pull request #128 from basho/jrm-handoff-1.1

    massung committed Dec 23, 2011
    Handoff Manager now in charge of senders and receivers.