Also, wrt. names and methods on the API on the Distributed Exec part
of things, wdyt about aligning it with JDK executors (see separate
email from me)?
What exactly are you referring to? API like this one:
DistributedForkJoinPool p = cacheManager.newDistributedForkJoinPool();
result = p.invoke(new DistributedTask() { ... });
Do we need an executor service? We invoke tasks directly with execute
and executeAsync while MapReduceTask is invoked with:
R result = new
MapReduceTask(cache).on(K...).mappedWith(mapper).reducedWith(reducer).collate(collator);
And - not trying to confuse you, promise! - here's some scope
for
additional work later on as well: network classloaders to deal with
non-homogenous deployments with remote tasks like these. ;)
There are tons of other things to finish!
Cheers,
Vladimir