RFR: 7031: Build a constant pool explorer page

Henrik Dafgård hdafgard at openjdk.java.net
Mon Mar 29 20:24:24 UTC 2021


On Thu, 11 Mar 2021 21:16:35 GMT, Jean-Philippe Bempel <github.com+4610701+jpbempel at openjdk.org> wrote:

> Add under Recording a new Page for ConstantPools
> Help to visualize what's inside constant pools part of a JFR recording
> 
> ![JMC_ConstantPoolsPage](https://user-images.githubusercontent.com/4610701/110855759-13569700-82b7-11eb-9981-deb0b8b5e185.png)
> 
> *Draft*
> - Icon is copy/paste from recording. If you have idea about how to replace it...
> - I have limited the tables to the search toolbar, visible by default
> - a hidden count column for constant values helps you find out when you duplicates constant (for OldObjectSample event issue) should not be useful otherwise

Looks good except for the state handling for the sash.

application/org.openjdk.jmc.flightrecorder.ui/src/main/java/org/openjdk/jmc/flightrecorder/ui/pages/ConstantPoolsPage.java line 178:

> 176: 		@Override
> 177: 		public void saveTo(IWritableState writableState) {
> 178: 			PersistableSashForm.saveState(sash, writableState.createChild(SASH_ELEMENT));

This saves the state of the SashForm, but that state isn't loaded in the IPageUI constructor, so the value used will only be the default for a SashForm.

E.g. `PersistableSashForm.loadState(sash, state.getChild(SASH));`

-------------

PR: https://git.openjdk.java.net/jmc/pull/228


More information about the jmc-dev mailing list