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

Fix for RTQ EQC prop_main and prop_parallel #422

Merged
merged 2 commits into from
Dec 12, 2013
Merged

Conversation

bowrocker
Copy link
Contributor

During statem test execution, riak_repl2_rtq_eqc reads from the RTQ queue using its pull/2 function. This function defines an anonymous DeliverFun to be called by the RTQ, which uses erlang messaging to send a pulled object back to the client (test) process. Messaging was found to be occasionally timing out. This cased the RTQ, when seeing the DeliverFun to fail, not to mark the pulled object as completed, and thus, when the test client was re-registered, the same object would be delivered. The test model would then identify this duplicate and error out.

A similar problem was affecting the prop_parallel test, except that the timeouts were occurring in the test, not in the DeliverFun ack clause. This was causing the test to believe that the queue was empty (return -> none).

Bumping this up to 500 ms appears to fix the problem on a late model MPB, and not slow down the test considerably. We may want to test this on various platforms and find a better value, but this fixes it for dev for now.

@cmeiklejohn
Copy link
Contributor

👍 to merge.

cmeiklejohn added a commit that referenced this pull request Dec 12, 2013
Fix for RTQ EQC prop_main and prop_parallel
@cmeiklejohn cmeiklejohn merged commit 3dfc08d into develop Dec 12, 2013
@cmeiklejohn cmeiklejohn deleted the jra_rtq_eqc_fixes branch December 12, 2013 19:28
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants