Skip to content

VisualVM freezes for several minutes before showing the profiling info #567

@alyamovsky

Description

@alyamovsky

Describe the bug
VisualVM freezes and becomes unresponsive when monitoring certain Java applications for extensive period of time before actually showing the profiling info. This occurs consistently when trying to interact with the application views within VisualVM, and no specific error message is displayed in the UI.

Then, in 6-10 minutes it suddenly shows the profiling data

Despite this, some other java apps like Intellij Idea and VisualVM itself are displayed without any lags.

To Reproduce

  1. Start VisualVM.
  2. Attach VisualVM to a running Java process, such as java Test.
  3. Click somewhere in the left menu.
  4. VisualVM becomes unresponsive with no error feedback.
  5. After some time, around 8 minutes in average, the app wakes up and shows the info.

'Test' code:

public class Test {
    public static void main(String[] args) {
        System.out.println("Hello, World!");
        while (true) {
            try {
                Thread.sleep(1000);
            } catch (InterruptedException e) {
                e.printStackTrace();
            }
        }
    }
}

While looking at VisualVM process itself works fine:
image

When I try to open any local applications, the loader is going back and forth indefinitely:
image

Until I try to click elsewhere on the window, when it freezes:
image

And after 6-8 minutes it wakes up and works as normal:
image

Expected behavior
Expected VisualVM to monitor and interact with Java applications without becoming unresponsive or freezing for several minutes

VisualVM log

-------------------------------------------------------------------------------
>Log Session: Sunday, April 14, 2024 at 10:30:24 PM Central European Summer Time
>System Info: 
  Product Version         = VisualVM 2.1.8
  Operating System        = Linux version 6.2.0-39-generic running on amd64
  Java; VM; Vendor        = 17.0.9; OpenJDK 64-Bit Server VM 17.0.9+9-Ubuntu-123.04; Private Build
  Runtime                 = OpenJDK Runtime Environment 17.0.9+9-Ubuntu-123.04
  Java Home               = /usr/lib/jvm/java-17-openjdk-amd64
  System Locale; Encoding = en_US (visualvm); UTF-8
  Home Directory          = /home/ddlzz
  Current Directory       = /home/ddlzz/Downloads/visualvm_218
  User Directory          = /home/ddlzz/.visualvm/2.1.8
  Cache Directory         = /home/ddlzz/.cache/visualvm/2.1.8
  Installation            = /home/ddlzz/Downloads/visualvm_218/visualvm
                            /home/ddlzz/Downloads/visualvm_218/platform
  Boot & Ext. Classpath   = 
  Application Classpath   = /home/ddlzz/Downloads/visualvm_218/platform/lib/boot.jar:/home/ddlzz/Downloads/visualvm_218/platform/lib/org-openide-modules.jar:/home/ddlzz/Downloads/visualvm_218/platform/lib/org-openide-util.jar:/home/ddlzz/Downloads/visualvm_218/platform/lib/org-openide-util-lookup.jar:/home/ddlzz/Downloads/visualvm_218/platform/lib/org-openide-util-ui.jar
  Startup Classpath       = /home/ddlzz/Downloads/visualvm_218/platform/core/org-netbeans-libs-asm.jar:/home/ddlzz/Downloads/visualvm_218/platform/core/asm-9.5.jar:/home/ddlzz/Downloads/visualvm_218/platform/core/core.jar:/home/ddlzz/Downloads/visualvm_218/platform/core/core-base.jar:/home/ddlzz/Downloads/visualvm_218/platform/core/asm-tree-9.5.jar:/home/ddlzz/Downloads/visualvm_218/platform/core/asm-commons-9.5.jar:/home/ddlzz/Downloads/visualvm_218/platform/core/org-openide-filesystems.jar:/home/ddlzz/Downloads/visualvm_218/visualvm/core/org-graalvm-visualvm-modules-startup.jar:/home/ddlzz/Downloads/visualvm_218/visualvm/core/locale/core_visualvm.jar
-------------------------------------------------------------------------------
INFO [org.netbeans.core.startup.NbEvents]: Turning on modules:
	org.openide.util.lookup [8.55 20231030-ba85468772]
	org.openide.util [9.29 20231030-ba85468772]
	org.openide.util.ui [9.30 20231030-ba85468772]
	org.openide.modules [7.69 20231030-ba85468772]
	org.netbeans.api.annotations.common/1 [1.49 20231030-ba85468772]
	org.openide.filesystems [9.34 20231030-ba85468772]
	org.openide.awt [7.89 20231030-ba85468772]
	org.netbeans.api.progress/1 [1.69 20231030-ba85468772]
	org.netbeans.api.progress.nb [1.69 20231030-ba85468772]
	org.openide.dialogs [7.67 20231030-ba85468772]
	org.openide.nodes [7.66 20231030-ba85468772]
	org.openide.windows [6.98 20231030-ba85468772]
	org.netbeans.modules.editor.mimelookup/1 [1.61 20231030-ba85468772]
	org.openide.text [6.89 20231030-ba85468772]
	org.netbeans.api.scripting [1.18 20231030-ba85468772]
	org.netbeans.swing.tabcontrol [1.78 20231030-ba85468772]
	org.netbeans.swing.outline [1.55 20231030-ba85468772]
	org.openide.explorer [6.83 20231030-ba85468772]
	org.openide.actions [6.60 20231030-ba85468772]
	org.netbeans.modules.queries/1 [1.64 20231030-ba85468772]
	org.netbeans.api.templates [1.29 20231030-ba85468772]
	org.openide.filesystems.nb [9.31 20231030-ba85468772]
	org.openide.loaders [7.91 20231030-ba85468772]
	org.netbeans.api.intent [1.23 20231030-ba85468772]
	org.netbeans.api.io [1.24 20231030-ba85468772]
	org.openide.io [1.70 20231030-ba85468772]
	org.netbeans.swing.plaf [1.63 20231030-ba85468772]
	org.netbeans.modules.keyring [1.45 20231030-ba85468772]
	org.netbeans.libs.asm [5.24 20231030-ba85468772]
	org.netbeans.bootstrap/1 [2.100 20231030-ba85468772]
	org.netbeans.core.startup.base [1.83.0.1 1 20231030-ba85468772]
	org.netbeans.core.startup/1 [1.84.0.1 20231030-ba85468772]
	org.netbeans.modules.sampler [1.35 20231030-ba85468772]
	org.netbeans.core/2 [3.72 20231030-ba85468772]
	org.netbeans.spi.quicksearch [1.48 20231030-ba85468772]
	org.netbeans.modules.options.api/1 [1.66 20231030-ba85468772]
	org.netbeans.libs.flatlaf/1 [1.15 3.1 20231030-ba85468772]
	org.netbeans.swing.laf.flatlaf [1.14 20231030-ba85468772]
	org.netbeans.modules.settings/1 [1.70 20231030-ba85468772]
	org.netbeans.modules.sendopts/2 [2.57 20231030-ba85468772]
	org.netbeans.modules.progress.ui [1.54 20231030-ba85468772]
	org.netbeans.modules.options.keymap [1.58 20231030-ba85468772]
	org.netbeans.modules.masterfs/2 [2.76.0.2 2 20231030-ba85468772]
	org.netbeans.modules.masterfs.ui [2.24.0.2 20231030-ba85468772]
	org.netbeans.modules.masterfs.nio2 [1.36 20231030-ba85468772]
	org.netbeans.libs.jna/2 [2.16 20231030-ba85468772]
	org.netbeans.modules.masterfs.linux [1.34 20231030-ba85468772]
	org.netbeans.modules.keyring.fallback [1.29 20231030-ba85468772]
	org.netbeans.modules.keyring.impl [1.45 20231030-ba85468772]
	org.netbeans.modules.editor.mimelookup.impl/1 [1.53 20231030-ba85468772]
	org.netbeans.modules.autoupdate.services [1.77 20231030-ba85468772]
	org.netbeans.modules.autoupdate.ui [1.67 20231030-ba85468772]
	org.netbeans.modules.autoupdate.cli [1.35 20231030-ba85468772]
	org.netbeans.libs.jna.platform/2 [2.16 20231030-ba85468772]
	org.netbeans.core.windows/2 [2.106 20231030-ba85468772]
	org.netbeans.core.ui/1 [1.66 20231030-ba85468772]
	org.netbeans.core.network [1.33 20231030-ba85468772]
	org.netbeans.core.nativeaccess/1 [1.52 20231030-ba85468772]
	org.netbeans.core.multitabs/1 [1.33.0.1 1 20231030-ba85468772]
	org.netbeans.core.io.ui/1 [1.51 20231030-ba85468772]
	org.graalvm.visualvm.lib.jfluid/2 [2.17 240318]
	org.graalvm.visualvm.lib.charts/2 [2.1 240318]
	org.graalvm.visualvm.lib.common/2 [2.10 240318]
	org.graalvm.visualvm.lib.profiler.api/2 [2.2 240318]
	org.graalvm.visualvm.lib.ui/2 [2.4 240318]
	org.graalvm.visualvm.uisupport/2 [2.1 240318]
	org.graalvm.visualvm.core/2 [2.4 240318]
	org.graalvm.visualvm.host/2 [2.1 240318]
	org.graalvm.visualvm.application/2 [2.4 240318]
	org.graalvm.visualvm.tools/2 [2.3 240318]
	org.graalvm.visualvm.coredump/2 [2.1 240318]
	org.graalvm.visualvm.threaddump/2 [2.1 240318]
	org.graalvm.visualvm.lib.profiler.utilities/2 [2.0 240318]
	org.graalvm.visualvm.lib.profiler.attach/2 [2.2 240318]
	org.graalvm.visualvm.lib.profiler/2 [2.4 240318]
	org.graalvm.visualvm.lib.profiler.snaptracer/2 [2.0 240318]
	org.graalvm.visualvm.profiling/2 [2.3 240318]
	org.graalvm.visualvm.lib.jfluid.heap [1.3 240318]
	org.graalvm.visualvm.lib.profiler.oql/2 [2.0 240318]
	org.graalvm.visualvm.lib.profiler.heapwalker/2 [2.2 240318]
	org.graalvm.visualvm.heapviewer/2 [2.8 240318]
	org.graalvm.visualvm.heapdump/2 [2.1 240318]
	org.graalvm.visualvm.sampler.truffle/2 [2.1 240318]
	org.graalvm.visualvm.sampler/2 [2.2 240318]
	org.graalvm.visualvm.sa/2 [2.0 240318]
	org.graalvm.visualvm.modules.startup/2 [2.1 240318]
	org.graalvm.visualvm.profiler/2 [2.1 240318]
	org.graalvm.visualvm.pluginimporter [1.0 240318]
	org.graalvm.visualvm.modules.nashorn.jdk15 [1.1 240318]
	org.graalvm.visualvm.modules.appui/2 [2.1 240318]
	org.graalvm.visualvm.jvmstat/2 [2.0 240318]
	org.graalvm.visualvm.jvm/2 [2.0 240318]
	org.graalvm.visualvm.jmx/2 [2.2 240318]
	org.graalvm.visualvm.charts/2 [2.1 240318]
	org.graalvm.visualvm.jfr/2 [2.3 240318]
	org.graalvm.visualvm.jfr.jdk11/2 [2.2 240318]
	org.graalvm.visualvm.jfr.generic/2 [2.5 240318]
	org.graalvm.visualvm.host.views/2 [2.0 240318]
	org.graalvm.visualvm.host.remote/2 [2.0 240318]
	org.graalvm.visualvm.heapviewer.truffle/2 [2.1 240318]
	org.graalvm.visualvm.heapviewer.console/2 [2.0 240318]
	org.graalvm.visualvm.application.views/2 [2.1 240318]
	org.graalvm.visualvm.graalvm/2 [2.0 240318]
	org.graalvm.visualvm.gotosource/2 [2.0 240318]
	org.graalvm.visualvm.attach/2 [2.0 240318]
INFO [org.netbeans.core.network.proxy.NetworkProxyReloader]: System network proxy resolver: Gnome
INFO [org.netbeans.core.network.proxy.gnome.GsettingsNetworkProxy]: GSettings system proxy resolver: direct connection
INFO [org.netbeans.core.network.proxy.NetworkProxyReloader]: System network proxy reloading succeeded.
INFO [org.netbeans.core.network.proxy.NetworkProxyReloader]: System network proxy - mode: direct
INFO [org.netbeans.core.network.proxy.NetworkProxyReloader]: System network proxy: fell to default (correct if direct mode went before)
INFO [org.netbeans.ui.metrics.laf]: USG_LOOK_AND_FEEL
Diagnostic information
Input arguments:
	-Djdk.home=/usr/lib/jvm/java-17-openjdk-amd64
	-Dnetbeans.default_userdir_root=/home/ddlzz/.visualvm
	-Dnetbeans.running.environment=gnome
	-Dnetbeans.dirs=/home/ddlzz/Downloads/visualvm_218/visualvm:
	-Dnetbeans.home=/home/ddlzz/Downloads/visualvm_218/platform
	-Xms24m
	-Xmx768m
	-Dnetbeans.accept_license_class=org.graalvm.visualvm.modules.startup.AcceptLicense
	-Dnetbeans.importclass=org.graalvm.visualvm.modules.startup.ImportSettings
	-Dsun.jvmstat.perdata.syncWaitMs=10000
	-Dsun.java2d.noddraw=true
	-Dsun.java2d.d3d=false
	-Dorg.netbeans.core.TimeableEventQueue.quantum=360000
	-Dpolyglot.js.nashorn-compat=true
	-Dsun.misc.URLClassPath.disableJarChecking=true
	-Djdk.attach.allowAttachSelf=true
	-Dorg.openide.util.ImageUtilities.level=950
	--add-exports=java.desktop/com.sun.java.swing.plaf.gtk=ALL-UNNAMED
	--add-exports=java.desktop/sun.awt=ALL-UNNAMED
	--add-exports=jdk.internal.jvmstat/sun.jvmstat.monitor.event=ALL-UNNAMED
	--add-exports=jdk.internal.jvmstat/sun.jvmstat.monitor=ALL-UNNAMED
	--add-exports=java.desktop/sun.swing=ALL-UNNAMED
	--add-exports=jdk.attach/sun.tools.attach=ALL-UNNAMED
	--add-opens=java.desktop/sun.awt.X11=ALL-UNNAMED
	--add-opens=java.desktop/javax.swing.plaf.synth=ALL-UNNAMED
	--add-opens=java.base/java.net=ALL-UNNAMED
	--add-opens=java.base/java.lang.ref=ALL-UNNAMED
	--add-opens=java.base/java.lang=ALL-UNNAMED
	--add-opens=java.desktop/javax.swing=ALL-UNNAMED
	--add-opens=java.desktop/javax.swing.plaf.basic=ALL-UNNAMED
	-XX:+IgnoreUnrecognizedVMOptions
	-XX:+HeapDumpOnOutOfMemoryError
	-XX:HeapDumpPath=/home/ddlzz/.visualvm/2.1.8/var/log/heapdump.hprof
	-Djava.security.manager=allow
Compiler: HotSpot 64-Bit Tiered Compilers
Heap memory usage: initial 24.0MB maximum 768.0MB
Non heap memory usage: initial 7.3MB maximum -1b
Garbage collector: G1 Young Generation (Collections=11 Total time spent=0s)
Garbage collector: G1 Old Generation (Collections=0 Total time spent=0s)
Classes: loaded=6172 total loaded=6172 unloaded 0
INFO [org.netbeans.core.ui.warmup.DiagnosticTask]: Total memory 101,142,450,176
INFO [null]: Total physical memory 101,142,450,176
WARNING [org.netbeans.core.TimableEventQueue]: too much time in AWT thread org.netbeans.modules.sampler.InternalSampler@28709aea

Desktop (please complete the following information):
OS: Ubuntu 23.04
JDK version: Tested with OpenJDK 17, Temurin 21, and Oracle JDK 17
Version: VisualVM 2.1.8
Hardware info: Ryzen 9 5950x, 96gb RAM

Additional context
I tried different JDK versions, and also purged and reinstalled them. I also don't have any firewalls or antiviruses enabled

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