OpenJDK SRU exception

Tiago Daitx tiago.daitx at canonical.com
Fri Mar 23 22:34:49 UTC 2018


On behalf of the Ubuntu Foundations Team, I would like to provide
further information on the outstanding issues of the OpenJDK 9
transition.

Of the 35 direct reverse build and runtime dependencies of java-common
in Bionic/main, which amount to 26 source packages, there are 5 that
currently FTBFS when build with openjdk-9:
- gettext* (1001)
- db5.3 (130)
- apport* (28)
- brltty* (18)
- sonic* (6)

The number represents how many direct reverse build and runtime
dependencies each package has. An asterisk represents that there is a
known working patch.

Also gettext’s Debian bug #892733 might also require a fix as msgfmt
causes further packages to FTBFS.

The 2 important runtimes in Bionic/main are tomcat8 and libreoffice
(the database component) and both are run fine under OpenJDK 9. Let me
know if there is any particular use cases to try on those.

There are 171 packages - amounting to 97 source packages - that are a
direct reverse build or runtime dependency of maven in Bionic. Of
those there are 13 failures:
- maven-debian-helper (504)
- maven-bundle-plugin* (178)
- antlr3* (29)
- maven-enforcer (17)
- libxbean-java (13)
- istack-commons (4)
- apache-directory-server (3)
- polyglot-maven (2)
- mustache-java (2)
- maven-processor-plugin (2)
- ruby-license-finder (0)
- elki (0)
- bridge-method-injector (0)

The maven-bundle-plugin is under work in Debian, a fix is expected
today and will enable further testing of its dependencies.

Other outstanding packages that FTBFS with OpenJDK 9:
- bnd* (33)
- gradle* (16)

Regards,
Tiago

[1] https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=892733

On Fri, Feb 2, 2018 at 11:58 AM, Tiago Daitx <tiago.daitx at canonical.com> wrote:
> On behalf of the Ubuntu Foundations Team, I am requesting an SRU
> exception for OpenJDK. Our plan is to release OpenJDK 10 as the
> default JRE/JDK [1] for Bionic, and then move the default JRE/JDK in
> main to OpenJDK 11 in September/October 2018 as an SRU.
>
> = Proposed Plan =
> Bionic will be released with OpenJDK 10 as the default JRE/JDK and
> OpenJDK 11 will replace it once it reaches GA.
>
> OpenJDK 8 will be moved to universe and remain available there for
> 18.04, to provide migration time for packages that can't be build with
> OpenJDK 10 or 11.
>
> OpenJDK 8 will remain in main in 16.04 LTS (which reaches EOL in April 2021).
>
> = Rationale =
> Oracle will end upstream security support for OpenJDK 8 in September
> 2018 [2].  Red Hat has indicated that they will provide support until
> October 2020 [3,4].  Canonical is committed to working with fellow
> distributors of OpenJDK 8 to provide security support through the end
> of Ubuntu 16.04 LTS’s supported lifecycle in April 2021, but would
> prefer not to extend its maintenance costs a further two years beyond
> this by including OpenJDK 8 in main in Bionic.
>
> Meanwhile, the OpenJDK project has moved to a 6-month release cycle
> with an LTS version every 3 years [2].
>
> The first LTS version is OpenJDK 11, to be released on September 2018
> and supported by Oracle until September 2021. Since it is an LTS
> release, we expect the OpenJDK community will align around this
> version to extend support beyond the end of Oracle’s security support
> period.
>
>
> If we are going to switch to OpenJDK 11 in bionic once released, we
> want to avoid OpenJDK 8 as the default JRE/JDK in Bionic at release
> time because any additional interface delta that exists between 8 and
> 11 not only exposes the archive to breakage, it also exposes external
> consumers of the JDK to breakage.  In comparison, the interface delta
> between OpenJDK 10 and OpenJDK 11 is expected to be fairly small,
> especially in comparison with the delta between OpenJDK 8 and OpenJDK
> 9 that we already know is large.  We should therefore release with
> OpenJDK 10 as the default JDK in 18.04, transitioning to OpenJDK 11
> when it is released.
>
> = Technical details =
>
> There are 24 packages in bionic/main with a build dependency on
> OpenJDK 8 (the current default-jdk). Of these there are 8 FTBFS with
> default-jdk set to openjdk-9 and 10 FTBFS with default-jdk set to
> openjdk-10. These will be fixed before Bionic’s release.
>
> = Affected packages in main =
> $ sort -u \
> <(reverse-depends -b -r bionic -c main -l default-jdk) \
> <(reverse-depends -b -r bionic -c main -l default-jdk-headless)
> apport
> automake-1.15
> awstats
> brltty
> ca-certificates-java
> ceph
> commons-pool
> db5.3
> erlang
> gettext
> hsqldb1.8.0
> java-atk-wrapper
> libcommons-collections3-java
> libcommons-dbcp-java
> liblouisutdml
> libphonenumber
> libreoffice
> libreoffice-l10n
> lintian
> protobuf
> sonic
> taglibs-standard
> tomcat8
> xapian-bindings
>
>
> = Other =
> I made a timeline to visualize the release and EOL dates of OpenJDK
> and Ubuntu [5].
>
> Debian is also affected by the new OpenJDK release cycle [6].
>
> Regards,
> Tiago
>
>
> [1] Default JRE/JDK as in packages default-jre and default-jdk (as
> well as the associated -headless packages)
> [2] http://www.oracle.com/technetwork/java/eol-135779.html
> Note: do not confuse the Oracle proprietary JDK support dates with the
> OpenJDK support they provide, the proprietary support runs longer by a
> couple/few years.
> [3] http://mail.openjdk.java.net/pipermail/jdk-dev/2017-November/000175.html
> [4] https://access.redhat.com/articles/1299013
> [5] https://time.graphics/line/39488
> [6] https://lists.debian.org/debian-java/2017/11/msg00028.html
>
>
> --
> Tiago Stürmer Daitx
> Software Engineer
> tiago.daitx at canonical.com
>
> PGP Key: 4096R/F5B213BE (hkp://keyserver.ubuntu.com)
> Fingerprint = 45D0 FE5A 8109 1E91 866E  8CA4 1931 8D5E F5B2 13BE



-- 
Tiago Stürmer Daitx
Software Engineer
tiago.daitx at canonical.com

PGP Key: 4096R/F5B213BE (hkp://keyserver.ubuntu.com)
Fingerprint = 45D0 FE5A 8109 1E91 866E  8CA4 1931 8D5E F5B2 13BE



More information about the Ubuntu-release mailing list