From jbachorik at openjdk.java.net Tue Jun 1 12:02:19 2021 From: jbachorik at openjdk.java.net (Jaroslav Bachorik) Date: Tue, 1 Jun 2021 12:02:19 GMT Subject: RFR: 7260: Create a new serializers bundle In-Reply-To: References: Message-ID: On Fri, 28 May 2021 00:22:06 GMT, Marcus Hirt wrote: > This creates a new core bundle that can be used to serialize data from JFR into various popular formats, such as DOT and JSON. Looks good (not-a-reviewer) ------------- Marked as reviewed by jbachorik (Author). PR: https://git.openjdk.java.net/jmc/pull/254 From robilad at openjdk.java.net Tue Jun 1 13:12:29 2021 From: robilad at openjdk.java.net (Dalibor Topic) Date: Tue, 1 Jun 2021 13:12:29 GMT Subject: RFR: 6832: Should allow plotting line charts for all quantities In-Reply-To: <0piIl0oBz22PcJLYNKSXoDaPngK_iEeMIcOlSx4B7Zk=.ec451086-dfa5-4444-991e-ff6f3a833219@github.com> References: <0piIl0oBz22PcJLYNKSXoDaPngK_iEeMIcOlSx4B7Zk=.ec451086-dfa5-4444-991e-ff6f3a833219@github.com> Message-ID: On Fri, 28 May 2021 09:00:50 GMT, Oskar Jung wrote: > 6832: Should allow plotting line charts for all quantities Hi, Please send me an e-mail at Dalibor.topic at oracle.com so that I can mark your account as verified. ------------- PR: https://git.openjdk.java.net/jmc/pull/255 From github.com+1101441+ojung at openjdk.java.net Tue Jun 1 13:12:29 2021 From: github.com+1101441+ojung at openjdk.java.net (Oskar Jung) Date: Tue, 1 Jun 2021 13:12:29 GMT Subject: RFR: 6832: Should allow plotting line charts for all quantities Message-ID: <0piIl0oBz22PcJLYNKSXoDaPngK_iEeMIcOlSx4B7Zk=.ec451086-dfa5-4444-991e-ff6f3a833219@github.com> 6832: Should allow plotting line charts for all quantities ------------- Commit messages: - 6832: Allow LineCharts in more places - Fix not being able to run core tests from eclipse - Remove trailing whitespace and add new line at end of file - Add inline code listing Changes: https://git.openjdk.java.net/jmc/pull/255/files Webrev: https://webrevs.openjdk.java.net/?repo=jmc&pr=255&range=00 Issue: https://bugs.openjdk.java.net/browse/JMC-6832 Stats: 45 lines in 9 files changed: 5 ins; 17 del; 23 mod Patch: https://git.openjdk.java.net/jmc/pull/255.diff Fetch: git fetch https://git.openjdk.java.net/jmc pull/255/head:pull/255 PR: https://git.openjdk.java.net/jmc/pull/255 From github.com+1101441+ojung at openjdk.java.net Tue Jun 1 14:42:22 2021 From: github.com+1101441+ojung at openjdk.java.net (Oskar Jung) Date: Tue, 1 Jun 2021 14:42:22 GMT Subject: Withdrawn: 6832: Should allow plotting line charts for all quantities In-Reply-To: <0piIl0oBz22PcJLYNKSXoDaPngK_iEeMIcOlSx4B7Zk=.ec451086-dfa5-4444-991e-ff6f3a833219@github.com> References: <0piIl0oBz22PcJLYNKSXoDaPngK_iEeMIcOlSx4B7Zk=.ec451086-dfa5-4444-991e-ff6f3a833219@github.com> Message-ID: <9AdcKNXarqoZQ7IvgSHVE47R5mfciIB8_2KWixWEtyE=.47d555b2-8d6c-44d5-a952-1aa9da5491f0@github.com> On Fri, 28 May 2021 09:00:50 GMT, Oskar Jung wrote: > 6832: Should allow plotting line charts for all quantities This pull request has been closed without being integrated. ------------- PR: https://git.openjdk.java.net/jmc/pull/255 From github.com+1101441+ojung at openjdk.java.net Tue Jun 1 14:42:22 2021 From: github.com+1101441+ojung at openjdk.java.net (Oskar Jung) Date: Tue, 1 Jun 2021 14:42:22 GMT Subject: RFR: 6832: Should allow plotting line charts for all quantities In-Reply-To: <0piIl0oBz22PcJLYNKSXoDaPngK_iEeMIcOlSx4B7Zk=.ec451086-dfa5-4444-991e-ff6f3a833219@github.com> References: <0piIl0oBz22PcJLYNKSXoDaPngK_iEeMIcOlSx4B7Zk=.ec451086-dfa5-4444-991e-ff6f3a833219@github.com> Message-ID: <4soXQBAJM0c_b122BlTpuzpWvTnfmkm7DPSRB0lDBUE=.50c4bc9c-e08c-4509-8073-2f51c68059e7@github.com> On Fri, 28 May 2021 09:00:50 GMT, Oskar Jung wrote: > 6832: Should allow plotting line charts for all quantities I noticed I wasn't able to plot quite all quantities in line charts so far. Closing for the moment and opening another PR if/when I finish this. ------------- PR: https://git.openjdk.java.net/jmc/pull/255 From schaturvedi at openjdk.java.net Tue Jun 1 17:47:29 2021 From: schaturvedi at openjdk.java.net (Suchita Chaturvedi) Date: Tue, 1 Jun 2021 17:47:29 GMT Subject: RFR: 7041: Add Percentage column based on Duration in stack trace view Message-ID: This PR address the enhancement requested by one of our customers where they were missing the percentage column by duration in stacktrace view which was available in JMC 5.5. Currently we have percentage column which is calculating the percentage based on event count and there is no way user can configure that. Since this functionality might not be used by many customers I have added a toggle icon in Stacktrace View so that user can set the view according to his preference and by default the new column will be hidden. Default view showing toggle icon: ![image](https://user-images.githubusercontent.com/11155712/120366242-1056ca00-c32d-11eb-8c27-ac7481fc89cf.png) Percentage By Duration Column : ![image](https://user-images.githubusercontent.com/11155712/120366404-3ed4a500-c32d-11eb-82b7-6107d790fdca.png) Please review the change and let me know your valuable feedback on this. ------------- Commit messages: - 7041: Add Percentage column based on Duration in stack trace view Changes: https://git.openjdk.java.net/jmc/pull/257/files Webrev: https://webrevs.openjdk.java.net/?repo=jmc&pr=257&range=00 Issue: https://bugs.openjdk.java.net/browse/JMC-7041 Stats: 145 lines in 4 files changed: 140 ins; 0 del; 5 mod Patch: https://git.openjdk.java.net/jmc/pull/257.diff Fetch: git fetch https://git.openjdk.java.net/jmc pull/257/head:pull/257 PR: https://git.openjdk.java.net/jmc/pull/257 From jkang at openjdk.java.net Tue Jun 1 20:15:12 2021 From: jkang at openjdk.java.net (Jie Kang) Date: Tue, 1 Jun 2021 20:15:12 GMT Subject: RFR: 7167: Agent Plugin [v6] In-Reply-To: <81i7tInHHp-rf5jdplOH3TaSatjsumQ-64cgxQejyuI=.2da150e4-3cc5-4b2f-a542-ed9afee1adcc@github.com> References: <81i7tInHHp-rf5jdplOH3TaSatjsumQ-64cgxQejyuI=.2da150e4-3cc5-4b2f-a542-ed9afee1adcc@github.com> Message-ID: On Wed, 28 Apr 2021 17:57:17 GMT, Joshua Matsuoka wrote: >> This PR adds the Agent Plugin to JMC. This is a plugin for controlling the jmc agent and provides a way to attach it and add probes to any JVMs in the JVM browser, as well as providing a preset manager for creating/modifying probe presets. >> >> There is still a small amount of cleanup to be done so I'll mark it as a draft for now but it would be great to get a review :) > > Joshua Matsuoka has updated the pull request incrementally with one additional commit since the last revision: > > Fix rcp feature to use new agent plugin name application/org.openjdk.jmc.console.agent/plugin.xml line 46: > 44: icon="icons/agent-16.png" > 45: id="org.openjdk.jmc.console.ext.agent" > 46: description="The JMC Agent Plugin can be used to add JFR instrumentation declaratively to a running program" Super minor suggestion: s/add... declaratively/declaratively add .../ application/org.openjdk.jmc.console.agent/pom.xml line 68: > 66: sun.jdk > 67: tools > 68: 1.8.0 There's a `java.version` property defined above in this pom that doesn't seem to be used. Is it meant to be here instead of this magic version number for `sun.jdk tools`? application/org.openjdk.jmc.console.agent/src/main/java/org/openjdk/jmc/console/agent/actions/AgentEditorOpener.java line 100: > 98: return ret; > 99: } catch (ConnectionException e) { > 100: // FIXME: Show stacktrace? (Need to show our own ExceptionDialog in that case, or maybe create our own DetailsAreaProvider, see WorkbenchStatusDialogManager.setDetailsAreaProvider) Personally not a fan of PRs that add FIXMEs; can you provide some justification for having this? What's preventing this being done sooner rather than later? ------------- PR: https://git.openjdk.java.net/jmc/pull/226 From jkang at openjdk.java.net Tue Jun 1 20:25:12 2021 From: jkang at openjdk.java.net (Jie Kang) Date: Tue, 1 Jun 2021 20:25:12 GMT Subject: RFR: 7167: Agent Plugin [v6] In-Reply-To: <81i7tInHHp-rf5jdplOH3TaSatjsumQ-64cgxQejyuI=.2da150e4-3cc5-4b2f-a542-ed9afee1adcc@github.com> References: <81i7tInHHp-rf5jdplOH3TaSatjsumQ-64cgxQejyuI=.2da150e4-3cc5-4b2f-a542-ed9afee1adcc@github.com> Message-ID: On Wed, 28 Apr 2021 17:57:17 GMT, Joshua Matsuoka wrote: >> This PR adds the Agent Plugin to JMC. This is a plugin for controlling the jmc agent and provides a way to attach it and add probes to any JVMs in the JVM browser, as well as providing a preset manager for creating/modifying probe presets. >> >> There is still a small amount of cleanup to be done so I'll mark it as a draft for now but it would be great to get a review :) > > Joshua Matsuoka has updated the pull request incrementally with one additional commit since the last revision: > > Fix rcp feature to use new agent plugin name application/org.openjdk.jmc.console.agent/src/main/java/org/openjdk/jmc/console/agent/manager/model/CapturedValue.java line 49: > 47: private static final String DEFAULT_STRING_FIELD = ""; // $NON-NLS-1$ > 48: private static final Object DEFAULT_OBJECT_TYPE = null; > 49: private static final String CONVERTER_REGEX = "([a-zA-Z_$][a-zA-Z0-9_$]*\\.)*([a-zA-Z_$][a-zA-Z0-9_$]*)"; // $NON-NLS-1$ If possible I'd appreciate a comment on this Regex or class to share intention. application/org.openjdk.jmc.console.agent/src/main/java/org/openjdk/jmc/console/agent/manager/model/Field.java line 45: > 43: private static final String DEFAULT_FIELD_NAME = "New Field"; // $NON-NLS-1$ > 44: private static final String DEFAULT_FIELD_EXPRESSION = "myField"; // $NON-NLS-1$ > 45: private static final String EXPRESSION_REGEX = "([a-zA-Z_$][a-zA-Z0-9_$]*\\.)*([a-zA-Z_$][a-zA-Z0-9_$]*)(\\.[a-zA-Z_$][a-zA-Z_$]*)*"; // $NON-NLS-1$ Similarly here. I'm guessing it's to match valid field names? ------------- PR: https://git.openjdk.java.net/jmc/pull/226 From jkang at openjdk.java.net Tue Jun 1 20:29:12 2021 From: jkang at openjdk.java.net (Jie Kang) Date: Tue, 1 Jun 2021 20:29:12 GMT Subject: RFR: 7167: Agent Plugin [v6] In-Reply-To: References: <81i7tInHHp-rf5jdplOH3TaSatjsumQ-64cgxQejyuI=.2da150e4-3cc5-4b2f-a542-ed9afee1adcc@github.com> Message-ID: On Thu, 27 May 2021 09:02:18 GMT, Brice Dutheil wrote: >> Joshua Matsuoka has updated the pull request incrementally with one additional commit since the last revision: >> >> Fix rcp feature to use new agent plugin name > > application/org.openjdk.jmc.console.agent/src/main/java/org/openjdk/jmc/console/agent/manager/model/PresetRepositoryFactory.java line 85: > >> 83: for (File file : files) { >> 84: if (file.length() == 0) { >> 85: // FIXME: delete or just ignore empty files? > > Maybe ignore empty files but report them in a logger ? Agreed with ignoring and logging ------------- PR: https://git.openjdk.java.net/jmc/pull/226 From jkang at openjdk.java.net Tue Jun 1 20:38:12 2021 From: jkang at openjdk.java.net (Jie Kang) Date: Tue, 1 Jun 2021 20:38:12 GMT Subject: RFR: 7167: Agent Plugin [v6] In-Reply-To: <81i7tInHHp-rf5jdplOH3TaSatjsumQ-64cgxQejyuI=.2da150e4-3cc5-4b2f-a542-ed9afee1adcc@github.com> References: <81i7tInHHp-rf5jdplOH3TaSatjsumQ-64cgxQejyuI=.2da150e4-3cc5-4b2f-a542-ed9afee1adcc@github.com> Message-ID: On Wed, 28 Apr 2021 17:57:17 GMT, Joshua Matsuoka wrote: >> This PR adds the Agent Plugin to JMC. This is a plugin for controlling the jmc agent and provides a way to attach it and add probes to any JVMs in the JVM browser, as well as providing a preset manager for creating/modifying probe presets. >> >> There is still a small amount of cleanup to be done so I'll mark it as a draft for now but it would be great to get a review :) > > Joshua Matsuoka has updated the pull request incrementally with one additional commit since the last revision: > > Fix rcp feature to use new agent plugin name application/org.openjdk.jmc.console.agent/src/main/java/org/openjdk/jmc/console/agent/manager/wizards/CapturedValueEditingPage.java line 222: > 220: IMethodParameter parameter = (IMethodParameter) capturedValue; > 221: > 222: // TODO: do this is in model instead I don't think these todos are too good for non-authors to really know what should needs to be done instead. I'd rephrase them or remove them application/org.openjdk.jmc.feature.console.agent/feature.xml line 14: > 12: > 13: > 14: Does it make sense to have a version here for this requires? application/org.openjdk.jmc.feature.console/feature.xml line 59: > 57: install-size="0" > 58: version="0.0.0" > 59: unpack="false"/> I think this change can be pruned ------------- PR: https://git.openjdk.java.net/jmc/pull/226 From jkang at openjdk.java.net Tue Jun 1 20:42:13 2021 From: jkang at openjdk.java.net (Jie Kang) Date: Tue, 1 Jun 2021 20:42:13 GMT Subject: RFR: 7167: Agent Plugin [v6] In-Reply-To: <81i7tInHHp-rf5jdplOH3TaSatjsumQ-64cgxQejyuI=.2da150e4-3cc5-4b2f-a542-ed9afee1adcc@github.com> References: <81i7tInHHp-rf5jdplOH3TaSatjsumQ-64cgxQejyuI=.2da150e4-3cc5-4b2f-a542-ed9afee1adcc@github.com> Message-ID: On Wed, 28 Apr 2021 17:57:17 GMT, Joshua Matsuoka wrote: >> This PR adds the Agent Plugin to JMC. This is a plugin for controlling the jmc agent and provides a way to attach it and add probes to any JVMs in the JVM browser, as well as providing a preset manager for creating/modifying probe presets. >> >> There is still a small amount of cleanup to be done so I'll mark it as a draft for now but it would be great to get a review :) > > Joshua Matsuoka has updated the pull request incrementally with one additional commit since the last revision: > > Fix rcp feature to use new agent plugin name application/org.openjdk.jmc.console.agent/src/main/java/org/openjdk/jmc/console/agent/raweditor/internal/XmlEditor.java line 69: > 67: @Override > 68: protected void createActions() { > 69: // super.createActions(); Is this intentional? If so replace with comment that it's intentionally empty ------------- PR: https://git.openjdk.java.net/jmc/pull/226 From marcus.hirt at datadoghq.com Tue Jun 1 21:30:20 2021 From: marcus.hirt at datadoghq.com (Marcus Hirt) Date: Tue, 1 Jun 2021 23:30:20 +0200 Subject: RDS starts tomorrow, the 2nd of June Message-ID: Hi JMC devs, Tomorrow ramp-down will start for the 8.1.0 release. We'll still finish up any enhancements currently in review, but I'll start moving off other enhancements scheduled for the 8.1.0. Let me know if you have an enhancement nearly done that you would still like to be considered for 8.1.0. Over the next month it is still fine to close bugs against 8.1.0, but it should either be P1-P3 issues, or issues that the reviewers deem "safe" (judgement call but, for example, easily reviewable code with a small scope and minimal blast radius). Ramp-down phase 2 starts the 2nd of July. For more information, see https://wiki.openjdk.java.net/display/jmc/JMC+Development+Process+FAQ. Kind regards, Marcus From ghb at openjdk.java.net Wed Jun 2 04:25:41 2021 From: ghb at openjdk.java.net (Guru Hb) Date: Wed, 2 Jun 2021 04:25:41 GMT Subject: RFR: 7261: Enhance agent pom.xml for future library deployment [v2] In-Reply-To: References: <3GIb8tldehpZGfu3D6tdN0KheVAICDwenThseG47jOU=.e43fb392-fab2-4d24-8cf2-a44c93caf5a0@github.com> Message-ID: On Fri, 28 May 2021 04:55:14 GMT, Patrick Reinhart wrote: >> Signed-off-by: Patrick Reinhart > > Patrick Reinhart has updated the pull request with a new target base due to a merge or a rebase. The pull request now contains one commit: > > JMC-7261: Enhance agent pom.xml for future library deployment > > Signed-off-by: Patrick Reinhart +1 ------------- Marked as reviewed by ghb (Reviewer). PR: https://git.openjdk.java.net/jmc/pull/253 From schaturvedi at openjdk.java.net Wed Jun 2 09:51:35 2021 From: schaturvedi at openjdk.java.net (Suchita Chaturvedi) Date: Wed, 2 Jun 2021 09:51:35 GMT Subject: RFR: 7060: [WLS] Rule result formatting update w.r.t Rule 2.0 Message-ID: This PR addresses the replacement of HTML tags which are not supported after Rules 2.0. This change is mainly addressing the regression caused due to Rules 2.0 in WLS plugin rule Long Lasting Servlet Rule Request. After Rules 2.0 the report on automated analysis screen became unreadable as HTML tags like ``
  • `` were directly shown on UI. As part of this change I have replaced these tags with some appropriate characters to make the report readable. ------------- Commit messages: - 7060: [WLS] Rule result formatting update w.r.t Rule 2.0 Changes: https://git.openjdk.java.net/jmc/pull/258/files Webrev: https://webrevs.openjdk.java.net/?repo=jmc&pr=258&range=00 Issue: https://bugs.openjdk.java.net/browse/JMC-7060 Stats: 13 lines in 2 files changed: 3 ins; 1 del; 9 mod Patch: https://git.openjdk.java.net/jmc/pull/258.diff Fetch: git fetch https://git.openjdk.java.net/jmc pull/258/head:pull/258 PR: https://git.openjdk.java.net/jmc/pull/258 From reinhapa at openjdk.java.net Wed Jun 2 12:10:30 2021 From: reinhapa at openjdk.java.net (Patrick Reinhart) Date: Wed, 2 Jun 2021 12:10:30 GMT Subject: Integrated: 7261: Enhance agent pom.xml for future library deployment In-Reply-To: <3GIb8tldehpZGfu3D6tdN0KheVAICDwenThseG47jOU=.e43fb392-fab2-4d24-8cf2-a44c93caf5a0@github.com> References: <3GIb8tldehpZGfu3D6tdN0KheVAICDwenThseG47jOU=.e43fb392-fab2-4d24-8cf2-a44c93caf5a0@github.com> Message-ID: On Thu, 27 May 2021 19:19:53 GMT, Patrick Reinhart wrote: > Signed-off-by: Patrick Reinhart This pull request has now been integrated. Changeset: 7220aee0 Author: Patrick Reinhart Committer: Marcus Hirt URL: https://git.openjdk.java.net/jmc/commit/7220aee0b10619604aff416dd1c3f5a96f82f5d3 Stats: 48 lines in 1 file changed: 46 ins; 1 del; 1 mod 7261: Enhance agent pom.xml for future library deployment Reviewed-by: ghb ------------- PR: https://git.openjdk.java.net/jmc/pull/253 From hirt at openjdk.java.net Wed Jun 2 12:44:39 2021 From: hirt at openjdk.java.net (Marcus Hirt) Date: Wed, 2 Jun 2021 12:44:39 GMT Subject: RFR: 7262: Add rule for when the JVM version is < OpenJDK 8u302 In-Reply-To: <98h1VmFsi2cDDKeMqDmbZwRZRaVSPJKOMpSpu2sjy1A=.9b88afe1-dbfc-4177-b06f-191e1ed9c243@github.com> References: <98h1VmFsi2cDDKeMqDmbZwRZRaVSPJKOMpSpu2sjy1A=.9b88afe1-dbfc-4177-b06f-191e1ed9c243@github.com> Message-ID: On Tue, 1 Jun 2021 11:49:06 GMT, Oskar Jung wrote: > This is still a draft. What's currently missing: > * Test with openjdk 8u302 to validate the rule will evaluate to `OK` > * Japanese / Chinese translation Don't worry about the translations - translation drops will eventually be provided by Oracle. ------------- PR: https://git.openjdk.java.net/jmc/pull/256 From github.com+1101441+ojung at openjdk.java.net Wed Jun 2 12:44:39 2021 From: github.com+1101441+ojung at openjdk.java.net (Oskar Jung) Date: Wed, 2 Jun 2021 12:44:39 GMT Subject: RFR: 7262: Add rule for when the JVM version is < OpenJDK 8u302 Message-ID: <98h1VmFsi2cDDKeMqDmbZwRZRaVSPJKOMpSpu2sjy1A=.9b88afe1-dbfc-4177-b06f-191e1ed9c243@github.com> This is still a draft. What's currently missing: * Test with openjdk 8u302 to validate the rule will evaluate to `OK` * Japanese / Chinese translation ------------- Commit messages: - 7262: Add rule for when the JVM version is < OpenJDK 8u302 Changes: https://git.openjdk.java.net/jmc/pull/256/files Webrev: https://webrevs.openjdk.java.net/?repo=jmc&pr=256&range=00 Issue: https://bugs.openjdk.java.net/browse/JMC-7262 Stats: 482 lines in 8 files changed: 482 ins; 0 del; 0 mod Patch: https://git.openjdk.java.net/jmc/pull/256.diff Fetch: git fetch https://git.openjdk.java.net/jmc pull/256/head:pull/256 PR: https://git.openjdk.java.net/jmc/pull/256 From github.com+803621+bric3 at openjdk.java.net Wed Jun 2 13:35:32 2021 From: github.com+803621+bric3 at openjdk.java.net (Brice Dutheil) Date: Wed, 2 Jun 2021 13:35:32 GMT Subject: RFR: 7262: Add rule for when the JVM version is < OpenJDK 8u302 In-Reply-To: <98h1VmFsi2cDDKeMqDmbZwRZRaVSPJKOMpSpu2sjy1A=.9b88afe1-dbfc-4177-b06f-191e1ed9c243@github.com> References: <98h1VmFsi2cDDKeMqDmbZwRZRaVSPJKOMpSpu2sjy1A=.9b88afe1-dbfc-4177-b06f-191e1ed9c243@github.com> Message-ID: On Tue, 1 Jun 2021 11:49:06 GMT, Oskar Jung wrote: > Still known issues: > * OpenJDK and Oracle JDK are treated equally > > This PR contains a rule for notifying users of JVM < OpenJDK8u302 to upgrade to avoid performance issues caused by https://bugs.openjdk.java.net/browse/JDK-8266723. > > JFR recorded on OpenJDK 8u302 EA: > ![Screen Shot 2021-06-02 at 14 45 46](https://user-images.githubusercontent.com/1101441/120482697-a9c7bf80-c3b1-11eb-83e0-7d17b23cfd99.png) Some nitpicks, but it seems good! core/org.openjdk.jmc.common/src/main/java/org/openjdk/jmc/common/version/JavaVersion.java line 168: > 166: return thisNumber > otherNumber; > 167: } > 168: } It would be nice to avoid code duplication with the above method `isGreaterOrEqualThan` core/org.openjdk.jmc.flightrecorder.rules.jdk/src/main/resources/org/openjdk/jmc/flightrecorder/rules/jdk/messages/internal/messages.properties line 292: > 290: JfrPeriodicEventsFixRule_NO_JVM_VERSION_EVENTS_TEXT=There were no VM information events with JVM version information recorded. Please turn on JVM information events to use this rule. > 291: JfrPeriodicEventsFixRule_UNSUPPORTED_TEXT_WARN_SHORT=The version of OpenJDK 8 you are running is lacking an important performance fix. > 292: JfrPeriodicEventsFixRule_UNSUPPORTED_TEXT_WARN_LONG=The version of OpenJDK 8 you are running is lacking an important performance fix. Upgrading to version 8u302 or later can, in some cases, improve your performance quite radically. See JDK-8266723 for more information. An alternative can be to disable any periodic events not needed, such as the NativeExecutionSample event. Is it possible to embed http link ? It would be nice to be able to click directly on the bug id [JDK-8266723](https://bugs.openjdk.java.net/browse/JDK-8266723) to get more details. ------------- Marked as reviewed by bric3 at github.com (no known OpenJDK username). PR: https://git.openjdk.java.net/jmc/pull/256 From github.com+803621+bric3 at openjdk.java.net Wed Jun 2 13:35:33 2021 From: github.com+803621+bric3 at openjdk.java.net (Brice Dutheil) Date: Wed, 2 Jun 2021 13:35:33 GMT Subject: RFR: 7262: Add rule for when the JVM version is < OpenJDK 8u302 In-Reply-To: References: <98h1VmFsi2cDDKeMqDmbZwRZRaVSPJKOMpSpu2sjy1A=.9b88afe1-dbfc-4177-b06f-191e1ed9c243@github.com> Message-ID: On Wed, 2 Jun 2021 13:24:24 GMT, Brice Dutheil wrote: >> Still known issues: >> * OpenJDK and Oracle JDK are treated equally >> >> This PR contains a rule for notifying users of JVM < OpenJDK8u302 to upgrade to avoid performance issues caused by https://bugs.openjdk.java.net/browse/JDK-8266723. >> >> JFR recorded on OpenJDK 8u302 EA: >> ![Screen Shot 2021-06-02 at 14 45 46](https://user-images.githubusercontent.com/1101441/120482697-a9c7bf80-c3b1-11eb-83e0-7d17b23cfd99.png) > > core/org.openjdk.jmc.common/src/main/java/org/openjdk/jmc/common/version/JavaVersion.java line 168: > >> 166: return thisNumber > otherNumber; >> 167: } >> 168: } > > It would be nice to avoid code duplication with the above method `isGreaterOrEqualThan` Also I think the copyright year need to be bumped to 2021 for this file ------------- PR: https://git.openjdk.java.net/jmc/pull/256 From github.com+803621+bric3 at openjdk.java.net Wed Jun 2 13:43:29 2021 From: github.com+803621+bric3 at openjdk.java.net (Brice Dutheil) Date: Wed, 2 Jun 2021 13:43:29 GMT Subject: RFR: 7041: Add Percentage column based on Duration in stack trace view In-Reply-To: References: Message-ID: On Tue, 1 Jun 2021 17:32:56 GMT, Suchita Chaturvedi wrote: > This PR address the enhancement requested by one of our customers where they were missing the percentage column by duration in stacktrace view which was available in JMC 5.5. Currently we have percentage column which is calculating the percentage based on event count and there is no way user can configure that. > > Since this functionality might not be used by many customers I have added a toggle icon in Stacktrace View so that user can set the view according to his preference and by default the new column will be hidden. > > Default view showing toggle icon: > ![image](https://user-images.githubusercontent.com/11155712/120366242-1056ca00-c32d-11eb-8c27-ac7481fc89cf.png) > > Percentage By Duration Column : > ![image](https://user-images.githubusercontent.com/11155712/120366404-3ed4a500-c32d-11eb-82b7-6107d790fdca.png) > > Please review the change and let me know your valuable feedback on this. Marked as reviewed by bric3 at github.com (no known OpenJDK username). core/org.openjdk.jmc.flightrecorder/src/main/java/org/openjdk/jmc/flightrecorder/stacktrace/StacktraceModel.java line 420: > 418: private final int itemsInFork; > 419: private Integer selectedBranchIndex; > 420: private final SimpleArray allItems; This file to update the copyright year to 2021 ------------- PR: https://git.openjdk.java.net/jmc/pull/257 From github.com+1101441+ojung at openjdk.java.net Wed Jun 2 14:11:54 2021 From: github.com+1101441+ojung at openjdk.java.net (Oskar Jung) Date: Wed, 2 Jun 2021 14:11:54 GMT Subject: RFR: 7262: Add rule for when the JVM version is < OpenJDK 8u302 [v2] In-Reply-To: <98h1VmFsi2cDDKeMqDmbZwRZRaVSPJKOMpSpu2sjy1A=.9b88afe1-dbfc-4177-b06f-191e1ed9c243@github.com> References: <98h1VmFsi2cDDKeMqDmbZwRZRaVSPJKOMpSpu2sjy1A=.9b88afe1-dbfc-4177-b06f-191e1ed9c243@github.com> Message-ID: > This PR contains a rule for notifying users of JVM < OpenJDK8u302 to upgrade to avoid performance issues caused by https://bugs.openjdk.java.net/browse/JDK-8266723. > > **JFR recorded on OpenJDK 8u302 EA:** > ![Screen Shot 2021-06-02 at 14 45 46](https://user-images.githubusercontent.com/1101441/120482697-a9c7bf80-c3b1-11eb-83e0-7d17b23cfd99.png) > > **JFR recorded on OpenJDK 8u292:** > ![Screen Shot 2021-06-02 at 15 49 14](https://user-images.githubusercontent.com/1101441/120492943-ce746500-c3ba-11eb-999c-e75bf3fba245.png) Oskar Jung has refreshed the contents of this pull request, and previous commits have been removed. The incremental views will show differences compared to the previous content of the PR. The pull request contains one new commit since the last revision: 7262: Add rule for when the JVM version is < OpenJDK 8u302 Since the test flight recording was created with 8u302 EA, a method `JavaVersion.isGreaterOrEqualThanDisregardEa` had to be added to compare java versions disregarding early access status. ------------- Changes: - all: https://git.openjdk.java.net/jmc/pull/256/files - new: https://git.openjdk.java.net/jmc/pull/256/files/08f81ae8..247db81b Webrevs: - full: https://webrevs.openjdk.java.net/?repo=jmc&pr=256&range=01 - incr: https://webrevs.openjdk.java.net/?repo=jmc&pr=256&range=00-01 Stats: 268 lines in 4 files changed: 252 ins; 6 del; 10 mod Patch: https://git.openjdk.java.net/jmc/pull/256.diff Fetch: git fetch https://git.openjdk.java.net/jmc pull/256/head:pull/256 PR: https://git.openjdk.java.net/jmc/pull/256 From github.com+1101441+ojung at openjdk.java.net Wed Jun 2 14:11:55 2021 From: github.com+1101441+ojung at openjdk.java.net (Oskar Jung) Date: Wed, 2 Jun 2021 14:11:55 GMT Subject: RFR: 7262: Add rule for when the JVM version is < OpenJDK 8u302 [v2] In-Reply-To: References: <98h1VmFsi2cDDKeMqDmbZwRZRaVSPJKOMpSpu2sjy1A=.9b88afe1-dbfc-4177-b06f-191e1ed9c243@github.com> Message-ID: On Wed, 2 Jun 2021 13:33:06 GMT, Brice Dutheil wrote: >> Oskar Jung has refreshed the contents of this pull request, and previous commits have been removed. The incremental views will show differences compared to the previous content of the PR. The pull request contains one new commit since the last revision: >> >> 7262: Add rule for when the JVM version is < OpenJDK 8u302 >> >> Since the test flight recording was created with 8u302 EA, a method >> `JavaVersion.isGreaterOrEqualThanDisregardEa` had to be added to compare >> java versions disregarding early access status. > > Some nitpicks, but it seems good! Hey @bric3, thanks for your comments! Unfortunately I didn't notice you already started reviewing. I force-pushed a rewritten commit. The difference is, that I now check if it is an `OpenJDK`. See https://github.com/openjdk/jmc/pull/256/files#diff-d03e56fffa9483fb8054f457e45a52a76c057012d19c9d68ec88926db8a0624fR83-R85 ------------- PR: https://git.openjdk.java.net/jmc/pull/256 From schaturvedi at openjdk.java.net Wed Jun 2 14:12:49 2021 From: schaturvedi at openjdk.java.net (Suchita Chaturvedi) Date: Wed, 2 Jun 2021 14:12:49 GMT Subject: RFR: 7041: Add Percentage column based on Duration in stack trace view [v2] In-Reply-To: References: Message-ID: > This PR address the enhancement requested by one of our customers where they were missing the percentage column by duration in stacktrace view which was available in JMC 5.5. Currently we have percentage column which is calculating the percentage based on event count and there is no way user can configure that. > > Since this functionality might not be used by many customers I have added a toggle icon in Stacktrace View so that user can set the view according to his preference and by default the new column will be hidden. > > Default view showing toggle icon: > ![image](https://user-images.githubusercontent.com/11155712/120366242-1056ca00-c32d-11eb-8c27-ac7481fc89cf.png) > > Percentage By Duration Column : > ![image](https://user-images.githubusercontent.com/11155712/120366404-3ed4a500-c32d-11eb-82b7-6107d790fdca.png) > > Please review the change and let me know your valuable feedback on this. Suchita Chaturvedi has updated the pull request incrementally with one additional commit since the last revision: Update Copyright year ------------- Changes: - all: https://git.openjdk.java.net/jmc/pull/257/files - new: https://git.openjdk.java.net/jmc/pull/257/files/99765b95..c1e3ca68 Webrevs: - full: https://webrevs.openjdk.java.net/?repo=jmc&pr=257&range=01 - incr: https://webrevs.openjdk.java.net/?repo=jmc&pr=257&range=00-01 Stats: 1 line in 1 file changed: 0 ins; 0 del; 1 mod Patch: https://git.openjdk.java.net/jmc/pull/257.diff Fetch: git fetch https://git.openjdk.java.net/jmc pull/257/head:pull/257 PR: https://git.openjdk.java.net/jmc/pull/257 From schaturvedi at openjdk.java.net Wed Jun 2 14:15:31 2021 From: schaturvedi at openjdk.java.net (Suchita Chaturvedi) Date: Wed, 2 Jun 2021 14:15:31 GMT Subject: RFR: 7041: Add Percentage column based on Duration in stack trace view [v2] In-Reply-To: References: Message-ID: On Wed, 2 Jun 2021 13:40:46 GMT, Brice Dutheil wrote: >> Suchita Chaturvedi has updated the pull request incrementally with one additional commit since the last revision: >> >> Update Copyright year > > core/org.openjdk.jmc.flightrecorder/src/main/java/org/openjdk/jmc/flightrecorder/stacktrace/StacktraceModel.java line 420: > >> 418: private final int itemsInFork; >> 419: private Integer selectedBranchIndex; >> 420: private final SimpleArray allItems; > > This file to update the copyright year to 2021 Done. Thanks for pointing it out and approving the pull request. ------------- PR: https://git.openjdk.java.net/jmc/pull/257 From github.com+1101441+ojung at openjdk.java.net Wed Jun 2 14:44:49 2021 From: github.com+1101441+ojung at openjdk.java.net (Oskar Jung) Date: Wed, 2 Jun 2021 14:44:49 GMT Subject: RFR: 7262: Add rule for when the JVM version is < OpenJDK 8u302 [v3] In-Reply-To: <98h1VmFsi2cDDKeMqDmbZwRZRaVSPJKOMpSpu2sjy1A=.9b88afe1-dbfc-4177-b06f-191e1ed9c243@github.com> References: <98h1VmFsi2cDDKeMqDmbZwRZRaVSPJKOMpSpu2sjy1A=.9b88afe1-dbfc-4177-b06f-191e1ed9c243@github.com> Message-ID: > This PR contains a rule for notifying users of JVM < OpenJDK8u302 to upgrade to avoid performance issues caused by https://bugs.openjdk.java.net/browse/JDK-8266723. > > **JFR recorded on OpenJDK 8u302 EA:** > ![Screen Shot 2021-06-02 at 14 45 46](https://user-images.githubusercontent.com/1101441/120482697-a9c7bf80-c3b1-11eb-83e0-7d17b23cfd99.png) > > **JFR recorded on OpenJDK 8u292:** > ![Screen Shot 2021-06-02 at 15 49 14](https://user-images.githubusercontent.com/1101441/120492943-ce746500-c3ba-11eb-999c-e75bf3fba245.png) Oskar Jung has updated the pull request incrementally with two additional commits since the last revision: - fixup! 7262: Add rule for when the JVM version is < OpenJDK 8u302 - fixup! 7262: Add rule for when the JVM version is < OpenJDK 8u302 ------------- Changes: - all: https://git.openjdk.java.net/jmc/pull/256/files - new: https://git.openjdk.java.net/jmc/pull/256/files/247db81b..6bfbe58c Webrevs: - full: https://webrevs.openjdk.java.net/?repo=jmc&pr=256&range=02 - incr: https://webrevs.openjdk.java.net/?repo=jmc&pr=256&range=01-02 Stats: 23 lines in 4 files changed: 5 ins; 8 del; 10 mod Patch: https://git.openjdk.java.net/jmc/pull/256.diff Fetch: git fetch https://git.openjdk.java.net/jmc pull/256/head:pull/256 PR: https://git.openjdk.java.net/jmc/pull/256 From github.com+1101441+ojung at openjdk.java.net Wed Jun 2 14:44:49 2021 From: github.com+1101441+ojung at openjdk.java.net (Oskar Jung) Date: Wed, 2 Jun 2021 14:44:49 GMT Subject: RFR: 7262: Add rule for when the JVM version is < OpenJDK 8u302 [v3] In-Reply-To: References: <98h1VmFsi2cDDKeMqDmbZwRZRaVSPJKOMpSpu2sjy1A=.9b88afe1-dbfc-4177-b06f-191e1ed9c243@github.com> Message-ID: On Wed, 2 Jun 2021 13:25:11 GMT, Brice Dutheil wrote: >> core/org.openjdk.jmc.common/src/main/java/org/openjdk/jmc/common/version/JavaVersion.java line 168: >> >>> 166: return thisNumber > otherNumber; >>> 167: } >>> 168: } >> >> It would be nice to avoid code duplication with the above method `isGreaterOrEqualThan` > > Also I think the copyright year need to be bumped to 2021 for this file I addressed these in the fixup commits. Let me know if you agree with the changes from the fixups and then I will squash them and force push again. ------------- PR: https://git.openjdk.java.net/jmc/pull/256 From github.com+1101441+ojung at openjdk.java.net Wed Jun 2 14:44:50 2021 From: github.com+1101441+ojung at openjdk.java.net (Oskar Jung) Date: Wed, 2 Jun 2021 14:44:50 GMT Subject: RFR: 7262: Add rule for when the JVM version is < OpenJDK 8u302 [v3] In-Reply-To: References: <98h1VmFsi2cDDKeMqDmbZwRZRaVSPJKOMpSpu2sjy1A=.9b88afe1-dbfc-4177-b06f-191e1ed9c243@github.com> Message-ID: <7gvZEDcKc9CbJXcvhIA4K1R1zL0cm48M-8BjApVA4SE=.62b0cfa7-c813-4a37-95a5-16377126a532@github.com> On Wed, 2 Jun 2021 13:30:19 GMT, Brice Dutheil wrote: >> Oskar Jung has updated the pull request incrementally with two additional commits since the last revision: >> >> - fixup! 7262: Add rule for when the JVM version is < OpenJDK 8u302 >> - fixup! 7262: Add rule for when the JVM version is < OpenJDK 8u302 > > core/org.openjdk.jmc.flightrecorder.rules.jdk/src/main/resources/org/openjdk/jmc/flightrecorder/rules/jdk/messages/internal/messages.properties line 292: > >> 290: JfrPeriodicEventsFixRule_NO_JVM_VERSION_EVENTS_TEXT=There were no VM information events with JVM version information recorded. Please turn on JVM information events to use this rule. >> 291: JfrPeriodicEventsFixRule_UNSUPPORTED_TEXT_WARN_SHORT=The version of OpenJDK 8 you are running is lacking an important performance fix. >> 292: JfrPeriodicEventsFixRule_UNSUPPORTED_TEXT_WARN_LONG=The version of OpenJDK 8 you are running is lacking an important performance fix. Upgrading to version 8u302 or later can, in some cases, improve your performance quite radically. See JDK-8266723 for more information. An alternative can be to disable any periodic events not needed, such as the NativeExecutionSample event. > > Is it possible to embed http link ? > > It would be nice to be able to click directly on the bug id [JDK-8266723](https://bugs.openjdk.java.net/browse/JDK-8266723) to get more details. I naively tried ``, which did not work. Unfortunately I am not familiar with `ResourceBundle`s. ------------- PR: https://git.openjdk.java.net/jmc/pull/256 From github.com+803621+bric3 at openjdk.java.net Wed Jun 2 15:05:27 2021 From: github.com+803621+bric3 at openjdk.java.net (Brice Dutheil) Date: Wed, 2 Jun 2021 15:05:27 GMT Subject: RFR: 7262: Add rule for when the JVM version is < OpenJDK 8u302 [v3] In-Reply-To: References: <98h1VmFsi2cDDKeMqDmbZwRZRaVSPJKOMpSpu2sjy1A=.9b88afe1-dbfc-4177-b06f-191e1ed9c243@github.com> Message-ID: On Wed, 2 Jun 2021 14:44:49 GMT, Oskar Jung wrote: >> This PR contains a rule for notifying users of JVM < OpenJDK8u302 to upgrade to avoid performance issues caused by https://bugs.openjdk.java.net/browse/JDK-8266723. >> >> **JFR recorded on OpenJDK 8u302 EA:** >> ![Screen Shot 2021-06-02 at 14 45 46](https://user-images.githubusercontent.com/1101441/120482697-a9c7bf80-c3b1-11eb-83e0-7d17b23cfd99.png) >> >> **JFR recorded on OpenJDK 8u292:** >> ![Screen Shot 2021-06-02 at 15 49 14](https://user-images.githubusercontent.com/1101441/120492943-ce746500-c3ba-11eb-999c-e75bf3fba245.png) > > Oskar Jung has updated the pull request incrementally with two additional commits since the last revision: > > - fixup! 7262: Add rule for when the JVM version is < OpenJDK 8u302 > - fixup! 7262: Add rule for when the JVM version is < OpenJDK 8u302 Marked as reviewed by bric3 at github.com (no known OpenJDK username). ------------- PR: https://git.openjdk.java.net/jmc/pull/256 From aptmac at openjdk.java.net Wed Jun 2 15:06:28 2021 From: aptmac at openjdk.java.net (Alex Macdonald) Date: Wed, 2 Jun 2021 15:06:28 GMT Subject: RFR: 7041: Add Percentage column based on Duration in stack trace view [v2] In-Reply-To: References: Message-ID: On Wed, 2 Jun 2021 14:12:49 GMT, Suchita Chaturvedi wrote: >> This PR address the enhancement requested by one of our customers where they were missing the percentage column by duration in stacktrace view which was available in JMC 5.5. Currently we have percentage column which is calculating the percentage based on event count and there is no way user can configure that. >> >> Since this functionality might not be used by many customers I have added a toggle icon in Stacktrace View so that user can set the view according to his preference and by default the new column will be hidden. >> >> Default view showing toggle icon: >> ![image](https://user-images.githubusercontent.com/11155712/120366242-1056ca00-c32d-11eb-8c27-ac7481fc89cf.png) >> >> Percentage By Duration Column : >> ![image](https://user-images.githubusercontent.com/11155712/120366404-3ed4a500-c32d-11eb-82b7-6107d790fdca.png) >> >> Please review the change and let me know your valuable feedback on this. > > Suchita Chaturvedi has updated the pull request incrementally with one additional commit since the last revision: > > Update Copyright year The functionality here looks good to me. My only nit is that the column doesn't appear to be created with set weights (maybe it's a linux thing?) and the width of the new column is very large. For example, when trying it for the first time I was confused why the column wasn't appearing, but it is just created with a 0 size and needs to be drag expanded. Additionally, to be able to actually read the column contents the width has to be made very large to the point where it overlaps the other column, but again that's probably just a nit on the size of my monitor. ![7041](https://user-images.githubusercontent.com/10425301/120503986-c0f6b500-c391-11eb-8035-d49cecd694d0.gif) ------------- Marked as reviewed by aptmac (Committer). PR: https://git.openjdk.java.net/jmc/pull/257 From github.com+1101441+ojung at openjdk.java.net Wed Jun 2 15:10:50 2021 From: github.com+1101441+ojung at openjdk.java.net (Oskar Jung) Date: Wed, 2 Jun 2021 15:10:50 GMT Subject: RFR: 7262: Add rule for when the JVM version is < OpenJDK 8u302 [v4] In-Reply-To: <98h1VmFsi2cDDKeMqDmbZwRZRaVSPJKOMpSpu2sjy1A=.9b88afe1-dbfc-4177-b06f-191e1ed9c243@github.com> References: <98h1VmFsi2cDDKeMqDmbZwRZRaVSPJKOMpSpu2sjy1A=.9b88afe1-dbfc-4177-b06f-191e1ed9c243@github.com> Message-ID: > This PR contains a rule for notifying users of JVM < OpenJDK8u302 to upgrade to avoid performance issues caused by https://bugs.openjdk.java.net/browse/JDK-8266723. > > **JFR recorded on OpenJDK 8u302 EA:** > ![Screen Shot 2021-06-02 at 14 45 46](https://user-images.githubusercontent.com/1101441/120482697-a9c7bf80-c3b1-11eb-83e0-7d17b23cfd99.png) > > **JFR recorded on OpenJDK 8u292:** > ![Screen Shot 2021-06-02 at 15 49 14](https://user-images.githubusercontent.com/1101441/120492943-ce746500-c3ba-11eb-999c-e75bf3fba245.png) Oskar Jung has refreshed the contents of this pull request, and previous commits have been removed. The incremental views will show differences compared to the previous content of the PR. The pull request contains one new commit since the last revision: 7262: Add rule for when the JVM version is < OpenJDK 8u302 Since the test flight recording was created with 8u302 EA, a method `JavaVersion.isGreaterOrEqualThanDisregardEa` had to be added to compare java versions disregarding early access status. ------------- Changes: - all: https://git.openjdk.java.net/jmc/pull/256/files - new: https://git.openjdk.java.net/jmc/pull/256/files/6bfbe58c..ec8c6473 Webrevs: - full: https://webrevs.openjdk.java.net/?repo=jmc&pr=256&range=03 - incr: https://webrevs.openjdk.java.net/?repo=jmc&pr=256&range=02-03 Stats: 0 lines in 0 files changed: 0 ins; 0 del; 0 mod Patch: https://git.openjdk.java.net/jmc/pull/256.diff Fetch: git fetch https://git.openjdk.java.net/jmc pull/256/head:pull/256 PR: https://git.openjdk.java.net/jmc/pull/256 From schaturvedi at openjdk.java.net Wed Jun 2 15:21:38 2021 From: schaturvedi at openjdk.java.net (Suchita Chaturvedi) Date: Wed, 2 Jun 2021 15:21:38 GMT Subject: RFR: 7041: Add Percentage column based on Duration in stack trace view [v2] In-Reply-To: References: Message-ID: On Wed, 2 Jun 2021 15:03:33 GMT, Alex Macdonald wrote: > The functionality here looks good to me. > > My only nit is that the column doesn't appear to be created with set weights (maybe it's a linux thing?) and the width of the new column is very large. > > For example, when trying it for the first time I was confused why the column wasn't appearing, but it is just created with a 0 size and needs to be drag expanded. Additionally, to be able to actually read the column contents the width has to be made very large to the point where it overlaps the other column, but again that's probably just a nit on the size of my monitor. > ![7041](https://user-images.githubusercontent.com/10425301/120503986-c0f6b500-c391-11eb-8035-d49cecd694d0.gif) Thanks for the approval. It looks perfectly fine in Windows. I will create a separate bug and look into it for Linux. ------------- PR: https://git.openjdk.java.net/jmc/pull/257 From schaturvedi at openjdk.java.net Wed Jun 2 15:21:42 2021 From: schaturvedi at openjdk.java.net (Suchita Chaturvedi) Date: Wed, 2 Jun 2021 15:21:42 GMT Subject: Integrated: 7041: Add Percentage column based on Duration in stack trace view In-Reply-To: References: Message-ID: On Tue, 1 Jun 2021 17:32:56 GMT, Suchita Chaturvedi wrote: > This PR address the enhancement requested by one of our customers where they were missing the percentage column by duration in stacktrace view which was available in JMC 5.5. Currently we have percentage column which is calculating the percentage based on event count and there is no way user can configure that. > > Since this functionality might not be used by many customers I have added a toggle icon in Stacktrace View so that user can set the view according to his preference and by default the new column will be hidden. > > Default view showing toggle icon: > ![image](https://user-images.githubusercontent.com/11155712/120366242-1056ca00-c32d-11eb-8c27-ac7481fc89cf.png) > > Percentage By Duration Column : > ![image](https://user-images.githubusercontent.com/11155712/120366404-3ed4a500-c32d-11eb-82b7-6107d790fdca.png) > > Please review the change and let me know your valuable feedback on this. This pull request has now been integrated. Changeset: fbf2d9b4 Author: Suchita Chaturvedi URL: https://git.openjdk.java.net/jmc/commit/fbf2d9b488e678665e7dfa7ffcb1c2eb3f19a878 Stats: 146 lines in 4 files changed: 140 ins; 0 del; 6 mod 7041: Add Percentage column based on Duration in stack trace view Reviewed-by: aptmac ------------- PR: https://git.openjdk.java.net/jmc/pull/257 From hirt at openjdk.java.net Wed Jun 2 15:27:44 2021 From: hirt at openjdk.java.net (Marcus Hirt) Date: Wed, 2 Jun 2021 15:27:44 GMT Subject: RFR: 7242: Adding new JDK Events to core API [v4] In-Reply-To: References: Message-ID: <6SRw9vP_OpYJkjIxN33zAYo1BqYirPhfOyX3zSxmCBs=.7a8a1303-6030-4c9b-a929-0beeae9a9648@github.com> On Thu, 20 May 2021 18:44:42 GMT, Suchita Chaturvedi wrote: >> This PR will address these missing events and add them to core API. >> >> jdk.ThreadCPULoad >> >> jdk.NativeMethodSample >> >> jdk.ThreadStart >> >> jdk.ThreadEnd > > Suchita Chaturvedi has updated the pull request with a new target base due to a merge or a rebase. The pull request now contains five commits: > > - Merge master > - Added values in message properties file > - Fixing formatting errors in core > - Fixed spotbugs errors > - 7242: Adding new JDK Events to core API Marked as reviewed by hirt (Lead). ------------- PR: https://git.openjdk.java.net/jmc/pull/245 From schaturvedi at openjdk.java.net Wed Jun 2 15:31:28 2021 From: schaturvedi at openjdk.java.net (Suchita Chaturvedi) Date: Wed, 2 Jun 2021 15:31:28 GMT Subject: Integrated: 7242: Adding new JDK Events to core API In-Reply-To: References: Message-ID: <3PgD3VFOlTO6eKUpqbQFOJhJCz-uiJt6yyDHeoJG_tc=.41550640-f291-4e49-a816-4e7865a85588@github.com> On Sun, 2 May 2021 15:24:46 GMT, Suchita Chaturvedi wrote: > This PR will address these missing events and add them to core API. > > jdk.ThreadCPULoad > > jdk.NativeMethodSample > > jdk.ThreadStart > > jdk.ThreadEnd This pull request has now been integrated. Changeset: e3e26ef5 Author: Suchita Chaturvedi URL: https://git.openjdk.java.net/jmc/commit/e3e26ef559889903c2ce21430f039623ba7b7f16 Stats: 27 lines in 5 files changed: 25 ins; 1 del; 1 mod 7242: Adding new JDK Events to core API Reviewed-by: hirt ------------- PR: https://git.openjdk.java.net/jmc/pull/245 From hirt at openjdk.java.net Wed Jun 2 15:45:31 2021 From: hirt at openjdk.java.net (Marcus Hirt) Date: Wed, 2 Jun 2021 15:45:31 GMT Subject: RFR: 7262: Add rule for when the JVM version is < OpenJDK 8u302 [v4] In-Reply-To: References: <98h1VmFsi2cDDKeMqDmbZwRZRaVSPJKOMpSpu2sjy1A=.9b88afe1-dbfc-4177-b06f-191e1ed9c243@github.com> Message-ID: On Wed, 2 Jun 2021 15:10:50 GMT, Oskar Jung wrote: >> This PR contains a rule for notifying users of JVM < OpenJDK8u302 to upgrade to avoid performance issues caused by https://bugs.openjdk.java.net/browse/JDK-8266723. >> >> **JFR recorded on OpenJDK 8u302 EA:** >> ![Screen Shot 2021-06-02 at 14 45 46](https://user-images.githubusercontent.com/1101441/120482697-a9c7bf80-c3b1-11eb-83e0-7d17b23cfd99.png) >> >> **JFR recorded on OpenJDK 8u292:** >> ![Screen Shot 2021-06-02 at 15 49 14](https://user-images.githubusercontent.com/1101441/120492943-ce746500-c3ba-11eb-999c-e75bf3fba245.png) > > Oskar Jung has refreshed the contents of this pull request, and previous commits have been removed. The incremental views will show differences compared to the previous content of the PR. Changes requested by hirt (Lead). core/org.openjdk.jmc.flightrecorder.rules.jdk/src/main/java/org/openjdk/jmc/flightrecorder/rules/jdk/general/JfrPeriodicEventsFixRule.java line 3: > 1: /* > 2: * Copyright (c) 2021 Oracle and/or its affiliates. All rights reserved. > 3: * Should add Datadog copyright line under the Oracle one (see other such files by searching for Datadog). core/org.openjdk.jmc.flightrecorder.rules.jdk/src/main/java/org/openjdk/jmc/flightrecorder/rules/jdk/general/JfrPeriodicEventsFixRule.java line 78: > 76: private static final JavaVersion JDK_8_U_302 = new JavaVersion(8, 0, 302); > 77: > 78: private static final Pattern OPENJDK_VM_NAME_REGEX = Pattern.compile("^OpenJDK.*$"); Isn't using a regexp here a bit of an overkill? core/org.openjdk.jmc.flightrecorder.rules.jdk/src/main/java/org/openjdk/jmc/flightrecorder/rules/jdk/general/JfrPeriodicEventsFixRule.java line 83: > 81: IItemCollection items, IPreferenceValueProvider valueProvider, IResultValueProvider resultProvider) { > 82: String vmName = items.getAggregate(Aggregators.distinctAsString(JdkTypeIDs.VM_INFO, JdkAttributes.JVM_NAME)); > 83: boolean isOpenJdk = OPENJDK_VM_NAME_REGEX.matcher(vmName).matches(); Perhaps isOpenJDK something that could be added to org.openjdk.jmc.common.version.JavaVMVersionToolkit? ------------- PR: https://git.openjdk.java.net/jmc/pull/256 From hdafgard at openjdk.java.net Wed Jun 2 16:06:36 2021 From: hdafgard at openjdk.java.net (Henrik =?UTF-8?B?RGFmZ8OlcmQ=?=) Date: Wed, 2 Jun 2021 16:06:36 GMT Subject: RFR: 7167: Agent Plugin [v6] In-Reply-To: References: <81i7tInHHp-rf5jdplOH3TaSatjsumQ-64cgxQejyuI=.2da150e4-3cc5-4b2f-a542-ed9afee1adcc@github.com> Message-ID: On Tue, 1 Jun 2021 20:12:29 GMT, Jie Kang wrote: >> Joshua Matsuoka has updated the pull request incrementally with one additional commit since the last revision: >> >> Fix rcp feature to use new agent plugin name > > application/org.openjdk.jmc.console.agent/src/main/java/org/openjdk/jmc/console/agent/actions/AgentEditorOpener.java line 100: > >> 98: return ret; >> 99: } catch (ConnectionException e) { >> 100: // FIXME: Show stacktrace? (Need to show our own ExceptionDialog in that case, or maybe create our own DetailsAreaProvider, see WorkbenchStatusDialogManager.setDetailsAreaProvider) > > Personally not a fan of PRs that add FIXMEs; can you provide some justification for having this? What's preventing this being done sooner rather than later? +1 Either add an issue in JIRA or fix the issue in the initial PR. ------------- PR: https://git.openjdk.java.net/jmc/pull/226 From hdafgard at openjdk.java.net Wed Jun 2 16:06:35 2021 From: hdafgard at openjdk.java.net (Henrik =?UTF-8?B?RGFmZ8OlcmQ=?=) Date: Wed, 2 Jun 2021 16:06:35 GMT Subject: RFR: 7167: Agent Plugin [v6] In-Reply-To: <81i7tInHHp-rf5jdplOH3TaSatjsumQ-64cgxQejyuI=.2da150e4-3cc5-4b2f-a542-ed9afee1adcc@github.com> References: <81i7tInHHp-rf5jdplOH3TaSatjsumQ-64cgxQejyuI=.2da150e4-3cc5-4b2f-a542-ed9afee1adcc@github.com> Message-ID: <1n3zdw-hEfo4HPBU94IL4osY6Msw9QM136uwxLFlv24=.5e04fdd0-b7d6-4b06-8e1c-61ca9ac76162@github.com> On Wed, 28 Apr 2021 17:57:17 GMT, Joshua Matsuoka wrote: >> This PR adds the Agent Plugin to JMC. This is a plugin for controlling the jmc agent and provides a way to attach it and add probes to any JVMs in the JVM browser, as well as providing a preset manager for creating/modifying probe presets. >> >> There is still a small amount of cleanup to be done so I'll mark it as a draft for now but it would be great to get a review :) > > Joshua Matsuoka has updated the pull request incrementally with one additional commit since the last revision: > > Fix rcp feature to use new agent plugin name I'd like to see another pass at which strings should be externalized and which shouldn't, there are a few that look like they need non-nls comments. There are also a few too many TODOs and references that should be tracked in JIRA with issue numbers in the code. application/org.openjdk.jmc.console.agent/src/main/java/org/openjdk/jmc/console/agent/editor/AgentEditorAction.java line 44: > 42: private static final String MESSAGE_REFRESH = "Refresh"; > 43: private static final String MESSAGE_LOAD_PRESET = "Load a preset..."; > 44: private static final String MESSAGE_SAVE_AS_PRESET = "Save as a preset..."; These look like they should be localized. application/org.openjdk.jmc.console.agent/src/main/java/org/openjdk/jmc/console/agent/editor/AgentEditorUi.java line 136: > 134: } catch (IOException | SAXException e) { > 135: // TODO: display error dialog > 136: e.printStackTrace(); This should be fixed before integration. application/org.openjdk.jmc.console.agent/src/main/java/org/openjdk/jmc/console/agent/editor/AgentEditorUi.java line 184: > 182: presetRepository.addPreset(preset); > 183: } catch (IOException | SAXException e) { > 184: e.printStackTrace(); Do we want to log or display an error dialog here? application/org.openjdk.jmc.console.agent/src/main/java/org/openjdk/jmc/console/agent/editor/AgentEditorUi.java line 255: > 253: > 254: IPreset preset = (IPreset) element; > 255: return preset.getFileName() + " - " + preset.getEvents().length + " " + MESSAGE_EVENTS; Non-nls here? application/org.openjdk.jmc.console.agent/src/main/java/org/openjdk/jmc/console/agent/editor/AgentEditorUi.java line 260: > 258: @Override > 259: public Image getImage(Object element) { > 260: return AgentPlugin.getDefault().getImage(AgentPlugin.ICON_AGENT); // TODO: replace the icon in the future This seems like it can be tracked by an issue in JIRA? application/org.openjdk.jmc.console.agent/src/main/java/org/openjdk/jmc/console/agent/manager/model/Preset.java line 516: > 514: } catch (IOException e) { > 515: // TODO: log exception > 516: return false; This should also be done before integration. application/org.openjdk.jmc.console.agent/src/main/java/org/openjdk/jmc/console/agent/manager/wizards/PresetManagerPage.java line 117: > 115: @Override > 116: public Image getImage(Object element) { > 117: return AgentPlugin.getDefault().getImage(AgentPlugin.ICON_AGENT); // TODO: replace the icon in the future Same as the other icon, we should track this with an issue in JIRA. application/org.openjdk.jmc.console.agent/src/main/java/org/openjdk/jmc/console/agent/utils/ValidationResult.java line 47: > 45: private SAXParseException fatalError; > 46: > 47: /* package-private */ ValidationResult(ArrayList warnings, ArrayList errors, This isn't really a pattern we've used in JMC so it's a bit odd seeing it only here. application/org.openjdk.jmc.console.agent/src/main/java/org/openjdk/jmc/console/agent/wizards/BaseWizardPage.java line 116: > 114: Text text = new Text(parent, SWT.BORDER | SWT.MULTI | SWT.V_SCROLL); > 115: // FIXME: Multi line Text field (SWT.MULTI) does not support Text.setMessage > 116: // https://bugs.eclipse.org/bugs/show_bug.cgi?id=328832 We should have a JIRA issue tracking the Eclipse bug. ------------- PR: https://git.openjdk.java.net/jmc/pull/226 From hdafgard at openjdk.java.net Wed Jun 2 16:12:31 2021 From: hdafgard at openjdk.java.net (Henrik =?UTF-8?B?RGFmZ8OlcmQ=?=) Date: Wed, 2 Jun 2021 16:12:31 GMT Subject: RFR: 7260: Create a new serializers bundle In-Reply-To: References: Message-ID: On Fri, 28 May 2021 00:22:06 GMT, Marcus Hirt wrote: > This creates a new core bundle that can be used to serialize data from JFR into various popular formats, such as DOT and JSON. Minor nits. core/org.openjdk.jmc.flightrecorder.serializers/src/main/java/org/openjdk/jmc/flightrecorder/serializers/json/FlameGraphJsonSerializer.java line 3: > 1: /* > 2: * Copyright (c) 2020, 2021, Oracle and/or its affiliates. All rights reserved. > 3: * Copyright (c) 2020, 2021, sDatadog, Inc. All rights reserved. Suggestion: * Copyright (c) 2020, 2021, Datadog, Inc. All rights reserved. core/org.openjdk.jmc.flightrecorder.serializers/src/main/java/org/openjdk/jmc/flightrecorder/serializers/json/FlameGraphJsonSerializer.java line 195: > 193: } > 194: if (eventCountsByType.size() > MAX_TYPES_IN_ROOT_TITLE) { > 195: title.append(Messages.getFormattedMessage(FLAMEGRAPH_SELECT_HTML_MORE)); // $NON-NLS-1$ Suggestion: title.append(Messages.getFormattedMessage(FLAMEGRAPH_SELECT_HTML_MORE)); ------------- Marked as reviewed by hdafgard (Reviewer). PR: https://git.openjdk.java.net/jmc/pull/254 From hdafgard at openjdk.java.net Wed Jun 2 16:14:28 2021 From: hdafgard at openjdk.java.net (Henrik =?UTF-8?B?RGFmZ8OlcmQ=?=) Date: Wed, 2 Jun 2021 16:14:28 GMT Subject: RFR: 7060: [WLS] Rule result formatting update w.r.t Rule 2.0 In-Reply-To: References: Message-ID: On Wed, 2 Jun 2021 09:47:00 GMT, Suchita Chaturvedi wrote: > This PR addresses the replacement of HTML tags which are not supported after Rules 2.0. > > This change is mainly addressing the regression caused due to Rules 2.0 in WLS plugin rule Long Lasting Servlet Rule Request. After Rules 2.0 the report on automated analysis screen became unreadable as HTML tags like ``
    • `` were directly shown on UI. As part of this change I have replaced these tags with some appropriate characters to make the report readable. Marked as reviewed by hdafgard (Reviewer). ------------- PR: https://git.openjdk.java.net/jmc/pull/258 From hirt at openjdk.java.net Wed Jun 2 16:18:54 2021 From: hirt at openjdk.java.net (Marcus Hirt) Date: Wed, 2 Jun 2021 16:18:54 GMT Subject: RFR: 7260: Create a new serializers bundle [v2] In-Reply-To: References: Message-ID: > This creates a new core bundle that can be used to serialize data from JFR into various popular formats, such as DOT and JSON. Marcus Hirt has updated the pull request incrementally with two additional commits since the last revision: - Update core/org.openjdk.jmc.flightrecorder.serializers/src/main/java/org/openjdk/jmc/flightrecorder/serializers/json/FlameGraphJsonSerializer.java Co-authored-by: Henrik Dafg?rd - Update core/org.openjdk.jmc.flightrecorder.serializers/src/main/java/org/openjdk/jmc/flightrecorder/serializers/json/FlameGraphJsonSerializer.java Co-authored-by: Henrik Dafg?rd ------------- Changes: - all: https://git.openjdk.java.net/jmc/pull/254/files - new: https://git.openjdk.java.net/jmc/pull/254/files/805997bc..fc3fb859 Webrevs: - full: https://webrevs.openjdk.java.net/?repo=jmc&pr=254&range=01 - incr: https://webrevs.openjdk.java.net/?repo=jmc&pr=254&range=00-01 Stats: 2 lines in 1 file changed: 0 ins; 0 del; 2 mod Patch: https://git.openjdk.java.net/jmc/pull/254.diff Fetch: git fetch https://git.openjdk.java.net/jmc pull/254/head:pull/254 PR: https://git.openjdk.java.net/jmc/pull/254 From hdafgard at openjdk.java.net Wed Jun 2 16:23:33 2021 From: hdafgard at openjdk.java.net (Henrik =?UTF-8?B?RGFmZ8OlcmQ=?=) Date: Wed, 2 Jun 2021 16:23:33 GMT Subject: RFR: 7260: Create a new serializers bundle [v2] In-Reply-To: References: Message-ID: <67ICNX2AbWPMg3weTZu4zPjHZGrFqPROiBIeG9LEgBw=.7edc6b94-a170-44d4-ac80-cd19e7b23a9f@github.com> On Wed, 2 Jun 2021 16:18:54 GMT, Marcus Hirt wrote: >> This creates a new core bundle that can be used to serialize data from JFR into various popular formats, such as DOT and JSON. > > Marcus Hirt has updated the pull request incrementally with two additional commits since the last revision: > > - Update core/org.openjdk.jmc.flightrecorder.serializers/src/main/java/org/openjdk/jmc/flightrecorder/serializers/json/FlameGraphJsonSerializer.java > > Co-authored-by: Henrik Dafg?rd > - Update core/org.openjdk.jmc.flightrecorder.serializers/src/main/java/org/openjdk/jmc/flightrecorder/serializers/json/FlameGraphJsonSerializer.java > > Co-authored-by: Henrik Dafg?rd Marked as reviewed by hdafgard (Reviewer). ------------- PR: https://git.openjdk.java.net/jmc/pull/254 From aptmac at openjdk.java.net Wed Jun 2 16:23:42 2021 From: aptmac at openjdk.java.net (Alex Macdonald) Date: Wed, 2 Jun 2021 16:23:42 GMT Subject: RFR: 7260: Create a new serializers bundle [v2] In-Reply-To: References: Message-ID: <1cB2OZdtoS7Ptg3aMM51-JJPC760_a8BLlWKiWDuCKU=.51ddf1f0-936d-4886-8253-387d684f365e@github.com> On Wed, 2 Jun 2021 16:18:54 GMT, Marcus Hirt wrote: >> This creates a new core bundle that can be used to serialize data from JFR into various popular formats, such as DOT and JSON. > > Marcus Hirt has updated the pull request incrementally with two additional commits since the last revision: > > - Update core/org.openjdk.jmc.flightrecorder.serializers/src/main/java/org/openjdk/jmc/flightrecorder/serializers/json/FlameGraphJsonSerializer.java > > Co-authored-by: Henrik Dafg?rd > - Update core/org.openjdk.jmc.flightrecorder.serializers/src/main/java/org/openjdk/jmc/flightrecorder/serializers/json/FlameGraphJsonSerializer.java > > Co-authored-by: Henrik Dafg?rd core/org.openjdk.jmc.flightrecorder.serializers/META-INF/MANIFEST.MF line 12: > 10: org.openjdk.jmc.flightrecorder.serializers.dot > 11: Automatic-Module-Name: org.openjdk.jmc.flightrecorder.serializers > 12: Require-Bundle: org.lz4.lz4-java Looks like it could use `org.openjdk.jmc.flightrecorder` in the require-bundle list? Otherwise when trying to use the Flamegraph or Graphview I end up with lots of exceptions such as: Exception in thread "FlameGraphModelCalculation-0" java.lang.NoClassDefFoundError: org/openjdk/jmc/flightrecorder/stacktrace/tree/StacktraceTreeModel at org.openjdk.jmc.flightrecorder.serializers.json.FlameGraphJsonSerializer.toJson(FlameGraphJsonSerializer.java:89) at org.openjdk.jmc.flightrecorder.flameview.views.FlameGraphView$ModelRebuildRunnable.run(FlameGraphView.java:305) at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) at java.base/java.lang.Thread.run(Thread.java:829) Caused by: java.lang.ClassNotFoundException: org.openjdk.jmc.flightrecorder.stacktrace.tree.StacktraceTreeModel cannot be found by org.openjdk.jmc.flightrecorder.serializers_8.1.0.qualifier at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:519) at org.eclipse.osgi.internal.loader.ModuleClassLoader.loadClass(ModuleClassLoader.java:171) at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:522) ... 5 more ------------- PR: https://git.openjdk.java.net/jmc/pull/254 From github.com+1101441+ojung at openjdk.java.net Wed Jun 2 16:25:45 2021 From: github.com+1101441+ojung at openjdk.java.net (Oskar Jung) Date: Wed, 2 Jun 2021 16:25:45 GMT Subject: RFR: 7262: Add rule for when the JVM version is < OpenJDK 8u302 [v5] In-Reply-To: <98h1VmFsi2cDDKeMqDmbZwRZRaVSPJKOMpSpu2sjy1A=.9b88afe1-dbfc-4177-b06f-191e1ed9c243@github.com> References: <98h1VmFsi2cDDKeMqDmbZwRZRaVSPJKOMpSpu2sjy1A=.9b88afe1-dbfc-4177-b06f-191e1ed9c243@github.com> Message-ID: > This PR contains a rule for notifying users of JVM < OpenJDK8u302 to upgrade to avoid performance issues caused by https://bugs.openjdk.java.net/browse/JDK-8266723. > > **JFR recorded on OpenJDK 8u302 EA:** > ![Screen Shot 2021-06-02 at 14 45 46](https://user-images.githubusercontent.com/1101441/120482697-a9c7bf80-c3b1-11eb-83e0-7d17b23cfd99.png) > > **JFR recorded on OpenJDK 8u292:** > ![Screen Shot 2021-06-02 at 15 49 14](https://user-images.githubusercontent.com/1101441/120492943-ce746500-c3ba-11eb-999c-e75bf3fba245.png) Oskar Jung has updated the pull request with a new target base due to a merge or a rebase. The pull request now contains three commits: - fixup! 7262: Add rule for when the JVM version is < OpenJDK 8u302 - fixup! 7262: Add rule for when the JVM version is < OpenJDK 8u302 - 7262: Add rule for when the JVM version is < OpenJDK 8u302 Since the test flight recording was created with 8u302 EA, a method `JavaVersion.isGreaterOrEqualThanDisregardEa` had to be added to compare java versions disregarding early access status. ------------- Changes: https://git.openjdk.java.net/jmc/pull/256/files Webrev: https://webrevs.openjdk.java.net/?repo=jmc&pr=256&range=04 Stats: 742 lines in 10 files changed: 739 ins; 0 del; 3 mod Patch: https://git.openjdk.java.net/jmc/pull/256.diff Fetch: git fetch https://git.openjdk.java.net/jmc pull/256/head:pull/256 PR: https://git.openjdk.java.net/jmc/pull/256 From hdafgard at openjdk.java.net Wed Jun 2 16:25:46 2021 From: hdafgard at openjdk.java.net (Henrik =?UTF-8?B?RGFmZ8OlcmQ=?=) Date: Wed, 2 Jun 2021 16:25:46 GMT Subject: RFR: 7262: Add rule for when the JVM version is < OpenJDK 8u302 [v5] In-Reply-To: References: <98h1VmFsi2cDDKeMqDmbZwRZRaVSPJKOMpSpu2sjy1A=.9b88afe1-dbfc-4177-b06f-191e1ed9c243@github.com> Message-ID: On Wed, 2 Jun 2021 16:23:08 GMT, Oskar Jung wrote: >> This PR contains a rule for notifying users of JVM < OpenJDK8u302 to upgrade to avoid performance issues caused by https://bugs.openjdk.java.net/browse/JDK-8266723. >> >> **JFR recorded on OpenJDK 8u302 EA:** >> ![Screen Shot 2021-06-02 at 14 45 46](https://user-images.githubusercontent.com/1101441/120482697-a9c7bf80-c3b1-11eb-83e0-7d17b23cfd99.png) >> >> **JFR recorded on OpenJDK 8u292:** >> ![Screen Shot 2021-06-02 at 15 49 14](https://user-images.githubusercontent.com/1101441/120492943-ce746500-c3ba-11eb-999c-e75bf3fba245.png) > > Oskar Jung has updated the pull request with a new target base due to a merge or a rebase. The pull request now contains three commits: > > - fixup! 7262: Add rule for when the JVM version is < OpenJDK 8u302 > - fixup! 7262: Add rule for when the JVM version is < OpenJDK 8u302 > - 7262: Add rule for when the JVM version is < OpenJDK 8u302 > > Since the test flight recording was created with 8u302 EA, a method > `JavaVersion.isGreaterOrEqualThanDisregardEa` had to be added to compare > java versions disregarding early access status. Changes requested by hdafgard (Reviewer). core/org.openjdk.jmc.common/src/main/java/org/openjdk/jmc/common/version/JavaVMVersionToolkit.java line 124: > 122: * @param vmName > 123: * the JVM name to check. > 124: * @return true if it is a OpenJDK JVM, false if it isn't or if was Use {@code true} etc instead. core/org.openjdk.jmc.common/src/main/java/org/openjdk/jmc/common/version/JavaVMVersionToolkit.java line 131: > 129: return false; > 130: } > 131: return vmName.startsWith("OpenJDK"); //$NON-NLS-1$ //$NON-NLS-2$; Only the first non-nls comment is needed here. ------------- PR: https://git.openjdk.java.net/jmc/pull/256 From hirt at openjdk.java.net Wed Jun 2 16:25:47 2021 From: hirt at openjdk.java.net (Marcus Hirt) Date: Wed, 2 Jun 2021 16:25:47 GMT Subject: RFR: 7262: Add rule for when the JVM version is < OpenJDK 8u302 [v5] In-Reply-To: References: <98h1VmFsi2cDDKeMqDmbZwRZRaVSPJKOMpSpu2sjy1A=.9b88afe1-dbfc-4177-b06f-191e1ed9c243@github.com> Message-ID: On Wed, 2 Jun 2021 16:23:08 GMT, Oskar Jung wrote: >> This PR contains a rule for notifying users of JVM < OpenJDK8u302 to upgrade to avoid performance issues caused by https://bugs.openjdk.java.net/browse/JDK-8266723. >> >> **JFR recorded on OpenJDK 8u302 EA:** >> ![Screen Shot 2021-06-02 at 14 45 46](https://user-images.githubusercontent.com/1101441/120482697-a9c7bf80-c3b1-11eb-83e0-7d17b23cfd99.png) >> >> **JFR recorded on OpenJDK 8u292:** >> ![Screen Shot 2021-06-02 at 15 49 14](https://user-images.githubusercontent.com/1101441/120492943-ce746500-c3ba-11eb-999c-e75bf3fba245.png) > > Oskar Jung has updated the pull request with a new target base due to a merge or a rebase. The pull request now contains three commits: > > - fixup! 7262: Add rule for when the JVM version is < OpenJDK 8u302 > - fixup! 7262: Add rule for when the JVM version is < OpenJDK 8u302 > - 7262: Add rule for when the JVM version is < OpenJDK 8u302 > > Since the test flight recording was created with 8u302 EA, a method > `JavaVersion.isGreaterOrEqualThanDisregardEa` had to be added to compare > java versions disregarding early access status. Changes requested by hirt (Lead). core/org.openjdk.jmc.common/src/main/java/org/openjdk/jmc/common/version/JavaVMVersionToolkit.java line 131: > 129: return false; > 130: } > 131: return vmName.startsWith("OpenJDK"); //$NON-NLS-1$ //$NON-NLS-2$; Only one String - only one $NON-NLS needed. ------------- PR: https://git.openjdk.java.net/jmc/pull/256 From hirt at openjdk.java.net Wed Jun 2 16:25:48 2021 From: hirt at openjdk.java.net (Marcus Hirt) Date: Wed, 2 Jun 2021 16:25:48 GMT Subject: RFR: 7262: Add rule for when the JVM version is < OpenJDK 8u302 [v5] In-Reply-To: References: <98h1VmFsi2cDDKeMqDmbZwRZRaVSPJKOMpSpu2sjy1A=.9b88afe1-dbfc-4177-b06f-191e1ed9c243@github.com> Message-ID: <6Lwgs4A2gEwG_-A79QpOsUoEYDZuptIsebZ6pq86g6U=.64c3490c-b18a-4669-a6d5-879f446aaf92@github.com> On Wed, 2 Jun 2021 13:53:18 GMT, Oskar Jung wrote: >> Some nitpicks, but it seems good! > > Hey @bric3, thanks for your comments! Unfortunately I didn't notice you already started reviewing. I force-pushed a rewritten commit. The difference is, that I now check if it is an `OpenJDK`. See https://github.com/openjdk/jmc/pull/256/files#diff-d03e56fffa9483fb8054f457e45a52a76c057012d19c9d68ec88926db8a0624fR83-R85 @ojung - there is no need to force push new editions of the branch. You can have one gazillion commits in the PR; In the end Skara will squish them into one commit when integrating anyways. :) ------------- PR: https://git.openjdk.java.net/jmc/pull/256 From hirt at openjdk.java.net Wed Jun 2 16:27:30 2021 From: hirt at openjdk.java.net (Marcus Hirt) Date: Wed, 2 Jun 2021 16:27:30 GMT Subject: RFR: 7260: Create a new serializers bundle [v2] In-Reply-To: <1cB2OZdtoS7Ptg3aMM51-JJPC760_a8BLlWKiWDuCKU=.51ddf1f0-936d-4886-8253-387d684f365e@github.com> References: <1cB2OZdtoS7Ptg3aMM51-JJPC760_a8BLlWKiWDuCKU=.51ddf1f0-936d-4886-8253-387d684f365e@github.com> Message-ID: On Wed, 2 Jun 2021 16:20:00 GMT, Alex Macdonald wrote: >> Marcus Hirt has updated the pull request incrementally with two additional commits since the last revision: >> >> - Update core/org.openjdk.jmc.flightrecorder.serializers/src/main/java/org/openjdk/jmc/flightrecorder/serializers/json/FlameGraphJsonSerializer.java >> >> Co-authored-by: Henrik Dafg?rd >> - Update core/org.openjdk.jmc.flightrecorder.serializers/src/main/java/org/openjdk/jmc/flightrecorder/serializers/json/FlameGraphJsonSerializer.java >> >> Co-authored-by: Henrik Dafg?rd > > core/org.openjdk.jmc.flightrecorder.serializers/META-INF/MANIFEST.MF line 12: > >> 10: org.openjdk.jmc.flightrecorder.serializers.dot >> 11: Automatic-Module-Name: org.openjdk.jmc.flightrecorder.serializers >> 12: Require-Bundle: org.lz4.lz4-java > > Looks like it could use `org.openjdk.jmc.flightrecorder` in the require-bundle list? Otherwise when trying to use the Flamegraph or Graphview I end up with lots of exceptions such as: > > > Exception in thread "FlameGraphModelCalculation-0" java.lang.NoClassDefFoundError: org/openjdk/jmc/flightrecorder/stacktrace/tree/StacktraceTreeModel > at org.openjdk.jmc.flightrecorder.serializers.json.FlameGraphJsonSerializer.toJson(FlameGraphJsonSerializer.java:89) > at org.openjdk.jmc.flightrecorder.flameview.views.FlameGraphView$ModelRebuildRunnable.run(FlameGraphView.java:305) > at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) > at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) > at java.base/java.lang.Thread.run(Thread.java:829) > Caused by: java.lang.ClassNotFoundException: org.openjdk.jmc.flightrecorder.stacktrace.tree.StacktraceTreeModel cannot be found by org.openjdk.jmc.flightrecorder.serializers_8.1.0.qualifier > at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:519) > at org.eclipse.osgi.internal.loader.ModuleClassLoader.loadClass(ModuleClassLoader.java:171) > at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:522) > ... 5 more I could have sworn it was there. Will fix. ------------- PR: https://git.openjdk.java.net/jmc/pull/254 From github.com+1101441+ojung at openjdk.java.net Wed Jun 2 16:32:49 2021 From: github.com+1101441+ojung at openjdk.java.net (Oskar Jung) Date: Wed, 2 Jun 2021 16:32:49 GMT Subject: RFR: 7262: Add rule for when the JVM version is < OpenJDK 8u302 [v6] In-Reply-To: <98h1VmFsi2cDDKeMqDmbZwRZRaVSPJKOMpSpu2sjy1A=.9b88afe1-dbfc-4177-b06f-191e1ed9c243@github.com> References: <98h1VmFsi2cDDKeMqDmbZwRZRaVSPJKOMpSpu2sjy1A=.9b88afe1-dbfc-4177-b06f-191e1ed9c243@github.com> Message-ID: > This PR contains a rule for notifying users of JVM < OpenJDK8u302 to upgrade to avoid performance issues caused by https://bugs.openjdk.java.net/browse/JDK-8266723. > > **JFR recorded on OpenJDK 8u302 EA:** > ![Screen Shot 2021-06-02 at 14 45 46](https://user-images.githubusercontent.com/1101441/120482697-a9c7bf80-c3b1-11eb-83e0-7d17b23cfd99.png) > > **JFR recorded on OpenJDK 8u292:** > ![Screen Shot 2021-06-02 at 15 49 14](https://user-images.githubusercontent.com/1101441/120492943-ce746500-c3ba-11eb-999c-e75bf3fba245.png) Oskar Jung has updated the pull request incrementally with one additional commit since the last revision: fixup! 7262: Add rule for when the JVM version is < OpenJDK 8u302 ------------- Changes: - all: https://git.openjdk.java.net/jmc/pull/256/files - new: https://git.openjdk.java.net/jmc/pull/256/files/8a895645..097ecc12 Webrevs: - full: https://webrevs.openjdk.java.net/?repo=jmc&pr=256&range=05 - incr: https://webrevs.openjdk.java.net/?repo=jmc&pr=256&range=04-05 Stats: 8 lines in 1 file changed: 0 ins; 0 del; 8 mod Patch: https://git.openjdk.java.net/jmc/pull/256.diff Fetch: git fetch https://git.openjdk.java.net/jmc pull/256/head:pull/256 PR: https://git.openjdk.java.net/jmc/pull/256 From hirt at openjdk.java.net Wed Jun 2 16:53:50 2021 From: hirt at openjdk.java.net (Marcus Hirt) Date: Wed, 2 Jun 2021 16:53:50 GMT Subject: RFR: 7260: Create a new serializers bundle [v3] In-Reply-To: References: Message-ID: > This creates a new core bundle that can be used to serialize data from JFR into various popular formats, such as DOT and JSON. Marcus Hirt has updated the pull request incrementally with one additional commit since the last revision: Adding dependency on jfr ------------- Changes: - all: https://git.openjdk.java.net/jmc/pull/254/files - new: https://git.openjdk.java.net/jmc/pull/254/files/fc3fb859..97354e10 Webrevs: - full: https://webrevs.openjdk.java.net/?repo=jmc&pr=254&range=02 - incr: https://webrevs.openjdk.java.net/?repo=jmc&pr=254&range=01-02 Stats: 1 line in 1 file changed: 0 ins; 0 del; 1 mod Patch: https://git.openjdk.java.net/jmc/pull/254.diff Fetch: git fetch https://git.openjdk.java.net/jmc pull/254/head:pull/254 PR: https://git.openjdk.java.net/jmc/pull/254 From schaturvedi at openjdk.java.net Wed Jun 2 17:00:30 2021 From: schaturvedi at openjdk.java.net (Suchita Chaturvedi) Date: Wed, 2 Jun 2021 17:00:30 GMT Subject: Integrated: 7060: [WLS] Rule result formatting update w.r.t Rule 2.0 In-Reply-To: References: Message-ID: <1za3SoZjUFf8qr-QYauPjAsAinmTKXoOHCiDjQ23ask=.e3e87be4-33d0-4220-8b63-eb93f71ac103@github.com> On Wed, 2 Jun 2021 09:47:00 GMT, Suchita Chaturvedi wrote: > This PR addresses the replacement of HTML tags which are not supported after Rules 2.0. > > This change is mainly addressing the regression caused due to Rules 2.0 in WLS plugin rule Long Lasting Servlet Rule Request. After Rules 2.0 the report on automated analysis screen became unreadable as HTML tags like ``
      • `` were directly shown on UI. As part of this change I have replaced these tags with some appropriate characters to make the report readable. This pull request has now been integrated. Changeset: 103245e2 Author: Suchita Chaturvedi URL: https://git.openjdk.java.net/jmc/commit/103245e26d3e546d672f27fe57e7386dd617c8ae Stats: 13 lines in 2 files changed: 3 ins; 1 del; 9 mod 7060: [WLS] Rule result formatting update w.r.t Rule 2.0 Reviewed-by: hdafgard ------------- PR: https://git.openjdk.java.net/jmc/pull/258 From github.com+1101441+ojung at openjdk.java.net Wed Jun 2 17:10:01 2021 From: github.com+1101441+ojung at openjdk.java.net (Oskar Jung) Date: Wed, 2 Jun 2021 17:10:01 GMT Subject: RFR: 7262: Add rule for when the JVM version is < OpenJDK 8u302 [v7] In-Reply-To: <98h1VmFsi2cDDKeMqDmbZwRZRaVSPJKOMpSpu2sjy1A=.9b88afe1-dbfc-4177-b06f-191e1ed9c243@github.com> References: <98h1VmFsi2cDDKeMqDmbZwRZRaVSPJKOMpSpu2sjy1A=.9b88afe1-dbfc-4177-b06f-191e1ed9c243@github.com> Message-ID: > This PR contains a rule for notifying users of JVM < OpenJDK8u302 to upgrade to avoid performance issues caused by https://bugs.openjdk.java.net/browse/JDK-8266723. > > **JFR recorded on OpenJDK 8u302 EA:** > ![Screen Shot 2021-06-02 at 14 45 46](https://user-images.githubusercontent.com/1101441/120482697-a9c7bf80-c3b1-11eb-83e0-7d17b23cfd99.png) > > **JFR recorded on OpenJDK 8u292:** > ![Screen Shot 2021-06-02 at 15 49 14](https://user-images.githubusercontent.com/1101441/120492943-ce746500-c3ba-11eb-999c-e75bf3fba245.png) Oskar Jung has updated the pull request incrementally with one additional commit since the last revision: fixup! 7262: Add rule for when the JVM version is < OpenJDK 8u302 ------------- Changes: - all: https://git.openjdk.java.net/jmc/pull/256/files - new: https://git.openjdk.java.net/jmc/pull/256/files/097ecc12..0ceef2df Webrevs: - full: https://webrevs.openjdk.java.net/?repo=jmc&pr=256&range=06 - incr: https://webrevs.openjdk.java.net/?repo=jmc&pr=256&range=05-06 Stats: 2 lines in 1 file changed: 0 ins; 1 del; 1 mod Patch: https://git.openjdk.java.net/jmc/pull/256.diff Fetch: git fetch https://git.openjdk.java.net/jmc pull/256/head:pull/256 PR: https://git.openjdk.java.net/jmc/pull/256 From aptmac at openjdk.java.net Wed Jun 2 17:11:30 2021 From: aptmac at openjdk.java.net (Alex Macdonald) Date: Wed, 2 Jun 2021 17:11:30 GMT Subject: RFR: 7260: Create a new serializers bundle [v3] In-Reply-To: References: Message-ID: <2wmr8SR94ppwmv3hr61DYAfBmBdYMFgjUp5eSoz1Bu4=.da8af5f7-63e8-49bd-96d0-22b658bc3a5c@github.com> On Wed, 2 Jun 2021 16:53:50 GMT, Marcus Hirt wrote: >> This creates a new core bundle that can be used to serialize data from JFR into various popular formats, such as DOT and JSON. > > Marcus Hirt has updated the pull request incrementally with one additional commit since the last revision: > > Adding dependency on jfr Marked as reviewed by aptmac (Committer). ------------- PR: https://git.openjdk.java.net/jmc/pull/254 From hirt at openjdk.java.net Wed Jun 2 17:39:31 2021 From: hirt at openjdk.java.net (Marcus Hirt) Date: Wed, 2 Jun 2021 17:39:31 GMT Subject: RFR: 7262: Add rule for when the JVM version is < OpenJDK 8u302 [v7] In-Reply-To: References: <98h1VmFsi2cDDKeMqDmbZwRZRaVSPJKOMpSpu2sjy1A=.9b88afe1-dbfc-4177-b06f-191e1ed9c243@github.com> Message-ID: On Wed, 2 Jun 2021 17:10:01 GMT, Oskar Jung wrote: >> This PR contains a rule for notifying users of JVM < OpenJDK8u302 to upgrade to avoid performance issues caused by https://bugs.openjdk.java.net/browse/JDK-8266723. >> >> **JFR recorded on OpenJDK 8u302 EA:** >> ![Screen Shot 2021-06-02 at 14 45 46](https://user-images.githubusercontent.com/1101441/120482697-a9c7bf80-c3b1-11eb-83e0-7d17b23cfd99.png) >> >> **JFR recorded on OpenJDK 8u292:** >> ![Screen Shot 2021-06-02 at 15 49 14](https://user-images.githubusercontent.com/1101441/120492943-ce746500-c3ba-11eb-999c-e75bf3fba245.png) > > Oskar Jung has updated the pull request incrementally with one additional commit since the last revision: > > fixup! 7262: Add rule for when the JVM version is < OpenJDK 8u302 Marked as reviewed by hirt (Lead). ------------- PR: https://git.openjdk.java.net/jmc/pull/256 From hirt at openjdk.java.net Wed Jun 2 17:42:35 2021 From: hirt at openjdk.java.net (Marcus Hirt) Date: Wed, 2 Jun 2021 17:42:35 GMT Subject: Integrated: 7260: Create a new serializers bundle In-Reply-To: References: Message-ID: On Fri, 28 May 2021 00:22:06 GMT, Marcus Hirt wrote: > This creates a new core bundle that can be used to serialize data from JFR into various popular formats, such as DOT and JSON. This pull request has now been integrated. Changeset: 8c28f1b4 Author: Marcus Hirt URL: https://git.openjdk.java.net/jmc/commit/8c28f1b453d9e5132bda22f43487f35ff3568217 Stats: 1288 lines in 37 files changed: 769 ins; 491 del; 28 mod 7260: Create a new serializers bundle Reviewed-by: jbachorik, hdafgard, aptmac ------------- PR: https://git.openjdk.java.net/jmc/pull/254 From hirt at openjdk.java.net Wed Jun 2 17:42:35 2021 From: hirt at openjdk.java.net (Marcus Hirt) Date: Wed, 2 Jun 2021 17:42:35 GMT Subject: RFR: 7260: Create a new serializers bundle [v3] In-Reply-To: <1cB2OZdtoS7Ptg3aMM51-JJPC760_a8BLlWKiWDuCKU=.51ddf1f0-936d-4886-8253-387d684f365e@github.com> References: <1cB2OZdtoS7Ptg3aMM51-JJPC760_a8BLlWKiWDuCKU=.51ddf1f0-936d-4886-8253-387d684f365e@github.com> Message-ID: On Wed, 2 Jun 2021 16:20:00 GMT, Alex Macdonald wrote: >> Marcus Hirt has updated the pull request incrementally with one additional commit since the last revision: >> >> Adding dependency on jfr > > core/org.openjdk.jmc.flightrecorder.serializers/META-INF/MANIFEST.MF line 12: > >> 10: org.openjdk.jmc.flightrecorder.serializers.dot >> 11: Automatic-Module-Name: org.openjdk.jmc.flightrecorder.serializers >> 12: Require-Bundle: org.lz4.lz4-java > > Looks like it could use `org.openjdk.jmc.flightrecorder` in the require-bundle list? Otherwise when trying to use the Flamegraph or Graphview I end up with lots of exceptions such as: > > > Exception in thread "FlameGraphModelCalculation-0" java.lang.NoClassDefFoundError: org/openjdk/jmc/flightrecorder/stacktrace/tree/StacktraceTreeModel > at org.openjdk.jmc.flightrecorder.serializers.json.FlameGraphJsonSerializer.toJson(FlameGraphJsonSerializer.java:89) > at org.openjdk.jmc.flightrecorder.flameview.views.FlameGraphView$ModelRebuildRunnable.run(FlameGraphView.java:305) > at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) > at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) > at java.base/java.lang.Thread.run(Thread.java:829) > Caused by: java.lang.ClassNotFoundException: org.openjdk.jmc.flightrecorder.stacktrace.tree.StacktraceTreeModel cannot be found by org.openjdk.jmc.flightrecorder.serializers_8.1.0.qualifier > at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:519) > at org.eclipse.osgi.internal.loader.ModuleClassLoader.loadClass(ModuleClassLoader.java:171) > at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:522) > ... 5 more Nice catch! Thanks @aptmac. :) ------------- PR: https://git.openjdk.java.net/jmc/pull/254 From github.com+1101441+ojung at openjdk.java.net Wed Jun 2 17:47:29 2021 From: github.com+1101441+ojung at openjdk.java.net (Oskar Jung) Date: Wed, 2 Jun 2021 17:47:29 GMT Subject: Integrated: 7262: Add rule for when the JVM version is < OpenJDK 8u302 In-Reply-To: <98h1VmFsi2cDDKeMqDmbZwRZRaVSPJKOMpSpu2sjy1A=.9b88afe1-dbfc-4177-b06f-191e1ed9c243@github.com> References: <98h1VmFsi2cDDKeMqDmbZwRZRaVSPJKOMpSpu2sjy1A=.9b88afe1-dbfc-4177-b06f-191e1ed9c243@github.com> Message-ID: On Tue, 1 Jun 2021 11:49:06 GMT, Oskar Jung wrote: > This PR contains a rule for notifying users of JVM < OpenJDK8u302 to upgrade to avoid performance issues caused by https://bugs.openjdk.java.net/browse/JDK-8266723. > > **JFR recorded on OpenJDK 8u302 EA:** > ![Screen Shot 2021-06-02 at 14 45 46](https://user-images.githubusercontent.com/1101441/120482697-a9c7bf80-c3b1-11eb-83e0-7d17b23cfd99.png) > > **JFR recorded on OpenJDK 8u292:** > ![Screen Shot 2021-06-02 at 15 49 14](https://user-images.githubusercontent.com/1101441/120492943-ce746500-c3ba-11eb-999c-e75bf3fba245.png) This pull request has now been integrated. Changeset: f2e80e7a Author: Oskar Jung Committer: Marcus Hirt URL: https://git.openjdk.java.net/jmc/commit/f2e80e7ae9b75ec34b2234760e96c72fe91652e7 Stats: 746 lines in 10 files changed: 738 ins; 0 del; 8 mod 7262: Add rule for when the JVM version is < OpenJDK 8u302 Reviewed-by: hirt ------------- PR: https://git.openjdk.java.net/jmc/pull/256 From ghb at openjdk.java.net Thu Jun 3 16:27:44 2021 From: ghb at openjdk.java.net (Guru Hb) Date: Thu, 3 Jun 2021 16:27:44 GMT Subject: RFR: 6923: Retain treeview stack trace while switching between JFRs Message-ID: Persist Treeviewer expanded items during main view (JfrEditor) switch. This behavior will help comparing two jfr recording. Solution : 1. StackTraceView is a Viewpart which lists the stacktraces of JfrEditor (EditorPart). Switching between JfrEditor or selecting other context (Event Browser, Filtered events, etc..) makes an update in stacktraceview by providing "Items" to list. This Lists are then presented to StackTraceModel with reducedTree (i.e only the Top frame is expanded) and rest of them are listed with its root. With this fix, Persisting the ExpandedElements based on Items and then setting back during Editor Switch. 2. StackTraceFrame requires hashCode and equals in order to Distinguish between old and new frames. Or persisting the StackTraceModel will be bit more expensive then set and restoring the Expanded elements. ------------- Commit messages: - renaming field - 6923: Retain treeview stack trace while switching between JFRs Changes: https://git.openjdk.java.net/jmc/pull/259/files Webrev: https://webrevs.openjdk.java.net/?repo=jmc&pr=259&range=00 Issue: https://bugs.openjdk.java.net/browse/JMC-6923 Stats: 56 lines in 2 files changed: 54 ins; 0 del; 2 mod Patch: https://git.openjdk.java.net/jmc/pull/259.diff Fetch: git fetch https://git.openjdk.java.net/jmc pull/259/head:pull/259 PR: https://git.openjdk.java.net/jmc/pull/259 From github.com+803621+bric3 at openjdk.java.net Mon Jun 7 10:01:58 2021 From: github.com+803621+bric3 at openjdk.java.net (Brice Dutheil) Date: Mon, 7 Jun 2021 10:01:58 GMT Subject: RFR: 7167: Agent Plugin [v6] In-Reply-To: <81i7tInHHp-rf5jdplOH3TaSatjsumQ-64cgxQejyuI=.2da150e4-3cc5-4b2f-a542-ed9afee1adcc@github.com> References: <81i7tInHHp-rf5jdplOH3TaSatjsumQ-64cgxQejyuI=.2da150e4-3cc5-4b2f-a542-ed9afee1adcc@github.com> Message-ID: On Wed, 28 Apr 2021 17:57:17 GMT, Joshua Matsuoka wrote: >> This PR adds the Agent Plugin to JMC. This is a plugin for controlling the jmc agent and provides a way to attach it and add probes to any JVMs in the JVM browser, as well as providing a preset manager for creating/modifying probe presets. >> >> There is still a small amount of cleanup to be done so I'll mark it as a draft for now but it would be great to get a review :) > > Joshua Matsuoka has updated the pull request incrementally with one additional commit since the last revision: > > Fix rcp feature to use new agent plugin name Hi, I finally took the time to run a build of this branch, however I wasn't able to use the agent integration. JDK Mission Control 8.1.0+brice (Qualifier: 202106030945, Change id: 411dc189555b66cd756982b506114de55e3e926d) _Agent and JMC were built respectively `./build.sh --packageAgent` and `./build.sh --packageJmc`._ The agent icon don't show up (Maybe it's related to HiDPI ? It's a Macbook Pro 2012 with Retina display) Screenshot 2021-06-06 at 21 48 55 Double clicking opens this popup (This may be out of scope for this already huge PR, but bundling the agent in JMC might be welcome for end users). Screenshot 2021-06-06 at 21 49 59 There I can enter the location of the agent : `/Users/brice/opensource/jmc/agent/target/org.openjdk.jmc.agent-1.0.0-SNAPSHOT.jar`, and _start_. But then there's an error : `java.lang.ClassNotFoundException: org.openjdk.jmc.console.ext.agent.editor.AgentEditor cannot be found by org.openjdk.jmc.console.agent_8.1.0.202106030945` Screenshot 2021-06-07 at 11 38 09
        full stack trace org.eclipse.core.runtime.CoreException: Plug-in org.openjdk.jmc.console.agent was unable to load class org.openjdk.jmc.console.ext.agent.editor.AgentEditor. at org.eclipse.core.internal.registry.osgi.RegistryStrategyOSGI.throwException(RegistryStrategyOSGI.java:212) at org.eclipse.core.internal.registry.osgi.RegistryStrategyOSGI.createExecutableExtension(RegistryStrategyOSGI.java:198) at org.eclipse.core.internal.registry.ExtensionRegistry.createExecutableExtension(ExtensionRegistry.java:923) at org.eclipse.core.internal.registry.ConfigurationElement.createExecutableExtension(ConfigurationElement.java:246) at org.eclipse.core.internal.registry.ConfigurationElementHandle.createExecutableExtension(ConfigurationElementHandle.java:63) at org.eclipse.ui.internal.WorkbenchPlugin.createExtension(WorkbenchPlugin.java:281) at org.eclipse.ui.internal.registry.EditorDescriptor.createEditor(EditorDescriptor.java:231) at org.eclipse.ui.internal.EditorReference.createPart(EditorReference.java:321) at org.eclipse.ui.internal.e4.compatibility.CompatibilityPart.createPart(CompatibilityPart.java:300) at org.eclipse.ui.internal.e4.compatibility.CompatibilityEditor.createPart(CompatibilityEditor.java:61) at org.eclipse.ui.internal.e4.compatibility.CompatibilityPart.create(CompatibilityPart.java:338) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:78) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.base/java.lang.reflect.Method.invoke(Method.java:567) at org.eclipse.e4.core.internal.di.MethodRequestor.execute(MethodRequestor.java:58) at org.eclipse.e4.core.internal.di.InjectorImpl.processAnnotated(InjectorImpl.java:999) at org.eclipse.e4.core.internal.di.InjectorImpl.processAnnotated(InjectorImpl.java:964) at org.eclipse.e4.core.internal.di.InjectorImpl.internalInject(InjectorImpl.java:140) at org.eclipse.e4.core.internal.di.InjectorImpl.internalMake(InjectorImpl.java:405) at org.eclipse.e4.core.internal.di.InjectorImpl.make(InjectorImpl.java:332) at org.eclipse.e4.core.contexts.ContextInjectionFactory.make(ContextInjectionFactory.java:202) at org.eclipse.e4.ui.internal.workbench.ReflectionContributionFactory.createFromBundle(ReflectionContributionFactory.java:91) at org.eclipse.e4.ui.internal.workbench.ReflectionContributionFactory.doCreate(ReflectionContributionFactory.java:60) at org.eclipse.e4.ui.internal.workbench.ReflectionContributionFactory.create(ReflectionContributionFactory.java:42) at org.eclipse.e4.ui.workbench.renderers.swt.ContributedPartRenderer.createWidget(ContributedPartRenderer.java:132) at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.createWidget(PartRenderingEngine.java:999) at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.safeCreateGui(PartRenderingEngine.java:659) at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.safeCreateGui(PartRenderingEngine.java:765) at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.access$0(PartRenderingEngine.java:736) at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$2.run(PartRenderingEngine.java:730) at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:45) at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.createGui(PartRenderingEngine.java:714) at org.eclipse.e4.ui.internal.workbench.PartServiceImpl.lambda$0(PartServiceImpl.java:104) at org.eclipse.e4.ui.services.internal.events.UIEventHandler.lambda$0(UIEventHandler.java:38) at org.eclipse.swt.widgets.Synchronizer.syncExec(Synchronizer.java:236) at org.eclipse.ui.internal.UISynchronizer.syncExec(UISynchronizer.java:133) at org.eclipse.swt.widgets.Display.syncExec(Display.java:4992) at org.eclipse.e4.ui.internal.workbench.swt.E4Application$1.syncExec(E4Application.java:219) at org.eclipse.e4.ui.services.internal.events.UIEventHandler.handleEvent(UIEventHandler.java:38) at org.eclipse.equinox.internal.event.EventHandlerWrapper.handleEvent(EventHandlerWrapper.java:205) at org.eclipse.equinox.internal.event.EventHandlerTracker.dispatchEvent(EventHandlerTracker.java:203) at org.eclipse.equinox.internal.event.EventHandlerTracker.dispatchEvent(EventHandlerTracker.java:1) at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:234) at org.eclipse.osgi.framework.eventmgr.ListenerQueue.dispatchEventSynchronous(ListenerQueue.java:151) at org.eclipse.equinox.internal.event.EventAdminImpl.dispatchEvent(EventAdminImpl.java:132) at org.eclipse.equinox.internal.event.EventAdminImpl.sendEvent(EventAdminImpl.java:75) at org.eclipse.equinox.internal.event.EventComponent.sendEvent(EventComponent.java:44) at org.eclipse.e4.ui.services.internal.events.EventBroker.send(EventBroker.java:55) at org.eclipse.e4.ui.internal.workbench.UIEventPublisher.notifyChanged(UIEventPublisher.java:63) at org.eclipse.emf.common.notify.impl.BasicNotifierImpl.eNotify(BasicNotifierImpl.java:424) at org.eclipse.e4.ui.model.application.ui.impl.ElementContainerImpl.setSelectedElementGen(ElementContainerImpl.java:170) at org.eclipse.e4.ui.model.application.ui.impl.ElementContainerImpl.setSelectedElement(ElementContainerImpl.java:188) at org.eclipse.e4.ui.internal.workbench.ModelServiceImpl.showElementInWindow(ModelServiceImpl.java:659) at org.eclipse.e4.ui.internal.workbench.ModelServiceImpl.bringToTop(ModelServiceImpl.java:623) at org.eclipse.e4.ui.internal.workbench.PartServiceImpl.delegateBringToTop(PartServiceImpl.java:786) at org.eclipse.e4.ui.internal.workbench.PartServiceImpl.bringToTop(PartServiceImpl.java:400) at org.eclipse.e4.ui.internal.workbench.PartServiceImpl.showPart(PartServiceImpl.java:1262) at org.eclipse.ui.internal.WorkbenchPage.busyOpenEditor(WorkbenchPage.java:3197) at org.eclipse.ui.internal.WorkbenchPage.lambda$9(WorkbenchPage.java:3102) at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:74) at org.eclipse.ui.internal.WorkbenchPage.openEditor(WorkbenchPage.java:3100) at org.eclipse.ui.internal.WorkbenchPage.openEditor(WorkbenchPage.java:3070) at org.eclipse.ui.internal.WorkbenchPage.openEditor(WorkbenchPage.java:3061) at org.openjdk.jmc.console.agent.wizards.StartAgentWizard.performFinish(StartAgentWizard.java:82) at org.eclipse.jface.wizard.WizardDialog.finishPressed(WizardDialog.java:832) at org.eclipse.jface.wizard.WizardDialog.buttonPressed(WizardDialog.java:472) at org.eclipse.jface.dialogs.Dialog.lambda$0(Dialog.java:619) at org.eclipse.swt.events.SelectionListener$1.widgetSelected(SelectionListener.java:84) at org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:252) at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:89) at org.eclipse.swt.widgets.Display.sendEvent(Display.java:4385) at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1512) at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1535) at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1520) at org.eclipse.swt.widgets.Widget.notifyListeners(Widget.java:1324) at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:4172) at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3789) at org.eclipse.jface.window.Window.runEventLoop(Window.java:823) at org.eclipse.jface.window.Window.open(Window.java:799) at org.openjdk.jmc.console.agent.actions.AgentEditorOpener$ConnectJob.lambda$0(AgentEditorOpener.java:128) at org.openjdk.jmc.ui.misc.DisplayToolkit$SafeRunnable.run(DisplayToolkit.java:61) at org.eclipse.swt.widgets.RunnableLock.run(RunnableLock.java:40) at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:185) at org.eclipse.swt.widgets.Display.runAsyncMessages(Display.java:4124) at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3791) at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$5.run(PartRenderingEngine.java:1157) at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338) at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1046) at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:155) at org.eclipse.ui.internal.Workbench.lambda$3(Workbench.java:644) at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338) at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:551) at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:153) at org.openjdk.jmc.rcp.application.Application.start(Application.java:64) at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:203) at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:134) at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:401) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:255) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:78) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.base/java.lang.reflect.Method.invoke(Method.java:567) at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:657) at org.eclipse.equinox.launcher.Main.basicRun(Main.java:594) at org.eclipse.equinox.launcher.Main.run(Main.java:1465) Caused by: java.lang.ClassNotFoundException: org.openjdk.jmc.console.ext.agent.editor.AgentEditor cannot be found by org.openjdk.jmc.console.agent_8.1.0.202106030945 at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:516) at org.eclipse.osgi.internal.loader.ModuleClassLoader.loadClass(ModuleClassLoader.java:171) at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:519) at org.eclipse.osgi.internal.framework.EquinoxBundle.loadClass(EquinoxBundle.java:616) at org.eclipse.core.internal.registry.osgi.RegistryStrategyOSGI.createExecutableExtension(RegistryStrategyOSGI.java:196) ... 105 more
        application/org.openjdk.jmc.console.agent/plugin.xml line 60: > 58: > 59: 60: class="org.openjdk.jmc.console.ext.agent.editor.AgentEditor" Shouldn't it be `org.openjdk.jmc.console.agent.editor.AgentEditor` ? application/org.openjdk.jmc.console.agent/plugin.xml line 73: > 71: icon="icons/agent-16.png" > 72: extensions="xml" > 73: class="org.openjdk.jmc.console.ext.agent.tabs.raweditor.RawEditor" Same here, shouldn't it be `org.openjdk.jmc.console.agent.raweditor.RawEditor` ? ------------- PR: https://git.openjdk.java.net/jmc/pull/226 From github.com+803621+bric3 at openjdk.java.net Mon Jun 7 10:12:58 2021 From: github.com+803621+bric3 at openjdk.java.net (Brice Dutheil) Date: Mon, 7 Jun 2021 10:12:58 GMT Subject: RFR: 7167: Agent Plugin [v6] In-Reply-To: References: <81i7tInHHp-rf5jdplOH3TaSatjsumQ-64cgxQejyuI=.2da150e4-3cc5-4b2f-a542-ed9afee1adcc@github.com> Message-ID: <2x9-FqvSLFUhNg0wede5gxW2rP9TCRbgVmlPrZUuBkI=.554ccf08-1232-419c-89b0-eb7f78c517e5@github.com> On Mon, 7 Jun 2021 09:53:36 GMT, Brice Dutheil wrote: >> Joshua Matsuoka has updated the pull request incrementally with one additional commit since the last revision: >> >> Fix rcp feature to use new agent plugin name > > application/org.openjdk.jmc.console.agent/plugin.xml line 60: > >> 58: >> 59: > 60: class="org.openjdk.jmc.console.ext.agent.editor.AgentEditor" > > Shouldn't it be `org.openjdk.jmc.console.agent.editor.AgentEditor` ? I ran a modified version, and indeed that's the correct change. ------------- PR: https://git.openjdk.java.net/jmc/pull/226 From github.com+803621+bric3 at openjdk.java.net Mon Jun 7 10:16:00 2021 From: github.com+803621+bric3 at openjdk.java.net (Brice Dutheil) Date: Mon, 7 Jun 2021 10:16:00 GMT Subject: RFR: 6923: Retain treeview stack trace while switching between JFRs In-Reply-To: References: Message-ID: On Thu, 3 Jun 2021 16:22:58 GMT, Guru Hb wrote: > Persist Treeviewer expanded items during main view (JfrEditor) switch. This behavior will help comparing two jfr recording. > > Solution : > 1. StackTraceView is a Viewpart which lists the stacktraces of JfrEditor (EditorPart). Switching between JfrEditor or selecting other context (Event Browser, Filtered events, etc..) makes an update in stacktraceview by providing "Items" to list. This Lists are then presented to StackTraceModel with reducedTree (i.e only the Top frame is expanded) and rest of them are listed with its root. > With this fix, Persisting the ExpandedElements based on Items and then setting back during Editor Switch. > 2. StackTraceFrame requires hashCode and equals in order to Distinguish between old and new frames. Or persisting the StackTraceModel will be bit more expensive then set and restoring the Expanded elements. Marked as reviewed by bric3 at github.com (no known OpenJDK username). ------------- PR: https://git.openjdk.java.net/jmc/pull/259 From ghb at openjdk.java.net Wed Jun 9 10:00:28 2021 From: ghb at openjdk.java.net (Guru Hb) Date: Wed, 9 Jun 2021 10:00:28 GMT Subject: RFR: 6967: Add Percentage Column w.r.t 'Profiling Samples' in Thread table Message-ID: Adding "Percentage" column in Thread table (JavaApplication View). which is helpful in knowing the ratio w.r.t "Profiling Samples" JMC 5.x had the Percentage Column in "Hot threads" tab. ------------- Commit messages: - Add Percentage Column w.r.t 'Profiling Samples' in Thread table Changes: https://git.openjdk.java.net/jmc/pull/260/files Webrev: https://webrevs.openjdk.java.net/?repo=jmc&pr=260&range=00 Issue: https://bugs.openjdk.java.net/browse/JMC-6967 Stats: 4 lines in 1 file changed: 3 ins; 0 del; 1 mod Patch: https://git.openjdk.java.net/jmc/pull/260.diff Fetch: git fetch https://git.openjdk.java.net/jmc pull/260/head:pull/260 PR: https://git.openjdk.java.net/jmc/pull/260 From aptmac at openjdk.java.net Wed Jun 9 15:14:14 2021 From: aptmac at openjdk.java.net (Alex Macdonald) Date: Wed, 9 Jun 2021 15:14:14 GMT Subject: RFR: 6923: Retain treeview stack trace while switching between JFRs In-Reply-To: References: Message-ID: <4FLYFS4dzqtOaRRur_xFcnk7Hhs52AsOxxMEnBA5mF4=.81f9cd8f-9a23-4dde-9980-d381e638ef3c@github.com> On Thu, 3 Jun 2021 16:22:58 GMT, Guru Hb wrote: > Persist Treeviewer expanded items during main view (JfrEditor) switch. This behavior will help comparing two jfr recording. > > Solution : > 1. StackTraceView is a Viewpart which lists the stacktraces of JfrEditor (EditorPart). Switching between JfrEditor or selecting other context (Event Browser, Filtered events, etc..) makes an update in stacktraceview by providing "Items" to list. This Lists are then presented to StackTraceModel with reducedTree (i.e only the Top frame is expanded) and rest of them are listed with its root. > With this fix, Persisting the ExpandedElements based on Items and then setting back during Editor Switch. > 2. StackTraceFrame requires hashCode and equals in order to Distinguish between old and new frames. Or persisting the StackTraceModel will be bit more expensive then set and restoring the Expanded elements. Marked as reviewed by aptmac (Committer). ------------- PR: https://git.openjdk.java.net/jmc/pull/259 From reinhapa at openjdk.java.net Wed Jun 9 19:09:23 2021 From: reinhapa at openjdk.java.net (Patrick Reinhart) Date: Wed, 9 Jun 2021 19:09:23 GMT Subject: RFR: 7267: Change artifact id from "org.openjdk.jmc.agent" to "agent" Message-ID: - Changes the current artifact id from `org.openjdk.jmc.agent` to `agent` - Changes all agent artifact/version references within command line arguments accordingly ------------- Commit messages: - 7267: Change artifact id from "org.openjdk.jmc.agent" to "agent" Changes: https://git.openjdk.java.net/jmc/pull/261/files Webrev: https://webrevs.openjdk.java.net/?repo=jmc&pr=261&range=00 Issue: https://bugs.openjdk.java.net/browse/JMC-7267 Stats: 13 lines in 1 file changed: 1 ins; 1 del; 11 mod Patch: https://git.openjdk.java.net/jmc/pull/261.diff Fetch: git fetch https://git.openjdk.java.net/jmc pull/261/head:pull/261 PR: https://git.openjdk.java.net/jmc/pull/261 From hdafgard at openjdk.java.net Wed Jun 9 23:31:25 2021 From: hdafgard at openjdk.java.net (Henrik =?UTF-8?B?RGFmZ8OlcmQ=?=) Date: Wed, 9 Jun 2021 23:31:25 GMT Subject: RFR: 7266: Context Switch event handling breaks if JMC has old and new types parsed simultaneously Message-ID: This PR fixes an issue where the context switch rate attribute isn't final and can thus break if different types of profiles are parsed in sequence while still being read. ------------- Commit messages: - Use constant attribute for switch rate Changes: https://git.openjdk.java.net/jmc/pull/262/files Webrev: https://webrevs.openjdk.java.net/?repo=jmc&pr=262&range=00 Issue: https://bugs.openjdk.java.net/browse/JMC-7266 Stats: 29 lines in 5 files changed: 13 ins; 14 del; 2 mod Patch: https://git.openjdk.java.net/jmc/pull/262.diff Fetch: git fetch https://git.openjdk.java.net/jmc pull/262/head:pull/262 PR: https://git.openjdk.java.net/jmc/pull/262 From ghb at openjdk.java.net Thu Jun 10 03:20:14 2021 From: ghb at openjdk.java.net (Guru Hb) Date: Thu, 10 Jun 2021 03:20:14 GMT Subject: RFR: 7267: Change artifact id from "org.openjdk.jmc.agent" to "agent" In-Reply-To: References: Message-ID: On Wed, 9 Jun 2021 18:59:58 GMT, Patrick Reinhart wrote: > - Changes the current artifact id from `org.openjdk.jmc.agent` to `agent` > - Changes all agent artifact/version references within command line arguments accordingly +1 ------------- Marked as reviewed by ghb (Reviewer). PR: https://git.openjdk.java.net/jmc/pull/261 From ghb at openjdk.java.net Thu Jun 10 04:43:12 2021 From: ghb at openjdk.java.net (Guru Hb) Date: Thu, 10 Jun 2021 04:43:12 GMT Subject: Integrated: 6923: Retain treeview stack trace while switching between JFRs In-Reply-To: References: Message-ID: <4IngQX8DszAj0p7JDspUiMXu2f2F96w9Chu2edmohnU=.c7c69bf2-29f9-436b-b030-19f97f2c43df@github.com> On Thu, 3 Jun 2021 16:22:58 GMT, Guru Hb wrote: > Persist Treeviewer expanded items during main view (JfrEditor) switch. This behavior will help comparing two jfr recording. > > Solution : > 1. StackTraceView is a Viewpart which lists the stacktraces of JfrEditor (EditorPart). Switching between JfrEditor or selecting other context (Event Browser, Filtered events, etc..) makes an update in stacktraceview by providing "Items" to list. This Lists are then presented to StackTraceModel with reducedTree (i.e only the Top frame is expanded) and rest of them are listed with its root. > With this fix, Persisting the ExpandedElements based on Items and then setting back during Editor Switch. > 2. StackTraceFrame requires hashCode and equals in order to Distinguish between old and new frames. Or persisting the StackTraceModel will be bit more expensive then set and restoring the Expanded elements. This pull request has now been integrated. Changeset: df466e78 Author: Guru Hb URL: https://git.openjdk.java.net/jmc/commit/df466e785db8d81f49f818b0392b0d99eb7e38cf Stats: 56 lines in 2 files changed: 54 ins; 0 del; 2 mod 6923: Retain treeview stack trace while switching between JFRs Reviewed-by: aptmac ------------- PR: https://git.openjdk.java.net/jmc/pull/259 From ghb at openjdk.java.net Thu Jun 10 04:44:14 2021 From: ghb at openjdk.java.net (Guru Hb) Date: Thu, 10 Jun 2021 04:44:14 GMT Subject: RFR: 7266: Context Switch event handling breaks if JMC has old and new types parsed simultaneously In-Reply-To: References: Message-ID: On Wed, 9 Jun 2021 23:26:45 GMT, Henrik Dafg?rd wrote: > This PR fixes an issue where the context switch rate attribute isn't final and can thus break if different types of profiles are parsed in sequence while still being read. Marked as reviewed by ghb (Reviewer). ------------- PR: https://git.openjdk.java.net/jmc/pull/262 From hirt at openjdk.java.net Thu Jun 10 09:39:13 2021 From: hirt at openjdk.java.net (Marcus Hirt) Date: Thu, 10 Jun 2021 09:39:13 GMT Subject: RFR: 7266: Context Switch event handling breaks if JMC has old and new types parsed simultaneously In-Reply-To: References: Message-ID: On Wed, 9 Jun 2021 23:26:45 GMT, Henrik Dafg?rd wrote: > This PR fixes an issue where the context switch rate attribute isn't final and can thus break if different types of profiles are parsed in sequence while still being read. Marked as reviewed by hirt (Lead). ------------- PR: https://git.openjdk.java.net/jmc/pull/262 From hdafgard at openjdk.java.net Thu Jun 10 11:56:13 2021 From: hdafgard at openjdk.java.net (Henrik =?UTF-8?B?RGFmZ8OlcmQ=?=) Date: Thu, 10 Jun 2021 11:56:13 GMT Subject: Integrated: 7266: Context Switch event handling breaks if JMC has old and new types parsed simultaneously In-Reply-To: References: Message-ID: On Wed, 9 Jun 2021 23:26:45 GMT, Henrik Dafg?rd wrote: > This PR fixes an issue where the context switch rate attribute isn't final and can thus break if different types of profiles are parsed in sequence while still being read. This pull request has now been integrated. Changeset: a5f81b79 Author: Henrik Dafg?rd URL: https://git.openjdk.java.net/jmc/commit/a5f81b790f690952763c8c112d69b18910a9f643 Stats: 29 lines in 5 files changed: 13 ins; 14 del; 2 mod 7266: Context Switch event handling breaks if JMC has old and new types parsed simultaneously Reviewed-by: ghb, hirt ------------- PR: https://git.openjdk.java.net/jmc/pull/262 From hdafgard at openjdk.java.net Thu Jun 10 12:07:24 2021 From: hdafgard at openjdk.java.net (Henrik =?UTF-8?B?RGFmZ8OlcmQ=?=) Date: Thu, 10 Jun 2021 12:07:24 GMT Subject: RFR: 7266: Context Switch event handling breaks if JMC has old and new types parsed simultaneously Message-ID: Follow up PR to fix incorrect synthetic attribute ID. ------------- Commit messages: - Fix formatting - Fix context switch attribute id Changes: https://git.openjdk.java.net/jmc/pull/263/files Webrev: https://webrevs.openjdk.java.net/?repo=jmc&pr=263&range=00 Issue: https://bugs.openjdk.java.net/browse/JMC-7266 Stats: 10 lines in 1 file changed: 1 ins; 0 del; 9 mod Patch: https://git.openjdk.java.net/jmc/pull/263.diff Fetch: git fetch https://git.openjdk.java.net/jmc pull/263/head:pull/263 PR: https://git.openjdk.java.net/jmc/pull/263 From ghb at openjdk.java.net Thu Jun 10 12:21:14 2021 From: ghb at openjdk.java.net (Guru Hb) Date: Thu, 10 Jun 2021 12:21:14 GMT Subject: RFR: 7266: Context Switch event handling breaks if JMC has old and new types parsed simultaneously In-Reply-To: References: Message-ID: On Thu, 10 Jun 2021 11:59:29 GMT, Henrik Dafg?rd wrote: > Follow up PR to fix incorrect synthetic attribute ID. Marked as reviewed by ghb (Reviewer). ------------- PR: https://git.openjdk.java.net/jmc/pull/263 From hdafgard at openjdk.java.net Thu Jun 10 12:42:12 2021 From: hdafgard at openjdk.java.net (Henrik =?UTF-8?B?RGFmZ8OlcmQ=?=) Date: Thu, 10 Jun 2021 12:42:12 GMT Subject: Integrated: 7266: Context Switch event handling breaks if JMC has old and new types parsed simultaneously In-Reply-To: References: Message-ID: On Thu, 10 Jun 2021 11:59:29 GMT, Henrik Dafg?rd wrote: > Follow up PR to fix incorrect synthetic attribute ID. This pull request has now been integrated. Changeset: ad54a32b Author: Henrik Dafg?rd URL: https://git.openjdk.java.net/jmc/commit/ad54a32bed539ab09a3bfc0cd21ff370ef21c259 Stats: 10 lines in 1 file changed: 1 ins; 0 del; 9 mod 7266: Context Switch event handling breaks if JMC has old and new types parsed simultaneously Reviewed-by: ghb ------------- PR: https://git.openjdk.java.net/jmc/pull/263 From hirt at openjdk.java.net Thu Jun 10 20:17:19 2021 From: hirt at openjdk.java.net (Marcus Hirt) Date: Thu, 10 Jun 2021 20:17:19 GMT Subject: RFR: 7268: Should show icons for modifiers in the Method Profiling page Message-ID: I'll check in the new icons in the jmc-graphics repo. ------------- Commit messages: - Adding new icons - 7268: Should show icons for modifiers in the Method Profiling page Changes: https://git.openjdk.java.net/jmc/pull/264/files Webrev: https://webrevs.openjdk.java.net/?repo=jmc&pr=264&range=00 Issue: https://bugs.openjdk.java.net/browse/JMC-7268 Stats: 72 lines in 21 files changed: 64 ins; 0 del; 8 mod Patch: https://git.openjdk.java.net/jmc/pull/264.diff Fetch: git fetch https://git.openjdk.java.net/jmc pull/264/head:pull/264 PR: https://git.openjdk.java.net/jmc/pull/264 From hirt at openjdk.java.net Thu Jun 10 21:13:26 2021 From: hirt at openjdk.java.net (Marcus Hirt) Date: Thu, 10 Jun 2021 21:13:26 GMT Subject: RFR: 7268: Should show icons for modifiers in the Method Profiling page [v2] In-Reply-To: References: Message-ID: > I'll check in the new icons in the jmc-graphics repo. Marcus Hirt has updated the pull request incrementally with one additional commit since the last revision: Cleaner code ------------- Changes: - all: https://git.openjdk.java.net/jmc/pull/264/files - new: https://git.openjdk.java.net/jmc/pull/264/files/8bfdfbd0..5b241cea Webrevs: - full: https://webrevs.openjdk.java.net/?repo=jmc&pr=264&range=01 - incr: https://webrevs.openjdk.java.net/?repo=jmc&pr=264&range=00-01 Stats: 3 lines in 1 file changed: 0 ins; 0 del; 3 mod Patch: https://git.openjdk.java.net/jmc/pull/264.diff Fetch: git fetch https://git.openjdk.java.net/jmc pull/264/head:pull/264 PR: https://git.openjdk.java.net/jmc/pull/264 From reinhapa at openjdk.java.net Fri Jun 11 02:48:53 2021 From: reinhapa at openjdk.java.net (Patrick Reinhart) Date: Fri, 11 Jun 2021 02:48:53 GMT Subject: Integrated: 7267: Change artifact id from "org.openjdk.jmc.agent" to "agent" In-Reply-To: References: Message-ID: <3oBP9CFOOLKCAi5GN2aTcQbvbYdaR3ZQpUrm6tvnoLA=.30cbdc3d-5ef1-48a6-a38d-0c92b75310b4@github.com> On Wed, 9 Jun 2021 18:59:58 GMT, Patrick Reinhart wrote: > - Changes the current artifact id from `org.openjdk.jmc.agent` to `agent` > - Changes all agent artifact/version references within command line arguments accordingly This pull request has now been integrated. Changeset: d622dd3f Author: Patrick Reinhart Committer: Guru Hb URL: https://git.openjdk.java.net/jmc/commit/d622dd3fa3553885c6369c5c2937780cab21f0c5 Stats: 13 lines in 1 file changed: 1 ins; 1 del; 11 mod 7267: Change artifact id from "org.openjdk.jmc.agent" to "agent" Reviewed-by: ghb ------------- PR: https://git.openjdk.java.net/jmc/pull/261 From hirt at openjdk.java.net Fri Jun 11 09:56:51 2021 From: hirt at openjdk.java.net (Marcus Hirt) Date: Fri, 11 Jun 2021 09:56:51 GMT Subject: RFR: 7268: Show icons for modifiers in the method profiling page [v2] In-Reply-To: References: Message-ID: On Thu, 10 Jun 2021 21:13:26 GMT, Marcus Hirt wrote: >> I'll check in the new icons in the jmc-graphics repo. > > Marcus Hirt has updated the pull request incrementally with one additional commit since the last revision: > > Cleaner code ![image](https://user-images.githubusercontent.com/16906077/121668586-be8c0d80-caab-11eb-811a-ec337db4d6a5.png) ------------- PR: https://git.openjdk.java.net/jmc/pull/264 From hirt at openjdk.java.net Fri Jun 11 10:16:16 2021 From: hirt at openjdk.java.net (Marcus Hirt) Date: Fri, 11 Jun 2021 10:16:16 GMT Subject: RFR: 7268: Show icons for modifiers in the method profiling page [v3] In-Reply-To: References: Message-ID: > I'll check in the new icons in the jmc-graphics repo. Marcus Hirt has updated the pull request incrementally with one additional commit since the last revision: High resoluion page icon ------------- Changes: - all: https://git.openjdk.java.net/jmc/pull/264/files - new: https://git.openjdk.java.net/jmc/pull/264/files/5b241cea..861f567c Webrevs: - full: https://webrevs.openjdk.java.net/?repo=jmc&pr=264&range=02 - incr: https://webrevs.openjdk.java.net/?repo=jmc&pr=264&range=01-02 Stats: 0 lines in 2 files changed: 0 ins; 0 del; 0 mod Patch: https://git.openjdk.java.net/jmc/pull/264.diff Fetch: git fetch https://git.openjdk.java.net/jmc pull/264/head:pull/264 PR: https://git.openjdk.java.net/jmc/pull/264 From hirt at openjdk.java.net Fri Jun 11 10:16:17 2021 From: hirt at openjdk.java.net (Marcus Hirt) Date: Fri, 11 Jun 2021 10:16:17 GMT Subject: RFR: 7268: Show icons for modifiers in the method profiling page [v2] In-Reply-To: References: Message-ID: <3vs33PaoGP3nCWIWgmcxP_9szcA4JJDaozpR8iOM30I=.376a7b2d-598a-4957-8b2e-681b334bd5d9@github.com> On Thu, 10 Jun 2021 21:13:26 GMT, Marcus Hirt wrote: >> I'll check in the new icons in the jmc-graphics repo. > > Marcus Hirt has updated the pull request incrementally with one additional commit since the last revision: > > Cleaner code image ------------- PR: https://git.openjdk.java.net/jmc/pull/264 From hirt at openjdk.java.net Fri Jun 11 10:21:49 2021 From: hirt at openjdk.java.net (Marcus Hirt) Date: Fri, 11 Jun 2021 10:21:49 GMT Subject: RFR: 7268: Show icons for modifiers in the method profiling page [v3] In-Reply-To: References: Message-ID: On Fri, 11 Jun 2021 10:16:16 GMT, Marcus Hirt wrote: >> I'll check in the new icons in the jmc-graphics repo. > > Marcus Hirt has updated the pull request incrementally with one additional commit since the last revision: > > High resoluion page icon Um, maybe the gradient should be from the upper left, rather than the upper right? ------------- PR: https://git.openjdk.java.net/jmc/pull/264 From hirt at openjdk.java.net Fri Jun 11 13:25:19 2021 From: hirt at openjdk.java.net (Marcus Hirt) Date: Fri, 11 Jun 2021 13:25:19 GMT Subject: RFR: 7268: Show icons for modifiers in the method profiling page [v4] In-Reply-To: References: Message-ID: > I'll check in the new icons in the jmc-graphics repo. Marcus Hirt has updated the pull request incrementally with one additional commit since the last revision: Light source from upper left and better gradients ------------- Changes: - all: https://git.openjdk.java.net/jmc/pull/264/files - new: https://git.openjdk.java.net/jmc/pull/264/files/861f567c..2868df65 Webrevs: - full: https://webrevs.openjdk.java.net/?repo=jmc&pr=264&range=03 - incr: https://webrevs.openjdk.java.net/?repo=jmc&pr=264&range=02-03 Stats: 0 lines in 14 files changed: 0 ins; 0 del; 0 mod Patch: https://git.openjdk.java.net/jmc/pull/264.diff Fetch: git fetch https://git.openjdk.java.net/jmc pull/264/head:pull/264 PR: https://git.openjdk.java.net/jmc/pull/264 From hirt at openjdk.java.net Fri Jun 11 13:25:20 2021 From: hirt at openjdk.java.net (Marcus Hirt) Date: Fri, 11 Jun 2021 13:25:20 GMT Subject: RFR: 7268: Show icons for modifiers in the method profiling page [v3] In-Reply-To: References: Message-ID: On Fri, 11 Jun 2021 10:16:16 GMT, Marcus Hirt wrote: >> I'll check in the new icons in the jmc-graphics repo. > > Marcus Hirt has updated the pull request incrementally with one additional commit since the last revision: > > High resoluion page icon image ------------- PR: https://git.openjdk.java.net/jmc/pull/264 From hirt at openjdk.java.net Fri Jun 11 13:37:13 2021 From: hirt at openjdk.java.net (Marcus Hirt) Date: Fri, 11 Jun 2021 13:37:13 GMT Subject: [jmc-graphics] RFR: 7271: Add method related graphics to jmc-graphics Message-ID: Vector and icons. ------------- Commit messages: - 7271: Add method related graphics to jmc-graphics - Icon for the graph view Changes: https://git.openjdk.java.net/jmc-graphics/pull/4/files Webrev: https://webrevs.openjdk.java.net/?repo=jmc-graphics&pr=4&range=00 Issue: https://bugs.openjdk.java.net/browse/JMC-7271 Stats: 56 lines in 29 files changed: 56 ins; 0 del; 0 mod Patch: https://git.openjdk.java.net/jmc-graphics/pull/4.diff Fetch: git fetch https://git.openjdk.java.net/jmc-graphics pull/4/head:pull/4 PR: https://git.openjdk.java.net/jmc-graphics/pull/4 From hirt at openjdk.java.net Fri Jun 11 14:46:20 2021 From: hirt at openjdk.java.net (Marcus Hirt) Date: Fri, 11 Jun 2021 14:46:20 GMT Subject: RFR: 7268: Show icons for modifiers in the method profiling page [v5] In-Reply-To: References: Message-ID: > I'll check in the new icons in the jmc-graphics repo. Marcus Hirt has updated the pull request incrementally with two additional commits since the last revision: - Safer - Sourcing content type id for method properly ------------- Changes: - all: https://git.openjdk.java.net/jmc/pull/264/files - new: https://git.openjdk.java.net/jmc/pull/264/files/2868df65..2fe6733f Webrevs: - full: https://webrevs.openjdk.java.net/?repo=jmc&pr=264&range=04 - incr: https://webrevs.openjdk.java.net/?repo=jmc&pr=264&range=03-04 Stats: 1 line in 1 file changed: 0 ins; 0 del; 1 mod Patch: https://git.openjdk.java.net/jmc/pull/264.diff Fetch: git fetch https://git.openjdk.java.net/jmc pull/264/head:pull/264 PR: https://git.openjdk.java.net/jmc/pull/264 From hirt at openjdk.java.net Fri Jun 11 17:42:10 2021 From: hirt at openjdk.java.net (Marcus Hirt) Date: Fri, 11 Jun 2021 17:42:10 GMT Subject: RFR: 7268: Show icons for modifiers in the method profiling page [v6] In-Reply-To: References: Message-ID: > I'll check in the new icons in the jmc-graphics repo. Marcus Hirt has updated the pull request incrementally with one additional commit since the last revision: Copyright year updates ------------- Changes: - all: https://git.openjdk.java.net/jmc/pull/264/files - new: https://git.openjdk.java.net/jmc/pull/264/files/2fe6733f..52e423e4 Webrevs: - full: https://webrevs.openjdk.java.net/?repo=jmc&pr=264&range=05 - incr: https://webrevs.openjdk.java.net/?repo=jmc&pr=264&range=04-05 Stats: 3 lines in 3 files changed: 0 ins; 0 del; 3 mod Patch: https://git.openjdk.java.net/jmc/pull/264.diff Fetch: git fetch https://git.openjdk.java.net/jmc pull/264/head:pull/264 PR: https://git.openjdk.java.net/jmc/pull/264 From hirt at openjdk.java.net Fri Jun 11 17:58:14 2021 From: hirt at openjdk.java.net (Marcus Hirt) Date: Fri, 11 Jun 2021 17:58:14 GMT Subject: RFR: 7268: Show icons for modifiers in the method profiling page [v7] In-Reply-To: References: Message-ID: <91wjqVhom1AfHII0g0g_1rz4eBtyAWE4TgEGzhCaNb0=.b4fc47eb-b3aa-4ef9-9563-1c61982b804a@github.com> > I'll check in the new icons in the jmc-graphics repo. Marcus Hirt has updated the pull request incrementally with one additional commit since the last revision: Typo ------------- Changes: - all: https://git.openjdk.java.net/jmc/pull/264/files - new: https://git.openjdk.java.net/jmc/pull/264/files/52e423e4..0b3e8e8f Webrevs: - full: https://webrevs.openjdk.java.net/?repo=jmc&pr=264&range=06 - incr: https://webrevs.openjdk.java.net/?repo=jmc&pr=264&range=05-06 Stats: 1 line in 1 file changed: 0 ins; 0 del; 1 mod Patch: https://git.openjdk.java.net/jmc/pull/264.diff Fetch: git fetch https://git.openjdk.java.net/jmc pull/264/head:pull/264 PR: https://git.openjdk.java.net/jmc/pull/264 From hirt at openjdk.java.net Fri Jun 11 20:53:53 2021 From: hirt at openjdk.java.net (Marcus Hirt) Date: Fri, 11 Jun 2021 20:53:53 GMT Subject: RFR: 7268: Show icons for modifiers in the method profiling page [v7] In-Reply-To: <91wjqVhom1AfHII0g0g_1rz4eBtyAWE4TgEGzhCaNb0=.b4fc47eb-b3aa-4ef9-9563-1c61982b804a@github.com> References: <91wjqVhom1AfHII0g0g_1rz4eBtyAWE4TgEGzhCaNb0=.b4fc47eb-b3aa-4ef9-9563-1c61982b804a@github.com> Message-ID: On Fri, 11 Jun 2021 17:58:14 GMT, Marcus Hirt wrote: >> I'll check in the new icons in the jmc-graphics repo. > > Marcus Hirt has updated the pull request incrementally with one additional commit since the last revision: > > Typo I have another fix that uses an overlay to show whether the method is JITed: image I'll commit that separately, since it required heavier surgery. ------------- PR: https://git.openjdk.java.net/jmc/pull/264 From hirt at openjdk.java.net Fri Jun 11 21:30:16 2021 From: hirt at openjdk.java.net (Marcus Hirt) Date: Fri, 11 Jun 2021 21:30:16 GMT Subject: [jmc-graphics] RFR: 7271: Add method related graphics to jmc-graphics [v2] In-Reply-To: References: Message-ID: <2aFoRBTZTZ_BjPQ498_3VW7s44M5fK3kbOHfqgIzumw=.67aaa200-753a-4759-8776-f1e878ef8701@github.com> > Vector and icons. Marcus Hirt has updated the pull request incrementally with one additional commit since the last revision: Adding the overlay icons ------------- Changes: - all: https://git.openjdk.java.net/jmc-graphics/pull/4/files - new: https://git.openjdk.java.net/jmc-graphics/pull/4/files/705771b4..87f19f0b Webrevs: - full: https://webrevs.openjdk.java.net/?repo=jmc-graphics&pr=4&range=01 - incr: https://webrevs.openjdk.java.net/?repo=jmc-graphics&pr=4&range=00-01 Stats: 0 lines in 5 files changed: 0 ins; 0 del; 0 mod Patch: https://git.openjdk.java.net/jmc-graphics/pull/4.diff Fetch: git fetch https://git.openjdk.java.net/jmc-graphics pull/4/head:pull/4 PR: https://git.openjdk.java.net/jmc-graphics/pull/4 From mwengner at openjdk.java.net Fri Jun 11 22:10:04 2021 From: mwengner at openjdk.java.net (Miroslav Wengner) Date: Fri, 11 Jun 2021 22:10:04 GMT Subject: RFR: 6204: flight recorder launcher tab bugs out Message-ID: add check field to the wizard for executing JFR inside the Eclipse plugin ------------- Commit messages: - 6204: add checkbox for Oracle JDK less than 11 in Eclipse Plugin - Merge branch 'master' into bugfix/6204_Flight_Recorder_launcher_tab_bugs_out - 6204: add comment, start Changes: https://git.openjdk.java.net/jmc/pull/265/files Webrev: https://webrevs.openjdk.java.net/?repo=jmc&pr=265&range=00 Issue: https://bugs.openjdk.java.net/browse/JMC-6204 Stats: 43 lines in 3 files changed: 39 ins; 0 del; 4 mod Patch: https://git.openjdk.java.net/jmc/pull/265.diff Fetch: git fetch https://git.openjdk.java.net/jmc pull/265/head:pull/265 PR: https://git.openjdk.java.net/jmc/pull/265 From mwengner at openjdk.java.net Fri Jun 11 22:43:09 2021 From: mwengner at openjdk.java.net (Miroslav Wengner) Date: Fri, 11 Jun 2021 22:43:09 GMT Subject: RFR: 6204: Flight recorder launcher tab bugs out [v2] In-Reply-To: References: Message-ID: > Adding check box to the launcher tab to select Oracle JDK < 11. Miroslav Wengner has updated the pull request incrementally with one additional commit since the last revision: 6204: added tests ------------- Changes: - all: https://git.openjdk.java.net/jmc/pull/265/files - new: https://git.openjdk.java.net/jmc/pull/265/files/bc3f3fe5..309f3ec4 Webrevs: - full: https://webrevs.openjdk.java.net/?repo=jmc&pr=265&range=01 - incr: https://webrevs.openjdk.java.net/?repo=jmc&pr=265&range=00-01 Stats: 17 lines in 1 file changed: 10 ins; 0 del; 7 mod Patch: https://git.openjdk.java.net/jmc/pull/265.diff Fetch: git fetch https://git.openjdk.java.net/jmc pull/265/head:pull/265 PR: https://git.openjdk.java.net/jmc/pull/265 From jpbempel at openjdk.java.net Mon Jun 14 08:15:15 2021 From: jpbempel at openjdk.java.net (Jean-Philippe Bempel) Date: Mon, 14 Jun 2021 08:15:15 GMT Subject: RFR: 7264: Improve the performance of the JFR parser Message-ID: <6ZWnvdmYVpjh7VZfAkbJI1xJXpHJKWKvLfFJ9bbXp40=.33fa98e2-4d1f-444f-823f-5ced18592ada@github.com> When parsing a JFR file, StackFrames are the objects that are the most deserialized using Readers. By default, JMC core parser used a generic ReflectiveReaders which use reflection to parser the structure. However, we have known objects like stack frames where we could directly map to the typed object instead on relying on reflection, which speed up significantly the parsing. Here the results for c5.xlarge instance single threaded parsing with 24MB jfr recording with 100 iterations: | runs | baseline | specific readers optim | improvement | | --- | --- | --- | --- | | run 1 | 54,317ms | 39,623ms | -27% | | run 2 | 54,988ms | 39,520ms | -28% | | run 3 | 54,209ms | 39,904ms | -26% | ------------- Commit messages: - 7264: Improve the performance of the JFR parser Changes: https://git.openjdk.java.net/jmc/pull/266/files Webrev: https://webrevs.openjdk.java.net/?repo=jmc&pr=266&range=00 Issue: https://bugs.openjdk.java.net/browse/JMC-7264 Stats: 72 lines in 2 files changed: 71 ins; 0 del; 1 mod Patch: https://git.openjdk.java.net/jmc/pull/266.diff Fetch: git fetch https://git.openjdk.java.net/jmc pull/266/head:pull/266 PR: https://git.openjdk.java.net/jmc/pull/266 From egahlin at openjdk.java.net Mon Jun 14 09:05:54 2021 From: egahlin at openjdk.java.net (Erik Gahlin) Date: Mon, 14 Jun 2021 09:05:54 GMT Subject: RFR: 7264: Improve the performance of the JFR parser In-Reply-To: <6ZWnvdmYVpjh7VZfAkbJI1xJXpHJKWKvLfFJ9bbXp40=.33fa98e2-4d1f-444f-823f-5ced18592ada@github.com> References: <6ZWnvdmYVpjh7VZfAkbJI1xJXpHJKWKvLfFJ9bbXp40=.33fa98e2-4d1f-444f-823f-5ced18592ada@github.com> Message-ID: On Mon, 14 Jun 2021 08:10:46 GMT, Jean-Philippe Bempel wrote: > When parsing a JFR file, StackFrames are the objects that are the most > deserialized using Readers. > By default, JMC core parser used a generic ReflectiveReaders > which use reflection to parser the structure. However, we have known > objects like stack frames where we could directly map to the typed > object instead on relying on reflection, which speed up significantly > the parsing. > > Here the results for c5.2xlarge instance single threaded parsing with 24MB jfr recording with 100 iterations: > > | runs | baseline | specific readers optim | improvement | > | --- | --- | --- | --- | > | run 1 | 54,317ms | 39,623ms | -27% | > | run 2 | 54,988ms | 39,520ms | -28% | > | run 3 | 54,209ms | 39,904ms | -26% | I never thought reflection was a good idea, and It makes sense to have specialised logic for known types, but I don't think the code should rely on the field order. In earlier release of JMC (4.1), there was similar specialiced logic as yours, but it broke once the "truncated" field was added to the stack trace struct in JDK 7. The same thing can happen again. Back then, there was a field accessor class where the index was looked up when the parser was created. When the value was read the accessor could use the pre-calculated index to get the correct value. It might even have been bytecode generated for optimal performance. ------------- PR: https://git.openjdk.java.net/jmc/pull/266 From jpbempel at openjdk.java.net Mon Jun 14 11:52:51 2021 From: jpbempel at openjdk.java.net (Jean-Philippe Bempel) Date: Mon, 14 Jun 2021 11:52:51 GMT Subject: RFR: 7264: Improve the performance of the JFR parser In-Reply-To: <6ZWnvdmYVpjh7VZfAkbJI1xJXpHJKWKvLfFJ9bbXp40=.33fa98e2-4d1f-444f-823f-5ced18592ada@github.com> References: <6ZWnvdmYVpjh7VZfAkbJI1xJXpHJKWKvLfFJ9bbXp40=.33fa98e2-4d1f-444f-823f-5ced18592ada@github.com> Message-ID: On Mon, 14 Jun 2021 08:10:46 GMT, Jean-Philippe Bempel wrote: > When parsing a JFR file, StackFrames are the objects that are the most > deserialized using Readers. > By default, JMC core parser used a generic ReflectiveReaders > which use reflection to parser the structure. However, we have known > objects like stack frames where we could directly map to the typed > object instead on relying on reflection, which speed up significantly > the parsing. > > Here the results for c5.2xlarge instance single threaded parsing with 24MB jfr recording with 100 iterations: > > | runs | baseline | specific readers optim | improvement | > | --- | --- | --- | --- | > | run 1 | 54,317ms | 39,623ms | -27% | > | run 2 | 54,988ms | 39,520ms | -28% | > | run 3 | 54,209ms | 39,904ms | -26% | Agreed that this code is fragile. I can precompute the index and make sure readers are meant for the field at construction time. I will try that. ------------- PR: https://git.openjdk.java.net/jmc/pull/266 From jpbempel at openjdk.java.net Mon Jun 14 21:22:01 2021 From: jpbempel at openjdk.java.net (Jean-Philippe Bempel) Date: Mon, 14 Jun 2021 21:22:01 GMT Subject: RFR: 7264: Improve the performance of the JFR parser [v2] In-Reply-To: <6ZWnvdmYVpjh7VZfAkbJI1xJXpHJKWKvLfFJ9bbXp40=.33fa98e2-4d1f-444f-823f-5ced18592ada@github.com> References: <6ZWnvdmYVpjh7VZfAkbJI1xJXpHJKWKvLfFJ9bbXp40=.33fa98e2-4d1f-444f-823f-5ced18592ada@github.com> Message-ID: <0ZHlD4F8DsuUc9sGb4rGwULmf5s4ll3pfSDpXdu9Vf8=.1f5b9d46-5a91-4a0d-86ac-c590f96b578b@github.com> > When parsing a JFR file, StackFrames are the objects that are the most > deserialized using Readers. > By default, JMC core parser used a generic ReflectiveReaders > which use reflection to parser the structure. However, we have known > objects like stack frames where we could directly map to the typed > object instead on relying on reflection, which speed up significantly > the parsing. > > Here the results for c5.2xlarge instance single threaded parsing with 24MB jfr recording with 100 iterations: > > | runs | baseline | specific readers optim | improvement | > | --- | --- | --- | --- | > | run 1 | 54,317ms | 39,623ms | -27% | > | run 2 | 54,988ms | 39,520ms | -28% | > | run 3 | 54,209ms | 39,904ms | -26% | Jean-Philippe Bempel has updated the pull request incrementally with one additional commit since the last revision: Make sure field index match field name if unexpected field, fallbacks to reflective way ------------- Changes: - all: https://git.openjdk.java.net/jmc/pull/266/files - new: https://git.openjdk.java.net/jmc/pull/266/files/e8b0048c..1f82885f Webrevs: - full: https://webrevs.openjdk.java.net/?repo=jmc&pr=266&range=01 - incr: https://webrevs.openjdk.java.net/?repo=jmc&pr=266&range=00-01 Stats: 40 lines in 1 file changed: 36 ins; 0 del; 4 mod Patch: https://git.openjdk.java.net/jmc/pull/266.diff Fetch: git fetch https://git.openjdk.java.net/jmc pull/266/head:pull/266 PR: https://git.openjdk.java.net/jmc/pull/266 From mwengner at openjdk.java.net Tue Jun 15 12:11:41 2021 From: mwengner at openjdk.java.net (Miroslav Wengner) Date: Tue, 15 Jun 2021 12:11:41 GMT Subject: RFR: 7167: Agent Plugin [v6] In-Reply-To: <81i7tInHHp-rf5jdplOH3TaSatjsumQ-64cgxQejyuI=.2da150e4-3cc5-4b2f-a542-ed9afee1adcc@github.com> References: <81i7tInHHp-rf5jdplOH3TaSatjsumQ-64cgxQejyuI=.2da150e4-3cc5-4b2f-a542-ed9afee1adcc@github.com> Message-ID: On Wed, 28 Apr 2021 17:57:17 GMT, Joshua Matsuoka wrote: >> This PR adds the Agent Plugin to JMC. This is a plugin for controlling the jmc agent and provides a way to attach it and add probes to any JVMs in the JVM browser, as well as providing a preset manager for creating/modifying probe presets. >> >> There is still a small amount of cleanup to be done so I'll mark it as a draft for now but it would be great to get a review :) > > Joshua Matsuoka has updated the pull request incrementally with one additional commit since the last revision: > > Fix rcp feature to use new agent plugin name I've tried to run the Agent Plugin, was kind of not success. I've cloned the branch: agent-plugin used JDK: OpenJDK 11.0.2 1. the project org.openjdk.jmc.console.agent is not properly imported into my workspace as Java project, sadly ![image](https://user-images.githubusercontent.com/1956942/122049043-43479600-cde2-11eb-8562-22a162431c2e.png) 2. I had to remove the ".ext." from the links to get a following result: ![image](https://user-images.githubusercontent.com/1956942/122049151-6114fb00-cde2-11eb-847f-02b9d8236a5d.png) - it worked when I've attached the xml with the agent definition, I could record the events ![image](https://user-images.githubusercontent.com/1956942/122049415-adf8d180-cde2-11eb-9365-aded7816429c.png) I've a seems replacing the current agent didn't work, Is this desired behaviour ? 3. I still didn't get Agent icon displayed properly. Maybe I can add my changes with removing ".ext" from the package names, what do you think ? ------------- PR: https://git.openjdk.java.net/jmc/pull/226 From ghb at openjdk.java.net Tue Jun 15 14:39:43 2021 From: ghb at openjdk.java.net (Guru Hb) Date: Tue, 15 Jun 2021 14:39:43 GMT Subject: [jmc-graphics] RFR: 7271: Add method related graphics to jmc-graphics [v2] In-Reply-To: <2aFoRBTZTZ_BjPQ498_3VW7s44M5fK3kbOHfqgIzumw=.67aaa200-753a-4759-8776-f1e878ef8701@github.com> References: <2aFoRBTZTZ_BjPQ498_3VW7s44M5fK3kbOHfqgIzumw=.67aaa200-753a-4759-8776-f1e878ef8701@github.com> Message-ID: On Fri, 11 Jun 2021 21:30:16 GMT, Marcus Hirt wrote: >> Vector and icons. > > Marcus Hirt has updated the pull request incrementally with one additional commit since the last revision: > > Adding the overlay icons Marked as reviewed by ghb (Reviewer). ------------- PR: https://git.openjdk.java.net/jmc-graphics/pull/4 From jmatsuoka at openjdk.java.net Tue Jun 15 16:27:17 2021 From: jmatsuoka at openjdk.java.net (Joshua Matsuoka) Date: Tue, 15 Jun 2021 16:27:17 GMT Subject: RFR: 7167: Agent Plugin [v7] In-Reply-To: References: Message-ID: > This PR adds the Agent Plugin to JMC. This is a plugin for controlling the jmc agent and provides a way to attach it and add probes to any JVMs in the JVM browser, as well as providing a preset manager for creating/modifying probe presets. > > There is still a small amount of cleanup to be done so I'll mark it as a draft for now but it would be great to get a review :) Joshua Matsuoka has updated the pull request incrementally with one additional commit since the last revision: Addressing review comments, removing/fixing extraneous ext identifiers ------------- Changes: - all: https://git.openjdk.java.net/jmc/pull/226/files - new: https://git.openjdk.java.net/jmc/pull/226/files/411dc189..f486dff0 Webrevs: - full: https://webrevs.openjdk.java.net/?repo=jmc&pr=226&range=06 - incr: https://webrevs.openjdk.java.net/?repo=jmc&pr=226&range=05-06 Stats: 123 lines in 25 files changed: 56 ins; 14 del; 53 mod Patch: https://git.openjdk.java.net/jmc/pull/226.diff Fetch: git fetch https://git.openjdk.java.net/jmc pull/226/head:pull/226 PR: https://git.openjdk.java.net/jmc/pull/226 From jmatsuoka at openjdk.java.net Tue Jun 15 16:52:18 2021 From: jmatsuoka at openjdk.java.net (Joshua Matsuoka) Date: Tue, 15 Jun 2021 16:52:18 GMT Subject: RFR: 7167: Agent Plugin [v8] In-Reply-To: References: Message-ID: > This PR adds the Agent Plugin to JMC. This is a plugin for controlling the jmc agent and provides a way to attach it and add probes to any JVMs in the JVM browser, as well as providing a preset manager for creating/modifying probe presets. > > There is still a small amount of cleanup to be done so I'll mark it as a draft for now but it would be great to get a review :) Joshua Matsuoka has updated the pull request incrementally with two additional commits since the last revision: - Fixing formatting - Bring Preset logging in line with rest of agent plugin ------------- Changes: - all: https://git.openjdk.java.net/jmc/pull/226/files - new: https://git.openjdk.java.net/jmc/pull/226/files/f486dff0..558713de Webrevs: - full: https://webrevs.openjdk.java.net/?repo=jmc&pr=226&range=07 - incr: https://webrevs.openjdk.java.net/?repo=jmc&pr=226&range=06-07 Stats: 90 lines in 6 files changed: 29 ins; 30 del; 31 mod Patch: https://git.openjdk.java.net/jmc/pull/226.diff Fetch: git fetch https://git.openjdk.java.net/jmc pull/226/head:pull/226 PR: https://git.openjdk.java.net/jmc/pull/226 From jmatsuoka at openjdk.java.net Tue Jun 15 16:52:25 2021 From: jmatsuoka at openjdk.java.net (Joshua Matsuoka) Date: Tue, 15 Jun 2021 16:52:25 GMT Subject: RFR: 7167: Agent Plugin [v6] In-Reply-To: References: <81i7tInHHp-rf5jdplOH3TaSatjsumQ-64cgxQejyuI=.2da150e4-3cc5-4b2f-a542-ed9afee1adcc@github.com> Message-ID: On Thu, 27 May 2021 09:20:27 GMT, Brice Dutheil wrote: >> Joshua Matsuoka has updated the pull request incrementally with one additional commit since the last revision: >> >> Fix rcp feature to use new agent plugin name > > application/org.openjdk.jmc.console.agent/src/main/java/org/openjdk/jmc/console/agent/raweditor/internal/XmlPartitionScanner.java line 44: > >> 42: public class XmlPartitionScanner extends RuleBasedPartitionScanner { >> 43: public final static String XML_COMMENT = "__xml_comment"; >> 44: public final static String XML_TAG = "__xml_tag"; > > SHouldn't those be commented by `//$NON-NLS-1$` Fixed, thanks > configuration/spotbugs/spotbugs-exclude.xml line 85: > >> 83: >> 84: >> 85: > > Tabulation instead of spaces in this file Fixed, thanks ------------- PR: https://git.openjdk.java.net/jmc/pull/226 From jmatsuoka at openjdk.java.net Tue Jun 15 16:52:20 2021 From: jmatsuoka at openjdk.java.net (Joshua Matsuoka) Date: Tue, 15 Jun 2021 16:52:20 GMT Subject: RFR: 7167: Agent Plugin [v6] In-Reply-To: References: <81i7tInHHp-rf5jdplOH3TaSatjsumQ-64cgxQejyuI=.2da150e4-3cc5-4b2f-a542-ed9afee1adcc@github.com> Message-ID: <9dhgL0m8w5IxZrcBz21vhcXpETt1vAmUBkT8dNIhXc8=.2288093a-9486-4f16-84c3-744efed974bb@github.com> On Tue, 1 Jun 2021 20:26:14 GMT, Jie Kang wrote: >> application/org.openjdk.jmc.console.agent/src/main/java/org/openjdk/jmc/console/agent/manager/model/PresetRepositoryFactory.java line 85: >> >>> 83: for (File file : files) { >>> 84: if (file.length() == 0) { >>> 85: // FIXME: delete or just ignore empty files? >> >> Maybe ignore empty files but report them in a logger ? > > Agreed with ignoring and logging Agreed, fixed now. It will log the exception ------------- PR: https://git.openjdk.java.net/jmc/pull/226 From jmatsuoka at openjdk.java.net Tue Jun 15 17:04:48 2021 From: jmatsuoka at openjdk.java.net (Joshua Matsuoka) Date: Tue, 15 Jun 2021 17:04:48 GMT Subject: RFR: 7167: Agent Plugin [v6] In-Reply-To: References: <81i7tInHHp-rf5jdplOH3TaSatjsumQ-64cgxQejyuI=.2da150e4-3cc5-4b2f-a542-ed9afee1adcc@github.com> Message-ID: On Tue, 1 Jun 2021 20:07:59 GMT, Jie Kang wrote: >> Joshua Matsuoka has updated the pull request incrementally with one additional commit since the last revision: >> >> Fix rcp feature to use new agent plugin name > > application/org.openjdk.jmc.console.agent/plugin.xml line 46: > >> 44: icon="icons/agent-16.png" >> 45: id="org.openjdk.jmc.console.ext.agent" >> 46: description="The JMC Agent Plugin can be used to add JFR instrumentation declaratively to a running program" > > Super minor suggestion: > > s/add... declaratively/declaratively add .../ Fixed, thanks > application/org.openjdk.jmc.console.agent/pom.xml line 68: > >> 66: sun.jdk >> 67: tools >> 68: 1.8.0 > > There's a `java.version` property defined above in this pom that doesn't seem to be used. Is it meant to be here instead of this magic version number for `sun.jdk tools`? Yes, it should be used there, fixed. > application/org.openjdk.jmc.console.agent/src/main/java/org/openjdk/jmc/console/agent/manager/model/CapturedValue.java line 49: > >> 47: private static final String DEFAULT_STRING_FIELD = ""; // $NON-NLS-1$ >> 48: private static final Object DEFAULT_OBJECT_TYPE = null; >> 49: private static final String CONVERTER_REGEX = "([a-zA-Z_$][a-zA-Z0-9_$]*\\.)*([a-zA-Z_$][a-zA-Z0-9_$]*)"; // $NON-NLS-1$ > > If possible I'd appreciate a comment on this Regex or class to share intention. Added comments to both regexes, thanks > application/org.openjdk.jmc.console.agent/src/main/java/org/openjdk/jmc/console/agent/manager/wizards/CapturedValueEditingPage.java line 222: > >> 220: IMethodParameter parameter = (IMethodParameter) capturedValue; >> 221: >> 222: // TODO: do this is in model instead > > I don't think these todos are too good for non-authors to really know what should needs to be done instead. I'd rephrase them or remove them These TODOs are no longer needed and have been removed now > application/org.openjdk.jmc.console.agent/src/main/java/org/openjdk/jmc/console/agent/raweditor/internal/XmlEditor.java line 69: > >> 67: @Override >> 68: protected void createActions() { >> 69: // super.createActions(); > > Is this intentional? If so replace with comment that it's intentionally empty Replaced it with a comment that it's intentionally empty, thanks > application/org.openjdk.jmc.feature.console/feature.xml line 59: > >> 57: install-size="0" >> 58: version="0.0.0" >> 59: unpack="false"/> > > I think this change can be pruned Fixed ------------- PR: https://git.openjdk.java.net/jmc/pull/226 From jmatsuoka at openjdk.java.net Tue Jun 15 17:04:48 2021 From: jmatsuoka at openjdk.java.net (Joshua Matsuoka) Date: Tue, 15 Jun 2021 17:04:48 GMT Subject: RFR: 7167: Agent Plugin [v6] In-Reply-To: References: <81i7tInHHp-rf5jdplOH3TaSatjsumQ-64cgxQejyuI=.2da150e4-3cc5-4b2f-a542-ed9afee1adcc@github.com> Message-ID: <2TRpWFTV5gICjREZvV8oXRUIHD4-9Q01ecFglBC5Ujs=.a8632f33-15b3-4641-8f4f-fb5d1d2f0070@github.com> On Wed, 2 Jun 2021 14:45:48 GMT, Henrik Dafg?rd wrote: >> application/org.openjdk.jmc.console.agent/src/main/java/org/openjdk/jmc/console/agent/actions/AgentEditorOpener.java line 100: >> >>> 98: return ret; >>> 99: } catch (ConnectionException e) { >>> 100: // FIXME: Show stacktrace? (Need to show our own ExceptionDialog in that case, or maybe create our own DetailsAreaProvider, see WorkbenchStatusDialogManager.setDetailsAreaProvider) >> >> Personally not a fan of PRs that add FIXMEs; can you provide some justification for having this? What's preventing this being done sooner rather than later? > > +1 > Either add an issue in JIRA or fix the issue in the initial PR. Fixed this to show an exception dialog, thanks ------------- PR: https://git.openjdk.java.net/jmc/pull/226 From jmatsuoka at openjdk.java.net Tue Jun 15 17:04:52 2021 From: jmatsuoka at openjdk.java.net (Joshua Matsuoka) Date: Tue, 15 Jun 2021 17:04:52 GMT Subject: RFR: 7167: Agent Plugin [v6] In-Reply-To: <1n3zdw-hEfo4HPBU94IL4osY6Msw9QM136uwxLFlv24=.5e04fdd0-b7d6-4b06-8e1c-61ca9ac76162@github.com> References: <81i7tInHHp-rf5jdplOH3TaSatjsumQ-64cgxQejyuI=.2da150e4-3cc5-4b2f-a542-ed9afee1adcc@github.com> <1n3zdw-hEfo4HPBU94IL4osY6Msw9QM136uwxLFlv24=.5e04fdd0-b7d6-4b06-8e1c-61ca9ac76162@github.com> Message-ID: On Wed, 2 Jun 2021 15:09:53 GMT, Henrik Dafg?rd wrote: >> Joshua Matsuoka has updated the pull request incrementally with one additional commit since the last revision: >> >> Fix rcp feature to use new agent plugin name > > application/org.openjdk.jmc.console.agent/src/main/java/org/openjdk/jmc/console/agent/editor/AgentEditorAction.java line 44: > >> 42: private static final String MESSAGE_REFRESH = "Refresh"; >> 43: private static final String MESSAGE_LOAD_PRESET = "Load a preset..."; >> 44: private static final String MESSAGE_SAVE_AS_PRESET = "Save as a preset..."; > > These look like they should be localized. Yes, I missed these when externalizing the rest of the strings, fixed now > application/org.openjdk.jmc.console.agent/src/main/java/org/openjdk/jmc/console/agent/editor/AgentEditorUi.java line 136: > >> 134: } catch (IOException | SAXException e) { >> 135: // TODO: display error dialog >> 136: e.printStackTrace(); > > This should be fixed before integration. Fixed this to show an exception dialog, thanks > application/org.openjdk.jmc.console.agent/src/main/java/org/openjdk/jmc/console/agent/editor/AgentEditorUi.java line 184: > >> 182: presetRepository.addPreset(preset); >> 183: } catch (IOException | SAXException e) { >> 184: e.printStackTrace(); > > Do we want to log or display an error dialog here? Yes, it makes sense to show an error dialog here, I've fixed it accordingly > application/org.openjdk.jmc.console.agent/src/main/java/org/openjdk/jmc/console/agent/editor/AgentEditorUi.java line 255: > >> 253: >> 254: IPreset preset = (IPreset) element; >> 255: return preset.getFileName() + " - " + preset.getEvents().length + " " + MESSAGE_EVENTS; > > Non-nls here? Added, thanks > application/org.openjdk.jmc.console.agent/src/main/java/org/openjdk/jmc/console/agent/editor/AgentEditorUi.java line 260: > >> 258: @Override >> 259: public Image getImage(Object element) { >> 260: return AgentPlugin.getDefault().getImage(AgentPlugin.ICON_AGENT); // TODO: replace the icon in the future > > This seems like it can be tracked by an issue in JIRA? I fixed the icons previously but missed the TODOs, fixed now > application/org.openjdk.jmc.console.agent/src/main/java/org/openjdk/jmc/console/agent/manager/model/Preset.java line 516: > >> 514: } catch (IOException e) { >> 515: // TODO: log exception >> 516: return false; > > This should also be done before integration. Done, thanks > application/org.openjdk.jmc.console.agent/src/main/java/org/openjdk/jmc/console/agent/utils/ValidationResult.java line 47: > >> 45: private SAXParseException fatalError; >> 46: >> 47: /* package-private */ ValidationResult(ArrayList warnings, ArrayList errors, > > This isn't really a pattern we've used in JMC so it's a bit odd seeing it only here. Agreed, fixed > application/org.openjdk.jmc.console.agent/src/main/java/org/openjdk/jmc/console/agent/wizards/BaseWizardPage.java line 116: > >> 114: Text text = new Text(parent, SWT.BORDER | SWT.MULTI | SWT.V_SCROLL); >> 115: // FIXME: Multi line Text field (SWT.MULTI) does not support Text.setMessage >> 116: // https://bugs.eclipse.org/bugs/show_bug.cgi?id=328832 > > We should have a JIRA issue tracking the Eclipse bug. Opened a bug for this https://bugs.openjdk.java.net/browse/JMC-7298 , good call ------------- PR: https://git.openjdk.java.net/jmc/pull/226 From jmatsuoka at openjdk.java.net Tue Jun 15 17:04:53 2021 From: jmatsuoka at openjdk.java.net (Joshua Matsuoka) Date: Tue, 15 Jun 2021 17:04:53 GMT Subject: RFR: 7167: Agent Plugin [v6] In-Reply-To: References: <81i7tInHHp-rf5jdplOH3TaSatjsumQ-64cgxQejyuI=.2da150e4-3cc5-4b2f-a542-ed9afee1adcc@github.com> Message-ID: On Thu, 27 May 2021 09:31:41 GMT, Brice Dutheil wrote: >> Joshua Matsuoka has updated the pull request incrementally with one additional commit since the last revision: >> >> Fix rcp feature to use new agent plugin name > > application/org.openjdk.jmc.console.agent/src/main/java/org/openjdk/jmc/console/agent/raweditor/internal/XmlDocumentProvider.java line 82: > >> 80: >> 81: try (FileOutputStream fos = new FileOutputStream(out)) { >> 82: fos.write(document.get().getBytes()); // TODO: encoding? > > Yes I think the code should impose UTF-8, this is better for XML. Fixed, it now enforces UTF-8, thanks ------------- PR: https://git.openjdk.java.net/jmc/pull/226 From jmatsuoka at openjdk.java.net Tue Jun 15 17:13:41 2021 From: jmatsuoka at openjdk.java.net (Joshua Matsuoka) Date: Tue, 15 Jun 2021 17:13:41 GMT Subject: RFR: 7167: Agent Plugin [v6] In-Reply-To: References: <81i7tInHHp-rf5jdplOH3TaSatjsumQ-64cgxQejyuI=.2da150e4-3cc5-4b2f-a542-ed9afee1adcc@github.com> Message-ID: On Tue, 15 Jun 2021 12:08:35 GMT, Miroslav Wengner wrote: >> Joshua Matsuoka has updated the pull request incrementally with one additional commit since the last revision: >> >> Fix rcp feature to use new agent plugin name > > I've tried to run the Agent Plugin, was kind of not success. I've cloned the branch: agent-plugin > used JDK: OpenJDK 11.0.2 > 1. the project org.openjdk.jmc.console.agent is not properly imported into my workspace as Java project, sadly > ![image](https://user-images.githubusercontent.com/1956942/122049043-43479600-cde2-11eb-8562-22a162431c2e.png) > > 2. I had to remove the ".ext." from the links to get a following result: > ![image](https://user-images.githubusercontent.com/1956942/122049151-6114fb00-cde2-11eb-847f-02b9d8236a5d.png) > - it worked when I've attached the xml with the agent definition, I could record the events > ![image](https://user-images.githubusercontent.com/1956942/122049415-adf8d180-cde2-11eb-9365-aded7816429c.png) > > I've a seems replacing the current agent didn't work, Is this desired behaviour ? > > 3. I still didn't get Agent icon displayed properly. > > Maybe I can add my changes with removing ".ext" from the package names, what do you think ? @mirage22 @bric3 I've updated the PR, there were a couple of spots that got missed by eclipse when I was renaming everything and removing the exts. For whatever reason my local build worked but making a fresh build didn't, so I missed that, apologies. It's been fixed now and should work as expected > I've a seems replacing the current agent didn't work, Is this desired behaviour ? This sounds like a possible agent bug, I'll take a look and get back to you on that ------------- PR: https://git.openjdk.java.net/jmc/pull/226 From mwengner at openjdk.java.net Tue Jun 15 20:26:32 2021 From: mwengner at openjdk.java.net (Miroslav Wengner) Date: Tue, 15 Jun 2021 20:26:32 GMT Subject: RFR: 7167: Agent Plugin [v6] In-Reply-To: References: <81i7tInHHp-rf5jdplOH3TaSatjsumQ-64cgxQejyuI=.2da150e4-3cc5-4b2f-a542-ed9afee1adcc@github.com> Message-ID: <6qXIONpGOB_cULflWJJPxyqsFOnTUI2CAnlRXiPwPo8=.db7a3b30-f73c-4e20-95ce-f0635de89a55@github.com> On Tue, 15 Jun 2021 17:10:33 GMT, Joshua Matsuoka wrote: >> I've tried to run the Agent Plugin, was kind of not success. I've cloned the branch: agent-plugin >> used JDK: OpenJDK 11.0.2 >> 1. the project org.openjdk.jmc.console.agent is not properly imported into my workspace as Java project, sadly >> ![image](https://user-images.githubusercontent.com/1956942/122049043-43479600-cde2-11eb-8562-22a162431c2e.png) >> >> 2. I had to remove the ".ext." from the links to get a following result: >> ![image](https://user-images.githubusercontent.com/1956942/122049151-6114fb00-cde2-11eb-847f-02b9d8236a5d.png) >> - it worked when I've attached the xml with the agent definition, I could record the events >> ![image](https://user-images.githubusercontent.com/1956942/122049415-adf8d180-cde2-11eb-9365-aded7816429c.png) >> >> I've a seems replacing the current agent didn't work, Is this desired behaviour ? >> >> 3. I still didn't get Agent icon displayed properly. >> >> Maybe I can add my changes with removing ".ext" from the package names, what do you think ? > >> I've a seems replacing the current agent didn't work, Is this desired behaviour ? > > This sounds like a possible agent bug, I'll take a look and get back to you on that @Josh-Matsuoka seems build works nicelly ! Thank you but the "org.openjdk.jmc.console.agen" module is still not properly displayed in side the Eclipse as Java project, sadly, there is something some where missing. I've tried write a xml agent and I've discovered that void method without argument is causing the exception that the parser can not process it. < name> deliverVehicle ()V Is this expected behavior ? ------------- PR: https://git.openjdk.java.net/jmc/pull/226 From ghb at openjdk.java.net Wed Jun 16 09:49:36 2021 From: ghb at openjdk.java.net (Guru Hb) Date: Wed, 16 Jun 2021 09:49:36 GMT Subject: RFR: 7268: Show icons for modifiers in the method profiling page [v7] In-Reply-To: <91wjqVhom1AfHII0g0g_1rz4eBtyAWE4TgEGzhCaNb0=.b4fc47eb-b3aa-4ef9-9563-1c61982b804a@github.com> References: <91wjqVhom1AfHII0g0g_1rz4eBtyAWE4TgEGzhCaNb0=.b4fc47eb-b3aa-4ef9-9563-1c61982b804a@github.com> Message-ID: On Fri, 11 Jun 2021 17:58:14 GMT, Marcus Hirt wrote: >> I'll check in the new icons in the jmc-graphics repo. > > Marcus Hirt has updated the pull request incrementally with one additional commit since the last revision: > > Typo Marked as reviewed by ghb (Reviewer). ------------- PR: https://git.openjdk.java.net/jmc/pull/264 From hirt at openjdk.java.net Wed Jun 16 11:06:39 2021 From: hirt at openjdk.java.net (Marcus Hirt) Date: Wed, 16 Jun 2021 11:06:39 GMT Subject: Integrated: 7268: Show icons for modifiers in the method profiling page In-Reply-To: References: Message-ID: On Thu, 10 Jun 2021 20:12:35 GMT, Marcus Hirt wrote: > I'll check in the new icons in the jmc-graphics repo. This pull request has now been integrated. Changeset: 8e2988ed Author: Marcus Hirt URL: https://git.openjdk.java.net/jmc/commit/8e2988edfd081dc34770ef54c5657a6d072399a9 Stats: 75 lines in 23 files changed: 64 ins; 0 del; 11 mod 7268: Show icons for modifiers in the method profiling page Reviewed-by: ghb ------------- PR: https://git.openjdk.java.net/jmc/pull/264 From aptmac at openjdk.java.net Wed Jun 16 14:33:26 2021 From: aptmac at openjdk.java.net (Alex Macdonald) Date: Wed, 16 Jun 2021 14:33:26 GMT Subject: [jmc-graphics] RFR: 7271: Add method related graphics to jmc-graphics [v2] In-Reply-To: <2aFoRBTZTZ_BjPQ498_3VW7s44M5fK3kbOHfqgIzumw=.67aaa200-753a-4759-8776-f1e878ef8701@github.com> References: <2aFoRBTZTZ_BjPQ498_3VW7s44M5fK3kbOHfqgIzumw=.67aaa200-753a-4759-8776-f1e878ef8701@github.com> Message-ID: On Fri, 11 Jun 2021 21:30:16 GMT, Marcus Hirt wrote: >> Vector and icons. > > Marcus Hirt has updated the pull request incrementally with one additional commit since the last revision: > > Adding the overlay icons Marked as reviewed by aptmac (Committer). ------------- PR: https://git.openjdk.java.net/jmc-graphics/pull/4 From hirt at openjdk.java.net Wed Jun 16 17:39:56 2021 From: hirt at openjdk.java.net (Marcus Hirt) Date: Wed, 16 Jun 2021 17:39:56 GMT Subject: RFR: 7272: Method profiling page should show the frame type Message-ID: Bot feels I am not talking enough (?? The pull request body must not be empty). This line of text fixes Sad Bot. ------------- Commit messages: - 7272: Method profiling page should show the frame type Changes: https://git.openjdk.java.net/jmc/pull/267/files Webrev: https://webrevs.openjdk.java.net/?repo=jmc&pr=267&range=00 Issue: https://bugs.openjdk.java.net/browse/JMC-7272 Stats: 333 lines in 11 files changed: 294 ins; 30 del; 9 mod Patch: https://git.openjdk.java.net/jmc/pull/267.diff Fetch: git fetch https://git.openjdk.java.net/jmc pull/267/head:pull/267 PR: https://git.openjdk.java.net/jmc/pull/267 From hirt at openjdk.java.net Wed Jun 16 17:46:03 2021 From: hirt at openjdk.java.net (Marcus Hirt) Date: Wed, 16 Jun 2021 17:46:03 GMT Subject: [jmc-graphics] Integrated: 7271: Add method related graphics to jmc-graphics In-Reply-To: References: Message-ID: On Fri, 11 Jun 2021 13:31:55 GMT, Marcus Hirt wrote: > Vector and icons. This pull request has now been integrated. Changeset: 78cc056f Author: Marcus Hirt URL: https://git.openjdk.java.net/jmc-graphics/commit/78cc056f39d024ed472a834a3cb74096f21b2ff9 Stats: 0 lines in 29 files changed: 0 ins; 0 del; 0 mod 7271: Add method related graphics to jmc-graphics Reviewed-by: ghb, aptmac ------------- PR: https://git.openjdk.java.net/jmc-graphics/pull/4 From egahlin at openjdk.java.net Wed Jun 16 18:44:17 2021 From: egahlin at openjdk.java.net (Erik Gahlin) Date: Wed, 16 Jun 2021 18:44:17 GMT Subject: RFR: 7264: Improve the performance of the JFR parser [v2] In-Reply-To: <0ZHlD4F8DsuUc9sGb4rGwULmf5s4ll3pfSDpXdu9Vf8=.1f5b9d46-5a91-4a0d-86ac-c590f96b578b@github.com> References: <6ZWnvdmYVpjh7VZfAkbJI1xJXpHJKWKvLfFJ9bbXp40=.33fa98e2-4d1f-444f-823f-5ced18592ada@github.com> <0ZHlD4F8DsuUc9sGb4rGwULmf5s4ll3pfSDpXdu9Vf8=.1f5b9d46-5a91-4a0d-86ac-c590f96b578b@github.com> Message-ID: On Mon, 14 Jun 2021 21:22:01 GMT, Jean-Philippe Bempel wrote: >> When parsing a JFR file, StackFrames are the objects that are the most >> deserialized using Readers. >> By default, JMC core parser used a generic ReflectiveReaders >> which use reflection to parser the structure. However, we have known >> objects like stack frames where we could directly map to the typed >> object instead on relying on reflection, which speed up significantly >> the parsing. >> >> Here the results for c5.2xlarge instance single threaded parsing with 24MB jfr recording with 100 iterations: >> >> | runs | baseline | specific readers optim | improvement | >> | --- | --- | --- | --- | >> | run 1 | 54,317ms | 39,623ms | -27% | >> | run 2 | 54,988ms | 39,520ms | -28% | >> | run 3 | 54,209ms | 39,904ms | -26% | > > Jean-Philippe Bempel has updated the pull request incrementally with one additional commit since the last revision: > > Make sure field index match field name > > if unexpected field, fallbacks to reflective way Looks reasonable, even though the code will not handle removal of a field, but it's perhaps not as likely, and may fail anyway in the UI layer. ------------- Marked as reviewed by egahlin (Reviewer). PR: https://git.openjdk.java.net/jmc/pull/266 From schaturvedi at openjdk.java.net Wed Jun 16 20:53:43 2021 From: schaturvedi at openjdk.java.net (Suchita Chaturvedi) Date: Wed, 16 Jun 2021 20:53:43 GMT Subject: RFR: 7299: Accessibility Issue - Too low contrast on rule result values Message-ID: <0YY0J7u4d6O40s5lyqhiaebzx5c_ALwi0B1wnZTBbU8=.60ff8618-1297-4e3c-9bec-4effa43e96f7@github.com> This PR addresses an accessibility issue where the contrast of the rules score on Automated Analysis screen is too low. Please review the change and let me know if any changes are required. The UI looks like this now: ![image](https://user-images.githubusercontent.com/11155712/122291146-1c887d00-cf12-11eb-957f-03f662f2805f.png) ------------- Commit messages: - 7299: Accessibility Issue - Too low contrast on rule result values Changes: https://git.openjdk.java.net/jmc/pull/268/files Webrev: https://webrevs.openjdk.java.net/?repo=jmc&pr=268&range=00 Issue: https://bugs.openjdk.java.net/browse/JMC-7299 Stats: 4 lines in 1 file changed: 0 ins; 1 del; 3 mod Patch: https://git.openjdk.java.net/jmc/pull/268.diff Fetch: git fetch https://git.openjdk.java.net/jmc pull/268/head:pull/268 PR: https://git.openjdk.java.net/jmc/pull/268 From jpbempel at openjdk.java.net Wed Jun 16 20:57:23 2021 From: jpbempel at openjdk.java.net (Jean-Philippe Bempel) Date: Wed, 16 Jun 2021 20:57:23 GMT Subject: Integrated: 7264: Improve the performance of the JFR parser In-Reply-To: <6ZWnvdmYVpjh7VZfAkbJI1xJXpHJKWKvLfFJ9bbXp40=.33fa98e2-4d1f-444f-823f-5ced18592ada@github.com> References: <6ZWnvdmYVpjh7VZfAkbJI1xJXpHJKWKvLfFJ9bbXp40=.33fa98e2-4d1f-444f-823f-5ced18592ada@github.com> Message-ID: <5twcawKJNODIgHgud0KjigAqFyaiSeJwtpdbc5iOgeI=.59f2dcfa-1248-471f-96c5-16f703dffc28@github.com> On Mon, 14 Jun 2021 08:10:46 GMT, Jean-Philippe Bempel wrote: > When parsing a JFR file, StackFrames are the objects that are the most > deserialized using Readers. > By default, JMC core parser used a generic ReflectiveReaders > which use reflection to parser the structure. However, we have known > objects like stack frames where we could directly map to the typed > object instead on relying on reflection, which speed up significantly > the parsing. > > Here the results for c5.2xlarge instance single threaded parsing with 24MB jfr recording with 100 iterations: > > | runs | baseline | specific readers optim | improvement | > | --- | --- | --- | --- | > | run 1 | 54,317ms | 39,623ms | -27% | > | run 2 | 54,988ms | 39,520ms | -28% | > | run 3 | 54,209ms | 39,904ms | -26% | This pull request has now been integrated. Changeset: a2995a17 Author: Jean-Philippe Bempel URL: https://git.openjdk.java.net/jmc/commit/a2995a17e0434c039e69adcd615134f41faa5771 Stats: 108 lines in 2 files changed: 107 ins; 0 del; 1 mod 7264: Improve the performance of the JFR parser Reviewed-by: egahlin ------------- PR: https://git.openjdk.java.net/jmc/pull/266 From github.com+803621+bric3 at openjdk.java.net Thu Jun 17 09:28:18 2021 From: github.com+803621+bric3 at openjdk.java.net (Brice Dutheil) Date: Thu, 17 Jun 2021 09:28:18 GMT Subject: RFR: 7167: Agent Plugin [v6] In-Reply-To: References: <81i7tInHHp-rf5jdplOH3TaSatjsumQ-64cgxQejyuI=.2da150e4-3cc5-4b2f-a542-ed9afee1adcc@github.com> Message-ID: On Tue, 15 Jun 2021 17:10:33 GMT, Joshua Matsuoka wrote: >> I've tried to run the Agent Plugin, was kind of not success. I've cloned the branch: agent-plugin >> used JDK: OpenJDK 11.0.2 >> 1. the project org.openjdk.jmc.console.agent is not properly imported into my workspace as Java project, sadly >> ![image](https://user-images.githubusercontent.com/1956942/122049043-43479600-cde2-11eb-8562-22a162431c2e.png) >> >> 2. I had to remove the ".ext." from the links to get a following result: >> ![image](https://user-images.githubusercontent.com/1956942/122049151-6114fb00-cde2-11eb-847f-02b9d8236a5d.png) >> - it worked when I've attached the xml with the agent definition, I could record the events >> ![image](https://user-images.githubusercontent.com/1956942/122049415-adf8d180-cde2-11eb-9365-aded7816429c.png) >> >> I've a seems replacing the current agent didn't work, Is this desired behaviour ? >> >> 3. I still didn't get Agent icon displayed properly. >> >> Maybe I can add my changes with removing ".ext" from the package names, what do you think ? > >> I've a seems replacing the current agent didn't work, Is this desired behaviour ? > > This sounds like a possible agent bug, I'll take a look and get back to you on that @Josh-Matsuoka I will look at it by the end of this week. ------------- PR: https://git.openjdk.java.net/jmc/pull/226 From jpbempel at openjdk.java.net Thu Jun 17 14:28:30 2021 From: jpbempel at openjdk.java.net (Jean-Philippe Bempel) Date: Thu, 17 Jun 2021 14:28:30 GMT Subject: RFR: 7272: Method profiling page should show the frame type In-Reply-To: References: Message-ID: On Wed, 16 Jun 2021 16:04:25 GMT, Marcus Hirt wrote: > Bot feels I am not talking enough (?? The pull request body must not be empty). This line of text fixes Sad Bot. Marked as reviewed by jpbempel (Committer). ------------- PR: https://git.openjdk.java.net/jmc/pull/267 From aptmac at openjdk.java.net Thu Jun 17 21:00:33 2021 From: aptmac at openjdk.java.net (Alex Macdonald) Date: Thu, 17 Jun 2021 21:00:33 GMT Subject: RFR: 7272: Method profiling page should show the frame type In-Reply-To: References: Message-ID: On Wed, 16 Jun 2021 16:04:25 GMT, Marcus Hirt wrote: > Bot feels I am not talking enough (?? The pull request body must not be empty). This line of text fixes Sad Bot. application/org.openjdk.jmc.flightrecorder.ui/src/main/java/org/openjdk/jmc/flightrecorder/ui/pages/internal/MethodWithFrameTypeLabelProvider.java line 144: > 142: return ((IDisplayable) key).displayUsing(IDisplayable.VERBOSE); > 143: } > 144: return key.toString(); When giving this a try I'm finding that the key object is a `MethodWithFrameType`, and as such it doesn't get formatted into any human readable way. ![2021-06-17-151839_1916x1036_scrot](https://user-images.githubusercontent.com/10425301/122470248-d40da580-cf8b-11eb-8286-a3855edf00d7.png) core/org.openjdk.jmc.flightrecorder/src/main/java/org/openjdk/jmc/flightrecorder/jdk/JdkAttributes.java line 139: > 137: } > 138: }); > 139: Mainly out of curiosity, but I noticed that there are still extra lines scattered through this file, but I couldn't figure out a pattern. Is there a purpose behind the lines removed here and the ones that still remain? ------------- PR: https://git.openjdk.java.net/jmc/pull/267 From aptmac at openjdk.java.net Thu Jun 17 21:05:27 2021 From: aptmac at openjdk.java.net (Alex Macdonald) Date: Thu, 17 Jun 2021 21:05:27 GMT Subject: RFR: 7272: Method profiling page should show the frame type In-Reply-To: References: Message-ID: On Wed, 16 Jun 2021 16:04:25 GMT, Marcus Hirt wrote: > Bot feels I am not talking enough (?? The pull request body must not be empty). This line of text fixes Sad Bot. Is the design of these icons standardized, and is there a place to find out in jmc what they mean? Should this information be added to the tooltip perhaps? Otherwise I added a couple of comments inline, other than those I think it looks good. ------------- PR: https://git.openjdk.java.net/jmc/pull/267 From hirt at openjdk.java.net Thu Jun 17 21:16:28 2021 From: hirt at openjdk.java.net (Marcus Hirt) Date: Thu, 17 Jun 2021 21:16:28 GMT Subject: RFR: 7272: Method profiling page should show the frame type In-Reply-To: References: Message-ID: On Thu, 17 Jun 2021 20:55:14 GMT, Alex Macdonald wrote: >> Bot feels I am not talking enough (?? The pull request body must not be empty). This line of text fixes Sad Bot. > > application/org.openjdk.jmc.flightrecorder.ui/src/main/java/org/openjdk/jmc/flightrecorder/ui/pages/internal/MethodWithFrameTypeLabelProvider.java line 144: > >> 142: return ((IDisplayable) key).displayUsing(IDisplayable.VERBOSE); >> 143: } >> 144: return key.toString(); > > When giving this a try I'm finding that the key object is a `MethodWithFrameType`, and as such it doesn't get formatted into any human readable way. > > ![2021-06-17-151839_1916x1036_scrot](https://user-images.githubusercontent.com/10425301/122470248-d40da580-cf8b-11eb-8286-a3855edf00d7.png) > Is the design of these icons standardized, and is there a place to find out in jmc what they mean? Should this information be added to the tooltip perhaps? Otherwise I added a couple of comments inline, other than those I think it looks good. Yeah, it's the same geometric figures as Eclipse is using. ;) > core/org.openjdk.jmc.flightrecorder/src/main/java/org/openjdk/jmc/flightrecorder/jdk/JdkAttributes.java line 139: > >> 137: } >> 138: }); >> 139: > > Mainly out of curiosity, but I noticed that there are still extra lines scattered through this file, but I couldn't figure out a pattern. Is there a purpose behind the lines removed here and the ones that still remain? Well, some of them seemed to _maybe_ indicate some sort of grouping so I left them. I should probably just remove them all. ;) ------------- PR: https://git.openjdk.java.net/jmc/pull/267 From hirt at openjdk.java.net Thu Jun 17 21:16:28 2021 From: hirt at openjdk.java.net (Marcus Hirt) Date: Thu, 17 Jun 2021 21:16:28 GMT Subject: RFR: 7272: Method profiling page should show the frame type In-Reply-To: References: Message-ID: <2R6kFIYgFo4T9aomv2DpxayyNC_q2smK7XqYyH3GKQo=.db803885-a6de-49f3-9d21-4dc0e306e626@github.com> On Thu, 17 Jun 2021 21:12:31 GMT, Marcus Hirt wrote: >> application/org.openjdk.jmc.flightrecorder.ui/src/main/java/org/openjdk/jmc/flightrecorder/ui/pages/internal/MethodWithFrameTypeLabelProvider.java line 144: >> >>> 142: return ((IDisplayable) key).displayUsing(IDisplayable.VERBOSE); >>> 143: } >>> 144: return key.toString(); >> >> When giving this a try I'm finding that the key object is a `MethodWithFrameType`, and as such it doesn't get formatted into any human readable way. >> >> ![2021-06-17-151839_1916x1036_scrot](https://user-images.githubusercontent.com/10425301/122470248-d40da580-cf8b-11eb-8286-a3855edf00d7.png) > >> Is the design of these icons standardized, and is there a place to find out in jmc what they mean? Should this information be added to the tooltip perhaps? Otherwise I added a couple of comments inline, other than those I think it looks good. > > Yeah, it's the same geometric figures as Eclipse is using. ;) Good catch with the tooltip! Thanks! ------------- PR: https://git.openjdk.java.net/jmc/pull/267 From hirt at openjdk.java.net Thu Jun 17 22:19:00 2021 From: hirt at openjdk.java.net (Marcus Hirt) Date: Thu, 17 Jun 2021 22:19:00 GMT Subject: RFR: 7272: Method profiling page should show the frame type [v2] In-Reply-To: References: Message-ID: > Bot feels I am not talking enough (?? The pull request body must not be empty). This line of text fixes Sad Bot. Marcus Hirt has updated the pull request incrementally with one additional commit since the last revision: Fixing tooltip ------------- Changes: - all: https://git.openjdk.java.net/jmc/pull/267/files - new: https://git.openjdk.java.net/jmc/pull/267/files/838ddc47..cc75cf7b Webrevs: - full: https://webrevs.openjdk.java.net/?repo=jmc&pr=267&range=01 - incr: https://webrevs.openjdk.java.net/?repo=jmc&pr=267&range=00-01 Stats: 80 lines in 2 files changed: 75 ins; 1 del; 4 mod Patch: https://git.openjdk.java.net/jmc/pull/267.diff Fetch: git fetch https://git.openjdk.java.net/jmc pull/267/head:pull/267 PR: https://git.openjdk.java.net/jmc/pull/267 From schaturvedi at openjdk.java.net Fri Jun 18 11:16:38 2021 From: schaturvedi at openjdk.java.net (Suchita Chaturvedi) Date: Fri, 18 Jun 2021 11:16:38 GMT Subject: RFR: 7042: Bring back summary screen for Statistics on Object Allocation outside TLAB. Message-ID: This PR addresses the enhancement of adding General screen (providing summary) and By Class (table and graph) for allocations inside and outside TLAB. The changes include the enhancement "7043: Bring back summary screen for Statistics on Object Allocation inside TLAB" as well. Note: This is bring back feature i.e. which was present in JMC 5.5 but was missing in recent releases. Please review the change and provide your valuable comments. ------------- Commit messages: - 7042: Bring back summary screen for Statistics on Object Allocation outside TLAB. Changes: https://git.openjdk.java.net/jmc/pull/269/files Webrev: https://webrevs.openjdk.java.net/?repo=jmc&pr=269&range=00 Issue: https://bugs.openjdk.java.net/browse/JMC-7042 Stats: 134 lines in 8 files changed: 129 ins; 0 del; 5 mod Patch: https://git.openjdk.java.net/jmc/pull/269.diff Fetch: git fetch https://git.openjdk.java.net/jmc pull/269/head:pull/269 PR: https://git.openjdk.java.net/jmc/pull/269 From aptmac at openjdk.java.net Fri Jun 18 14:10:39 2021 From: aptmac at openjdk.java.net (Alex Macdonald) Date: Fri, 18 Jun 2021 14:10:39 GMT Subject: RFR: 7272: Method profiling page should show the frame type [v2] In-Reply-To: References: Message-ID: On Thu, 17 Jun 2021 22:19:00 GMT, Marcus Hirt wrote: >> Bot feels I am not talking enough (?? The pull request body must not be empty). This line of text fixes Sad Bot. > > Marcus Hirt has updated the pull request incrementally with one additional commit since the last revision: > > Fixing tooltip Marked as reviewed by aptmac (Committer). ------------- PR: https://git.openjdk.java.net/jmc/pull/267 From hirt at openjdk.java.net Fri Jun 18 14:18:32 2021 From: hirt at openjdk.java.net (Marcus Hirt) Date: Fri, 18 Jun 2021 14:18:32 GMT Subject: Integrated: 7272: Method profiling page should show the frame type In-Reply-To: References: Message-ID: On Wed, 16 Jun 2021 16:04:25 GMT, Marcus Hirt wrote: > Bot feels I am not talking enough (?? The pull request body must not be empty). This line of text fixes Sad Bot. This pull request has now been integrated. Changeset: 8bc12472 Author: Marcus Hirt URL: https://git.openjdk.java.net/jmc/commit/8bc1247251a1ececc9d24a2b42f427ce5377b281 Stats: 407 lines in 12 files changed: 368 ins; 30 del; 9 mod 7272: Method profiling page should show the frame type Reviewed-by: jpbempel, aptmac ------------- PR: https://git.openjdk.java.net/jmc/pull/267 From jmatsuoka at openjdk.java.net Fri Jun 18 17:56:25 2021 From: jmatsuoka at openjdk.java.net (Joshua Matsuoka) Date: Fri, 18 Jun 2021 17:56:25 GMT Subject: RFR: 7167: Agent Plugin [v9] In-Reply-To: References: Message-ID: <0PefiF5cjcnfFokNrftF2O183dYeVAxv_gQvEXJs98s=.57552faf-55ee-432a-85c5-ad282e61b239@github.com> > This PR adds the Agent Plugin to JMC. This is a plugin for controlling the jmc agent and provides a way to attach it and add probes to any JVMs in the JVM browser, as well as providing a preset manager for creating/modifying probe presets. > > There is still a small amount of cleanup to be done so I'll mark it as a draft for now but it would be great to get a review :) Joshua Matsuoka has updated the pull request incrementally with one additional commit since the last revision: Resolving an issue with generated XML for field capturing/parameter capturing ------------- Changes: - all: https://git.openjdk.java.net/jmc/pull/226/files - new: https://git.openjdk.java.net/jmc/pull/226/files/558713de..8f8398e2 Webrevs: - full: https://webrevs.openjdk.java.net/?repo=jmc&pr=226&range=08 - incr: https://webrevs.openjdk.java.net/?repo=jmc&pr=226&range=07-08 Stats: 5 lines in 3 files changed: 0 ins; 1 del; 4 mod Patch: https://git.openjdk.java.net/jmc/pull/226.diff Fetch: git fetch https://git.openjdk.java.net/jmc pull/226/head:pull/226 PR: https://git.openjdk.java.net/jmc/pull/226 From hirt at openjdk.java.net Fri Jun 18 18:01:35 2021 From: hirt at openjdk.java.net (Marcus Hirt) Date: Fri, 18 Jun 2021 18:01:35 GMT Subject: RFR: 7299: Accessibility Issue - Too low contrast on rule result values In-Reply-To: <0YY0J7u4d6O40s5lyqhiaebzx5c_ALwi0B1wnZTBbU8=.60ff8618-1297-4e3c-9bec-4effa43e96f7@github.com> References: <0YY0J7u4d6O40s5lyqhiaebzx5c_ALwi0B1wnZTBbU8=.60ff8618-1297-4e3c-9bec-4effa43e96f7@github.com> Message-ID: On Wed, 16 Jun 2021 20:47:40 GMT, Suchita Chaturvedi wrote: > This PR addresses an accessibility issue where the contrast of the rules score on Automated Analysis screen is too low. > > Please review the change and let me know if any changes are required. > > The UI looks like this now: > > ![image](https://user-images.githubusercontent.com/11155712/122291146-1c887d00-cf12-11eb-957f-03f662f2805f.png) Marked as reviewed by hirt (Lead). ------------- PR: https://git.openjdk.java.net/jmc/pull/268 From aptmac at openjdk.java.net Fri Jun 18 18:28:34 2021 From: aptmac at openjdk.java.net (Alex Macdonald) Date: Fri, 18 Jun 2021 18:28:34 GMT Subject: RFR: 6967: Add Percentage Column w.r.t 'Profiling Samples' in Thread table In-Reply-To: References: Message-ID: <6n8tBH9-rozas_azj64E0GZjQV8ZX8dcjnZNx3eFNfM=.9540fea8-0021-448b-a523-9f4692ebfc3a@github.com> On Wed, 9 Jun 2021 09:45:23 GMT, Guru Hb wrote: > Adding "Percentage" column in Thread table (JavaApplication View). which is helpful in knowing the ratio w.r.t "Profiling Samples" > JMC 5.x had the Percentage Column in "Hot threads" tab. The column looks good to me, I did have a question about whether or not the strings should be externalized or not. application/org.openjdk.jmc.flightrecorder.ui/src/main/java/org/openjdk/jmc/flightrecorder/ui/pages/JavaApplicationPage.java line 210: > 208: Messages.JavaApplicationPage_COLUMN_THREAD_DURATION_DESC); > 209: HISTOGRAM.addPercentageColumn(PROFILING_PERCENTAGE_COL, JdkAggregators.EXECUTION_SAMPLE_COUNT, "Percentage", > 210: "Percentage over total Profiling samples"); This looks to be the only instance in the class that uses non-externalized strings, should these be put into Messages.java? ------------- PR: https://git.openjdk.java.net/jmc/pull/260 From aptmac at openjdk.java.net Fri Jun 18 19:24:38 2021 From: aptmac at openjdk.java.net (Alex Macdonald) Date: Fri, 18 Jun 2021 19:24:38 GMT Subject: RFR: 6204: Flight recorder launcher tab bugs out [v2] In-Reply-To: References: Message-ID: <9xl0GRM6e5AtkKogoZ47LebS6sQWrMAadQ92vv01paE=.b708ba9b-5685-4950-b43d-9a8d3ce31ed2@github.com> On Fri, 11 Jun 2021 22:43:09 GMT, Miroslav Wengner wrote: >> Adding check box to the launcher tab to select Oracle JDK < 11. > > Miroslav Wengner has updated the pull request incrementally with one additional commit since the last revision: > > 6204: added tests There were a few grammatical errors, and I made a comment wondering if `ConnectionToolkit.isOarcle()` could be of any help in automating the process as I see you've added a `//TODO` to JfrLaunchModel to get information dynamically. If you're adding a TODO here maybe open a JMC bug that can be used to track progress on fixing it. Is there an easy and reproduce-able way to verify the bug and this fix? application/org.openjdk.jmc.ide.launch/src/main/java/org/openjdk/jmc/ide/launch/JfrLaunchPage.java line 54: > 52: private Button enabledCheckbox; > 53: private Button autoOpenCheckbox; > 54: private Button lessThenOracleJDK11Checkbox; lessThen -> lessThan application/org.openjdk.jmc.ide.launch/src/main/java/org/openjdk/jmc/ide/launch/JfrLaunchPage.java line 125: > 123: > 124: private void createLessThenOracleJdk11(Composite parent, int cols) { > 125: lessThenOracleJDK11Checkbox = new Button(parent, SWT.CHECK); Here we're letting the user explicitly toggle this if it's a particular Oracle JDK, could `ConnectionToolkit.isOracle()` help here to automate this? application/org.openjdk.jmc.ide.launch/src/main/java/org/openjdk/jmc/ide/launch/model/JfrArgsBuilder.java line 101: > 99: private final String name; > 100: private final boolean continuous; > 101: private final boolean lessThenOracleJdk11; lessThen -> lessThan application/tests/org.openjdk.jmc.ide.launch.test/src/test/java/org/openjdk/jmc/ide/launch/model/JfrArgsBuilderJfrArgsTest.java line 125: > 123: > 124: @Test > 125: public void testJfrArgsIfQuotedSpacePathsDefaultSettingsJdkHigherThen11() throws Exception { HigherThen -> HigherThan ------------- PR: https://git.openjdk.java.net/jmc/pull/265 From github.com+803621+bric3 at openjdk.java.net Sun Jun 20 08:23:29 2021 From: github.com+803621+bric3 at openjdk.java.net (Brice Dutheil) Date: Sun, 20 Jun 2021 08:23:29 GMT Subject: RFR: 7167: Agent Plugin [v9] In-Reply-To: <0PefiF5cjcnfFokNrftF2O183dYeVAxv_gQvEXJs98s=.57552faf-55ee-432a-85c5-ad282e61b239@github.com> References: <0PefiF5cjcnfFokNrftF2O183dYeVAxv_gQvEXJs98s=.57552faf-55ee-432a-85c5-ad282e61b239@github.com> Message-ID: On Fri, 18 Jun 2021 17:56:25 GMT, Joshua Matsuoka wrote: >> This PR adds the Agent Plugin to JMC. This is a plugin for controlling the jmc agent and provides a way to attach it and add probes to any JVMs in the JVM browser, as well as providing a preset manager for creating/modifying probe presets. >> >> There is still a small amount of cleanup to be done so I'll mark it as a draft for now but it would be great to get a review :) > > Joshua Matsuoka has updated the pull request incrementally with one additional commit since the last revision: > > Resolving an issue with generated XML for field capturing/parameter capturing So I build upon you latest change ( 8f8398e2bb5e120f2c5dd36f62918cbe945e0a15 ), and indeed this fixes most of the issues. I have noted a few additional things : For example if I open the agent on JMC itself Screenshot 2021-06-20 at 08 49 54 Screenshot 2021-06-20 at 09 23 50 The help button on the dialog with the question mark does nothing. If I only give the agent jar path eg : `agent/target/org.openjdk.jmc.agent-1.0.0-SNAPSHOT.jar` Then the agent editor is empty: image Then doing something silly I clicked on the save preset and SAX error when saving as the preset is empty. image org.xml.sax.SAXParseException; lineNumber: 1; columnNumber: 1; Premature end of file. at java.xml/com.sun.org.apache.xerces.internal.jaxp.validation.Util.toSAXParseException(Util.java:75) at java.xml/com.sun.org.apache.xerces.internal.jaxp.validation.StreamValidatorHelper.validate(StreamValidatorHelper.java:178) at java.xml/com.sun.org.apache.xerces.internal.jaxp.validation.ValidatorImpl.validate(ValidatorImpl.java:115) at org.openjdk.jmc.console.agent.utils.ProbeValidator.validate(ProbeValidator.java:86) at java.xml/javax.xml.validation.Validator.validate(Validator.java:124) at org.openjdk.jmc.console.agent.manager.model.Preset.deserialize(Preset.java:147) at org.openjdk.jmc.console.agent.editor.AgentEditorUi.savePreset(AgentEditorUi.java:185) at org.openjdk.jmc.console.agent.editor.AgentEditorAction.run(AgentEditorAction.java:57) at org.eclipse.jface.action.Action.runWithEvent(Action.java:474) at org.eclipse.jface.action.ActionContributionItem.handleWidgetSelection(ActionContributionItem.java:579) ... Is there no way to stop a running agent and restart the agent, so it's possible to give a different configuration. _I didn't have the time to explore the agent at this time._ application/org.openjdk.jmc.console.agent/src/main/java/org/openjdk/jmc/console/agent/raweditor/internal/XmlDocumentProvider.java line 85: > 83: } > 84: > 85: try (Writer writer = new OutputStreamWriter(new FileOutputStream(out), StandardCharsets.UTF_8)) { I think this should be decorated by `BufferedWriter`. Indeed saving is a manual action, but I believe this is better. ------------- PR: https://git.openjdk.java.net/jmc/pull/226 From schaturvedi at openjdk.java.net Sun Jun 20 12:29:26 2021 From: schaturvedi at openjdk.java.net (Suchita Chaturvedi) Date: Sun, 20 Jun 2021 12:29:26 GMT Subject: Integrated: 7299: Accessibility Issue - Too low contrast on rule result values In-Reply-To: <0YY0J7u4d6O40s5lyqhiaebzx5c_ALwi0B1wnZTBbU8=.60ff8618-1297-4e3c-9bec-4effa43e96f7@github.com> References: <0YY0J7u4d6O40s5lyqhiaebzx5c_ALwi0B1wnZTBbU8=.60ff8618-1297-4e3c-9bec-4effa43e96f7@github.com> Message-ID: <9F22ipaxTira70DbWdpQPgzbTpoKb7te3qpDjRSlAIc=.2b265dcd-b4aa-48ef-9d70-d4abe2a70210@github.com> On Wed, 16 Jun 2021 20:47:40 GMT, Suchita Chaturvedi wrote: > This PR addresses an accessibility issue where the contrast of the rules score on Automated Analysis screen is too low. > > Please review the change and let me know if any changes are required. > > The UI looks like this now: > > ![image](https://user-images.githubusercontent.com/11155712/122291146-1c887d00-cf12-11eb-957f-03f662f2805f.png) This pull request has now been integrated. Changeset: 6723a701 Author: Suchita Chaturvedi URL: https://git.openjdk.java.net/jmc/commit/6723a7012c2bbe65aa51e366a92afe22fa86ad6b Stats: 4 lines in 1 file changed: 0 ins; 1 del; 3 mod 7299: Accessibility Issue - Too low contrast on rule result values Reviewed-by: hirt ------------- PR: https://git.openjdk.java.net/jmc/pull/268 From schaturvedi at openjdk.java.net Sun Jun 20 16:52:50 2021 From: schaturvedi at openjdk.java.net (Suchita Chaturvedi) Date: Sun, 20 Jun 2021 16:52:50 GMT Subject: RFR: 7042: Bring back summary screen for Statistics on Object Allocation outside TLAB. [v2] In-Reply-To: References: Message-ID: > This PR addresses the enhancement of adding General screen (providing summary) and By Class (table and graph) for allocations inside and outside TLAB. > > The changes include the enhancement "7043: Bring back summary screen for Statistics on Object Allocation inside TLAB" as well. > > Note: This is bring back feature i.e. which was present in JMC 5.5 but was missing in recent releases. > > Please review the change and provide your valuable comments. Suchita Chaturvedi has updated the pull request incrementally with one additional commit since the last revision: Fixed test failures ------------- Changes: - all: https://git.openjdk.java.net/jmc/pull/269/files - new: https://git.openjdk.java.net/jmc/pull/269/files/225121d2..9c1d3a4e Webrevs: - full: https://webrevs.openjdk.java.net/?repo=jmc&pr=269&range=01 - incr: https://webrevs.openjdk.java.net/?repo=jmc&pr=269&range=00-01 Stats: 1 line in 1 file changed: 0 ins; 1 del; 0 mod Patch: https://git.openjdk.java.net/jmc/pull/269.diff Fetch: git fetch https://git.openjdk.java.net/jmc pull/269/head:pull/269 PR: https://git.openjdk.java.net/jmc/pull/269 From github.com+803621+bric3 at openjdk.java.net Mon Jun 21 07:37:35 2021 From: github.com+803621+bric3 at openjdk.java.net (Brice Dutheil) Date: Mon, 21 Jun 2021 07:37:35 GMT Subject: RFR: 6967: Add Percentage Column w.r.t 'Profiling Samples' in Thread table In-Reply-To: References: Message-ID: <8WUuS0sSc40iJv2FrvxZNEwfYks-Tl82ebKQS4gJk1w=.bfd636ed-8029-4a8f-80d2-db17229da5ea@github.com> On Wed, 9 Jun 2021 09:45:23 GMT, Guru Hb wrote: > Adding "Percentage" column in Thread table (JavaApplication View). which is helpful in knowing the ratio w.r.t "Profiling Samples" > JMC 5.x had the Percentage Column in "Hot threads" tab. Same remark as @aptmac . Looks good otherwise. ------------- Marked as reviewed by bric3 at github.com (no known OpenJDK username). PR: https://git.openjdk.java.net/jmc/pull/260 From github.com+803621+bric3 at openjdk.java.net Mon Jun 21 08:28:55 2021 From: github.com+803621+bric3 at openjdk.java.net (Brice Dutheil) Date: Mon, 21 Jun 2021 08:28:55 GMT Subject: RFR: 6967: Add Percentage Column w.r.t 'Profiling Samples' in Thread table [v2] In-Reply-To: <45g3QcDBs5ijUYWOX_Lk2bA-3CTrdkaJjkmCJpIu_zE=.c0b5e0a0-c10f-4a2e-8fcc-3f26a96c1fda@github.com> References: <45g3QcDBs5ijUYWOX_Lk2bA-3CTrdkaJjkmCJpIu_zE=.c0b5e0a0-c10f-4a2e-8fcc-3f26a96c1fda@github.com> Message-ID: On Mon, 21 Jun 2021 08:25:35 GMT, Guru Hb wrote: >> Adding "Percentage" column in Thread table (JavaApplication View). which is helpful in knowing the ratio w.r.t "Profiling Samples" >> JMC 5.x had the Percentage Column in "Hot threads" tab. > > Guru Hb has updated the pull request incrementally with one additional commit since the last revision: > > externalize Table column name and its description Marked as reviewed by bric3 at github.com (no known OpenJDK username). ------------- PR: https://git.openjdk.java.net/jmc/pull/260 From ghb at openjdk.java.net Mon Jun 21 08:28:55 2021 From: ghb at openjdk.java.net (Guru Hb) Date: Mon, 21 Jun 2021 08:28:55 GMT Subject: RFR: 6967: Add Percentage Column w.r.t 'Profiling Samples' in Thread table [v2] In-Reply-To: References: Message-ID: <45g3QcDBs5ijUYWOX_Lk2bA-3CTrdkaJjkmCJpIu_zE=.c0b5e0a0-c10f-4a2e-8fcc-3f26a96c1fda@github.com> > Adding "Percentage" column in Thread table (JavaApplication View). which is helpful in knowing the ratio w.r.t "Profiling Samples" > JMC 5.x had the Percentage Column in "Hot threads" tab. Guru Hb has updated the pull request incrementally with one additional commit since the last revision: externalize Table column name and its description ------------- Changes: - all: https://git.openjdk.java.net/jmc/pull/260/files - new: https://git.openjdk.java.net/jmc/pull/260/files/2366040a..183e87a2 Webrevs: - full: https://webrevs.openjdk.java.net/?repo=jmc&pr=260&range=01 - incr: https://webrevs.openjdk.java.net/?repo=jmc&pr=260&range=00-01 Stats: 6 lines in 3 files changed: 4 ins; 0 del; 2 mod Patch: https://git.openjdk.java.net/jmc/pull/260.diff Fetch: git fetch https://git.openjdk.java.net/jmc pull/260/head:pull/260 PR: https://git.openjdk.java.net/jmc/pull/260 From ghb at openjdk.java.net Mon Jun 21 08:28:57 2021 From: ghb at openjdk.java.net (Guru Hb) Date: Mon, 21 Jun 2021 08:28:57 GMT Subject: RFR: 6967: Add Percentage Column w.r.t 'Profiling Samples' in Thread table [v2] In-Reply-To: <6n8tBH9-rozas_azj64E0GZjQV8ZX8dcjnZNx3eFNfM=.9540fea8-0021-448b-a523-9f4692ebfc3a@github.com> References: <6n8tBH9-rozas_azj64E0GZjQV8ZX8dcjnZNx3eFNfM=.9540fea8-0021-448b-a523-9f4692ebfc3a@github.com> Message-ID: On Fri, 18 Jun 2021 18:22:33 GMT, Alex Macdonald wrote: >> Guru Hb has updated the pull request incrementally with one additional commit since the last revision: >> >> externalize Table column name and its description > > application/org.openjdk.jmc.flightrecorder.ui/src/main/java/org/openjdk/jmc/flightrecorder/ui/pages/JavaApplicationPage.java line 210: > >> 208: Messages.JavaApplicationPage_COLUMN_THREAD_DURATION_DESC); >> 209: HISTOGRAM.addPercentageColumn(PROFILING_PERCENTAGE_COL, JdkAggregators.EXECUTION_SAMPLE_COUNT, "Percentage", >> 210: "Percentage over total Profiling samples"); > > This looks to be the only instance in the class that uses non-externalized strings, should these be put into Messages.java? This should have been externalised, Its fixed now, Please re-check and update your comments. ------------- PR: https://git.openjdk.java.net/jmc/pull/260 From ghb at openjdk.java.net Mon Jun 21 09:07:53 2021 From: ghb at openjdk.java.net (Guru Hb) Date: Mon, 21 Jun 2021 09:07:53 GMT Subject: RFR: 6967: Add Percentage Column w.r.t 'Profiling Samples' in Thread table [v3] In-Reply-To: References: Message-ID: > Adding "Percentage" column in Thread table (JavaApplication View). which is helpful in knowing the ratio w.r.t "Profiling Samples" > JMC 5.x had the Percentage Column in "Hot threads" tab. Guru Hb has updated the pull request incrementally with one additional commit since the last revision: Fixing Spotless formatting bug ------------- Changes: - all: https://git.openjdk.java.net/jmc/pull/260/files - new: https://git.openjdk.java.net/jmc/pull/260/files/183e87a2..93135ff8 Webrevs: - full: https://webrevs.openjdk.java.net/?repo=jmc&pr=260&range=02 - incr: https://webrevs.openjdk.java.net/?repo=jmc&pr=260&range=01-02 Stats: 2 lines in 1 file changed: 1 ins; 0 del; 1 mod Patch: https://git.openjdk.java.net/jmc/pull/260.diff Fetch: git fetch https://git.openjdk.java.net/jmc pull/260/head:pull/260 PR: https://git.openjdk.java.net/jmc/pull/260 From aptmac at openjdk.java.net Mon Jun 21 14:15:48 2021 From: aptmac at openjdk.java.net (Alex Macdonald) Date: Mon, 21 Jun 2021 14:15:48 GMT Subject: RFR: 6967: Add Percentage Column w.r.t 'Profiling Samples' in Thread table [v3] In-Reply-To: References: Message-ID: On Mon, 21 Jun 2021 09:07:53 GMT, Guru Hb wrote: >> Adding "Percentage" column in Thread table (JavaApplication View). which is helpful in knowing the ratio w.r.t "Profiling Samples" >> JMC 5.x had the Percentage Column in "Hot threads" tab. > > Guru Hb has updated the pull request incrementally with one additional commit since the last revision: > > Fixing Spotless formatting bug Marked as reviewed by aptmac (Committer). ------------- PR: https://git.openjdk.java.net/jmc/pull/260 From ghb at openjdk.java.net Mon Jun 21 15:47:36 2021 From: ghb at openjdk.java.net (Guru Hb) Date: Mon, 21 Jun 2021 15:47:36 GMT Subject: Integrated: 6967: Add Percentage Column w.r.t 'Profiling Samples' in Thread table In-Reply-To: References: Message-ID: On Wed, 9 Jun 2021 09:45:23 GMT, Guru Hb wrote: > Adding "Percentage" column in Thread table (JavaApplication View). which is helpful in knowing the ratio w.r.t "Profiling Samples" > JMC 5.x had the Percentage Column in "Hot threads" tab. This pull request has now been integrated. Changeset: 7f387907 Author: Guru Hb URL: https://git.openjdk.java.net/jmc/commit/7f387907c6a4b903968d3c3656c713a262a4da4d Stats: 9 lines in 3 files changed: 8 ins; 0 del; 1 mod 6967: Add Percentage Column w.r.t 'Profiling Samples' in Thread table Reviewed-by: aptmac ------------- PR: https://git.openjdk.java.net/jmc/pull/260 From jmatsuoka at openjdk.java.net Mon Jun 21 15:59:30 2021 From: jmatsuoka at openjdk.java.net (Joshua Matsuoka) Date: Mon, 21 Jun 2021 15:59:30 GMT Subject: RFR: 7167: Agent Plugin [v9] In-Reply-To: References: <0PefiF5cjcnfFokNrftF2O183dYeVAxv_gQvEXJs98s=.57552faf-55ee-432a-85c5-ad282e61b239@github.com> Message-ID: On Sun, 20 Jun 2021 08:20:42 GMT, Brice Dutheil wrote: > The help button on the dialog with the question mark does nothing. That help button should just be hidden, the textbox hints already tell the user exactly what's needed > If I only give the agent jar path eg : agent/target/org.openjdk.jmc.agent-1.0.0-SNAPSHOT.jar > > Then the agent editor is empty: This is intended behaviour, there are no probes inserted, so there's nothing to display > Then doing something silly I clicked on the save preset and SAX error when saving as the preset is empty. We should have a more meaningful error if the preset is empty, I'll fix that > Is there no way to stop a running agent and restart the agent, so it's possible to give a different configuration. I didn't have the time to explore the agent at this time. Not to stop/restart a running agent, but defineEventProbes already reverts existing instrumentation and inserts new probes (i.e. it will override the current configuration). ------------- PR: https://git.openjdk.java.net/jmc/pull/226 From aptmac at openjdk.java.net Mon Jun 21 16:21:36 2021 From: aptmac at openjdk.java.net (Alex Macdonald) Date: Mon, 21 Jun 2021 16:21:36 GMT Subject: RFR: 7042: Bring back summary screen for Statistics on Object Allocation outside TLAB. [v2] In-Reply-To: References: Message-ID: On Sun, 20 Jun 2021 16:52:50 GMT, Suchita Chaturvedi wrote: >> This PR addresses the enhancement of adding General screen (providing summary) and By Class (table and graph) for allocations inside and outside TLAB. >> >> The changes include the enhancement "7043: Bring back summary screen for Statistics on Object Allocation inside TLAB" as well. >> >> Note: This is bring back feature i.e. which was present in JMC 5.5 but was missing in recent releases. >> >> Please review the change and provide your valuable comments. > > Suchita Chaturvedi has updated the pull request incrementally with one additional commit since the last revision: > > Fixed test failures Overall the page looks good, I've left a couple of review comments inline. For anyone that doesn't feel like building this pr, here's a screenshot of what it looks like: Tab group: ![2021-06-21-121513_331x35_scrot](https://user-images.githubusercontent.com/10425301/122794732-914d1580-d28a-11eb-9ca7-2364a7c7b8cf.png) Class Page: ![2021-06-21-121713_1494x736_scrot](https://user-images.githubusercontent.com/10425301/122794772-9e6a0480-d28a-11eb-94db-5d12bb7ba26e.png) Summary Page: ![2021-06-21-121729_1490x739_scrot](https://user-images.githubusercontent.com/10425301/122794812-a88c0300-d28a-11eb-8e16-0994c0c63a7c.png) application/org.openjdk.jmc.flightrecorder.ui/src/main/java/org/openjdk/jmc/flightrecorder/ui/common/DataPageToolkit.java line 1171: > 1169: } > 1170: > 1171: public static void addTabItem(CTabFolder tabFolder, Object data, String name) { This isn't used anywhere and can be removed; your new classCT and summaryCT in TlabPage make use of the existing `addTabItem(CTabFolder tabFolder, Control section, String name)`. application/org.openjdk.jmc.flightrecorder.ui/src/main/java/org/openjdk/jmc/flightrecorder/ui/pages/TlabPage.java line 152: > 150: } > 151: > 152: public IPageUI display(Composite parent, FormToolkit toolkit, IPageContainer pageContainer, IState state) { This could have been a `void` method. There isn't anything being performed on a return value here so there's no need to return null. Alternatively all of this could be placed in the `TlabSummaryUI` constructor instead. application/org.openjdk.jmc.flightrecorder.ui/src/main/java/org/openjdk/jmc/flightrecorder/ui/pages/TlabPage.java line 155: > 153: form = DataPageToolkit.createForm(parent, toolkit, getName(), getIcon()); > 154: SashForm container = new SashForm(form.getBody(), SWT.HORIZONTAL); > 155: container.setSashWidth(5); I don't think the sashform doesn't need it's width to be set in this case. application/org.openjdk.jmc.flightrecorder.ui/src/main/java/org/openjdk/jmc/flightrecorder/ui/pages/TlabPage.java line 227: > 225: threadsCT.saveTo(state); > 226: methodsCT.saveTo(state); > 227: classCT.saveTo(state); This page looks fine to me as well, but it's a bit of a stealth update as there wasn't mention in the bug report or issue name regarding adding a class page. application/org.openjdk.jmc.flightrecorder.ui/src/main/resources/org/openjdk/jmc/flightrecorder/ui/messages/internal/messages.properties line 526: > 524: TlabPage_METHODS_TAB_NAME=By Top Methods > 525: TlabPage_CLASS_TAB_NAME=By Class > 526: TlabPage_SUMMARY_TAB_NAME=General Minor nit, but I think "Summary" better describes the page than "General", and also follows the naming convention used in the code. ------------- PR: https://git.openjdk.java.net/jmc/pull/269 From mwengner at openjdk.java.net Mon Jun 21 19:20:11 2021 From: mwengner at openjdk.java.net (Miroslav Wengner) Date: Mon, 21 Jun 2021 19:20:11 GMT Subject: RFR: 6204: Flight recorder launcher tab bugs out [v3] In-Reply-To: References: Message-ID: <7OAroTapQ4mEwahpn8RcWkga8El9EIGO1ydeR-vX1j4=.534a90bd-2171-4da3-8837-211cf2d42d9d@github.com> > Adding check box to the launcher tab to select Oracle JDK < 11. Miroslav Wengner has updated the pull request with a new target base due to a merge or a rebase. The incremental webrev excludes the unrelated changes brought in by the merge/rebase. The pull request contains five additional commits since the last revision: - Merge branch 'master' of https://github.com/openjdk/jmc into bugfix/6204_Flight_Recorder_launcher_tab_bugs_out - 6204: added tests - 6204: add checkbox for Oracle JDK less than 11 in Eclipse Plugin - Merge branch 'master' into bugfix/6204_Flight_Recorder_launcher_tab_bugs_out - 6204: add comment, start ------------- Changes: - all: https://git.openjdk.java.net/jmc/pull/265/files - new: https://git.openjdk.java.net/jmc/pull/265/files/309f3ec4..35e5fa73 Webrevs: - full: https://webrevs.openjdk.java.net/?repo=jmc&pr=265&range=02 - incr: https://webrevs.openjdk.java.net/?repo=jmc&pr=265&range=01-02 Stats: 694 lines in 44 files changed: 615 ins; 45 del; 34 mod Patch: https://git.openjdk.java.net/jmc/pull/265.diff Fetch: git fetch https://git.openjdk.java.net/jmc pull/265/head:pull/265 PR: https://git.openjdk.java.net/jmc/pull/265 From mwengner at openjdk.java.net Mon Jun 21 19:48:00 2021 From: mwengner at openjdk.java.net (Miroslav Wengner) Date: Mon, 21 Jun 2021 19:48:00 GMT Subject: RFR: 6204: Flight recorder launcher tab bugs out [v4] In-Reply-To: References: Message-ID: <6ANf3914vxoFg-PjgEvcaHDWKquiJ9FX-AiS5bxIsyk=.e8af38d2-e3e2-424b-8ef5-446089afe626@github.com> > Adding check box to the launcher tab to select Oracle JDK < 11. Miroslav Wengner has updated the pull request incrementally with one additional commit since the last revision: 6204: typos corrections ------------- Changes: - all: https://git.openjdk.java.net/jmc/pull/265/files - new: https://git.openjdk.java.net/jmc/pull/265/files/35e5fa73..bf742ee0 Webrevs: - full: https://webrevs.openjdk.java.net/?repo=jmc&pr=265&range=03 - incr: https://webrevs.openjdk.java.net/?repo=jmc&pr=265&range=02-03 Stats: 13 lines in 3 files changed: 0 ins; 2 del; 11 mod Patch: https://git.openjdk.java.net/jmc/pull/265.diff Fetch: git fetch https://git.openjdk.java.net/jmc pull/265/head:pull/265 PR: https://git.openjdk.java.net/jmc/pull/265 From mwengner at openjdk.java.net Mon Jun 21 19:53:27 2021 From: mwengner at openjdk.java.net (Miroslav Wengner) Date: Mon, 21 Jun 2021 19:53:27 GMT Subject: RFR: 6204: Flight recorder launcher tab bugs out [v2] In-Reply-To: <9xl0GRM6e5AtkKogoZ47LebS6sQWrMAadQ92vv01paE=.b708ba9b-5685-4950-b43d-9a8d3ce31ed2@github.com> References: <9xl0GRM6e5AtkKogoZ47LebS6sQWrMAadQ92vv01paE=.b708ba9b-5685-4950-b43d-9a8d3ce31ed2@github.com> Message-ID: On Fri, 18 Jun 2021 18:38:30 GMT, Alex Macdonald wrote: >> Miroslav Wengner has updated the pull request incrementally with one additional commit since the last revision: >> >> 6204: added tests > > application/org.openjdk.jmc.ide.launch/src/main/java/org/openjdk/jmc/ide/launch/JfrLaunchPage.java line 54: > >> 52: private Button enabledCheckbox; >> 53: private Button autoOpenCheckbox; >> 54: private Button lessThenOracleJDK11Checkbox; > > lessThen -> lessThan Thank you for spotting typos, I've changed them but seems I've not pushed it. ------------- PR: https://git.openjdk.java.net/jmc/pull/265 From mwengner at openjdk.java.net Mon Jun 21 20:30:29 2021 From: mwengner at openjdk.java.net (Miroslav Wengner) Date: Mon, 21 Jun 2021 20:30:29 GMT Subject: RFR: 6204: Flight recorder launcher tab bugs out [v2] In-Reply-To: References: <9xl0GRM6e5AtkKogoZ47LebS6sQWrMAadQ92vv01paE=.b708ba9b-5685-4950-b43d-9a8d3ce31ed2@github.com> Message-ID: On Mon, 21 Jun 2021 19:50:26 GMT, Miroslav Wengner wrote: >> application/org.openjdk.jmc.ide.launch/src/main/java/org/openjdk/jmc/ide/launch/JfrLaunchPage.java line 54: >> >>> 52: private Button enabledCheckbox; >>> 53: private Button autoOpenCheckbox; >>> 54: private Button lessThenOracleJDK11Checkbox; >> >> lessThen -> lessThan > > Thank you for spotting typos, I've changed them but seems I've not pushed it. The problem was that the Eclipse plugin has started with specific JVM (hardcoded), I've not find the way how to detect/change the JVM that plugin uses to execute app inside the Eclipse plugin.. It was throwing an exception due to the enable commercial flag. The clearest way I've found was the ArgsBuilder, then I had to add checkbox to propagate the option add/not add commercial features, resp. "-XX:+UnlockCommercialFeature". I've removed the TODOs ------------- PR: https://git.openjdk.java.net/jmc/pull/265 From mwengner at openjdk.java.net Mon Jun 21 20:38:54 2021 From: mwengner at openjdk.java.net (Miroslav Wengner) Date: Mon, 21 Jun 2021 20:38:54 GMT Subject: RFR: 6204: Flight recorder launcher tab bugs out [v5] In-Reply-To: References: Message-ID: > Adding check box to the launcher tab to select Oracle JDK < 11. Miroslav Wengner has updated the pull request incrementally with one additional commit since the last revision: 6204: code clean up ------------- Changes: - all: https://git.openjdk.java.net/jmc/pull/265/files - new: https://git.openjdk.java.net/jmc/pull/265/files/bf742ee0..09e329f9 Webrevs: - full: https://webrevs.openjdk.java.net/?repo=jmc&pr=265&range=04 - incr: https://webrevs.openjdk.java.net/?repo=jmc&pr=265&range=03-04 Stats: 1 line in 1 file changed: 0 ins; 1 del; 0 mod Patch: https://git.openjdk.java.net/jmc/pull/265.diff Fetch: git fetch https://git.openjdk.java.net/jmc pull/265/head:pull/265 PR: https://git.openjdk.java.net/jmc/pull/265 From mwengner at openjdk.java.net Mon Jun 21 20:38:55 2021 From: mwengner at openjdk.java.net (Miroslav Wengner) Date: Mon, 21 Jun 2021 20:38:55 GMT Subject: RFR: 6204: Flight recorder launcher tab bugs out [v2] In-Reply-To: <9xl0GRM6e5AtkKogoZ47LebS6sQWrMAadQ92vv01paE=.b708ba9b-5685-4950-b43d-9a8d3ce31ed2@github.com> References: <9xl0GRM6e5AtkKogoZ47LebS6sQWrMAadQ92vv01paE=.b708ba9b-5685-4950-b43d-9a8d3ce31ed2@github.com> Message-ID: On Fri, 18 Jun 2021 19:19:53 GMT, Alex Macdonald wrote: >> Miroslav Wengner has updated the pull request incrementally with one additional commit since the last revision: >> >> 6204: added tests > > application/org.openjdk.jmc.ide.launch/src/main/java/org/openjdk/jmc/ide/launch/JfrLaunchPage.java line 125: > >> 123: >> 124: private void createLessThenOracleJdk11(Composite parent, int cols) { >> 125: lessThenOracleJDK11Checkbox = new Button(parent, SWT.CHECK); > > Here we're letting the user explicitly toggle this if it's a particular Oracle JDK, could `ConnectionToolkit.isOracle()` help here to automate this? the issue is eclipse here and due to it there is hardcoded default jvm. I've though that VMRunner from eclipse (it's used) could be the option but sadly not. ------------- PR: https://git.openjdk.java.net/jmc/pull/265 From jmatsuoka at openjdk.java.net Tue Jun 22 22:07:16 2021 From: jmatsuoka at openjdk.java.net (Joshua Matsuoka) Date: Tue, 22 Jun 2021 22:07:16 GMT Subject: RFR: 7167: Agent Plugin [v10] In-Reply-To: References: Message-ID: > This PR adds the Agent Plugin to JMC. This is a plugin for controlling the jmc agent and provides a way to attach it and add probes to any JVMs in the JVM browser, as well as providing a preset manager for creating/modifying probe presets. > > There is still a small amount of cleanup to be done so I'll mark it as a draft for now but it would be great to get a review :) Joshua Matsuoka has updated the pull request incrementally with one additional commit since the last revision: Adding warning when attempting to save empty preset, removing unused help button ------------- Changes: - all: https://git.openjdk.java.net/jmc/pull/226/files - new: https://git.openjdk.java.net/jmc/pull/226/files/8f8398e2..7772c2f6 Webrevs: - full: https://webrevs.openjdk.java.net/?repo=jmc&pr=226&range=09 - incr: https://webrevs.openjdk.java.net/?repo=jmc&pr=226&range=08-09 Stats: 60 lines in 9 files changed: 42 ins; 12 del; 6 mod Patch: https://git.openjdk.java.net/jmc/pull/226.diff Fetch: git fetch https://git.openjdk.java.net/jmc pull/226/head:pull/226 PR: https://git.openjdk.java.net/jmc/pull/226 From jmatsuoka at openjdk.java.net Tue Jun 22 22:10:08 2021 From: jmatsuoka at openjdk.java.net (Joshua Matsuoka) Date: Tue, 22 Jun 2021 22:10:08 GMT Subject: RFR: 7167: Agent Plugin [v11] In-Reply-To: References: Message-ID: > This PR adds the Agent Plugin to JMC. This is a plugin for controlling the jmc agent and provides a way to attach it and add probes to any JVMs in the JVM browser, as well as providing a preset manager for creating/modifying probe presets. > > There is still a small amount of cleanup to be done so I'll mark it as a draft for now but it would be great to get a review :) Joshua Matsuoka has updated the pull request incrementally with one additional commit since the last revision: Decorating outputstreamWriter with a bufferedWriter ------------- Changes: - all: https://git.openjdk.java.net/jmc/pull/226/files - new: https://git.openjdk.java.net/jmc/pull/226/files/7772c2f6..dfcfad17 Webrevs: - full: https://webrevs.openjdk.java.net/?repo=jmc&pr=226&range=10 - incr: https://webrevs.openjdk.java.net/?repo=jmc&pr=226&range=09-10 Stats: 4 lines in 1 file changed: 2 ins; 1 del; 1 mod Patch: https://git.openjdk.java.net/jmc/pull/226.diff Fetch: git fetch https://git.openjdk.java.net/jmc pull/226/head:pull/226 PR: https://git.openjdk.java.net/jmc/pull/226 From jmatsuoka at openjdk.java.net Wed Jun 23 16:08:32 2021 From: jmatsuoka at openjdk.java.net (Joshua Matsuoka) Date: Wed, 23 Jun 2021 16:08:32 GMT Subject: RFR: 7167: Agent Plugin [v9] In-Reply-To: References: <0PefiF5cjcnfFokNrftF2O183dYeVAxv_gQvEXJs98s=.57552faf-55ee-432a-85c5-ad282e61b239@github.com> Message-ID: On Sun, 20 Jun 2021 07:21:06 GMT, Brice Dutheil wrote: >> Joshua Matsuoka has updated the pull request incrementally with one additional commit since the last revision: >> >> Resolving an issue with generated XML for field capturing/parameter capturing > > application/org.openjdk.jmc.console.agent/src/main/java/org/openjdk/jmc/console/agent/raweditor/internal/XmlDocumentProvider.java line 85: > >> 83: } >> 84: >> 85: try (Writer writer = new OutputStreamWriter(new FileOutputStream(out), StandardCharsets.UTF_8)) { > > I think this should be decorated by `BufferedWriter`. Indeed saving is a manual action, but I believe this is better. Fixed, thanks ------------- PR: https://git.openjdk.java.net/jmc/pull/226 From duke at openjdk.java.net Wed Jun 23 18:54:08 2021 From: duke at openjdk.java.net (duke) Date: Wed, 23 Jun 2021 18:54:08 GMT Subject: git: openjdk/jmc: Added tag 8.0.1-rc for changeset 699a121b Message-ID: Tagged by: Marcus Hirt Date: 2021-06-23 20:52:05 +0000 Release candidate for JMC 8.0.1 Changeset: 699a121b Author: Marcus Hirt Date: 2021-06-23 20:46:16 +0000 URL: https://git.openjdk.java.net/jmc/commit/699a121bd449fe8a9350221282bd3f809691a766 From aptmac at openjdk.java.net Wed Jun 23 21:21:41 2021 From: aptmac at openjdk.java.net (Alex Macdonald) Date: Wed, 23 Jun 2021 21:21:41 GMT Subject: RFR: JMC-6141: JMC logs warnings when creating recordings Message-ID: This PR addresses JMC-6141 [[0]](https://bugs.openjdk.java.net/browse/JMC-6141), in which JMC logs warnings when creating recordings. This is particularly annoying when running unit tests because the terminal gets flooded with warnings. There are two problems here. The first problem is that the `JFR_SETTINGS_PERIOD` constant in EventTypeMetadataV2 is outdated. It is currently hardcoded as `com.oracle.jfr.settings.Period` which looks to have been the name prior to open-sourcing [[1]](https://github.com/alibaba/dragonwell8_jdk/blob/423386885af50cf6f956d1b1ba159a994045a8ae/src/share/classes/jdk/jfr/internal/settings/PeriodSetting.java/#L43), but has since become `jdk.settings.Period` [[2]](https://github.com/openjdk/jdk/blob/master/src/jdk.jfr/share/classes/jdk/jfr/internal/settings/PeriodSetting.java#L42)[[3]](https://github.com/openjdk/jdk/blob/master/src/jdk.jfr/share/classes/jdk/jfr/internal/Type.java#L53). This removes the warnings related to `WARNING: Inferred content type 'jdk.jfr.Period' for option Period`. The second problem is that there isn't any handling for the value "infinity" when parsing the timespan. The method `parsePersisted()` in LinearKindOfQuantity looks at the persisted string and uses regex to separate the unit from the value. In this case with period however, if the timespan is infinite then the string is just "infinity", so the regex doesn't work and we end up throwing an exception. I took some inspiration from the jfr code [[4]](https://github.com/openjdk/jdk/blob/master/src/jdk.jfr/share/classes/jdk/jfr/internal/settings/PeriodSetting.java#L77), and it handles infinite timespans by checking the string, and if it is "infinity" then returns the max long value [[5]](https://github.com/openjdk/jdk/blob/master/src/jdk.jfr/share/classes/jdk/jfr/internal/Utils.java#L304). I've added a unit test to reinforce this behaviour. Let me know if this approach is okay, and if there are different options I need to consider. After these two changes my test output is legible, and I haven't noticed and regressions with uitests or my manual testing. When doing a regular `mvn clean verify` for the application we see a reduction of 12800 logged lines. [0] https://bugs.openjdk.java.net/browse/JMC-6141 [1] https://github.com/alibaba/dragonwell8_jdk/blob/423386885af50cf6f956d1b1ba159a994045a8ae/src/share/classes/jdk/jfr/internal/settings/PeriodSetting.java/#L43 [2] https://github.com/openjdk/jdk/blob/master/src/jdk.jfr/share/classes/jdk/jfr/internal/settings/PeriodSetting.java#L42 [3] https://github.com/openjdk/jdk/blob/master/src/jdk.jfr/share/classes/jdk/jfr/internal/Type.java#L53 [4] https://github.com/openjdk/jdk/blob/master/src/jdk.jfr/share/classes/jdk/jfr/internal/settings/PeriodSetting.java#L116 [5] https://github.com/openjdk/jdk/blob/master/src/jdk.jfr/share/classes/jdk/jfr/internal/Utils.java#L304 ------------- Commit messages: - JMC-6141: JMC logs warnings when creating recordings Changes: https://git.openjdk.java.net/jmc/pull/270/files Webrev: https://webrevs.openjdk.java.net/?repo=jmc&pr=270&range=00 Issue: https://bugs.openjdk.java.net/browse/JMC-6141 Stats: 7 lines in 3 files changed: 5 ins; 0 del; 2 mod Patch: https://git.openjdk.java.net/jmc/pull/270.diff Fetch: git fetch https://git.openjdk.java.net/jmc pull/270/head:pull/270 PR: https://git.openjdk.java.net/jmc/pull/270 From schaturvedi at openjdk.java.net Wed Jun 23 21:53:10 2021 From: schaturvedi at openjdk.java.net (Suchita Chaturvedi) Date: Wed, 23 Jun 2021 21:53:10 GMT Subject: RFR: 7042: Bring back summary screen for Statistics on Object Allocation outside TLAB. [v2] In-Reply-To: References: Message-ID: <7mw59BNuzBbT8DLbzvskWB-NydyjZfzbOWxyXEnzGWw=.2d16f5c6-bd7c-4762-b251-a19556a005e0@github.com> On Mon, 21 Jun 2021 15:23:06 GMT, Alex Macdonald wrote: >> Suchita Chaturvedi has updated the pull request incrementally with one additional commit since the last revision: >> >> Fixed test failures > > application/org.openjdk.jmc.flightrecorder.ui/src/main/java/org/openjdk/jmc/flightrecorder/ui/common/DataPageToolkit.java line 1171: > >> 1169: } >> 1170: >> 1171: public static void addTabItem(CTabFolder tabFolder, Object data, String name) { > > This isn't used anywhere and can be removed; your new classCT and summaryCT in TlabPage make use of the existing `addTabItem(CTabFolder tabFolder, Control section, String name)`. Thanks for pointing it out. I have removed the same. > application/org.openjdk.jmc.flightrecorder.ui/src/main/java/org/openjdk/jmc/flightrecorder/ui/pages/TlabPage.java line 152: > >> 150: } >> 151: >> 152: public IPageUI display(Composite parent, FormToolkit toolkit, IPageContainer pageContainer, IState state) { > > This could have been a `void` method. There isn't anything being performed on a return value here so there's no need to return null. > > Alternatively all of this could be placed in the `TlabSummaryUI` constructor instead. Implemented this change. I tried the alternate as well but it started making the test case fail saying static inner class should be used. If I make that change there are few non static reference in TLABSummaryUI which will require changes at many places, so just dropped that idea. > application/org.openjdk.jmc.flightrecorder.ui/src/main/java/org/openjdk/jmc/flightrecorder/ui/pages/TlabPage.java line 155: > >> 153: form = DataPageToolkit.createForm(parent, toolkit, getName(), getIcon()); >> 154: SashForm container = new SashForm(form.getBody(), SWT.HORIZONTAL); >> 155: container.setSashWidth(5); > > I don't think the sashform doesn't need it's width to be set in this case. Agree. Removed. > application/org.openjdk.jmc.flightrecorder.ui/src/main/java/org/openjdk/jmc/flightrecorder/ui/pages/TlabPage.java line 227: > >> 225: threadsCT.saveTo(state); >> 226: methodsCT.saveTo(state); >> 227: classCT.saveTo(state); > > This page looks fine to me as well, but it's a bit of a stealth update as there wasn't mention in the bug report or issue name regarding adding a class page. Yes. Customer was missing class page and summary page. Actually they both were present in JMC 5.5 and customer wanted it back. I have mentioned it in JIRA also. > application/org.openjdk.jmc.flightrecorder.ui/src/main/resources/org/openjdk/jmc/flightrecorder/ui/messages/internal/messages.properties line 526: > >> 524: TlabPage_METHODS_TAB_NAME=By Top Methods >> 525: TlabPage_CLASS_TAB_NAME=By Class >> 526: TlabPage_SUMMARY_TAB_NAME=General > > Minor nit, but I think "Summary" better describes the page than "General", and also follows the naming convention used in the code. Agreed. Even I thought of Summary, but then since JMC 5.5 was using General so thought of replacing that literal to make it look similar to customer. They are strictly comparing both JMC 5.5 and JMC 8. But summary sounds better to I did this change. ------------- PR: https://git.openjdk.java.net/jmc/pull/269 From schaturvedi at openjdk.java.net Wed Jun 23 21:53:00 2021 From: schaturvedi at openjdk.java.net (Suchita Chaturvedi) Date: Wed, 23 Jun 2021 21:53:00 GMT Subject: RFR: 7042: Bring back summary screen for Statistics on Object Allocation outside TLAB. [v3] In-Reply-To: References: Message-ID: <8s4J8Po2cqKoGIuM_GMrq9e43YVfHGgMQjsJDVoS94g=.f02fcd30-cab7-4dce-99ea-1f55b0a151d7@github.com> > This PR addresses the enhancement of adding General screen (providing summary) and By Class (table and graph) for allocations inside and outside TLAB. > > The changes include the enhancement "7043: Bring back summary screen for Statistics on Object Allocation inside TLAB" as well. > > Note: This is bring back feature i.e. which was present in JMC 5.5 but was missing in recent releases. > > Please review the change and provide your valuable comments. Suchita Chaturvedi has updated the pull request incrementally with one additional commit since the last revision: Implemented Review Comments ------------- Changes: - all: https://git.openjdk.java.net/jmc/pull/269/files - new: https://git.openjdk.java.net/jmc/pull/269/files/9c1d3a4e..5a9f8bff Webrevs: - full: https://webrevs.openjdk.java.net/?repo=jmc&pr=269&range=02 - incr: https://webrevs.openjdk.java.net/?repo=jmc&pr=269&range=01-02 Stats: 11 lines in 3 files changed: 0 ins; 9 del; 2 mod Patch: https://git.openjdk.java.net/jmc/pull/269.diff Fetch: git fetch https://git.openjdk.java.net/jmc pull/269/head:pull/269 PR: https://git.openjdk.java.net/jmc/pull/269 From aptmac at openjdk.java.net Thu Jun 24 15:18:32 2021 From: aptmac at openjdk.java.net (Alex Macdonald) Date: Thu, 24 Jun 2021 15:18:32 GMT Subject: RFR: 7042: Bring back summary screen for Statistics on Object Allocation outside TLAB. [v3] In-Reply-To: <8s4J8Po2cqKoGIuM_GMrq9e43YVfHGgMQjsJDVoS94g=.f02fcd30-cab7-4dce-99ea-1f55b0a151d7@github.com> References: <8s4J8Po2cqKoGIuM_GMrq9e43YVfHGgMQjsJDVoS94g=.f02fcd30-cab7-4dce-99ea-1f55b0a151d7@github.com> Message-ID: On Wed, 23 Jun 2021 21:53:00 GMT, Suchita Chaturvedi wrote: >> This PR addresses the enhancement of adding General screen (providing summary) and By Class (table and graph) for allocations inside and outside TLAB. >> >> The changes include the enhancement "7043: Bring back summary screen for Statistics on Object Allocation inside TLAB" as well. >> >> Note: This is bring back feature i.e. which was present in JMC 5.5 but was missing in recent releases. >> >> Please review the change and provide your valuable comments. > > Suchita Chaturvedi has updated the pull request incrementally with one additional commit since the last revision: > > Implemented Review Comments Marked as reviewed by aptmac (Committer). ------------- PR: https://git.openjdk.java.net/jmc/pull/269 From jpbempel at openjdk.java.net Fri Jun 25 13:38:04 2021 From: jpbempel at openjdk.java.net (Jean-Philippe Bempel) Date: Fri, 25 Jun 2021 13:38:04 GMT Subject: RFR: JMC-6141: JMC logs warnings when creating recordings In-Reply-To: References: Message-ID: On Wed, 23 Jun 2021 21:17:00 GMT, Alex Macdonald wrote: > I've added a unit test to reinforce this behaviour. I don't see it in the PR, have you forget to add it? ------------- PR: https://git.openjdk.java.net/jmc/pull/270 From aptmac at openjdk.java.net Fri Jun 25 14:15:25 2021 From: aptmac at openjdk.java.net (Alex Macdonald) Date: Fri, 25 Jun 2021 14:15:25 GMT Subject: RFR: JMC-6141: JMC logs warnings when creating recordings [v2] In-Reply-To: References: Message-ID: > This PR addresses JMC-6141 [[0]](https://bugs.openjdk.java.net/browse/JMC-6141), in which JMC logs warnings when creating recordings. This is particularly annoying when running unit tests because the terminal gets flooded with warnings. > > There are two problems here. > > The first problem is that the `JFR_SETTINGS_PERIOD` constant in EventTypeMetadataV2 is outdated. It is currently hardcoded as `com.oracle.jfr.settings.Period` which looks to have been the name prior to open-sourcing [[1]](https://github.com/alibaba/dragonwell8_jdk/blob/423386885af50cf6f956d1b1ba159a994045a8ae/src/share/classes/jdk/jfr/internal/settings/PeriodSetting.java/#L43), but has since become `jdk.settings.Period` [[2]](https://github.com/openjdk/jdk/blob/master/src/jdk.jfr/share/classes/jdk/jfr/internal/settings/PeriodSetting.java#L42)[[3]](https://github.com/openjdk/jdk/blob/master/src/jdk.jfr/share/classes/jdk/jfr/internal/Type.java#L53). This removes the warnings related to `WARNING: Inferred content type 'jdk.jfr.Period' for option Period`. > > The second problem is that there isn't any handling for the value "infinity" when parsing the timespan. The method `parsePersisted()` in LinearKindOfQuantity looks at the persisted string and uses regex to separate the unit from the value. In this case with period however, if the timespan is infinite then the string is just "infinity", so the regex doesn't work and we end up throwing an exception. I took some inspiration from the jfr code [[4]](https://github.com/openjdk/jdk/blob/master/src/jdk.jfr/share/classes/jdk/jfr/internal/settings/PeriodSetting.java#L77), and it handles infinite timespans by checking the string, and if it is "infinity" then returns the max long value [[5]](https://github.com/openjdk/jdk/blob/master/src/jdk.jfr/share/classes/jdk/jfr/internal/Utils.java#L304). I've added a unit test to reinforce this behaviour. > > Let me know if this approach is okay, and if there are different options I need to consider. > > After these two changes my test output is legible, and I haven't noticed and regressions with uitests or my manual testing. When doing a regular `mvn clean verify` for the application we see a reduction of 12800 logged lines. > > [0] https://bugs.openjdk.java.net/browse/JMC-6141 > [1] https://github.com/alibaba/dragonwell8_jdk/blob/423386885af50cf6f956d1b1ba159a994045a8ae/src/share/classes/jdk/jfr/internal/settings/PeriodSetting.java/#L43 > [2] https://github.com/openjdk/jdk/blob/master/src/jdk.jfr/share/classes/jdk/jfr/internal/settings/PeriodSetting.java#L42 > [3] https://github.com/openjdk/jdk/blob/master/src/jdk.jfr/share/classes/jdk/jfr/internal/Type.java#L53 > [4] https://github.com/openjdk/jdk/blob/master/src/jdk.jfr/share/classes/jdk/jfr/internal/settings/PeriodSetting.java#L116 > [5] https://github.com/openjdk/jdk/blob/master/src/jdk.jfr/share/classes/jdk/jfr/internal/Utils.java#L304 Alex Macdonald has refreshed the contents of this pull request, and previous commits have been removed. The incremental views will show differences compared to the previous content of the PR. The pull request contains one new commit since the last revision: JMC-6141: JMC logs warnings when creating recordings ------------- Changes: - all: https://git.openjdk.java.net/jmc/pull/270/files - new: https://git.openjdk.java.net/jmc/pull/270/files/0577f829..a928e796 Webrevs: - full: https://webrevs.openjdk.java.net/?repo=jmc&pr=270&range=01 - incr: https://webrevs.openjdk.java.net/?repo=jmc&pr=270&range=00-01 Stats: 6 lines in 1 file changed: 6 ins; 0 del; 0 mod Patch: https://git.openjdk.java.net/jmc/pull/270.diff Fetch: git fetch https://git.openjdk.java.net/jmc pull/270/head:pull/270 PR: https://git.openjdk.java.net/jmc/pull/270 From hirt at openjdk.java.net Fri Jun 25 14:15:26 2021 From: hirt at openjdk.java.net (Marcus Hirt) Date: Fri, 25 Jun 2021 14:15:26 GMT Subject: RFR: JMC-6141: JMC logs warnings when creating recordings [v2] In-Reply-To: References: Message-ID: On Fri, 25 Jun 2021 14:12:15 GMT, Alex Macdonald wrote: >> This PR addresses JMC-6141 [[0]](https://bugs.openjdk.java.net/browse/JMC-6141), in which JMC logs warnings when creating recordings. This is particularly annoying when running unit tests because the terminal gets flooded with warnings. >> >> There are two problems here. >> >> The first problem is that the `JFR_SETTINGS_PERIOD` constant in EventTypeMetadataV2 is outdated. It is currently hardcoded as `com.oracle.jfr.settings.Period` which looks to have been the name prior to open-sourcing [[1]](https://github.com/alibaba/dragonwell8_jdk/blob/423386885af50cf6f956d1b1ba159a994045a8ae/src/share/classes/jdk/jfr/internal/settings/PeriodSetting.java/#L43), but has since become `jdk.settings.Period` [[2]](https://github.com/openjdk/jdk/blob/master/src/jdk.jfr/share/classes/jdk/jfr/internal/settings/PeriodSetting.java#L42)[[3]](https://github.com/openjdk/jdk/blob/master/src/jdk.jfr/share/classes/jdk/jfr/internal/Type.java#L53). This removes the warnings related to `WARNING: Inferred content type 'jdk.jfr.Period' for option Period`. >> >> The second problem is that there isn't any handling for the value "infinity" when parsing the timespan. The method `parsePersisted()` in LinearKindOfQuantity looks at the persisted string and uses regex to separate the unit from the value. In this case with period however, if the timespan is infinite then the string is just "infinity", so the regex doesn't work and we end up throwing an exception. I took some inspiration from the jfr code [[4]](https://github.com/openjdk/jdk/blob/master/src/jdk.jfr/share/classes/jdk/jfr/internal/settings/PeriodSetting.java#L77), and it handles infinite timespans by checking the string, and if it is "infinity" then returns the max long value [[5]](https://github.com/openjdk/jdk/blob/master/src/jdk.jfr/share/classes/jdk/jfr/internal/Utils.java#L304). I've added a unit test to reinforce this behaviour. >> >> Let me know if this approach is okay, and if there are different options I need to consider. >> >> After these two changes my test output is legible, and I haven't noticed and regressions with uitests or my manual testing. When doing a regular `mvn clean verify` for the application we see a reduction of 12800 logged lines. >> >> [0] https://bugs.openjdk.java.net/browse/JMC-6141 >> [1] https://github.com/alibaba/dragonwell8_jdk/blob/423386885af50cf6f956d1b1ba159a994045a8ae/src/share/classes/jdk/jfr/internal/settings/PeriodSetting.java/#L43 >> [2] https://github.com/openjdk/jdk/blob/master/src/jdk.jfr/share/classes/jdk/jfr/internal/settings/PeriodSetting.java#L42 >> [3] https://github.com/openjdk/jdk/blob/master/src/jdk.jfr/share/classes/jdk/jfr/internal/Type.java#L53 >> [4] https://github.com/openjdk/jdk/blob/master/src/jdk.jfr/share/classes/jdk/jfr/internal/settings/PeriodSetting.java#L116 >> [5] https://github.com/openjdk/jdk/blob/master/src/jdk.jfr/share/classes/jdk/jfr/internal/Utils.java#L304 > > Alex Macdonald has refreshed the contents of this pull request, and previous commits have been removed. The incremental views will show differences compared to the previous content of the PR. The pull request contains one new commit since the last revision: > > JMC-6141: JMC logs warnings when creating recordings Marked as reviewed by hirt (Lead). ------------- PR: https://git.openjdk.java.net/jmc/pull/270 From aptmac at openjdk.java.net Fri Jun 25 14:15:26 2021 From: aptmac at openjdk.java.net (Alex Macdonald) Date: Fri, 25 Jun 2021 14:15:26 GMT Subject: RFR: JMC-6141: JMC logs warnings when creating recordings In-Reply-To: References: Message-ID: On Fri, 25 Jun 2021 13:35:00 GMT, Jean-Philippe Bempel wrote: > > I've added a unit test to reinforce this behaviour. > > I don't see it in the PR, have you forget to add it? Ah yes I had forgotten to push it, it should be included now. ------------- PR: https://git.openjdk.java.net/jmc/pull/270 From jpbempel at openjdk.java.net Fri Jun 25 15:37:09 2021 From: jpbempel at openjdk.java.net (Jean-Philippe Bempel) Date: Fri, 25 Jun 2021 15:37:09 GMT Subject: RFR: JMC-6141: JMC logs warnings when creating recordings [v2] In-Reply-To: References: Message-ID: On Fri, 25 Jun 2021 14:15:25 GMT, Alex Macdonald wrote: >> This PR addresses JMC-6141 [[0]](https://bugs.openjdk.java.net/browse/JMC-6141), in which JMC logs warnings when creating recordings. This is particularly annoying when running unit tests because the terminal gets flooded with warnings. >> >> There are two problems here. >> >> The first problem is that the `JFR_SETTINGS_PERIOD` constant in EventTypeMetadataV2 is outdated. It is currently hardcoded as `com.oracle.jfr.settings.Period` which looks to have been the name prior to open-sourcing [[1]](https://github.com/alibaba/dragonwell8_jdk/blob/423386885af50cf6f956d1b1ba159a994045a8ae/src/share/classes/jdk/jfr/internal/settings/PeriodSetting.java/#L43), but has since become `jdk.settings.Period` [[2]](https://github.com/openjdk/jdk/blob/master/src/jdk.jfr/share/classes/jdk/jfr/internal/settings/PeriodSetting.java#L42)[[3]](https://github.com/openjdk/jdk/blob/master/src/jdk.jfr/share/classes/jdk/jfr/internal/Type.java#L53). This removes the warnings related to `WARNING: Inferred content type 'jdk.jfr.Period' for option Period`. >> >> The second problem is that there isn't any handling for the value "infinity" when parsing the timespan. The method `parsePersisted()` in LinearKindOfQuantity looks at the persisted string and uses regex to separate the unit from the value. In this case with period however, if the timespan is infinite then the string is just "infinity", so the regex doesn't work and we end up throwing an exception. I took some inspiration from the jfr code [[4]](https://github.com/openjdk/jdk/blob/master/src/jdk.jfr/share/classes/jdk/jfr/internal/settings/PeriodSetting.java#L77), and it handles infinite timespans by checking the string, and if it is "infinity" then returns the max long value [[5]](https://github.com/openjdk/jdk/blob/master/src/jdk.jfr/share/classes/jdk/jfr/internal/Utils.java#L304). I've added a unit test to reinforce this behaviour. >> >> Let me know if this approach is okay, and if there are different options I need to consider. >> >> After these two changes my test output is legible, and I haven't noticed and regressions with uitests or my manual testing. When doing a regular `mvn clean verify` for the application we see a reduction of 12800 logged lines. >> >> [0] https://bugs.openjdk.java.net/browse/JMC-6141 >> [1] https://github.com/alibaba/dragonwell8_jdk/blob/423386885af50cf6f956d1b1ba159a994045a8ae/src/share/classes/jdk/jfr/internal/settings/PeriodSetting.java/#L43 >> [2] https://github.com/openjdk/jdk/blob/master/src/jdk.jfr/share/classes/jdk/jfr/internal/settings/PeriodSetting.java#L42 >> [3] https://github.com/openjdk/jdk/blob/master/src/jdk.jfr/share/classes/jdk/jfr/internal/Type.java#L53 >> [4] https://github.com/openjdk/jdk/blob/master/src/jdk.jfr/share/classes/jdk/jfr/internal/settings/PeriodSetting.java#L116 >> [5] https://github.com/openjdk/jdk/blob/master/src/jdk.jfr/share/classes/jdk/jfr/internal/Utils.java#L304 > > Alex Macdonald has refreshed the contents of this pull request, and previous commits have been removed. The incremental views will show differences compared to the previous content of the PR. Marked as reviewed by jpbempel (Committer). ------------- PR: https://git.openjdk.java.net/jmc/pull/270 From aptmac at openjdk.java.net Fri Jun 25 16:15:08 2021 From: aptmac at openjdk.java.net (Alex Macdonald) Date: Fri, 25 Jun 2021 16:15:08 GMT Subject: RFR: 6204: Flight recorder launcher tab bugs out [v5] In-Reply-To: References: Message-ID: On Mon, 21 Jun 2021 20:38:54 GMT, Miroslav Wengner wrote: >> Adding check box to the launcher tab to select Oracle JDK < 11. > > Miroslav Wengner has updated the pull request incrementally with one additional commit since the last revision: > > 6204: code clean up It took me longer to figure out how to get to this page than I had originally thought. For anyone else curious, here's what it looks like: ![2021-06-25-115040_1173x738_scrot](https://user-images.githubusercontent.com/10425301/123451350-945a4580-d5ab-11eb-8b15-0d349926fccc.png) Steps: 1. Run as JMC-Eclipse IDE 2. 2.Import a project 3. Highlight project in the package explorer and select "Run as" -> "Run as Java Application with Flight Recorder" 4. Go back to the context menu under the package explorer, but this time go "Run as" -> "Run Configurations.." 5. Find the Launcher under "Java Application", then use the "Flight Recorder" tab at the top At first observation, compared to master these changes allow for the "Run as Java Application with Flight Recorder" to be used, otherwise I was experiencing and error trying to enable flight recorder features, so that's nice. However using this changeset I'm hitting a NPE at RecordingWizardPage line 222: https://github.com/openjdk/jmc/blob/master/application/org.openjdk.jmc.flightrecorder.controlpanel.ui/src/main/java/org/openjdk/jmc/flightrecorder/controlpanel/ui/wizards/RecordingWizardPage.java#L222 Running through with the debugger I found that the shell is actually `null`, so this blows up trying to `layout()`. Simply removing this layout looks to fix it. Is this what the bug is? I'm trying to select a template in the template manager but nothing seems to be working: ![ezgif-2-1ce1066b3b31](https://user-images.githubusercontent.com/10425301/123454466-983b9700-d5ae-11eb-91d0-a66f5d0d8a9b.gif) application/org.openjdk.jmc.ide.launch/src/main/java/org/openjdk/jmc/ide/launch/JfrLaunchPage.java line 74: > 72: createEnabled(comp, cols); > 73: createOpenAutomatically(comp, cols); > 74: createLessThenOracleJdk11(comp, cols); "lessThen" -> "lessThan" application/org.openjdk.jmc.ide.launch/src/main/java/org/openjdk/jmc/ide/launch/JfrLaunchPage.java line 122: > 120: } > 121: > 122: private void createLessThenOracleJdk11(Composite parent, int cols) { "lessThen" -> "lessThan" ------------- PR: https://git.openjdk.java.net/jmc/pull/265 From duke at openjdk.java.net Fri Jun 25 16:58:23 2021 From: duke at openjdk.java.net (duke) Date: Fri, 25 Jun 2021 16:58:23 GMT Subject: git: openjdk/jmc: Added tag 8.0.1-ga for changeset 699a121b Message-ID: Tagged by: Marcus Hirt Date: 2021-06-25 18:57:30 +0000 GA source release for JMC 8.0.1 Changeset: 699a121b Author: Marcus Hirt Date: 2021-06-23 20:46:16 +0000 URL: https://git.openjdk.java.net/jmc/commit/699a121bd449fe8a9350221282bd3f809691a766 From marcus.hirt at datadoghq.com Fri Jun 25 17:03:40 2021 From: marcus.hirt at datadoghq.com (Marcus Hirt) Date: Fri, 25 Jun 2021 19:03:40 +0200 Subject: JMC 8.0.1 source now released! Message-ID: See https://github.com/openjdk/jmc/releases/tag/8.0.1-ga. Kind regards, Marcus From jmatsuoka at openjdk.java.net Fri Jun 25 17:53:07 2021 From: jmatsuoka at openjdk.java.net (Joshua Matsuoka) Date: Fri, 25 Jun 2021 17:53:07 GMT Subject: RFR: 7167: Agent Plugin [v6] In-Reply-To: References: <81i7tInHHp-rf5jdplOH3TaSatjsumQ-64cgxQejyuI=.2da150e4-3cc5-4b2f-a542-ed9afee1adcc@github.com> Message-ID: On Thu, 17 Jun 2021 09:24:53 GMT, Brice Dutheil wrote: >>> I've a seems replacing the current agent didn't work, Is this desired behaviour ? >> >> This sounds like a possible agent bug, I'll take a look and get back to you on that > > @Josh-Matsuoka I will look at it by the end of this week. @bric3 PR has been updated with the requested changes, let me know what you think when you get some time :) ------------- PR: https://git.openjdk.java.net/jmc/pull/226 From aptmac at openjdk.java.net Fri Jun 25 20:00:12 2021 From: aptmac at openjdk.java.net (Alex Macdonald) Date: Fri, 25 Jun 2021 20:00:12 GMT Subject: Integrated: JMC-6141: JMC logs warnings when creating recordings In-Reply-To: References: Message-ID: On Wed, 23 Jun 2021 21:17:00 GMT, Alex Macdonald wrote: > This PR addresses JMC-6141 [[0]](https://bugs.openjdk.java.net/browse/JMC-6141), in which JMC logs warnings when creating recordings. This is particularly annoying when running unit tests because the terminal gets flooded with warnings. > > There are two problems here. > > The first problem is that the `JFR_SETTINGS_PERIOD` constant in EventTypeMetadataV2 is outdated. It is currently hardcoded as `com.oracle.jfr.settings.Period` which looks to have been the name prior to open-sourcing [[1]](https://github.com/alibaba/dragonwell8_jdk/blob/423386885af50cf6f956d1b1ba159a994045a8ae/src/share/classes/jdk/jfr/internal/settings/PeriodSetting.java/#L43), but has since become `jdk.settings.Period` [[2]](https://github.com/openjdk/jdk/blob/master/src/jdk.jfr/share/classes/jdk/jfr/internal/settings/PeriodSetting.java#L42)[[3]](https://github.com/openjdk/jdk/blob/master/src/jdk.jfr/share/classes/jdk/jfr/internal/Type.java#L53). This removes the warnings related to `WARNING: Inferred content type 'jdk.jfr.Period' for option Period`. > > The second problem is that there isn't any handling for the value "infinity" when parsing the timespan. The method `parsePersisted()` in LinearKindOfQuantity looks at the persisted string and uses regex to separate the unit from the value. In this case with period however, if the timespan is infinite then the string is just "infinity", so the regex doesn't work and we end up throwing an exception. I took some inspiration from the jfr code [[4]](https://github.com/openjdk/jdk/blob/master/src/jdk.jfr/share/classes/jdk/jfr/internal/settings/PeriodSetting.java#L77), and it handles infinite timespans by checking the string, and if it is "infinity" then returns the max long value [[5]](https://github.com/openjdk/jdk/blob/master/src/jdk.jfr/share/classes/jdk/jfr/internal/Utils.java#L304). I've added a unit test to reinforce this behaviour. > > Let me know if this approach is okay, and if there are different options I need to consider. > > After these two changes my test output is legible, and I haven't noticed and regressions with uitests or my manual testing. When doing a regular `mvn clean verify` for the application we see a reduction of 12800 logged lines. > > [0] https://bugs.openjdk.java.net/browse/JMC-6141 > [1] https://github.com/alibaba/dragonwell8_jdk/blob/423386885af50cf6f956d1b1ba159a994045a8ae/src/share/classes/jdk/jfr/internal/settings/PeriodSetting.java/#L43 > [2] https://github.com/openjdk/jdk/blob/master/src/jdk.jfr/share/classes/jdk/jfr/internal/settings/PeriodSetting.java#L42 > [3] https://github.com/openjdk/jdk/blob/master/src/jdk.jfr/share/classes/jdk/jfr/internal/Type.java#L53 > [4] https://github.com/openjdk/jdk/blob/master/src/jdk.jfr/share/classes/jdk/jfr/internal/settings/PeriodSetting.java#L116 > [5] https://github.com/openjdk/jdk/blob/master/src/jdk.jfr/share/classes/jdk/jfr/internal/Utils.java#L304 This pull request has now been integrated. Changeset: e34323dc Author: Alex Macdonald URL: https://git.openjdk.java.net/jmc/commit/e34323dcd864b357d46f7cc3a4aa934848fd6c06 Stats: 13 lines in 4 files changed: 11 ins; 0 del; 2 mod 6141: JMC logs warnings when creating recordings Reviewed-by: hirt, jpbempel ------------- PR: https://git.openjdk.java.net/jmc/pull/270 From github.com+803621+bric3 at openjdk.java.net Fri Jun 25 21:34:06 2021 From: github.com+803621+bric3 at openjdk.java.net (Brice Dutheil) Date: Fri, 25 Jun 2021 21:34:06 GMT Subject: RFR: 7167: Agent Plugin [v11] In-Reply-To: References: Message-ID: On Tue, 22 Jun 2021 22:10:08 GMT, Joshua Matsuoka wrote: >> This PR adds the Agent Plugin to JMC. This is a plugin for controlling the jmc agent and provides a way to attach it and add probes to any JVMs in the JVM browser, as well as providing a preset manager for creating/modifying probe presets. >> >> There is still a small amount of cleanup to be done so I'll mark it as a draft for now but it would be great to get a review :) > > Joshua Matsuoka has updated the pull request incrementally with one additional commit since the last revision: > > Decorating outputstreamWriter with a bufferedWriter Yes it looks good to me. application/org.openjdk.jmc.console.agent/src/main/java/org/openjdk/jmc/console/agent/editor/AgentEditorUi.java line 191: > 189: DialogToolkit.showWarning(window.getShell(), Messages.AgentEditorUI_MESSAGE_EMPTY_PRESET_TITLE, > 190: Messages.AgentEditorUI_MESSAGE_EMPTY_PRESET); > 191: } ?? application/org.openjdk.jmc.console.agent/src/main/java/org/openjdk/jmc/console/agent/wizards/StartAgentWizard.java line 66: > 64: startAgentWizardPage = new StartAgentWizardPage(helper); > 65: this.setHelpAvailable(false); > 66: WizardDialog.setDialogHelpAvailable(false); ?? ------------- Marked as reviewed by bric3 at github.com (no known OpenJDK username). PR: https://git.openjdk.java.net/jmc/pull/226 From github.com+803621+bric3 at openjdk.java.net Fri Jun 25 21:38:05 2021 From: github.com+803621+bric3 at openjdk.java.net (Brice Dutheil) Date: Fri, 25 Jun 2021 21:38:05 GMT Subject: RFR: 6204: Flight recorder launcher tab bugs out [v5] In-Reply-To: References: Message-ID: <5oj-AYyop3XthuTE7yjugKX_EV92L1DCFd4q5Qmk8xg=.bb50f594-d391-4566-a13e-64e7554f1dfc@github.com> On Mon, 21 Jun 2021 20:38:54 GMT, Miroslav Wengner wrote: >> Adding check box to the launcher tab to select Oracle JDK < 11. > > Miroslav Wengner has updated the pull request incrementally with one additional commit since the last revision: > > 6204: code clean up Marked as reviewed by bric3 at github.com (no known OpenJDK username). application/org.openjdk.jmc.ide.launch/src/main/java/org/openjdk/jmc/ide/launch/JfrLaunchPage.java line 126: > 124: lessThanOracleJDK11Checkbox.setText("Oracle JDK < 11"); > 125: lessThanOracleJDK11Checkbox > 126: .setToolTipText("Only check this if it really is an Oracle JDK. For OpenJDK, leave this unchecked."); Shouldn't this be in a message bundle ? ------------- PR: https://git.openjdk.java.net/jmc/pull/265 From mwengner at openjdk.java.net Sat Jun 26 20:24:22 2021 From: mwengner at openjdk.java.net (Miroslav Wengner) Date: Sat, 26 Jun 2021 20:24:22 GMT Subject: RFR: 6204: Flight recorder launcher tab bugs out [v6] In-Reply-To: References: Message-ID: > Adding check box to the launcher tab to select Oracle JDK < 11. Miroslav Wengner has updated the pull request incrementally with one additional commit since the last revision: 6204: typos correction, messages ------------- Changes: - all: https://git.openjdk.java.net/jmc/pull/265/files - new: https://git.openjdk.java.net/jmc/pull/265/files/09e329f9..b4ee87cf Webrevs: - full: https://webrevs.openjdk.java.net/?repo=jmc&pr=265&range=05 - incr: https://webrevs.openjdk.java.net/?repo=jmc&pr=265&range=04-05 Stats: 13 lines in 5 files changed: 8 ins; 1 del; 4 mod Patch: https://git.openjdk.java.net/jmc/pull/265.diff Fetch: git fetch https://git.openjdk.java.net/jmc pull/265/head:pull/265 PR: https://git.openjdk.java.net/jmc/pull/265 From mwengner at openjdk.java.net Sat Jun 26 20:24:23 2021 From: mwengner at openjdk.java.net (Miroslav Wengner) Date: Sat, 26 Jun 2021 20:24:23 GMT Subject: RFR: 6204: Flight recorder launcher tab bugs out [v5] In-Reply-To: <5oj-AYyop3XthuTE7yjugKX_EV92L1DCFd4q5Qmk8xg=.bb50f594-d391-4566-a13e-64e7554f1dfc@github.com> References: <5oj-AYyop3XthuTE7yjugKX_EV92L1DCFd4q5Qmk8xg=.bb50f594-d391-4566-a13e-64e7554f1dfc@github.com> Message-ID: On Fri, 25 Jun 2021 21:35:02 GMT, Brice Dutheil wrote: >> Miroslav Wengner has updated the pull request incrementally with one additional commit since the last revision: >> >> 6204: code clean up > > Marked as reviewed by bric3 at github.com (no known OpenJDK username). @bric3 : Thank you ! I've moved them properly to the bundle > application/org.openjdk.jmc.ide.launch/src/main/java/org/openjdk/jmc/ide/launch/JfrLaunchPage.java line 126: > >> 124: lessThanOracleJDK11Checkbox.setText("Oracle JDK < 11"); >> 125: lessThanOracleJDK11Checkbox >> 126: .setToolTipText("Only check this if it really is an Oracle JDK. For OpenJDK, leave this unchecked."); > > Shouldn't this be in a message bundle ? @aptmac yes, you have described a bug I've forgot to report, I've found it too! It wanted to write a ticket for it. ! ------------- PR: https://git.openjdk.java.net/jmc/pull/265 From mwengner at openjdk.java.net Sat Jun 26 20:24:24 2021 From: mwengner at openjdk.java.net (Miroslav Wengner) Date: Sat, 26 Jun 2021 20:24:24 GMT Subject: RFR: 6204: Flight recorder launcher tab bugs out [v5] In-Reply-To: References: Message-ID: On Fri, 25 Jun 2021 15:39:59 GMT, Alex Macdonald wrote: >> Miroslav Wengner has updated the pull request incrementally with one additional commit since the last revision: >> >> 6204: code clean up > > application/org.openjdk.jmc.ide.launch/src/main/java/org/openjdk/jmc/ide/launch/JfrLaunchPage.java line 122: > >> 120: } >> 121: >> 122: private void createLessThenOracleJdk11(Composite parent, int cols) { > > "lessThen" -> "lessThan" thank you! ------------- PR: https://git.openjdk.java.net/jmc/pull/265 From mwengner at openjdk.java.net Sat Jun 26 20:43:00 2021 From: mwengner at openjdk.java.net (Miroslav Wengner) Date: Sat, 26 Jun 2021 20:43:00 GMT Subject: RFR: 6204: Flight recorder launcher tab bugs out [v5] In-Reply-To: References: Message-ID: <6MPAC7yyb8w7Lun_thTS8dv_G2eNNkPnTIX6kQj-HTQ=.f8dd3795-c42e-463f-83e0-c409a0d3e7b5@github.com> On Fri, 25 Jun 2021 16:12:48 GMT, Alex Macdonald wrote: >> Miroslav Wengner has updated the pull request incrementally with one additional commit since the last revision: >> >> 6204: code clean up > > It took me longer to figure out how to get to this page than I had originally thought. For anyone else curious, here's what it looks like: > > ![2021-06-25-115040_1173x738_scrot](https://user-images.githubusercontent.com/10425301/123451350-945a4580-d5ab-11eb-8b15-0d349926fccc.png) > > Steps: > 1. Run as JMC-Eclipse IDE > 2. Import a project > 3. Highlight project in the package explorer and select "Run as" -> "Run as Java Application with Flight Recorder" > 4. Go back to the context menu under the package explorer, but this time go "Run as" -> "Run Configurations.." > 5. Find the Launcher under "Java Application", then use the "Flight Recorder" tab at the top > > At first observation, compared to master these changes allow for the "Run as Java Application with Flight Recorder" to be used, otherwise I was experiencing and error trying to enable flight recorder features, so that's nice. > > However using this changeset I'm hitting a NPE at RecordingWizardPage line 222: https://github.com/openjdk/jmc/blob/master/application/org.openjdk.jmc.flightrecorder.controlpanel.ui/src/main/java/org/openjdk/jmc/flightrecorder/controlpanel/ui/wizards/RecordingWizardPage.java#L222 > > Running through with the debugger I found that the shell is actually `null`, so this blows up trying to `layout()`. Simply removing this line looks to fix it. > > Is this what the bug is? I'm trying to select a template in the template manager but nothing seems to be working: > ![ezgif-2-1ce1066b3b31](https://user-images.githubusercontent.com/10425301/123454466-983b9700-d5ae-11eb-91d0-a66f5d0d8a9b.gif) @aptmac it also doesn't allow you to select a template, even when you have created one in previous recording. This is bug and should be IMHO solved in another ticket, what do you think ? ------------- PR: https://git.openjdk.java.net/jmc/pull/265 From aptmac at openjdk.java.net Mon Jun 28 15:11:06 2021 From: aptmac at openjdk.java.net (Alex Macdonald) Date: Mon, 28 Jun 2021 15:11:06 GMT Subject: RFR: 6204: Flight recorder launcher tab bugs out [v5] In-Reply-To: References: Message-ID: On Fri, 25 Jun 2021 16:12:48 GMT, Alex Macdonald wrote: >> Miroslav Wengner has updated the pull request incrementally with one additional commit since the last revision: >> >> 6204: code clean up > > It took me longer to figure out how to get to this page than I had originally thought. For anyone else curious, here's what it looks like: > > ![2021-06-25-115040_1173x738_scrot](https://user-images.githubusercontent.com/10425301/123451350-945a4580-d5ab-11eb-8b15-0d349926fccc.png) > > Steps: > 1. Run as JMC-Eclipse IDE > 2. Import a project > 3. Highlight project in the package explorer and select "Run as" -> "Run as Java Application with Flight Recorder" > 4. Go back to the context menu under the package explorer, but this time go "Run as" -> "Run Configurations.." > 5. Find the Launcher under "Java Application", then use the "Flight Recorder" tab at the top > > At first observation, compared to master these changes allow for the "Run as Java Application with Flight Recorder" to be used, otherwise I was experiencing and error trying to enable flight recorder features, so that's nice. > > However using this changeset I'm hitting a NPE at RecordingWizardPage line 222: https://github.com/openjdk/jmc/blob/master/application/org.openjdk.jmc.flightrecorder.controlpanel.ui/src/main/java/org/openjdk/jmc/flightrecorder/controlpanel/ui/wizards/RecordingWizardPage.java#L222 > > Running through with the debugger I found that the shell is actually `null`, so this blows up trying to `layout()`. Simply removing this line looks to fix it. > > Is this what the bug is? I'm trying to select a template in the template manager but nothing seems to be working: > ![ezgif-2-1ce1066b3b31](https://user-images.githubusercontent.com/10425301/123454466-983b9700-d5ae-11eb-91d0-a66f5d0d8a9b.gif) > @aptmac it also doesn't allow you to select a template, even when you have created one in previous recording. This is bug and should be IMHO solved in another ticket, what do you think ? To be honest I thought from reading the bug description on [JMC-6204](https://bugs.openjdk.java.net/browse/JMC-6204) that this was the actual issue needing to be solved. It reads: > Usually the template combo box will contain the templates available in the template manager. However, it seems to bug out, especially for JDK 11 templates. Perhaps if the previously used template is no longer available too? Or if trying to select a template using the Template Manager button? So I see this PR as addressing a separate issue where the addition of commercial features flags was preventing the launcher tab from opening, but JMC-6204 is concerned with the template manager within the launcher. @thegreystone could you confirm? If you still wanted to go the separate bug route then a new bug could be opened for tracking this PR, and leave 6204 for the template manager work. For Linux there still needs to be a resolution for this line: https://github.com/openjdk/jmc/blob/master/application/org.openjdk.jmc.flightrecorder.controlpanel.ui/src/main/java/org/openjdk/jmc/flightrecorder/controlpanel/ui/wizards/RecordingWizardPage.java#L222. I'm not sure if that issue reported for Oracle JDK 7.1 is still valid, but to be safe there could also just be a quick check on `getShell()` to make sure it's not null. As it stands now it's crashing from a NPE and not providing any helpful diagnostic information, here's what the error looks like: ![2021-06-28-110728_1152x733_scrot](https://user-images.githubusercontent.com/10425301/123659781-0b3c4c00-d801-11eb-8259-ce02e4f0701f.png) ------------- PR: https://git.openjdk.java.net/jmc/pull/265 From jmatsuoka at openjdk.java.net Mon Jun 28 21:37:06 2021 From: jmatsuoka at openjdk.java.net (Joshua Matsuoka) Date: Mon, 28 Jun 2021 21:37:06 GMT Subject: RFR: 7167: Agent Plugin [v6] In-Reply-To: <1n3zdw-hEfo4HPBU94IL4osY6Msw9QM136uwxLFlv24=.5e04fdd0-b7d6-4b06-8e1c-61ca9ac76162@github.com> References: <81i7tInHHp-rf5jdplOH3TaSatjsumQ-64cgxQejyuI=.2da150e4-3cc5-4b2f-a542-ed9afee1adcc@github.com> <1n3zdw-hEfo4HPBU94IL4osY6Msw9QM136uwxLFlv24=.5e04fdd0-b7d6-4b06-8e1c-61ca9ac76162@github.com> Message-ID: On Wed, 2 Jun 2021 16:03:28 GMT, Henrik Dafg?rd wrote: >> Joshua Matsuoka has updated the pull request incrementally with one additional commit since the last revision: >> >> Fix rcp feature to use new agent plugin name > > I'd like to see another pass at which strings should be externalized and which shouldn't, there are a few that look like they need non-nls comments. There are also a few too many TODOs and references that should be tracked in JIRA with issue numbers in the code. @Gunde mind taking another look when you get some time? :) ------------- PR: https://git.openjdk.java.net/jmc/pull/226 From aptmac at openjdk.java.net Tue Jun 29 16:57:19 2021 From: aptmac at openjdk.java.net (Alex Macdonald) Date: Tue, 29 Jun 2021 16:57:19 GMT Subject: RFR: JMC-5904: Merge org.openjdk.jmc.ui.celleditors with org.openjdk.jmc.rjmx.ui.celleditors Message-ID: This PR addresses JMC-5904 [[0]](https://bugs.openjdk.java.net/browse/JMC-5904), in which it is noted that org.openjdk.jmc.ui.celleditors could be merged with org.openjdk.jmc.rjmx.ui.celleditors instead of separating the code. For the most part this is a fairly straightforward migration of code. There are three classes in jmc.ui.celleditors that needed to be moved into rjmx.ui.celleditors: 1. ClearableTextCellEditor 2. CommonCellEditors 3. NullableTextCellEditor Once these files are moved there is a slight problem: org.openjdk.jmc.ui.misc.FilterEditor uses CommonCellEditors, and org.openjdk.jmc.rjmx.ui requires org.openjdk.jmc.ui. In this case, adding a dependency from org.openjdk.jmc.rjmx.ui.celleditors.CommonCellEditors to org.openjdk.jmc.ui.misc.FilterEditors would introduce a circular dependency. The solution I've gone with here is to move FilterEditor to org.openjdk.jmc.flightrecorder.ui, which IMO makes sense anyways because it's closer to the code it gets consumed by. FilterEditor is used in: - _org.openjdk.jmc.flightrecorder.ui_.common.DataPageToolkit - _org.openjdk.jmc.flightrecorder.ui_.common.FilterComponent - _org.openjdk.jmc.flightrecorder.ui_.common.LaneEditor - _org.openjdk.jmc.flightrecorder.ui_.pages.ItemHandlerPage **Note:** this issue was originally targeted for 8.1.0, but isn't really critical (it's a P4 task), so if desired we can hold off on integrating it now and keep this around for integration into 8.2.0 as discussed in the jmc bi-weekly calls [0] https://bugs.openjdk.java.net/browse/JMC-5904 ------------- Commit messages: - 5904: Merge org.openjdk.jmc.ui.celleditors with org.openjdk.jmc.rjmx.ui.celleditors Changes: https://git.openjdk.java.net/jmc/pull/271/files Webrev: https://webrevs.openjdk.java.net/?repo=jmc&pr=271&range=00 Issue: https://bugs.openjdk.java.net/browse/JMC-5904 Stats: 273 lines in 22 files changed: 93 ins; 172 del; 8 mod Patch: https://git.openjdk.java.net/jmc/pull/271.diff Fetch: git fetch https://git.openjdk.java.net/jmc pull/271/head:pull/271 PR: https://git.openjdk.java.net/jmc/pull/271 From marcus at hirt.se Tue Jun 29 20:12:52 2021 From: marcus at hirt.se (Marcus Hirt) Date: Tue, 29 Jun 2021 22:12:52 +0200 Subject: JMC 8.2.0 plan Message-ID: <000101d76d23$23c895b0$6b59c110$@hirt.se> Hi all, I propose the following dates for the 8.2.0 release: 2021-11-24 RDS 2021-12-22 RDP2 2022-01-19 GA Let me know what you think! Kind regards, Marcus From duke at openjdk.java.net Wed Jun 30 19:42:17 2021 From: duke at openjdk.java.net (duke) Date: Wed, 30 Jun 2021 19:42:17 GMT Subject: git: openjdk/jmc: 6 new changesets Message-ID: Changeset: ee428c51 Author: ghb Committer: Marcus Hirt Date: 2020-10-26 08:05:24 +0000 URL: https://git.openjdk.java.net/jmc/commit/ee428c511b619ad31694a456eacd124bc0028174 6398: Better JNDI Usage ! application/org.openjdk.jmc.browser.jdp/src/main/java/org/openjdk/jmc/browser/jdp/JDPDescriptorProvider.java ! application/org.openjdk.jmc.browser.jdp/src/main/java/org/openjdk/jmc/browser/jdp/preferences/JDPPreferencePage.java ! application/org.openjdk.jmc.browser.jdp/src/main/java/org/openjdk/jmc/browser/jdp/preferences/Messages.java ! application/org.openjdk.jmc.browser.jdp/src/main/java/org/openjdk/jmc/browser/jdp/preferences/PreferenceConstants.java ! application/org.openjdk.jmc.browser.jdp/src/main/java/org/openjdk/jmc/browser/jdp/preferences/PreferenceInitializer.java ! application/org.openjdk.jmc.browser.jdp/src/main/resources/org/openjdk/jmc/browser/jdp/preferences/messages.properties ! core/org.openjdk.jmc.jdp/src/main/java/org/openjdk/jmc/jdp/common/Configuration.java Changeset: 5f23f549 Author: ghb Committer: Marcus Hirt Date: 2020-10-26 08:07:34 +0000 URL: https://git.openjdk.java.net/jmc/commit/5f23f549e5c2bea41327c4c6cd099335c87530bf 6336: Remove Triple DES Cipher in Secure store ! application/org.openjdk.jmc.ui.common/src/main/java/org/openjdk/jmc/ui/common/security/SecureStore.java Changeset: a3fa1208 Author: guru_hb Committer: Marcus Hirt Date: 2021-03-12 11:10:13 +0000 URL: https://git.openjdk.java.net/jmc/commit/a3fa1208a1ac50657e925ab6e649608b8113ef26 6920: UI improvements Reviewed-by: cries, bbanathur, schaturvedi ! application/org.openjdk.jmc.rjmx/META-INF/MANIFEST.MF ! application/org.openjdk.jmc.rjmx/src/main/java/org/openjdk/jmc/rjmx/internal/JMXRMISystemPropertiesProvider.java ! application/org.openjdk.jmc.rjmx/src/main/java/org/openjdk/jmc/rjmx/internal/RJMXConnection.java ! application/org.openjdk.jmc.rjmx/src/main/java/org/openjdk/jmc/rjmx/messages/internal/Messages.java ! application/org.openjdk.jmc.rjmx/src/main/resources/org/openjdk/jmc/rjmx/messages/internal/messages.properties ! application/org.openjdk.jmc.ui.common/src/main/java/org/openjdk/jmc/ui/common/security/SecureStore.java Changeset: ef101c27 Author: ghb Committer: Marcus Hirt Date: 2021-03-16 05:30:57 +0000 URL: https://git.openjdk.java.net/jmc/commit/ef101c27f8786cc6ed2fd00746fca59acc237ae4 7172: fix spell mistake in secure store class ! application/org.openjdk.jmc.ui.common/src/main/java/org/openjdk/jmc/ui/common/security/SecureStore.java Changeset: 66685ca8 Author: ghb Committer: Marcus Hirt Date: 2021-03-23 11:37:58 +0000 URL: https://git.openjdk.java.net/jmc/commit/66685ca8beecf9044fffc8d437abe024da7c2c1a 7188: JMC fails to dump file and gets stuck when flightrecording is attempted on jmxremote connection ! application/org.openjdk.jmc.browser/src/main/java/org/openjdk/jmc/browser/wizards/ConnectionWizard.java ! application/org.openjdk.jmc.browser/src/main/java/org/openjdk/jmc/browser/wizards/Messages.java ! application/org.openjdk.jmc.browser/src/main/resources/org/openjdk/jmc/browser/wizards/messages.properties ! application/org.openjdk.jmc.rjmx/META-INF/MANIFEST.MF ! application/org.openjdk.jmc.rjmx/src/main/java/org/openjdk/jmc/rjmx/internal/RJMXConnection.java ! application/org.openjdk.jmc.rjmx/src/main/java/org/openjdk/jmc/rjmx/messages/internal/Messages.java ! application/org.openjdk.jmc.rjmx/src/main/resources/org/openjdk/jmc/rjmx/messages/internal/messages.properties Changeset: e838a74c Author: Marcus Hirt Date: 2021-06-23 20:46:16 +0000 URL: https://git.openjdk.java.net/jmc/commit/e838a74ca34df98728a7554e3100a414e00c4c5e 7304: JMC 8.0.1 fix formatting failure ! application/org.openjdk.jmc.browser.jdp/src/main/java/org/openjdk/jmc/browser/jdp/JDPDescriptorProvider.java ! application/org.openjdk.jmc.browser.jdp/src/main/java/org/openjdk/jmc/browser/jdp/preferences/JDPPreferencePage.java ! application/org.openjdk.jmc.browser.jdp/src/main/java/org/openjdk/jmc/browser/jdp/preferences/PreferenceInitializer.java ! application/org.openjdk.jmc.browser/src/main/java/org/openjdk/jmc/browser/wizards/ConnectionWizard.java ! application/org.openjdk.jmc.rjmx/src/main/java/org/openjdk/jmc/rjmx/internal/JMXRMISystemPropertiesProvider.java ! application/org.openjdk.jmc.ui.common/src/main/java/org/openjdk/jmc/ui/common/security/SecureStore.java From aptmac at openjdk.java.net Wed Jun 30 20:30:22 2021 From: aptmac at openjdk.java.net (Alex Macdonald) Date: Wed, 30 Jun 2021 20:30:22 GMT Subject: RFR: 5904: Merge org.openjdk.jmc.ui.celleditors with org.openjdk.jmc.rjmx.ui.celleditors [v2] In-Reply-To: References: Message-ID: > This PR addresses JMC-5904 [[0]](https://bugs.openjdk.java.net/browse/JMC-5904), in which it is noted that org.openjdk.jmc.ui.celleditors could be merged with org.openjdk.jmc.rjmx.ui.celleditors instead of separating the code. > > For the most part this is a fairly straightforward migration of code. There are three classes in jmc.ui.celleditors that needed to be moved into rjmx.ui.celleditors: > 1. ClearableTextCellEditor > 2. CommonCellEditors > 3. NullableTextCellEditor > > Once these files are moved there is a slight problem: org.openjdk.jmc.ui.misc.FilterEditor uses CommonCellEditors, and org.openjdk.jmc.rjmx.ui requires org.openjdk.jmc.ui. In this case, adding a dependency from org.openjdk.jmc.rjmx.ui.celleditors.CommonCellEditors to org.openjdk.jmc.ui.misc.FilterEditors would introduce a circular dependency. > > The solution I've gone with here is to move FilterEditor to org.openjdk.jmc.flightrecorder.ui, which IMO makes sense anyways because it's closer to the code it gets consumed by. FilterEditor is used in: > - _org.openjdk.jmc.flightrecorder.ui_.common.DataPageToolkit > - _org.openjdk.jmc.flightrecorder.ui_.common.FilterComponent > - _org.openjdk.jmc.flightrecorder.ui_.common.LaneEditor > - _org.openjdk.jmc.flightrecorder.ui_.pages.ItemHandlerPage > > **Note:** this issue was originally targeted for 8.1.0, but isn't really critical (it's a P4 task), so if desired we can hold off on integrating it now and keep this around for integration into 8.2.0 as discussed in the jmc bi-weekly calls > > [0] https://bugs.openjdk.java.net/browse/JMC-5904 Alex Macdonald has updated the pull request with a new target base due to a merge or a rebase. The pull request now contains one commit: 5904: Merge org.openjdk.jmc.ui.celleditors with org.openjdk.jmc.rjmx.ui.celleditors ------------- Changes: https://git.openjdk.java.net/jmc/pull/271/files Webrev: https://webrevs.openjdk.java.net/?repo=jmc&pr=271&range=01 Stats: 273 lines in 22 files changed: 93 ins; 172 del; 8 mod Patch: https://git.openjdk.java.net/jmc/pull/271.diff Fetch: git fetch https://git.openjdk.java.net/jmc pull/271/head:pull/271 PR: https://git.openjdk.java.net/jmc/pull/271 From jkang at openjdk.java.net Wed Jun 30 20:50:11 2021 From: jkang at openjdk.java.net (Jie Kang) Date: Wed, 30 Jun 2021 20:50:11 GMT Subject: RFR: 7167: Agent Plugin [v11] In-Reply-To: References: Message-ID: On Tue, 22 Jun 2021 22:10:08 GMT, Joshua Matsuoka wrote: >> This PR adds the Agent Plugin to JMC. This is a plugin for controlling the jmc agent and provides a way to attach it and add probes to any JVMs in the JVM browser, as well as providing a preset manager for creating/modifying probe presets. >> >> There is still a small amount of cleanup to be done so I'll mark it as a draft for now but it would be great to get a review :) > > Joshua Matsuoka has updated the pull request incrementally with one additional commit since the last revision: > > Decorating outputstreamWriter with a bufferedWriter Marked as reviewed by jkang (Author). ------------- PR: https://git.openjdk.java.net/jmc/pull/226