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/>. >