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 visit the Mimecast website.