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

Automatch should double-check its seeking and auto-automatch states #74

Closed
aiannacc opened this issue Sep 5, 2013 · 1 comment
Closed
Assignees

Comments

@aiannacc
Copy link
Owner

aiannacc commented Sep 5, 2013

Some race condition or other semi-random event is resulting in the illegal state florrat describes here:
http://forum.dominionstrategy.com/index.php?topic=8163.msg286439#msg286439

This could happen most easily happen if gs.AM.seek is null but gs.AM.tableSettings is true, which might possibly occur after some particular sequence of asynchronous callbacks between Goko, the AM server, and the client. This causes trouble because I've written code that assumes that tableSettings is always null when the client isn't seeking an automatch.

The user can verify this diagnosis by providing the values of the global variables GokoSalvager.AM.tableSettings and GokoSalvager.AM.state.seek when the error occurs.

This race condition seems to be rare and finding it is likely to be difficult -- it may not even be possible in my test environment, which doesn't adequately reproduce the range of network conditions other user experience. Stopping the undesired behavior, however, is easy. We need to explicitly clear the gs.AM.tableSettings variable in Automatch.cancelSeek() and explicitly check both it and gs.AM.tableSettings in Automatch.showSeekPopup(), which is defined in automatchSeekPop.js

@ghost ghost assigned aiannacc Sep 5, 2013
@aiannacc
Copy link
Owner Author

aiannacc commented Sep 5, 2013

Fixed the symptom (though not the condition itself) in de0a082

@aiannacc aiannacc closed this as completed Sep 5, 2013
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant