This conversation reminds me of the situation with Spark and akka that I just
ran into. Or rather with Akka and the way they designed the remote execution.
The situation is actually _completely_ ridiculous. I stood up a small Spark
cluster and then tried to submit a job into it, which had some
Spark dependencies. The way the job is written it pulls the dependencies
automatically from the maven repo. To my horror, the job was crashing because
local and remote serialIDs of the classes differed, although the dependency
versions were the same. The root cause is this: the versions are compiled with
the same version of JDK (like JDK7) or something, but one is Open and the
other one is Oracle's.

I think this is a very shaky way of designing the software for distributed
environments and it badly complicates the operation and integration of the
clusters. It clearly shows the lack practical experience beyond the academic
ivory towers on the account of Akka guys. RPC, while not without its own
issues, allows to get around such problems with ease.

I guess what I am saying: aren't we trying to find an even more complex
solution for already pretty tough problem?

Cos

On Thu, Oct 08, 2015 at 09:31PM, Vladimir Ozerov wrote:
> Why are we sticked to version? If both JVM has the same major version, but
> different vendors, it might be even more important concern, than different
> major versions of the same vendor.
> 
> On Thu, Oct 8, 2015 at 8:48 PM, Dmitriy Setrakyan <dsetrak...@apache.org>
> wrote:
> 
> > On Thu, Oct 8, 2015 at 9:52 AM, Andrey Gura <ag...@gridgain.com> wrote:
> >
> > > Igniters,
> > >
> > > There are cases when Ignite cluster nodes work on different environments
> > > and JDKs (versions and/or vendors). GridDiscoveryManager class contains
> > > check that all nodes in topology ran under JDKs with the same major Java
> > > version and throws exception if check failed. I want to replace this on
> > > warning message. So I have two questions:
> > >
> > > 1. Is there any objections about it?
> > >
> >
> > I agree. Ignite should allow nodes with different JDKs join the cluster.
> >
> >
> > > 2. What message will be more informative than current one ("Local node's
> > > java major version is different from remote node's one
> > > [locJvmMajVer=<locJvmMajVer>, rmtJvmMajVer=<rmtJvmMajVer>]")?
> > >
> >
> > How about:
> > ---
> > Local java version is different from remote [loc=<locJvmMajVer>,
> > rmt=<rmtJvmMajVer>]"
> > ---
> >
> >
> > >
> > > --
> > > Andrey Gura
> > > GridGain Systems, Inc.
> > > www.gridgain.com
> > >
> >

Reply via email to