Uploaded image for project: 'JDK'
  1. JDK
  2. JDK-8352942

jdk/jfr/startupargs/TestMemoryOptions.java fails with 32-bit build

XMLWordPrintable

    • jfr
    • b19
    • x86

        jdk/jfr/startupargs/TestMemoryOptions.java fails with 32-bit Server VM.

        ```
         stdout: [Started recording 1. No limit specified, using maxsize=250MB as default.

        Use jcmd 8912 JFR.dump name=1 filename=FILEPATH to copy recording data to file.
        # [ timer expired, abort... ]
        ];
         stderr: []
         exitValue = -1

        java.lang.RuntimeException: Expected to get exit value of [0]

        at jdk.test.lib.process.OutputAnalyzer.shouldHaveExitValue(OutputAnalyzer.java:396)
        at jdk.jfr.startupargs.TestMemoryOptions$Driver.launchTestVM(TestMemoryOptions.java:515)
        at jdk.jfr.startupargs.TestMemoryOptions$Driver.runTestCase(TestMemoryOptions.java:523)
        at jdk.jfr.startupargs.TestMemoryOptions.main(TestMemoryOptions.java:658)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:498)
        at com.sun.javatest.regtest.agent.MainWrapper$MainThread.run(MainWrapper.java:127)
        at java.lang.Thread.run(Thread.java:750)

        JavaTest Message: Test threw exception: java.lang.RuntimeException: Expected to get exit value of [0]

        JavaTest Message: shutting down test

        STATUS:Failed.`main' threw exception: java.lang.RuntimeException: Expected to get exit value of [0]
        ```
        This test validates several combinations of memory options for JFR. All test cases pass with 64bit builds and 32bit Client VM. However, one test case fails with 32-bit Server VM.

        failed case JFR Options: -XX:FlightRecorderOptions=threadbuffersize=30m

        The cause is an inability to allocate memory, which is easily reproduced with "jave -version."

        ```
        $ java -server -XX:FlightRecorderOptions=threadbuffersize=30m -XX:StartFlightRecording -version
        Started recording 1. No limit specified, using maxsize=250MB as default.

        Use jcmd 8764 JFR.dump name=1 filename=FILEPATH to copy recording data to file.
        openjdk version "1.8.0_442"
        OpenJDK Runtime Environment (Temurin)(build 1.8.0_442-b06)
        OpenJDK Server VM (Temurin)(build 25.442-b06, mixed mode)
        # [ timer expired, abort... ]
        ```

        This test case probably does not assume memory usage including heap space on 32-bit build.

              tkiriyama Takuya Kiriyama
              tkiriyama Takuya Kiriyama
              Votes:
              0 Vote for this issue
              Watchers:
              5 Start watching this issue

                Created:
                Updated:
                Resolved: