hg: jdk8/tl/jdk: 8010309: Improve PlatformLogger.isLoggable performance by direct mapping from an integer to Level

Peter Levart peter.levart at gmail.com
Wed Apr 3 13:29:43 UTC 2013


On 04/03/2013 02:41 PM, Alan Bateman wrote:
> On 28/03/2013 20:16, mandy.chung at oracle.com wrote:
>> Changeset: e433ed08b733
>> Author:    mchung
>> Date:      2013-03-28 13:14 -0700
>> URL:http://hg.openjdk.java.net/jdk8/tl/jdk/rev/e433ed08b733
>>
>> 8010309: Improve PlatformLogger.isLoggable performance by direct mapping from an integer to Level
>> Reviewed-by: mchung
>> Contributed-by:peter.levart at gmail.com,bourges.laurent at gmail.com
>>
>> ! src/share/classes/sun/util/logging/PlatformLogger.java
>> ! test/sun/util/logging/PlatformLoggerTest.java
> It seems that FX doesn't like this good work.

Hm,

The change was designed to be largely source-level compatible, but not 
binary-level. Is this JavaFX 8? Is it going to be re-compiled with 
recent JDK8? Is JavaFX 8 supposed to be compatible with both JDK7 and JDK8 ?

If PlatformLogger API is supposed to be binary-compatible with non-JDK 
code, then we must revert this change and apply the binary-compatible 
one that uses switch statement.

Regards, Peter

>    Caused by: java.lang.NoSuchMethodError: sun.util.logging.PlatformLogger.getLevel()I
>    	at com.sun.javafx.css.parser.CSSParser.<clinit>(CSSParser.java:164)
>    	at com.sun.javafx.css.StyleManager.loadStylesheetUnPrivileged(StyleManager.java:854)
>    	at com.sun.javafx.css.StyleManager.loadStylesheet(StyleManager.java:674)
>    	at com.sun.javafx.css.StyleManager.setDefaultUserAgentStylesheet(StyleManager.java:1050)
>    	at com.sun.javafx.css.StyleManager.setDefaultUserAgentStylesheet(StyleManager.java:1020)
>    	at com.sun.javafx.application.PlatformImpl$10.run(PlatformImpl.java:525)
>    	at java.security.AccessController.doPrivileged(Native Method)
>    	at com.sun.javafx.application.PlatformImpl.setPlatformUserAgentStylesheet(PlatformImpl.java:522)
>    	at com.sun.javafx.application.PlatformImpl.setDefaultPlatformUserAgentStylesheet(PlatformImpl.java:474)
>    	at javafx.scene.control.Control.<clinit>(Control.java:82)
>    	at helloworld.HelloWorld.start(HelloWorld.java:14)
>    	at com.sun.javafx.application.LauncherImpl$5.run(LauncherImpl.java:772)
>    	at com.sun.javafx.application.PlatformImpl$6.run(PlatformImpl.java:260)
>    	at com.sun.javafx.application.PlatformImpl$5$1.run(PlatformImpl.java:223)
>    	at com.sun.javafx.application.PlatformImpl$5$1.run(PlatformImpl.java:220)
>    	at java.security.AccessController.doPrivileged(Native Method)
>    	at com.sun.javafx.application.PlatformImpl$5.run(PlatformImpl.java:220)
>    	at com.sun.glass.ui.InvokeLaterDispatcher$Future.run(InvokeLaterDispatcher.java:94)
>    	at com.sun.glass.ui.win.WinApplication._runLoop(Native Method)
>    	at com.sun.glass.ui.win.WinApplication.access$300(WinApplication.java:39)
>    	at com.sun.glass.ui.win.WinApplication$3$1.run(WinApplication.java:101)
>    	... 1 more
>
>




More information about the core-libs-dev mailing list