+1 to Yakov. Closure execution also creates a task and I don't see any reason for hiding it. And actually we don't hide it - we fire task/job events, apply the same failover mechanisms, etc.
What probably is confusing here is the name of the class. ComputeTaskFuture indeed looks like applied only to execution of a ComputeTask. How about renaming it to IgniteComputeFuture (or just ComputeFuture) then? -Val On Tue, May 30, 2017 at 12:56 PM, Yakov Zhdanov <yzhda...@apache.org> wrote: > Vladimir, > > I disagree. I understand this is minor issue, but still. > > Here are the points: > > 1. TaskSession is supported for all compute methods. Please see - > ComputeFailoverExample. Every compute method starts a task. > 2. You still return task future, but method return type is a > super-interface. > 3. User cannot identify the spawned broadcast - returned future does not > provide any ID. > > --Yakov > > 2017-05-30 11:28 GMT+03:00 Vladimir Ozerov <voze...@gridgain.com>: > > > Valya, > > > > This future contains task session. We intentionally changed return type > to > > plain IgniteFuture for closure methods, as there is no notion of > "session" > > and "task" for them. ComputeTaskFuture now returned only from > task-related > > methods ("execute"). Unless I am missing something, this approach looks > > correct. > > > > > > On Tue, May 30, 2017 at 11:06 AM, Valentin Kulichenko < > > valentin.kuliche...@gmail.com> wrote: > > > > > Folks, > > > > > > I noticed that the new async API for IgniteCompute returns > IgniteFuture, > > > while previously we used to have its extension - ComputeTaskFuture, > which > > > contains useful information about the executed task session. > > > > > > Should this be fixed? > > > > > > -Val > > > > > >