5 Replies Latest reply: Aug 7, 2014 1:28 PM by Luz Mestre-Oracle RSS

    JRockit JRMC Flight recording

    2610963

      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

        • 1. Re: JRockit JRMC Flight recording
          Luz Mestre-Oracle

          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

          • 2. Re: JRockit JRMC Flight recording
            2610963

            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

            • 3. Re: JRockit JRMC Flight recording
              Luz Mestre-Oracle

              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

              • 4. Re: JRockit JRMC Flight recording
                2610963

                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

                • 5. Re: JRockit JRMC Flight recording
                  Luz Mestre-Oracle

                  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