On January 27th, this site will be read-only as we migrate to Oracle Forums for an improved community experience. You will not be able to initiate activity until January 30th, when you will be able to use this site as normal.

    Forum Stats

  • 3,889,524 Users
  • 2,269,754 Discussions
  • 7,916,770 Comments

Discussions

JRockit JRMC Flight recording

2610963
2610963 Member Posts: 4
edited Aug 7, 2014 2:28PM in JRockit

Hi

I am using JRockit JRMC flight recording to monitor app server JVM. I set the time to record as 120 minutes and just when time is about to end, i see following exception and am unable to open the JRA file. PLease help.

java.lang.StringIndexOutOfBoundsException: String index out of range: -21176

  at java.lang.String.checkBounds(String.java:397)

  at java.lang.String.<init>(String.java:442)

  at com.jrockit.mc.flightrecorder.internal.api.binary.jrockit.parsers.UTFStringParser.read(UTFStringParser.java:34)

  at com.jrockit.mc.flightrecorder.internal.api.binary.jrockit.parsers.UTFStringParser.read(UTFStringParser.java:1)

  at com.jrockit.mc.flightrecorder.internal.api.binary.jrockit.parsers.ConstantMapParser.read(ConstantMapParser.java:40)

  at com.jrockit.mc.flightrecorder.internal.api.binary.jrockit.parsers.CheckPointParser.read(CheckPointParser.java:40)

  at com.jrockit.mc.flightrecorder.internal.api.binary.jrockit.parsers.MetadataParser.read(MetadataParser.java:57)

  at com.jrockit.mc.flightrecorder.internal.api.binary.jrockit.parsers.MainParser.read(MainParser.java:98)

  at com.jrockit.mc.flightrecorder.internal.api.binary.jrockit.parsers.MainParser.read(MainParser.java:51)

  at com.jrockit.mc.flightrecorder.internal.api.binary.jrockit.JRockitBinaryEventProvider.readFromInput(JRockitBinaryEventProvider.java:114)

  at com.jrockit.mc.flightrecorder.internal.api.binary.jrockit.JRockitBinaryEventProvider.initialize(JRockitBinaryEventProvider.java:93)

  at com.jrockit.mc.flightrecorder.internal.api.binary.jrockit.JRockitBinaryEventProvider.createEventTypeRepository(JRockitBinaryEventProvider.java:52)

  at com.jrockit.mc.flightrecorder.FlightRecording.getEventTypeRepository(FlightRecording.java:67)

  at com.jrockit.mc.flightrecorder.ui.FlightRecordingEditor.createTyperepository(FlightRecordingEditor.java:98)

  at com.jrockit.mc.flightrecorder.ui.FlightRecordingEditor.initialize(FlightRecordingEditor.java:61)

  at com.jrockit.mc.components.ui.design.DesignEditor.init(DesignEditor.java:80)

  at org.eclipse.ui.internal.EditorManager.createSite(EditorManager.java:798)

  at org.eclipse.ui.internal.EditorReference.createPartHelper(EditorReference.java:644)

  at org.eclipse.ui.internal.EditorReference.createPart(EditorReference.java:462)

  at org.eclipse.ui.internal.WorkbenchPartReference.getPart(WorkbenchPartReference.java:595)

  at org.eclipse.ui.internal.EditorReference.getEditor(EditorReference.java:286)

  at org.eclipse.ui.internal.WorkbenchPage.busyOpenEditorBatched(WorkbenchPage.java:2857)

  at org.eclipse.ui.internal.WorkbenchPage.busyOpenEditor(WorkbenchPage.java:2762)

  at org.eclipse.ui.internal.WorkbenchPage.access$11(WorkbenchPage.java:2754)

  at org.eclipse.ui.internal.WorkbenchPage$10.run(WorkbenchPage.java:2705)

  at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:70)

  at org.eclipse.ui.internal.WorkbenchPage.openEditor(WorkbenchPage.java:2701)

  at org.eclipse.ui.internal.WorkbenchPage.openEditor(WorkbenchPage.java:2685)

  at org.eclipse.ui.internal.WorkbenchPage.openEditor(WorkbenchPage.java:2668)

  at com.jrockit.mc.flightrecorder.ui.FlightRecordingOpener.open(FlightRecordingOpener.java:128)

  at com.jrockit.mc.flightrecorder.ui.FlightRecordingOpener.openFile(FlightRecordingOpener.java:121)

  at com.jrockit.mc.flightrecorder.ui.FlightRecordingOpener.openIfValidFile(FlightRecordingOpener.java:93)

  at com.jrockit.mc.flightrecorder.ui.FlightRecordingOpener.open(FlightRecordingOpener.java:85)

  at com.jrockit.mc.rcp.application.MissionControlEditorDropAdapter.openFilename(MissionControlEditorDropAdapter.java:92)

  at com.jrockit.mc.rcp.application.MissionControlEditorDropAdapter$1.run(MissionControlEditorDropAdapter.java:66)

  at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3476)

  at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:2405)

  at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2369)

  at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:2221)

  at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:500)

  at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)

  at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:493)

  at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149)

  at com.jrockit.mc.rcp.application.Application.start(Application.java:27)

  at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:194)

  at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110)

  at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79)

  at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:368)

  at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:179)

  at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

  at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)

  at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)

  at java.lang.reflect.Method.invoke(Method.java:597)

  at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:559)

  at org.eclipse.equinox.launcher.Main.basicRun(Main.java:515)

  at org.eclipse.equinox.launcher.Main.run(Main.java:1312)

  at org.eclipse.equinox.launcher.Main.main(Main.java:1287)

  at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

  at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)

  at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)

  at java.lang.reflect.Method.invoke(Method.java:597)

  at com.jrockit.mc.rcp.start.MCMain.run(MCMain.java:104)

  at com.jrockit.mc.rcp.start.MCMain.main(MCMain.java:75)

mc_error.png

Answers

  • Luz Mestre-Oracle
    Luz Mestre-Oracle Principal Technical Support Engineer at Oracle Support ChileMember Posts: 14 Employee

    Please see my comments below:

    1. What versión of JRockit are you using? (java -versión)

    2. You can try the latest JRockit version  available on MOS using this doc:

    All Java SE Downloads on MOS (Doc ID 1439822.1)

    Best Regards

    Luz

  • 2610963
    2610963 Member Posts: 4

    Hi Luz,

    java version "1.6.0_33"

    Java(TM) SE Runtime Environment (build 1.6.0_33-b05)

    Java HotSpot(TM) Client VM (build 20.8-b03, mixed mode, sharing)

    JRMC s version 4.0. I might not be able to download latest JRockit. I also observed that i get the above error when i record using flight recorder for more than 15 minutes. PLease help.

    Thanks

    Krupa

  • Luz Mestre-Oracle
    Luz Mestre-Oracle Principal Technical Support Engineer at Oracle Support ChileMember Posts: 14 Employee

    I meant the java version where the recording was created

    <JRockit>/bin/java -version

    You can try at least using the latest public JRMC to see if it is opened.

    Best Regards

    Luz

  • 2610963
    2610963 Member Posts: 4

    java version "1.6.0_24"

    Java(TM) SE Runtime Environment (build 1.6.0_24-b07)

    Oracle JRockit(R) (build R28.1.3-11-141760-1.6.0_24-20110301-1429-windows-ia32,

    compiled mode)

    Yes, i tried JRMC 4.1 too. Facing same problem. PLease note when i record for 5 min, i do not see ths issue. I am beginning to think it is due to huge JRA file size. Also, i am runnin JRMC on Win 7 box.

    Thanks

    Krupa

  • Luz Mestre-Oracle
    Luz Mestre-Oracle Principal Technical Support Engineer at Oracle Support ChileMember Posts: 14 Employee

    Hi Krupa

    I haven't found any other similar issue in our knowledge base, 1.6.0_24 is a very old JDK you might be hitting a bug. I suggest to attempt to create the recording at least in the latest public JRockit release, at least to collect the traces you need.

    If the above is not possible, you can try shorter recordings or use other ways to capture the debugs you need, depending on what are you trying to achieve

    e.g:

    1. Thread dumps

    2. GC logs

    3. Heap dumps

    I hope this helps.

    Best Regards

    Luz


This discussion has been closed.