-
Notifications
You must be signed in to change notification settings - Fork 392
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
plug bg_manager_eqc into eunit and address potential race #595
Conversation
see comment in changeset for more details
not sure why the build is failing. a test was skipped because there should be 370 w/ this change. The bg_manager_eqc test did run. |
@jrwest here's the failure, eunit's reporting is just stupid. This should be fixed in the merge commit:
|
bah, easy to miss. thanks. |
I'll grab review now. |
plug bg_manager_eqc into eunit and address potential race Reviewed-by: reiddraper
%% background manager receives the monitor message for the failed pid | ||
%% (waiting for the test process to receive its monitor message is not | ||
%% enough). This relies on local erlang message semantics a bit and may | ||
%% not be bullet proof. The catch handles the case where the bg manager |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Can you elaborate on what local messaging semantics this relies on?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
"local" may be ancillary. its relying on ordering of messages between two processes A and B (the test process and the bg manager). Its not bullet proof because technically the 2 messages (enabled
and the next command) may still arrive before the monitor message but its a lot less likely now -- i was reproducing it every 1k tests and now can't in 100k regularly.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Cool, thanks.
build failed again for unrelated reason: #596 |
plug bg_manager_eqc into eunit and address potential race Reviewed-by: reiddraper
@borshop merge |
previously this eqc was not run as part of the eunit suite (#485). When plugging it in a found a failure due to a race-condition in the test:
This PR addresses both those issues.
see comment in changeset for more details