Planet JDKNews and views from the Java SE Development-Kit CommunityVariousRoman Kennke: Shenandoah GC: Concurrent parallel markingRoman Kennkehttp://rkennke.wordpress.com/?p=5872013-06-19T20:36:17Z2013-06-19T20:36:17Z
Yesterday, I gave a quick overview over the Shenandoah GC. (And Christine also started blogging about Shenandoah today, giving even more background information.) I mentioned that Shenandoah collects garbage in two main phases: marking and evacuation. All of that needs to happen concurrently with the mutator threads. Let’s look at the marking phase first. We […]
0Roman Kennke2013-06-19T20:36:17Z
Jim Laskey: Nashorn and Lambda, What the Hey!Jim Laskeyhttps://blogs.oracle.com/nashorn/entry/nashorn_and_lambda_what_the2013-06-20T01:21:18Z2013-06-19T19:46:23Z
Yesterday, Brian Goetz (Lambda architect) suggested that I produce an example of Lambda being used from Nashorn.  Since, I've been heads down in Nashorn, I really haven't played with Lambda that much.  After looking at some examples from Stuart Marks,  I figured, what the hey, it doesn't look that hard.  Details of the Lambda APIs are available at JDK 8 b92 API .
 ...
jlaskey 2013-06-19T19:46:23Z
Donald Smith: Another Quick update to Code Signing Article on OTNDonald Smithhttp://openj.dk/?p=2512013-06-19T16:37:10Z2013-06-19T16:37:10Z
The recent release of Oracle Java SE 7u25 changed some behavior with respect to code signing, and so the OTN Code Signing Article has been updated.  Specifically, starting with 7u25 all contents within a signed JAR must be signed.  Previously it was … Continue reading
0DonaldOJDK2013-06-19T16:37:10Z
Andrew Hughes: Imminent IcedTea-Web BreakageAndrew Hugheshttp://blog.fuseyism.com/?p=5652013-06-19T15:53:01Z2013-06-19T15:51:45Z
[Details courtesy of Omair Majid] Observant people may have noticed that there’s a new security release on the horizon. We’ll have new releases for you (1.11.12, 1.12.6, 2.1.9, 2.2.9, 2.3.10, 2.4.1) as soon as possible. We’re currently trying to resolve differences between what we got ahead-of-time and what Oracle have now posted publically for 7u, [...]
0gnu_andrew2013-06-19T15:51:45Z
Roman Kennke: Shenandoah GC: An overviewRoman Kennkehttp://rkennke.wordpress.com/?p=5852013-06-18T21:04:28Z2013-06-18T21:04:28Z
Let me give you a quick overview how the Shenandoah GC works. First of all, let’s look at the heap in Shenandoah. Shenandoah’s heap is basically (like all heaps) a big chunk of memory, and in Shenandoah it is divided into many regions. Consider a heap of 1 GB, and a region size of 1MB, […]
0Roman Kennke2013-06-18T21:04:28Z
Jim Laskey: Follow up: Taming the Nashorn...AGAIN...Jim Laskeyhttps://blogs.oracle.com/nashorn/entry/follow_up_taming_the_nashorn2013-06-17T15:20:37Z2013-06-17T15:20:37Z jlaskey 2013-06-17T15:20:37ZMario Torre: Font Awesome!Mario Torrehttp://www.jroller.com/neugens/entry/font_awesome2013-06-16T13:47:19Z2013-06-15T19:04:56Z
 ...
Mario Torre2013-06-15T19:04:56Z
Jonathan Gibbons: Testing javac: more, fasterJonathan Gibbonshttps://blogs.oracle.com/jjg/entry/speeding_up_javac_tests2013-06-14T14:51:03Z2013-06-14T14:51:03Z
Getting numbers is so much fun, and rarely fails to disappoint.
jjg 2013-06-14T14:51:03Z
Roman Kennke: Shenandoah: A pauseless GC for OpenJDKRoman Kennkehttp://rkennke.wordpress.com/?p=5812013-06-10T21:04:18Z2013-06-10T21:04:18Z
It’s been quite a while that I did not post anything. The reason is that I was busy with a very interesting new project in the last weeks, Shenandoah, a new GC for OpenJDK. Christine, a collegue of mine in Red Hat’s Java team, set out to build a next generation garbage collector for OpenJDK. […]
10Roman Kennke2013-06-10T21:04:18Z
Henrik Ståhl: TZUpdater for JDK 7 available (again)Henrik Ståhlhttps://blogs.oracle.com/henrik/entry/tzupdater_for_jdk_7_available2013-06-10T22:35:30Z2013-06-10T20:16:04Z

The Timezone Updater Tool (aka TZUpdater) is available for public download from OTN [1] again.

Henrik Stahl 2013-06-10T20:16:04Z
Andrew Hughes: IcedTea 2.4.0 Released!Andrew Hugheshttp://blog.fuseyism.com/?p=5562013-06-11T14:55:59Z2013-06-10T00:32:32Z
The IcedTea project provides a harness to build the source code from OpenJDK using Free Software build tools, along with additional features such as a PulseAudio sound driver and support for alternative virtual machines. This release is the next major release supporting OpenJDK 7. It is based on what will eventually become the upstream u40 [...]
1gnu_andrew2013-06-10T00:32:32Z
Donald Smith: Quick note on Oracle Java SE Time Zone Updates #tzupdaterDonald Smithhttp://openj.dk/?p=2492013-06-08T20:48:41Z2013-06-08T20:48:41Z
As noted on a recent /. and TSS thread, some have noticed that a tool known as the Java SE Time Zone Updater (aka “TZUpdater”) is no longer publicly available.  There seems to be some misunderstanding about the purpose of … Continue reading
9DonaldOJDK2013-06-08T20:48:41Z
David Dice: Jam Jar JetDavid Dicehttps://blogs.oracle.com/dave/entry/jam_jar_jet2013-06-03T14:06:23Z2013-05-31T15:15:39Z

A simple working model of a valveless pulse jet engine inspired by an article in Make magazine. I found our worked better without the diffuser. Read the full article before you try this at home. Sometimes our blog systems does not allow embedded video, so just in case you can use this direct link.

Dave 2013-05-31T15:15:39Z
David Dice: Scalable Statistics CountersDavid Dicehttps://blogs.oracle.com/dave/entry/scalable_statistics_counters2013-05-31T14:54:49Z2013-05-31T14:54:49Z

Scalable Statistics Counters will appear in SPAA 2013.

Dave 2013-05-31T14:54:49Z
David Dice: Lightweight Contention Management for Efficient Compare-and-Swap OperationsDavid Dicehttps://blogs.oracle.com/dave/entry/lightweight_contention_management_for_efficient2013-05-31T14:34:18Z2013-05-31T14:34:18Z

"Lightweight Contention Management for Efficient Compare-and-Swap Operations" by Dave Dice, Danny Hendler and Ilya Mirsky will appear in Euro-Par 2013. A longer technical report is also available in arxiv.

Dave 2013-05-31T14:34:18Z
Dalibor Topić: Food For Tests: 7u40 Build b26 & 8 Build b91Dalibor Topićurn:lj:livejournal.com:atom1:robilad:1340102013-05-30T19:03:23Z2013-05-30T18:45:54Z
This week brought new Early Access builds of the JDK and related projects.On the JDK 7 side, the JDK 7 Update 40 Early Access Releases have been updated to 7u40 Build b26. A list of changes is available here - this build updates HotSpot to hs24-b45 and upgrades JAXP to 1.5. On the JDK 8 side, the JDK 8 Early Access Releases Build b91 ...
2013-05-30T18:45:54Z
Jeroen Frijters: Overriding a Final FinalizeJeroen Frijtershttp://weblog.ikvm.net/PermaLink.aspx?guid=0f35cb7d-e3b3-400b-b829-6c975fa976462013-05-30T14:11:44Z2013-05-30T14:11:44Z

Compile the following code:

class Base {   protected final void finalize() {     System.out.println("Base.finalize");   } } class Derived extends Base {   private void fin_lize() {     System.out.println("Derived.finalize");   }   public static void main(String[] args) {     new Derived();     System.gc();     System.runFinalization();   } } ...
http://weblog.ikvm.net/Trackback.aspx?guid=0f35cb7d-e3b3-400b-b829-6c975fa97646http://weblog.ikvm.net/pingback.aspxhttp://weblog.ikvm.net/PermaLink.aspx?guid=0f35cb7d-e3b3-400b-b829-6c975fa97646http://weblog.ikvm.net/CommentView.aspx?guid=0f35cb7d-e3b3-400b-b829-6c975fa97646http://weblog.ikvm.net/SyndicationService.asmx/GetEntryCommentsRss?guid=0f35cb7d-e3b3-400b-b829-6c975fa9764614

Compile the following code:

class Base {
  protected final void finalize() {
    System.out.println("Base.finalize");
  }
}

class Derived extends Base {
  private void fin_lize() {
    System.out.println("Derived.finalize");
  }

  public static void main(String[] args) {
    new Derived();
    System.gc();
    System.runFinalization();
  }
}

Now patch Derived.class with a hex editor to change fin_lize to finalize. Run with OpenJDK or Oracle JRE/JDK and observe that Derived.finalize is printed.

This happens because the finalize method is called via JNI reflection and the method name is resolved against the real object type instead of java.lang.Object. The OpenJDK code can be seen here.

A better way to do this would be to add an invokeFinalize method to JavaLangAccess. This avoids the expense of native code and reflection.

2013-05-30T14:11:44Z
Jonathan Gibbons: javadoc TLCJonathan Gibbonshttps://blogs.oracle.com/jjg/entry/javadoc_tlc2013-05-29T23:06:28Z2013-05-29T23:06:28Z

The recent series of patches1 for javadoc completes the work started during JDK 7 to change the internal data model for standard javadoc doclets from strings to a document tree. As a result of this work, there should no longer be any unnecessary internal conversion from tree nodes to strings and back again.

jjg 2013-05-29T23:06:28Z
Jim Laskey: Repost: Taming the Nashorn (first impressions)...Jim Laskeyhttps://blogs.oracle.com/nashorn/entry/repost_taming_the_nashorn_first2013-05-29T15:56:43Z2013-05-29T14:34:22Z
import eu.hansolo.enzo.lcd.Lcd;
 ...
jlaskey 2013-05-29T14:34:22Z