Commit Graph

5 Commits

Author SHA1 Message Date
Andrew J. Stone
70da1fd2f9 separate some folds out of partition/2 in ensemble_sync for clarity 2015-01-05 15:42:26 -05:00
Andrew J. Stone
043baabf3f Fix partition issue in ensemble_sync
It was previously possible for the 'minority' network partition to
become the majority network partition by a naive network partitioning
strategy. Previously, when a preference list of 5 keyspace partitions
was created on only four distinct nodes, it became possible for a 2 node
'minority' network partition group to actually have a majority of
keyspace partitions because 2 keyspace partitions were assigned to 1
node in the 'minority' group. This was fixed so that the 'majority'
group now always has a majority of keyspace partitions by preventing
nodes with greater than 1 keyspace partition from becoming part of the
'minority' group.
2014-12-30 15:21:18 -05:00
Andrew J. Stone
f0643db473 Fix ensemble_sync by allowing {error, <<"failed">>
Allow {error, <<"failed">>} as an error response in ensemble_sync. Fixes
the test with basho/riak_ensemble#37 and basho/riak_kv#1002
2014-07-11 18:11:30 -04:00
Andrew J. Stone
a35be4bf28 increase timeouts for SC operations in ensemble tests 2014-06-02 16:40:19 -04:00
Joseph Blomstedt
ab5a4a6e4a Add additional ensemble tests to test peer syncing
Add ensemble_basic4, ensemble_sync, and ensemble_interleave tests.

ensemble_sync tests the new AAE-based peer syncing logic. The test
checks various scenarios with different levels of data corruption.

ensemble_interleave tests a specific scenario where two peers become
corrupted one after the other. This tests the scenario where the
second peer becomes untrusted while the first peer may be syncing
with it.
2014-04-10 19:07:02 -07:00