-
Notifications
You must be signed in to change notification settings - Fork 328
Closed
Labels
Description
I have a Java project that is using Graal JS as a polyglot. We have observed a memory leak in our Js code and we are trying to look at the JavaScript heap using VisualVM but JS heap is not successfully retrieved
Java version :
java 21.0.6 2025-01-21 LTS
Java(TM) SE Runtime Environment Oracle GraalVM 21.0.6+8.1 (build 21.0.6+8-LTS-jvmci-23.1-b55)
Java HotSpot(TM) 64-Bit Server VM Oracle GraalVM 21.0.6+8.1 (build 21.0.6+8-LTS-jvmci-23.1-b55, mixed mode, sharing)
Graal JS version : 24.1.2
Error in Visual VM log file :
SEVERE [org.openide.util.RequestProcessor]: Error in RequestProcessor org.graalvm.visualvm.heapviewer.truffle.ui.TruffleSummaryView$1$1
java.lang.ClassCastException: class org.graalvm.visualvm.heapviewer.truffle.dynamicobject.DynamicObject$Property$1 cannot be cast to class org.graalvm.visualvm.lib.jfluid.heap.ObjectFieldValue (org.graalvm.visualvm.heapviewer.truffle.dynamicobject.DynamicObject$Property$1 is in unnamed module of loader org.netbeans.StandardModule$OneModuleClassLoader @5e2a033e; org.graalvm.visualvm.lib.jfluid.heap.ObjectFieldValue is in unnamed module of loader org.netbeans.StandardModule$OneModuleClassLoader @43627445)
at org.graalvm.visualvm.heapviewer.truffle.lang.javascript.JavaScriptHeapFragment.getPrototype(JavaScriptHeapFragment.java:155)
at org.graalvm.visualvm.heapviewer.truffle.lang.javascript.JavaScriptHeapFragment.getPrototype(JavaScriptHeapFragment.java:147)
at org.graalvm.visualvm.heapviewer.truffle.lang.javascript.JavaScriptHeapFragment.getObjectType(JavaScriptHeapFragment.java:127)
at org.graalvm.visualvm.heapviewer.truffle.lang.javascript.JavaScriptObject.computeType(JavaScriptObject.java:49)
at org.graalvm.visualvm.heapviewer.truffle.dynamicobject.DynamicObject.getType(DynamicObject.java:160)
at org.graalvm.visualvm.heapviewer.truffle.TruffleType$TypesComputer.getTypeName(TruffleType.java:179)
at org.graalvm.visualvm.heapviewer.truffle.TruffleType$TypesComputer.addObject(TruffleType.java:157)
at org.graalvm.visualvm.heapviewer.truffle.TruffleLanguageHeapFragment.computeStatistics(TruffleLanguageHeapFragment.java:165)
at org.graalvm.visualvm.heapviewer.truffle.TruffleLanguageHeapFragment.checkInitialized(TruffleLanguageHeapFragment.java:123)
at org.graalvm.visualvm.heapviewer.truffle.TruffleLanguageHeapFragment.getHeapSize(TruffleLanguageHeapFragment.java:78)
at org.graalvm.visualvm.heapviewer.truffle.ui.TruffleSummaryView$OverviewSection.computeHeapData(TruffleSummaryView.java:248)
at org.graalvm.visualvm.heapviewer.truffle.ui.TruffleSummaryView$OverviewSection.computeData(TruffleSummaryView.java:234)
at org.graalvm.visualvm.heapviewer.truffle.ui.TruffleSummaryView$1$1.run(TruffleSummaryView.java:124)
at org.openide.util.RequestProcessor$Task.run(RequestProcessor.java:1420)
at org.netbeans.modules.openide.util.GlobalLookup.execute(GlobalLookup.java:45)
at org.openide.util.lookup.Lookups.executeWith(Lookups.java:287)
[catch] at org.openide.util.RequestProcessor$Processor.run(RequestProcessor.java:2035)
VisualVM version : 2.1.10