-
Bug
-
Resolution: Duplicate
-
P3
-
8, 9
-
None
Issue | Fix Version | Assignee | Priority | Status | Resolution | Resolved In Build |
---|---|---|---|---|---|---|
JDK-8142160 | emb-9 | Doug Lea | P3 | Resolved | Fixed | team |
Rework propagation in the case of linear dependency chains, which are the only cases in which these kinds of StackOverflowErrors occur. By re-packing actions while processing dependent completions, we can isolate tail-recursive cases and loopify them. This generally works out better than moving them across lists, because doing so can reduce opportunities for other threads to help process them.
Already checked into the 166 CVS:
http://gee.cs.oswego.edu/cgi-bin/viewcvs.cgi/jsr166/src/main/java/util/concurrent/CompletableFuture.java?view=log
For further information, see the discussion on concurrency-interest mailing list:
http://cs.oswego.edu/pipermail/concurrency-interest/2014-April/012501.html
Already checked into the 166 CVS:
http://gee.cs.oswego.edu/cgi-bin/viewcvs.cgi/jsr166/src/main/java/util/concurrent/CompletableFuture.java?view=log
For further information, see the discussion on concurrency-interest mailing list:
http://cs.oswego.edu/pipermail/concurrency-interest/2014-April/012501.html
- backported by
-
JDK-8142160 CompletableFuture: Avoid StackOverflowError for long linear chains
- Resolved
- duplicates
-
JDK-8134851 Integrate CompletableFuture with API enhancements
- Resolved