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

[#2086] Fix race in Promise.onRedeem() that called "callback" twice #1241

Merged
merged 1 commit into from
Oct 12, 2018

Conversation

davidcostanzo
Copy link
Contributor

This fixes a subtle race condition that caused a variety of pathological behavior on a Play applications, particularly when a controller action invokes a job that finishes quickly.

  1. await(Future) "returns" twice (in two different threads)
  2. After await(Future), some controller action parameters are null.
  3. In await(Future), there's a ConcurrentModificationException

The change includes a new regression test for the race.

@asolntsev asolntsev self-requested a review June 25, 2018 21:59
Copy link
Contributor

@asolntsev asolntsev left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@xael-fry Seems to be OK. Can be merged.

@xael-fry xael-fry added this to the 1.5.2 milestone Oct 12, 2018
@xael-fry xael-fry merged commit 9f3250a into playframework:master Oct 12, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants