Looks good to me. In the test,
> Integer one = Stream.iterate(1, i -> i + > 1).unordered().parallel().distinct().findAny().get(); > assertEquals(one.intValue(), 1); The implementation is probably make sure this will return 1, but is that what we spec to do? I sort of think it can have various values depends on how many working threads and their scheduling. Cheers, Henry On Oct 30, 2013, at 2:30 AM, Paul Sandoz <paul.san...@oracle.com> wrote: > Hi > > Please review: > > http://cr.openjdk.java.net/~psandoz/tl/JDK-8027316-distinct-unordered/webrev/ > > The fix ensures that the distinct operation, for a parallel stream, is not a > full barrier if the upstream is unordered (and not already distinct, > otherwise it is a no-op). > > Thanks, > Paul.