{"id":1361,"date":"2021-08-04T22:00:00","date_gmt":"2021-08-04T21:00:00","guid":{"rendered":"http:\/\/hirt.se\/blog\/?p=1361"},"modified":"2021-08-09T15:22:07","modified_gmt":"2021-08-09T14:22:07","slug":"jdk-mission-control-8-1-0-released","status":"publish","type":"post","link":"https:\/\/hirt.se\/blog\/?p=1361","title":{"rendered":"JDK Mission Control 8.1.0 Released!"},"content":{"rendered":"<p>Yay, the latest release of JDK Mission Control was just released! Since this is the source release, it may still take a bit of time until the downstream vendors release binary builds of JDK Mission Control 8.1.0. I will try to remember to <a href=\"https:\/\/twitter.com\/hirt\">tweet<\/a> or say something on the <a href=\"https:\/\/www.facebook.com\/javamissionctrl\">JMC Facebook page<\/a> once the binaries start showing up.<\/p>\n<p><\/p>\n<h4>Mission Control 8.1 &#8211; New and Noteworthy<\/h4>\n<hr>\n<h4>General<\/h4>\n<hr>\n<p><b>JMC 8.1 &#8211; New Release!<\/b><br \/>This is a new minor release of Java Mission Control. The JMC application will now require JDK 11+ to run, but can still be used with OpenJDK 8u272+ and Oracle JDK 7u40+. It can also still open and visualize flight recordings from JDK 7 and 8.<\/p>\n<p><a href=\"https:\/\/hirt.se\/blog\/wp-content\/uploads\/2021\/08\/jmc.png\"><img loading=\"lazy\" decoding=\"async\" width=\"132\" height=\"132\" title=\"jmc\" style=\"display: inline; background-image: none;\" alt=\"jmc\" src=\"https:\/\/hirt.se\/blog\/wp-content\/uploads\/2021\/08\/jmc_thumb.png\" border=\"0\"><\/a><\/p>\n<hr>\n<p><b>Eclipse 4.19 support<\/b><br \/>The Mission Control client is now built to run optimally on Eclipse 2021-03 and later. To install Java Mission Control into Eclipse, go to the update site (Help | Install New Software&#8230;). The URL to the update site will be vendor specific, and some vendors will instead provide an archive with the update site. <\/p>\n<p><a href=\"https:\/\/hirt.se\/blog\/wp-content\/uploads\/2021\/08\/eclipse.png\"><img loading=\"lazy\" decoding=\"async\" width=\"132\" height=\"132\" title=\"eclipse\" style=\"display: inline; background-image: none;\" alt=\"eclipse\" src=\"https:\/\/hirt.se\/blog\/wp-content\/uploads\/2021\/08\/eclipse_thumb.png\" border=\"0\"><\/a><\/p>\n<hr>\n<p><b>Minor bugfixes and improvements<\/b><br \/>There are more than 80 fixes and improvements in this release. Check out the JMC 8.1 Result Dashboard (https:\/\/bugs.openjdk.java.net\/secure\/Dashboard.jspa?selectPageId=20404) for more information. <\/p>\n<p><a href=\"https:\/\/hirt.se\/blog\/wp-content\/uploads\/2021\/08\/issues.png\"><img loading=\"lazy\" decoding=\"async\" width=\"354\" height=\"196\" title=\"issues\" style=\"display: inline; background-image: none;\" alt=\"issues\" src=\"https:\/\/hirt.se\/blog\/wp-content\/uploads\/2021\/08\/issues_thumb.png\" border=\"0\"><\/a><\/p>\n<hr>\n<h4>Core<\/h4>\n<hr>\n<p><b>New Serializers Core Bundle<\/b><br \/>There is now a new core bundle making it easy to serialize flight recording data to DOT (Graphviz) and JSon. This bundle will be expanded upon in future versions. <\/p>\n<p><a href=\"https:\/\/hirt.se\/blog\/wp-content\/uploads\/2021\/08\/serializers.png\"><img loading=\"lazy\" decoding=\"async\" width=\"354\" height=\"135\" title=\"serializers\" style=\"display: inline; background-image: none;\" alt=\"serializers\" src=\"https:\/\/hirt.se\/blog\/wp-content\/uploads\/2021\/08\/serializers_thumb.png\" border=\"0\"><\/a><\/p>\n<hr>\n<p><b>Improved JFR parser performance<\/b><br \/>The performance of the JFR parser has been improved. More improvements are coming in 8.2. <\/p>\n<p><a href=\"https:\/\/hirt.se\/blog\/wp-content\/uploads\/2021\/08\/parserperf.png\"><img loading=\"lazy\" decoding=\"async\" width=\"354\" height=\"80\" title=\"parserperf\" style=\"display: inline; background-image: none;\" alt=\"parserperf\" src=\"https:\/\/hirt.se\/blog\/wp-content\/uploads\/2021\/08\/parserperf_thumb.png\" border=\"0\"><\/a><\/p>\n<hr>\n<h4>Java Flight Recorder (JFR)<\/h4>\n<hr>\n<p><b>Support for the new JDK 16 Allocation Events<\/b><br \/>A new form of light weight allocation profiling was introduced with JDK 16 (see https:\/\/bugs.java.com\/bugdatabase\/view_bug.do?bug_id=JDK-8257602). This version of JMC supports this new type of allocation profiling. <\/p>\n<p><a href=\"https:\/\/hirt.se\/blog\/wp-content\/uploads\/2021\/08\/allocationprof.png\"><img loading=\"lazy\" decoding=\"async\" width=\"354\" height=\"189\" title=\"allocationprof\" style=\"display: inline; background-image: none;\" alt=\"allocationprof\" src=\"https:\/\/hirt.se\/blog\/wp-content\/uploads\/2021\/08\/allocationprof_thumb.png\" border=\"0\"><\/a><\/p>\n<hr>\n<p><b>New Page for Peeking into the Constant Pools<\/b><br \/>There is a new page available for taking a look at what constants are available in the recording. This can, for example, be useful when creating custom events to see where all that storage and memory is being used. <\/p>\n<p><a href=\"https:\/\/hirt.se\/blog\/wp-content\/uploads\/2021\/08\/constantpool.png\"><img loading=\"lazy\" decoding=\"async\" width=\"354\" height=\"275\" title=\"constantpool\" style=\"display: inline; background-image: none;\" alt=\"constantpool\" src=\"https:\/\/hirt.se\/blog\/wp-content\/uploads\/2021\/08\/constantpool_thumb.png\" border=\"0\"><\/a><\/p>\n<hr>\n<p><b>Open Recordings with .lz4 extension<\/b><br \/>For convenience, files with the .lz4 extension will now be attempted to be opened as flight recordings. This is since lz4 is a common compression to use with flight recordings. <\/p>\n<p><a href=\"https:\/\/hirt.se\/blog\/wp-content\/uploads\/2021\/08\/lz4.png\"><img loading=\"lazy\" decoding=\"async\" width=\"354\" height=\"188\" title=\"lz4\" style=\"display: inline; background-image: none;\" alt=\"lz4\" src=\"https:\/\/hirt.se\/blog\/wp-content\/uploads\/2021\/08\/lz4_thumb.png\" border=\"0\"><\/a><\/p>\n<hr>\n<h4>JMC Agent Plug-in<\/h4>\n<hr>\n<p><b>New JMC Agent Plug-in<\/b><br \/>There is now a new agent plug-in available for JMC, which allows configuring where to emit flight recording events in an already running process. <\/p>\n<p><a href=\"https:\/\/hirt.se\/blog\/wp-content\/uploads\/2021\/08\/agent.png\"><img loading=\"lazy\" decoding=\"async\" width=\"354\" height=\"154\" title=\"agent\" style=\"display: inline; background-image: none;\" alt=\"agent\" src=\"https:\/\/hirt.se\/blog\/wp-content\/uploads\/2021\/08\/agent_thumb.png\" border=\"0\"><\/a><\/p>\n<hr>\n<h4>Bug Fixes<\/h4>\n<hr>\n<p><b>Area: <\/b>JFR<br \/><b>Issue: <\/b><a href=\"https:\/\/bugs.openjdk.java.net\/browse\/JMC-6939\">6939<\/a><br \/><b>Synopsis: <\/b>Time range indicator update problem fixed<\/p>\n<p>Sometimes the time range indicator wasn&#8217;t updated when setting the time range. This is now fixed. <\/p>\n<p><b>Area: <\/b>JFR<br \/><b>Issue: <\/b><a href=\"https:\/\/bugs.openjdk.java.net\/browse\/JMC-7007\">7007<\/a><br \/><b>Synopsis: <\/b>Unable to edit run configurations for eclipse project after installing JMC plugin fixed <\/p>\n<p>Previously it would not be possible to edit run configuration after installing the experimental JMC launcher plug-in. This has now been resolve. <\/p>\n<hr>\n<h4>Known Issues<\/h4>\n<hr>\n<p><b>Area: <\/b>General<br \/><b>Issue: <\/b><a href=\"https:\/\/bugs.openjdk.java.net\/browse\/JMC-4270\">4270<\/a><br \/><b>Synopsis: <\/b>Hibernation and time<\/p>\n<p>After the bugfix of https:\/\/bugs.openjdk.java.net\/browse\/JDK-6523160 in JDK 8, the RuntimeMXBean#getUptime() attribute was re-implemented to mean &#8220;Elapsed time of JVM process&#8221;, whilst it previously was implemented as time since start of the JVM process. The uptime attribute is used by JMC, together with RuntimeMXBean#getStartTime(), to estimate the actual server time. This means that time stamps, as well as remaining time for a flight recording, can be wrong for processes on machines that have been hibernated. <\/p>\n<p><b>Area: <\/b>JFR<br \/><b>Issue: <\/b><a href=\"https:\/\/bugs.openjdk.java.net\/browse\/JMC-7071\">7071<\/a><br \/><b>Synopsis: <\/b>JMC can&#8217;t attach to jlinked JVMs<\/p>\n<p>This one is still under investigation, but it seems JMC can&#8217;t attach to certain jlinked images. <\/p>\n<p><b>Area: <\/b>JFR<br \/><b>Issue: <\/b><a href=\"https:\/\/bugs.openjdk.java.net\/browse\/JMC-7068\">7068<\/a><br \/><b>Synopsis: <\/b>JfrRecordingTest (uitest) hangs on the automated analysis page <\/p>\n<p>Trying to run uitests on Fedora hangs on JfrRecordingTest. <\/p>\n<p><b>Area: <\/b>JFR<br \/><b>Issue: <\/b><a href=\"https:\/\/bugs.openjdk.java.net\/browse\/JMC-7003\">7003<\/a><br \/><b>Synopsis: <\/b>The graph and flame graph view does not work on Windows <\/p>\n<p>This is due to a bug with the Edge based browser component in SWT. We&#8217;ll look into it for 8.2.0. <\/p>\n<p><b>Area: <\/b>JFR<br \/><b>Issue: <\/b><a href=\"https:\/\/bugs.openjdk.java.net\/browse\/JMC-6265\">6265<\/a><br \/><b>Synopsis: <\/b>JMC crashes with Webkit2+GTK 4<\/p>\n<p>See the issue for more information.<\/p>\n<p><b>Area: <\/b>JFR<br \/><b>Issue: <\/b><a href=\"https:\/\/bugs.openjdk.java.net\/browse\/JMC-5412\">5412<\/a><br \/><b>Synopsis: <\/b>Dragging and dropping a JFR file into an open analysis page does not work <\/p>\n<p>The expected behaviour would be to open the recording whenever a file is dropped in the editor area, but the behaviour will be defined by the embedded browser component, and not very useful.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Yay, the latest release of JDK Mission Control was just released! Since this is the source release, it may still take a bit of time until the downstream vendors release binary builds of JDK Mission Control 8.1.0. I will try to remember to tweet or say something on the JMC Facebook page once the binaries [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[3],"tags":[23,18,26],"class_list":["post-1361","post","type-post","status-publish","format-standard","hentry","category-java-mission-control-fair-dj","tag-jdk-flight-recorder","tag-jdk-mission-control","tag-jdk-mission-control-8"],"_links":{"self":[{"href":"https:\/\/hirt.se\/blog\/index.php?rest_route=\/wp\/v2\/posts\/1361","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/hirt.se\/blog\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/hirt.se\/blog\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/hirt.se\/blog\/index.php?rest_route=\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/hirt.se\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=1361"}],"version-history":[{"count":1,"href":"https:\/\/hirt.se\/blog\/index.php?rest_route=\/wp\/v2\/posts\/1361\/revisions"}],"predecessor-version":[{"id":1362,"href":"https:\/\/hirt.se\/blog\/index.php?rest_route=\/wp\/v2\/posts\/1361\/revisions\/1362"}],"wp:attachment":[{"href":"https:\/\/hirt.se\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=1361"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/hirt.se\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=1361"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/hirt.se\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=1361"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}