Thanks to visit codestin.com
Credit goes to github.com

Skip to content

MacOs aarch64: JFR: Thread method sampler crashed #863

@Karm

Description

@Karm

CI on GitHub actions which is an important bit of information as the GHA MacOs aarch64 is virtualized and GitHub customized, caught an error log line with a rudimentary non-Quarkus test app and native-image JFR:

[error][jfr        ] Thread method sampler crashed

I haven't tried to reproduce it on our baremetal yet.

Full log:

native-image --enable-monitoring=jfr -jar target/debug-symbols-smoke.jar target/debug-symbols-smoke
Command: native-image --enable-monitoring=jfr -jar target/debug-symbols-smoke.jar target/debug-symbols-smoke
========================================================================================================================
GraalVM Native Image: Generating 'debug-symbols-smoke' (executable)...
========================================================================================================================
For detailed information and explanations on the build output, visit:
https://github.com/oracle/graal/blob/master/docs/reference-manual/native-image/BuildOutput.md
------------------------------------------------------------------------------------------------------------------------
[1/8] Initializing...                                                                                    (5.6s @ 0.10GB)
 Java version: 24+36, vendor version: Mandrel-24.2.0.0-Final
 Graal compiler: optimization level: 2, target machine: armv8.1-a
 C compiler: cc (apple, arm64, 16.0.0)
 Garbage collector: Serial GC (max heap size: 80% of RAM)
 1 user-specific feature(s):
 - com.oracle.svm.thirdparty.gson.GsonFeature
------------------------------------------------------------------------------------------------------------------------
Build resources:
 - 5.29GB of memory (75.6% of 7.00GB system memory, determined at start)
 - 3 thread(s) (100.0% of 3 available processor(s), determined at start)
[2/8] Performing analysis...  [****]                                                                    (25.1s @ 0.43GB)
    4,677 reachable types   (76.5% of    6,110 total)
    5,590 reachable fields  (45.4% of   12,317 total)
   21,651 reachable methods (48.8% of   44,332 total)
    1,475 types,    13 fields, and   300 methods registered for reflection
       58 types,    58 fields, and    52 methods registered for JNI access
        5 native libraries: -framework Foundation, dl, m, pthread, z
[3/8] Building universe...                                                                               (3.7s @ 0.46GB)
[4/8] Parsing methods...      [**]                                                                       (3.0s @ 0.52GB)
[5/8] Inlining methods...     [***]                                                                      (3.5s @ 0.55GB)
[6/8] Compiling methods...    [*****]                                                                   (25.9s @ 0.73GB)
[7/8] Laying out methods...   [**]                                                                       (2.4s @ 0.47GB)
[8/8] Creating image...       [**]                                                                       (2.5s @ 0.54GB)
   7.61MB (38.15%) for code area:    12,591 compilation units
  11.88MB (59.52%) for image heap:  162,751 objects and 55 resources
 475.31kB ( 2.33%) for other data
  19.95MB in total
------------------------------------------------------------------------------------------------------------------------
Top 10 origins of code area:                                Top 10 object types in image heap:
   5.24MB java.base                                            2.22MB byte[] for java.lang.String
   1.25MB svm.jar (Native Image)                               2.15MB byte[] for code metadata
 689.73kB jdk.jfr                                              1.52MB java.lang.String
 101.20kB java.logging                                         1.12MB java.lang.Class
  96.79kB jdk.proxy1                                         438.47kB com.oracle.svm.core.hub.DynamicHubCompanion
  66.61kB org.graalvm.nativeimage.base                       320.66kB java.lang.Object[]
  47.36kB jdk.proxy2                                         311.91kB java.util.HashMap$Node
  20.41kB org.graalvm.collections                            309.54kB java.lang.String[]
  18.84kB jdk.internal.vm.ci                                 291.17kB byte[] for general heap data
  11.63kB jdk.proxy3                                         216.43kB byte[] for reflection metadata
  16.69kB for 6 more packages                                  3.02MB for 1256 more object types
------------------------------------------------------------------------------------------------------------------------
Recommendations:
 HEAP: Set max heap for improved and more predictable memory usage.
 CPU:  Enable more CPU features with '-march=native' for improved performance.
------------------------------------------------------------------------------------------------------------------------
                        7.0s (9.4% of total time) in 364 GCs | Peak RSS: 1.15GB | CPU load: 2.12
------------------------------------------------------------------------------------------------------------------------
Build artifacts:
 /Users/runner/work/mandrel-integration-tests/mandrel-integration-tests/ts/apps/debug-symbols-smoke/target/debug-symbols-smoke (executable)
========================================================================================================================
Finished generating 'debug-symbols-smoke' in 1m 13s.
Command: java -jar ./target/debug-symbols-smoke.jar
Q to quit
b6951775b0375ea13fc977581e54eb36d483e95ed3bc1e62fcb8da59830f1ef9
Command: java -XX:StartFlightRecording=filename=logs/flight-java.jfr -Xlog:jfr -jar ./target/debug-symbols-smoke.jar
[0.189s][info][jfr] Flight Recorder initialized
[0.189s][info][jfr] Repository base directory: /var/folders/x7/ch5v91h56_zbvbd1y2f600dm0000gn/T
[0.208s][info][jfr] Started recording "1" (1) {dumponexit=true, filename=/Users/runner/work/mandrel-integration-tests/mandrel-integration-tests/ts/apps/debug-symbols-smoke/logs/flight-java.jfr}
[0.208s][info][jfr,startup] Started recording 1. No limit specified, using maxsize=250MB as default.
[0.208s][info][jfr,startup] 
[0.208s][info][jfr,startup] Use jcmd 3572 JFR.dump name=1 to copy recording data to file.
Q to quit
[1.484s][error][jfr        ] Thread method sampler crashed
b6951775b0375ea13fc977581e54eb36d483e95ed3bc1e62fcb8da59830f1ef9
[1.798s][info ][jfr        ] Stopped recording "1" (1). Reason "Dump on exit".
[1.812s][info ][jfr        ] Transferred 433991 bytes from the disk repository
[1.818s][info ][jfr        ] Wrote recording "1" (1) to /Users/runner/work/mandrel-integration-tests/mandrel-integration-tests/ts/apps/debug-symbols-smoke/logs/flight-java.jfr
[1.819s][info ][jfr        ] Closed recording "1" (1)
[1.820s][info ][jfr        ] Removed repository /private/var/folders/x7/ch5v91h56_zbvbd1y2f600dm0000gn/T/2025_07_18_08_18_22_3572
Command: ./target/debug-symbols-smoke
Q to quit
b6951775b0375ea13fc977581e54eb36d483e95ed3bc1e62fcb8da59830f1ef9
Command: ./target/debug-symbols-smoke -XX:+FlightRecorder -XX:StartFlightRecording=filename=logs/flight-native.jfr -XX:FlightRecorderLogging=jfr
[info][jfr] Added periodic task for EveryChunkPeriodEvents(10575)
[info][jfr] Added periodic task for EndChunkPeriodEvents(10580)
[info][jfr] Flight Recorder initialized
[info][jfr] Repository base directory: /var/folders/x7/ch5v91h56_zbvbd1y2f600dm0000gn/T
[info][jfr] Started recording "1" (1) {dumponexit=true, filename=/Users/runner/work/mandrel-integration-tests/mandrel-integration-tests/ts/apps/debug-symbols-smoke/logs/flight-native.jfr}
Q to quit
b6951775b0375ea13fc977581e54eb36d483e95ed3bc1e62fcb8da59830f1ef9
[info][jfr] Stopped recording "1" (1). Reason "Dump on exit".
[info][jfr] Transferred 221713 bytes from the disk repository
[info][jfr] Wrote recording "1" (1) to /Users/runner/work/mandrel-integration-tests/mandrel-integration-tests/ts/apps/debug-symbols-smoke/logs/flight-native.jfr
[info][jfr] Closed recording "1" (1)
[info][jfr] Removed repository /private/var/folders/x7/ch5v91h56_zbvbd1y2f600dm0000gn/T/2025_07_18_08_18_29_3609

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions