RFR: 8241307: Marlin renderer is used by default in jdk8u
Laurent Bourgès
bourges.laurent at gmail.com
Thu Mar 26 21:04:42 UTC 2020
Le mer. 25 mars 2020 à 10:35, Severin Gehwolf <sgehwolf at redhat.com> a
écrit :
> On Wed, 2020-03-25 at 02:26 +0000, Andrew Hughes wrote:
> > On 24/03/2020 14:36, Severin Gehwolf wrote:
> > > On Mon, 2020-03-23 at 12:29 +0300, Alexander Scherbatiy wrote:
> > > > On 20.03.2020 19:07, Andrew Hughes wrote:
> > > >
> > > > > On 20/03/2020 15:36, Hohensee, Paul wrote:
> > > > > > For the fix to go into 8u252, label the issue with
> 'jdk8u-critical-request' and remove the 'jdk8u-fix-request' label. I
> removed 'openjdk8u' from the Affects Version/s list because it only affects
> openjdk8u252.
> > > > > >
> > > > > > Paul
> > > > > >
> > > > > > On 3/20/20, 3:17 AM, "jdk8u-dev on behalf of Laurent Bourgès" <
> jdk8u-dev-bounces at openjdk.java.net on behalf of bourges.laurent at gmail.com>
> wrote:
> > > > > >
> > > > > > Hi Andrew,
> > > > > > as 2 reviewers approved this patch, is it enough to push ?
> > > > > >
> > > > > > Should I add more labels to this jdk8u bug or wait for 8u
> maintainer
> > > > > > approval ?
> > > > > >
> > > > > > Could you then backport on OpenJDK8u 252 if you agree ?
> > > > > >
> > > > > > Cheers,
> > > > > > Laurent
> > > > > >
> > > > > > Le ven. 20 mars 2020 à 10:48, Alexander Scherbatiy <
> > > > > > alexander.scherbatiy at bell-sw.com> a écrit :
> > > > > >
> > > > > > > The fix looks good to me.
> > > > > > >
> > > > > > > Thanks,
> > > > > > >
> > > > > > > Alexander.
> > > > > > > On 20.03.2020 00:23, Laurent Bourgès wrote:
> > > > > > >
> > > > > > > Please review this jdk8u specific patch to restore the
> default behaviour
> > > > > > > (Marlin renderer is not the default RenderingEngine).
> > > > > > >
> > > > > > >
> > > > > > > Note: this impacts the coming JDK8 b252 release too,
> sorry.
> > > > > > >
> > > > > > >
> > > > > > >
> > > > > > > JBS: https://bugs.openjdk.java.net/browse/JDK-8241307
> > > > > > >
> > > > > > > webrev:
> http://cr.openjdk.java.net/~lbourges/marlin8u/marlin-8241307.0/
> > > > > > >
> > > > > > > Changes:
> > > > > > > - fixed the class order sun.java2d.pipe.RenderingEngine
> files to ensure
> > > > > > > Marlin is not at the last place (default service)
> > > > > > > - new test DefaultRenderingEngine that fails if Marlin is
> the default
> > > > > > > rendering engine
> > > > > > >
> > > > > > > Build: OK
> > > > > > > JTreg fails without patch:
> > > > > > > runner starting test:
> sun/java2d/marlin/DefaultRenderingEngine.java
> > > > > > > runner finished test:
> sun/java2d/marlin/DefaultRenderingEngine.java
> > > > > > > Failed. Execution failed: `main' threw exception:
> > > > > > > java.lang.RuntimeException: Marlin must not be the
> default RenderingEngine
> > > > > > > in jdk8u !
> > > > > > >
> > > > > > > JTreg passes with patch:
> > > > > > > runner starting test:
> sun/java2d/marlin/DefaultRenderingEngine.java
> > > > > > > runner finished test:
> sun/java2d/marlin/DefaultRenderingEngine.java
> > > > > > > Passed. Execution successful
> > > > > > >
> > > > > > > PS: Thanks to Alexander to have reported this problem
> today.
> > > > > > >
> > > > > > > Laurent
> > > > > > >
> > > > > > >
> > > > > >
> > > > > >
> > > > > I think this is one for 8u262. We should have a cycle where Marlin
> is
> > > > > available, not default, as with JFR.
> > > >
> > > > I believe that the issue affects 8u252 as well. If openjdk is
> built
> > > > from sources which do not include closed repository the default
> Ductus
> > > > rendering engine is not found so the latest registered one
> (currently
> > > > Marlin) is used as the default one.
> > > >
> > > > To not make the Marlin as the default rendering engine in 8u252 the
> fix
> > > > puts Marlin before Pisces so Pisces rendering engine becomes the
> default
> > > > one as it was in 8u242.
> > >
> > > That's right. We need this for 8u252:
> > >
> > > ./openjdk-8u252-b06/bin/java -showversion DefaultRenderingEngine
> > > openjdk version "1.8.0_252-ea"
> > > OpenJDK Runtime Environment (build 1.8.0_252-ea-b06)
> > > OpenJDK 64-Bit Server VM (build 25.252-b06, mixed mode)
> > >
> > > Exception in thread "main" java.lang.RuntimeException: Marlin must not
> be the default RenderingEngine in jdk8u !
> > > at DefaultRenderingEngine.main(DefaultRenderingEngine.java:16)
> > >
> > > Andrew, please approve this for the 8u252 cycle. Once we flip the
> > > default, we'll need to update the test.
> > >
> > > Thanks,
> > > Severin
> > >
> >
> > Thanks for clarifying. From the initial thread, I thought this was
> > making Marlin the default.
> >
> > I'll push this to jdk8u/jdk8u. Please *DON'T* push it to jdk8u/jdk8u-dev
> > as well, as it'll be merged across in due course.
>
> Thanks, Andrew.
>
Yes thank you for pushing in 8u master, waiting for 8u-dev synch.
I am going to resume the integration 10/21 to reach jdk14 / latest
openjdk's Marlin renderer version.
> > Longer term, do we want to make Marlin the default?
>
> I believe so, but we should discuss this in a separate thread first.
> Then we'll see what people's opinions are.
>
For me, let's wait all patches (21) to discuss that.
FYI I had no bug report since sep 19 ie against the latest jdk14 version.
I made more enhancements on github v0.9.4.3 & 1.0... but it mainly concerns
improving the curve stroker accuracy ie higher visual quality only.
Anyway any openjdk provider can decide for its own distribution at any
moment (property file hacking) but I recommend to wait for latest patch.
Cheers,
Laurent
More information about the jdk8u-dev
mailing list