Commit Graph

1797 Commits

Author SHA1 Message Date
Christopher Meiklejohn
cf08f652c3 Checkpoint. 2014-07-12 14:18:06 -04:00
Christopher Meiklejohn
c8399daaed Checkpoint. 2014-07-12 13:45:53 -04:00
Christopher Meiklejohn
04e4fa6f76 Checkpoint. 2014-07-12 13:02:15 -04:00
Christopher Meiklejohn
2315efa046 Checkpoint. 2014-07-12 12:49:18 -04:00
Christopher Meiklejohn
c1ff7e4d84 Futher checkpoint. 2014-07-11 22:56:15 -04:00
Christopher Meiklejohn
b906a31be9 Ignore rebar. 2014-07-11 20:47:56 -04:00
Christopher Meiklejohn
a013227fa7 Checkpoint. 2014-07-11 20:39:20 -04:00
Christopher Meiklejohn
9db9f51744 Merge branch 'master' into perf-harness-merge
Conflicts:
	src/riak_test_escript.erl
	src/riak_test_runner.erl
	src/rtssh.erl
2014-07-11 12:19:42 -04:00
Kelly McLaughlin
e3df2fbf2f Merge pull request #655 from basho/bugfix/replication-verify-site-ip-race
Avoid a race condition in the replication test module
2014-07-02 10:02:08 -06:00
Kelly McLaughlin
297090ded6 Avoid a race condition in the replication test module
Avoid a race condition in the replication test module when checking
for site IP addresses in the replication status output.  The test
waits for a connection on the leader, but it only queries the
replication status to check for the expected site IP addresses a
single time. Change the test to wait and re-check the status output to
give greater assurance that if the expected site IP addresses are not
present it is due to legitimate failure and not a race condition in
checking the replication status. This change affects the replication
and replication_upgrade tests as well as any other tests that call the
replication:replication function.
2014-07-01 16:36:45 -06:00
Jon Anderson
054c015d10 Merge pull request #651 from basho/feature/jra/verify_listkeys_eqcfsm
Expand verify_listkeys_eqcfsm to track varying buckets and n_vals.
2014-07-01 13:19:41 -04:00
Christopher Meiklejohn
f085f70169 Merge pull request #653 from basho/features/csm/crdt-capability
Prevent autoreconnect problem.
2014-06-30 18:29:05 -04:00
Christopher Meiklejohn
da34719fe3 Prevent autoreconnect problem.
Prevent a situtation where the auto-reconnect hasn't triggered yet
causing the result to be an error, instead of ok, on the next operation
after reconnecting.  Force a disconnect and reconnect to make sure the
test is deterministic.
2014-06-30 17:22:20 -04:00
Christopher Meiklejohn
92314b308b Merge pull request #652 from basho/features/csm/riak-control
Resolve riak-control version conditionals.
2014-06-30 13:06:33 -04:00
Christopher Meiklejohn
8e14cc1fc1 Resolve riak-control version conditionals.
Simply the logic and make it a bit more resilient to failures when doing
a rolling upgrade.
2014-06-30 13:04:33 -04:00
Jon Anderson
7c2d7cc827 Expand verify_listkeys_eqcfsm to track varying buckets and n_vals. 2014-06-26 16:13:58 -04:00
Eric Redmond
0eb2d1c443 Merge pull request #650 from basho/er/yz-ensemble-test
Test that ensemble delete functions in yokozuna
2014-06-23 17:38:09 -07:00
Eric Redmond
b2b4d33dc1 Expand pbc_write to accept content type 2014-06-23 13:01:25 -07:00
Engel A. Sanchez
3662965705 Merge pull request #649 from basho/feature/ensembles-wait-for-riak-kv
Feature/ensembles wait for riak kv
2014-06-23 14:24:12 -04:00
Eric Redmond
266f9858eb Test the ensemble delete function 2014-06-20 14:44:30 -07:00
Engel A. Sanchez
d32d007f4d Fix service/peer check race
Changing to fetching the list of peers first, then check if the riak_kv
service is up. If the service is up, then check the peers. Otherwise it
is possible to see the service down, then peers up because it went up in
the interim.

Also, making KV vnode delay configurable.
2014-06-20 14:26:24 -04:00
Kelly McLaughlin
30cb32774e Merge branch 'bugfix/fullsync-wait-race-condition' 2014-06-20 09:14:07 -06:00
Engel A. Sanchez
3bf0954253 Test ensemble peers wait for riak_kv service
Now ensemble peers are prevented from starting up until the riak_kv
service is up to avoid nasty races that could even lead to node crashes
as the ensembles frantically query for data that isn't ready.
2014-06-19 23:26:30 -04:00
Engel A. Sanchez
a72ea9de4c Save intercept beams in basho-patches
You can now choose to save the intercept modules in basho-patches so
that they are loaded on a restart. This should be useful to modify
Riak's behavior at startup time.
2014-06-19 23:24:09 -04:00
Kelly McLaughlin
4b9a77c828 Re-initiate fullsync after a number of failed checks for completion
Re-initiate fullsync after 100 failed checks for completion. The
number of retries of the 'start fullsync and then check for
completion' cycle is configurable using
repl_util:start_and_wait_until_fullsync_complete/4 and defaults to 20
retries. This change is to avoid spurious test failures due to a rare
condition where the rpc call to start fullsync fails to actually
initiate the fullsync. A very similar changed for the version of the
start_and_wait_until_fullsync_complete in the replication module
introduced in 0a36f9974c has had good
effect at avoiding this condition for v2 replication tests.
2014-06-19 14:34:56 -06:00
Kelly McLaughlin
3466aa7c24 Merge branch 'bugfix/fix-repl-object-reformat' 2014-06-18 22:14:35 -06:00
Jon Anderson
c424848bb0 Merge pull request #644 from basho/bugfix/jra/listkeys_eqc_setup
Fix occasional setup errors in verify_listkeys_eqcfsm
2014-06-18 20:29:00 -05:00
Jon Anderson
f3f5e40a36 Removed commented function. 2014-06-18 18:15:30 -05:00
Kelly McLaughlin
f8e10f2f75 Reinstate concurrency in replication_object_reformat test 2014-06-18 15:55:27 -06:00
Kelly McLaughlin
87ee6f5883 Fix replication_object_reformat test failure
Part of the condition checking done in the replication_object_reformat
test is to validate the results of a fullsync using
repl_util:validate_completed_fullsync/6. The way in which the the
function is called from the test expects fullsync to complete with 0
error_exit or retry_exit conditions occurring. This requires that sink
cluster be in a steady state with all partitions available. The test
failed to wait for such conditions to occur and instead relied on
performing a node downgrade asynchronously and waiting for up to 60
seconds for a completion message before continuing with the test. The
test was continually failing after a node was downgraded to `previous`
due to partitions being reported as `down` on that node. To resolve
the issue the node downgrade process is now done in the primary test
process instead of in a separate spawned process. After the version
downgrade is complete, the test now waits for the riak_repl and the
riak_kv services, calls rt:wait_until_nodes_ready/1, calls
rt:wait_until_no_pending_changes/1, and finally waits for the
riak_repl2_fs_node_reserver named process to be registered on the
downgraded node. This process is responsible for handling partition
reservation requests and is key to determining the the new node is
able to handle a fullsync without partition errors.
2014-06-18 15:55:27 -06:00
Kelly McLaughlin
c55e473b97 Merge branch 'feature/update-repl-systest-read-use' 2014-06-18 15:52:48 -06:00
Kelly McLaughlin
34a04894e0 Merge branch 'feature/systest-read-sibling-handling' 2014-06-18 15:52:32 -06:00
Andrew J. Stone
c3597b9915 Merge pull request #645 from basho/ensemble-vnode-crash2
Add test to kill a vnode and vnode proxy
2014-06-18 17:28:15 -04:00
Kelly McLaughlin
a7297f2c53 Add handling of errors in rt:index_built_fun
AAE fullsync tests can encounter {error, wrong_node} messages
resulting from rpc calls to riak_kv_vnode:hashtree_pid. Add handling
of error responses to rt:index_built_fun.
2014-06-18 14:33:44 -06:00
Kelly McLaughlin
2f9a3cae4a Update calls to rt:systest_read to handle identical siblings
Update the calls to rt:systest_read in repl_util and
repl_aae_fullsync_util to treat identical siblings resulting from the
use of DVV as a single value.  These changes are specifically to
address failures seen in the repl_aae_fullsync_custom_n and
replication_object_reformat tests, but should be generally useful for
replication tests using the utility modules that and that have
allow_mult set to true.
2014-06-18 14:33:44 -06:00
Kelly McLaughlin
d045dfcdfc Do sibling comparison in a module function rather than anonymous function 2014-06-18 14:32:54 -06:00
Kelly McLaughlin
f8c768378d Add ability to handle identical siblings in rt:systest_read
Add optional parameter to rt:systest_read that provides the ability to
compare siblings and treat those with identical values and metadata
excluding the dot as a single value for the purposes of testing.

This is to facilitate testing with DVV enabled since there are several
known cases where use of DVV leads to siblings created internally by
Riak. One example of such a case is a write during handoff that is
forwarded by the vnode, but also executed locally.

The existing behavior of rt:systest_read is to fail when any siblings
are encountered with a badmatch. This behavior is maintained as the
default so existing tests maintain their current semantics without
explicit change.
2014-06-18 11:27:23 -06:00
Andrew J. Stone
7d0301db35 add intercept for riak_kv_ensemble_backend:handle_down/4 in ensemble_vnode_crash 2014-06-17 23:13:44 -04:00
Andrew J. Stone
6c14c7c371 Add test to kill a vnode and vnode proxy
Kill a vnode and it's proxy for a given key and ensure that operation
reads succeed afterwards.
2014-06-17 17:57:15 -04:00
Jon Anderson
baf32904af Remove un-used clean up function. 2014-06-17 17:26:23 -04:00
Jon Anderson
8912210036 Re-enable AAE. 2014-06-17 17:04:39 -04:00
Jon Anderson
472241f180 Take cluster set up out of a state and instead put it in the property. 2014-06-17 16:49:20 -04:00
John Burwell
6733c099c8 Merge pull request #636 from basho/bugfix/jsb/start-ensemble-without-aae
Verify Riak Startup when Strong Consistency is Misconfigured
2014-06-16 09:30:33 -04:00
Micah
c96f318f6a Merge pull request #643 from basho/bugfix/mw/better-isolate-pb_security-certs
isolate certs created for the pb_security tests.
2014-06-12 17:30:36 -05:00
Micah Warren
f7631b42c3 pb_cipher_suites test creates certs in its own dir.
Same reason as pb_security and http_security: to keep other tests
from stomping on it.
2014-06-12 17:22:42 -05:00
Micah Warren
f96847beb8 isolate certs created for the pb_security tests.
This should prevent other tests from interfering in its execution
2014-06-12 17:18:15 -05:00
Kelly McLaughlin
afc68c5edb Merge branch 'bugfix/replication-ssl-fix' 2014-06-12 15:26:37 -06:00
Kelly McLaughlin
0589935931 Fix problems with cert specifications causing replication_ssl to fail
Fix problem with cacertdir specification in replication_ssl test. The
code used load cert files in v2 replication expects the path specific
by the cacertdir key to only be a directory. With v3 replication the
code used is flexible enough to allow a directory or a file. Also
correct a typo in the certfile path for the SSLConfig1 configuration.
2014-06-12 12:38:58 -06:00
Kelly McLaughlin
5f5c3ac035 Merge branch 'bugfix/replication-upgrade-fixes' 2014-06-12 10:39:53 -06:00
Kelly McLaughlin
21b64526f1 Fix two issues with replication_upgrade test
* Do not attempt to cancel fullsync if the initial attempt to start
  and wait for completion fails. It has not been observed that the
  problem is fullsync starting and not completing in time, but rather
  the issue is that the initial call to start fullsync does not take
  effect. Therefore the cancellation is unnecessary.
* Replace the call to repl_util:wait_for_connection/2 in the node
  upgrade process with a call to
  replication:wait_until_connection/1. This function is geared towards
  v2 replication and should speed up test execution.
2014-06-11 21:53:29 -06:00