Previously Completed JIRA Tickets

Erik Gahlin erik.gahlin at
Tue Nov 27 17:33:16 UTC 2018

Hi Ken,

You can create a large recording like this:

import jdk.jfr.*;

public class LargeRecording {
     static class MyEvent extends Event {
     public static void main(String[] args) throws Exception {
         try (Recording r = new Recording()) {
             do {
                 for (int i = 0; i < 1_000_000; i++) {
                     MyEvent e = new MyEvent();
                 System.out.println("Size: " + r.getSize() / (1024 * 
1024) + " MB");
             } while (r.getSize() < 1024 * 1024 * 1024);
             Path file = Files.createTempFile("large-recording", ".jfr");
             System.out.println("Dumping file at " + file);
             System.out.println("File will be removed in 30 s. ");
             System.out.println("File removed!");


> Hi all,
> I've created a list of bugs that most likely have been solved so that they
> can be resolved on JIRA. Please let me know if there was any issues with
> how I attempted to replicate.
> 1. Select OldObjectSample in Event Browser
> 2. Objects that are not in an array display an Array Size of -1 rather than
> -
> EventAppearance class no longer exists in flightrecorder.configuration
> -
> 1. Added a Custom Event to a JVM and opened the Recording Wizard
> 2. Selected my custom event and the Enabled checkbox was not visually
> selected and did not record when started unless selected
> -
>     I'm not sure about this one as I'm unable to create large recordings on
> my machine, a few hundred megabytes max so I haven't noticed any
> significant lag. However it appears a large portion of the data is
> persisted after the page is loaded for the first time so I'm wondering if
> this is mostly an issue if you try to switch between a number of pages that
> have yet to be loaded.
>       As well the Outline tab only updates the highlighted selection to the
> last selection which seems to indicates the load is being aborted at some
> point. An example to make this more clear would be if we select Thread ->
> Memory -> File I/O -> Socket I/O very quickly we'll only see Threads
> initially highlighted then Socket I/O will load and be highlighted,
> skipping over B and C.
>      Any more information regarding this one would be great thanks.
> -
>       Again not sure about this one as I'm not aware of what
> FilterMatcher.regexpMatch() looked like at the time this bug was opened as
> there is no history as a result of the move to the OpenJDK. That being said
> it caches the most recently compiled Pattern as a class variable and only
> compiles a new Pattern if it doesn't equal the filterString.
>       This to me sounds like some changes were made since the ticket refers
> to a new pattern being compiled each time it's called. If someone could
> clarify this that would be great.
> Thanks,
> Ken Dobson

More information about the jmc-dev mailing list