Folks,
The JDK11 TC tests results is not totally OK but look like the most
issues are related to the tests environment.
e.g. properties, path resolving, class loaders etc.
The core functions and core functions of modules works properly (see TC
run [1]).
We have the umbrella ticket [2] to track issues related to details of
run on JDK 9/10/11.
I guess the major priority issue is patch the ignite run scripts to
launch the base functionality on new JDKs [3].
[1]. https://ci.ignite.apache.org/viewLog.html?buildId=1953935
[2]. https://issues.apache.org/jira/browse/IGNITE-8441
[3]. https://issues.apache.org/jira/browse/IGNITE-9727
On 21.09.2018 0:04, Dmitriy Pavlov wrote:
Not because of Java (here I would like to relax :) ), but because of
- MVCC stabilization
- and service grid availability,
my vote goes to option 2.
But the final decision is up to Nikolay, as release manager. If he agrees
to make a wider-scope release, then ok, let's go to 2.
чт, 20 сент. 2018 г. в 23:54, Vladimir Ozerov <voze...@gridgain.com>:
Dmitry,
Migration to Java 9 started a year ago. In 4 months commercial users will
stop receiving Java 8 updates without buying commercial licence. This may
trigger a wave of migrations inside commercial organizations, sometimes
urgent. And the only migration option would be Java 11, as neither Java 9,
not Java 10 will be supported since the next week.
On Thu, Sep 20, 2018 at 11:23 PM Dmitriy Pavlov <dpavlov....@gmail.com>
wrote:
Hi Vladimir,
Do you know if update notifier can get and record java version from a
node
and send it to Apache Ignite site? Or/And what is the most popular
version
now?
I guess most existing users will continue to use their current Java, most
likely Java 8. And they will also require a huge amount of time to
migrate.
Sincerely,
Dmitriy Pavlov
чт, 20 сент. 2018 г. в 23:00, Vladimir Ozerov <voze...@gridgain.com>:
Igniters, we have a problem.
*TL;DR;*
Ignite may be seriously broken in Java 11. This affects ignite.sh,
Hibernate integration, JTA integration. And we cannot test it before
code
freeze due to Java 11 release schedule.
We need to understand whether we shift release, or plan immediate AI
2.8
afterwarвs, or ignore the problem until a number of user compliants
appear.
*Long story*
As you may know we already put some efforts on Java 9 support in Ignite
[1]. Specifically, during earlier releases we reworked all code
affected
by
Java 9 changes and added several "--add-export" and "--add-module"
flags
to
support some packages which are not accessible by default. We never
implemented any modules in Ignite.
As a result, currently Apache Ignite mostly works fine with Java 9. If
node
is started in standalone mode, we add mentioned flags to JVM arguments
by
default, and no actions are needed from user side. If node is started
in
embedded mode, user has to provide required flags manually [2]. This is
acceptable state for us until module subsystem is integrated somehow
with
the product.
But then we decided to perform extensive testing of current master on
Java
9/10/11 versions. Thanks to Peter Ivanov, we setup required
environment.
During this activity we read more docs about Java 11. We revealed, that
in
this release a number of packages we depend on will be removed
completely
from JDK as a part of JEP 320 [3]. *JTA *and *Hibernate* integrations
will
stop work out of the box. Moreover, "--add-module" flag will stop
working,
what may affect ignite.sh.
Things are even worse because Java 11 will be released exactly by our
planned code freeze date, so we cannot even test it appropriately right
now. So we need to revisit out Java 9+ support strategy for the nearest
releases.
*Possible solutions*
1) Relax and move Java 9+ support to AI 2.8 scope
Pros: Java 8 will be supported till January 2019 [4] so we still have
some
time. We can plan AI 2.8 to Nov-Dec this year.
Cons: more and more users will try Java 11 (not Java 9 or 10, they will
be
hidden from official page) during this time, and without Java 11
testing
we
may end up with not-working product.
2) Move AI 2.7 code freeze to the middle of October to have a time to
test
and fix big problems with Java 11.
Pros: Java 11 will be released in the end of the next week [5]. We take
some additional time to test us with Java 11, fix what can be fixed,
find
and document workaround for things which cannot be fixed.
Cons: AI 2.7 will be released in the end of October.
Another small "cons" for the second approach is that we will have more
time
for MVCC stabilization, and improve chances of service grid to be
included
into release (from what I heard from Nikolay and Vyacheslav, there is a
good progress for now). But remember that our previous expirience with
things like that is constantly shifting release dates.
Please share your thoughts on what should we do with Java 11.
Vladimir.
[1] https://issues.apache.org/jira/browse/IGNITE-6728
[2] https://issues.apache.org/jira/browse/IGNITE-9288
[3] http://openjdk.java.net/jeps/320
[4] https://www.oracle.com/technetwork/java/javase/eol-135779.html
[5] http://www.java-countdown.xyz/
--
Taras Ledkov
Mail-To: tled...@gridgain.com