David, can you try adding all the futures to a collection and change assert
condition to check that for all futures in that collection fut.isDone() is
true?

This should be a proper assertion. Please let me know if it works.

Yakov Zhdanov

чт, 26 апр. 2018 г., 0:30 David Harvey <dhar...@jobcase.com>:

> We had assumed that if we did, in one thread:
>       IgniteFuture<?> f = streamer.addData(...);
>       f.listen(...)
>
>       streamer.flush();
>
>       assert( all the prior futures have completed);   << this triggered.
>
>
>
> I can't determine if this a bug, or just that the description could use
> improvement.
>
> Inspecting the code it looks like the thread issuing the flush can be
> awoken prior to the apply function for the addData future is called, since 
> GridFutureAdapter.unblockAll()
> will unpark or notify in a arbitrary order.
>
>
> *Disclaimer*
>
> The information contained in this communication from the sender is
> confidential. It is intended solely for use by the recipient and others
> authorized to receive it. If you are not the recipient, you are hereby
> notified that any disclosure, copying, distribution or taking action in
> relation of the contents of this information is strictly prohibited and may
> be unlawful.
>
> This email has been scanned for viruses and malware, and may have been
> automatically archived by *Mimecast Ltd*, an innovator in Software as a
> Service (SaaS) for business. Providing a *safer* and *more useful* place
> for your human generated data. Specializing in; Security, archiving and
> compliance. To find out more Click Here
> <http://www.mimecast.com/products/>.
>

Reply via email to