[ https://issues.apache.org/jira/browse/IGNITE-7963?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16423899#comment-16423899 ]
Ilya Kasnacheev commented on IGNITE-7963: ----------------------------------------- [~dpavlov] tests are passing much better now at https://ci.ignite.apache.org/project.html?projectId=IgniteTests24Java8&branch_IgniteTests24Java8=pull%2F3651%2Fhead https://ci.ignite.apache.org/viewLog.html?buildId=1167555&tab=buildResultsDiv&buildTypeId=IgniteTests24Java8_RunAll There was one suspicious test CacheTtlTransactionalPartitionedSelfTest.testDefaultTimeToLivePreload but it seems to pass locally > Futures from DataStreamer.addData() fail to complete if DataStreamer.flush() > is never called > -------------------------------------------------------------------------------------------- > > Key: IGNITE-7963 > URL: https://issues.apache.org/jira/browse/IGNITE-7963 > Project: Ignite > Issue Type: Improvement > Components: cache > Affects Versions: 2.3 > Reporter: Ilya Kasnacheev > Assignee: Ilya Kasnacheev > Priority: Minor > Labels: usability > > DataStreamer.addData() will return futures for operation. > Thus the naive use of DataStreamer will look like this: > {code} > for (Data d : data) > futs.add(dataStreamer.addData(d)); > for (IgniteFuture f : futs) > f.get(); > dataStreamer.close(); > {code} > However, this does not work. Unless flush is called (manual or otherwisE), > futures are not being processed. This code will likely hang on f.get(). > The solution, IMHO, is to introduce dataStreamer-flushing clause in f.get(). -- This message was sent by Atlassian JIRA (v7.6.3#76005)