On 15/04/2013 18:32, Martin Buchholz wrote:
Thanks.  This looks good.

I might additionally:
- rename "phaser" to something more evocative, like "cf3Done"
- add a checkCompletedXXX for the tardy future after the phaser arrives
- check that cf3 result does not change when tardy future completes.

Thanks Martin, I'll make these changes before the pushing.

-Chris.



On Mon, Apr 15, 2013 at 10:03 AM, Chris Hegarty
<chris.hega...@oracle.com <mailto:chris.hega...@oracle.com>> wrote:

    On 15/04/2013 17:32, Martin Buchholz wrote:

        This looks good, in that it fixes the flakiness.


    Thanks Martin.


        I don't think we have tests yet that ensure Either completion
        when only
        one task completes.
        Consider writing one normal async supplier and one that waits on a
        latch; ensure that the Either future completes with the normal
        value,
        then trip the latch to allow the second one to finish.


    Great idea. Here you go:

    
http://cr.openjdk.java.net/~__chegar/8012237/webrev.01/__webrev/test/java/util/__concurrent/CompletableFuture/__Basic.java.udiff.html
    
<http://cr.openjdk.java.net/~chegar/8012237/webrev.01/webrev/test/java/util/concurrent/CompletableFuture/Basic.java.udiff.html>

    -Chris.



        On Mon, Apr 15, 2013 at 7:09 AM, Chris Hegarty
        <chris.hega...@oracle.com <mailto:chris.hega...@oracle.com>
        <mailto:chris.hegarty@oracle.__com
        <mailto:chris.hega...@oracle.com>>> wrote:

             I missed three cases in the previous change [1]. That will
        teach me
             for working on the weekend ;-)

             A full audit of the use of the XxxEitherXxx methods in the
        test has
             been done, and there are still three particular checks that are
             possibly incorrect. The failure is not always seen as this
        is racy code.

        
http://cr.openjdk.java.net/~____chegar/8012237/webrev.00/____webrev/test/java/util/____concurrent/CompletableFuture/____Basic.java.udiff.html
        
<http://cr.openjdk.java.net/~__chegar/8012237/webrev.00/__webrev/test/java/util/__concurrent/CompletableFuture/__Basic.java.udiff.html>

        
<http://cr.openjdk.java.net/~__chegar/8012237/webrev.00/__webrev/test/java/util/__concurrent/CompletableFuture/__Basic.java.udiff.html
        
<http://cr.openjdk.java.net/~chegar/8012237/webrev.00/webrev/test/java/util/concurrent/CompletableFuture/Basic.java.udiff.html>>

             Thanks,
             -Chris.

             [1]
        
http://mail.openjdk.java.net/____pipermail/core-libs-dev/2013-____April/016013.html
        
<http://mail.openjdk.java.net/__pipermail/core-libs-dev/2013-__April/016013.html>
        
<http://mail.openjdk.java.net/__pipermail/core-libs-dev/2013-__April/016013.html
        
<http://mail.openjdk.java.net/pipermail/core-libs-dev/2013-April/016013.html>>



Reply via email to