[VISUALVM-609] Max metaspace size is not aligned with its corresponding command-line option Created: 24/Mar/15  Updated: 24/Mar/15

Status: Open
Project: VisualVM
Component/s: code
Affects Version/s: 1.3.8
Fix Version/s: None

Type: Bug Priority: Major
Reporter: fabrizio.cucci Assignee: thurka
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

OS : Windows 7
JDK: 1.8 update 20



 Description   

Hi,

I was playing with some command-line options related to the metaspace region and I noticed a small discrepancy between the max size value I set by command-line and what VisualVM actually displays on the Metaspace tab.

I'm able to replicate this discrepancy by simply writing a "Hello World" program and using the following command-line options:

  • -XX:MaxMetaspaceSize=40m
  • -XX:+PrintFlagsFinal

I can see from the standard output that the maximum metaspace size is correctly set to 40MB:

  • uintx MaxMetaspaceSize := 41943040 {product}

While VisualVM displays:

  • Max: 1,082,130,432 B

Is it the expected behavior? Am I misinterpreting the displayed value?

Thanks,
Fabrizio






[VISUALVM-120] JMX application datasource cannot be reused on application restart Created: 28/Apr/08  Updated: 17/Feb/15

Status: Open
Project: VisualVM
Component/s: code
Affects Version/s: current
Fix Version/s: not determined

Type: Bug Priority: Major
Reporter: lmalvent Assignee: visualvm-issues
Resolution: Unresolved Votes: 6
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: All
Platform: All


Issuezilla Id: 120

 Description   

If an explicit JMX connection is created to connect to a given Java application
which has a remote JMX agent enabled, we open the application on VisualVM, and
then the application dies and restarts. The current JMX application datasource
cannot be reused (it will keep on showing the old views). In order to be able to
see the new application's views on VisualVM we need to remove the node from the
tree and add it again. Then opening the application should work as expected.

This fix is too risky to be implemented in VisualVM 1.0 but at least the
workaround for this limitation must be documented and made available in the
VisualVM FAQ.



 Comments   
Comment by lmalvent [ 28/Apr/08 ]

Another workaround that would preserve the persisted connection URL and the
security credentials thus avoiding to enter them again would be to restart
VisualVM right after the terminated applications have been restarted.

Comment by jsedlacek [ 30/Jun/08 ]

Updating summary.

Comment by thurka [ 19/Nov/08 ]

-

Comment by thurka [ 26/May/09 ]

reassigning

Comment by jsedlacek [ 28/Aug/09 ]
      • Issue 308 has been marked as a duplicate of this issue. ***
Comment by jsedlacek [ 10/Dec/10 ]
      • Issue 425 has been marked as a duplicate of this issue. ***
Comment by jan_goyvaerts [ 02/Mar/11 ]

This is probably related to the same problem: When trying to reopen the remote application I'm getting this error. With VisualVM 1.3.1 on Linux. It works on Windows however.

java.lang.NullPointerException
at com.sun.tools.visualvm.sa.SaModelProvider.getJdkHome(SaModelProvider.java:94)
at com.sun.tools.visualvm.sa.SaModelProvider.createModelFor(SaModelProvider.java:58)
at com.sun.tools.visualvm.sa.SaModelProvider.createModelFor(SaModelProvider.java:45)
at com.sun.tools.visualvm.core.model.ModelFactory.getModel(ModelFactory.java:111)
at com.sun.tools.visualvm.tools.sa.SaModelFactory.getSAAgentFor(SaModelFactory.java:65)
at com.sun.tools.visualvm.jvm.JVMImpl.getSAAgent(JVMImpl.java:444)
at com.sun.tools.visualvm.jvm.JVMImpl.getSystemProperties(JVMImpl.java:297)
at com.sun.tools.visualvm.application.views.overview.ApplicationOverviewModel.initialize(ApplicationOverviewModel.java:229)
at com.sun.tools.visualvm.application.views.overview.ApplicationOverviewModel.initialize(ApplicationOverviewModel.java:135)
at com.sun.tools.visualvm.application.views.overview.ApplicationOverviewView.willBeAdded(ApplicationOverviewView.java:56)
at com.sun.tools.visualvm.core.ui.DataSourceView.viewWillBeAdded(DataSourceView.java:163)
at com.sun.tools.visualvm.core.ui.DataSourceWindowManager.addViews(DataSourceWindowManager.java:247)
at com.sun.tools.visualvm.core.ui.DataSourceWindowManager.openWindowAndAddView(DataSourceWindowManager.java:181)
at com.sun.tools.visualvm.core.ui.DataSourceWindowManager.access$000(DataSourceWindowManager.java:50)
at com.sun.tools.visualvm.core.ui.DataSourceWindowManager$1.run(DataSourceWindowManager.java:100)
at org.openide.util.RequestProcessor$Task.run(RequestProcessor.java:1418)
[catch] at org.openide.util.RequestProcessor$Processor.run(RequestProcessor.java:1957)

Comment by enrico_olivelli [ 09/May/13 ]

please resolve this issue

Comment by fester [ 17/Feb/15 ]

I also need to restart VisualVM each time I restart my application which is very annoying. It would be great if there would be a "reconnect" option in the context-menu.





[VISUALVM-601] java.lang.ClassNotFoundException: com.fubar.MyClass$$Lambda$9 Created: 10/Oct/14  Updated: 14/Jan/15

Status: Open
Project: VisualVM
Component/s: None
Affects Version/s: 1.3.8
Fix Version/s: None

Type: Bug Priority: Major
Reporter: tom_vdb Assignee: thurka
Resolution: Unresolved Votes: 2
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

OSX 10.7.5, Java 1.8.0, Tomcat 6.0.33



 Description   

I'm profiling an application in Tomcat, and I'm consistently getting the following error when executing my code. The result is that my application crashes, while without the profiler attached, it works fine.

      • Profiler engine warning: Failed to lookup cached class com.fubar.MyClass$$Lambda$9/1753842220

java.lang.ClassNotFoundException: com.drillster.entity.core.test.TestDefinitionDao$$Lambda$9

Is there something I can do to fix this, or is there maybe a workaround for this problem?

Thanks,
Tom



 Comments   
Comment by ankon [ 14/Jan/15 ]

Practically this is a blocker issue for using VisualVM profiling with Java 8 (and lambdas). Using -Xverify:none as per the FAQ only helps against the errors reported by VisualVM, and makes more classes load, only to then break with the error from the description.

I've seen this behavior on 1.8.0_40-ea-b20, which as far as I understand should contain the fix for the issue that required -Xverify:none in the first place.

java version "1.8.0_40-ea"
Java(TM) SE Runtime Environment (build 1.8.0_40-ea-b20)
Java HotSpot(TM) 64-Bit Server VM (build 25.40-b23, mixed mode)




[VISUALVM-605] VisualVM fails to load local java applications when NetbeansBased applications are running Created: 22/Dec/14  Updated: 22/Dec/14

Status: Open
Project: VisualVM
Component/s: code
Affects Version/s: 1.3.3, 1.3.4, 1.3.5, 1.3.6, 1.3.7, 1.3.8
Fix Version/s: None

Type: Bug Priority: Major
Reporter: mendesr Assignee: thurka
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System = Linux version 2.6.32-504.3.3.el6.x86_64 running on amd64
Java; VM; Vendor = 1.7.0_71; Java HotSpot(TM) 64-Bit Server VM 24.71-b01; Oracle Corporation
Runtime = Java(TM) SE Runtime Environment 1.7.0_71-b14



 Description   

On visualVM version 1.3.3 through 1.3.8, visualVM will through a StringIndexOutOfBoundsException on start-up when it encounters a local NetbeansBased application. This results in no child nodes of the "Local" node in the "Applications" explorer window to be loaded, thus preventing the use of VisualVM on any locally running java processes.

Below is the full output log showing the exception/s thrown:

-------------------------------------------------------------------------------
>Log Session: Monday, December 22, 2014 11:41:58 AM EST
>System Info:
Product Version = VisualVM 1.3.8
Operating System = Linux version 2.6.32-504.3.3.el6.x86_64 running on amd64
Java; VM; Vendor = 1.7.0_71; Java HotSpot(TM) 64-Bit Server VM 24.71-b01; Oracle Corporation
Runtime = Java(TM) SE Runtime Environment 1.7.0_71-b14
Java Home = /usr/java/jdk1.7.0_71-64/jre
System Locale; Encoding = en_US (visualvm); UTF-8
Home Directory = /home/rmendes
Current Directory = /home/rmendes/Desktop/visualvm_138
User Directory = /home/rmendes/.visualvm/1.3.8
Cache Directory = /home/rmendes/.cache/visualvm/1.3.8
Installation = /home/rmendes/Desktop/visualvm_138/visualvm
/home/rmendes/Desktop/visualvm_138/profiler
/home/rmendes/Desktop/visualvm_138/platform
Boot & Ext. Classpath = /usr/java/jdk1.7.0_71-64/jre/lib/resources.jar:/usr/java/jdk1.7.0_71-64/jre/lib/rt.jar:/usr/java/jdk1.7.0_71-64/jre/lib/sunrsasign.jar:/usr/java/jdk1.7.0_71-64/jre/lib/jsse.jar:/usr/java/jdk1.7.0_71-64/jre/lib/jce.jar:/usr/java/jdk1.7.0_71-64/jre/lib/charsets.jar:/usr/java/jdk1.7.0_71-64/jre/lib/jfr.jar:/usr/java/jdk1.7.0_71-64/jre/classes:/usr/java/jdk1.7.0_71-64/jre/lib/ext/sunjce_provider.jar:/usr/java/jdk1.7.0_71-64/jre/lib/ext/zipfs.jar:/usr/java/jdk1.7.0_71-64/jre/lib/ext/sunpkcs11.jar:/usr/java/jdk1.7.0_71-64/jre/lib/ext/dnsns.jar:/usr/java/jdk1.7.0_71-64/jre/lib/ext/sunec.jar:/usr/java/jdk1.7.0_71-64/jre/lib/ext/localedata.jar
Application Classpath = /home/rmendes/Desktop/visualvm_138/platform/lib/boot.jar:/home/rmendes/Desktop/visualvm_138/platform/lib/org-openide-modules.jar:/home/rmendes/Desktop/visualvm_138/platform/lib/org-openide-util.jar:/home/rmendes/Desktop/visualvm_138/platform/lib/org-openide-util-lookup.jar:/usr/java/jdk7-64/lib/dt.jar:/usr/java/jdk7-64/lib/tools.jar
Startup Classpath = /home/rmendes/Desktop/visualvm_138/platform/core/core.jar:/home/rmendes/Desktop/visualvm_138/platform/core/org-openide-filesystems.jar:/home/rmendes/Desktop/visualvm_138/visualvm/core/com-sun-tools-visualvm-modules-startup.jar:/home/rmendes/Desktop/visualvm_138/visualvm/core/locale/core_visualvm.jar
-------------------------------------------------------------------------------
INFO [org.netbeans.core.startup.NbEvents]: Turning on modules:
org.openide.util.lookup [8.24.1 20140627-1325baf8243b]
org.openide.util [8.37.1 20140627-1325baf8243b]
org.openide.modules [7.42.1 20140627-1325baf8243b]
org.openide.filesystems [8.10.1 20140627-1325baf8243b]
org.netbeans.api.annotations.common/1 [1.23.1 20140627-1325baf8243b]
org.openide.awt [7.61.2 20140627-1325baf8243b]
org.netbeans.api.progress/1 [1.37.1 20140627-1325baf8243b]
org.openide.dialogs [7.36.1 20140627-1325baf8243b]
org.openide.nodes [7.38.1 20140627-1325baf8243b]
org.openide.windows [6.70.1 20140627-1325baf8243b]
org.netbeans.modules.editor.mimelookup/1 [1.35.1 20140627-1325baf8243b]
org.openide.text [6.61.1 20140627-1325baf8243b]
org.netbeans.swing.tabcontrol [1.50.1 20140627-1325baf8243b]
org.netbeans.swing.outline [1.29.1 20140627-1325baf8243b]
org.openide.explorer [6.56.1 20140627-1325baf8243b]
org.openide.actions [6.34.1 20140627-1325baf8243b]
org.netbeans.modules.queries/1 [1.38.1 20140627-1325baf8243b]
org.openide.loaders [7.56.2 20140627-1325baf8243b]
org.openide.io [1.44.1 20140627-1325baf8243b]
org.netbeans.swing.plaf [1.36.1 20140627-1325baf8243b]
org.netbeans.spi.quicksearch [1.22.1 20140627-1325baf8243b]
org.netbeans.bootstrap/1 [2.67.1 20140627-1325baf8243b]
org.netbeans.core.startup/1 [1.53.1 20140627-1325baf8243b]
org.netbeans.modules.settings/1 [1.44.1 20140627-1325baf8243b]
org.netbeans.modules.sendopts/2 [2.30.1 20140627-1325baf8243b]
org.netbeans.modules.sampler [1.9.1 20140627-1325baf8243b]
org.netbeans.modules.progress.ui [1.28.1 20140627-1325baf8243b]
org.netbeans.modules.profiler.utilities/1 [1.30.1 20140627-1325baf8243b]
org.netbeans.lib.profiler/1 [1.54.2 20140627-1325baf8243b]
org.netbeans.lib.profiler.common/1 [1.30.2 20140627-1325baf8243b]
org.netbeans.modules.profiler.api/1 [1.17.3 20140627-1325baf8243b]
org.netbeans.lib.profiler.charts/1 [1.23.2 20140627-1325baf8243b]
org.netbeans.lib.profiler.ui/1 [1.43.2 20140627-1325baf8243b]
org.netbeans.modules.profiler.attach/2 [2.13.2 20140627-1325baf8243b]
org.netbeans.modules.profiler.selector.api/1 [1.28.1 20140627-1325baf8243b]
org.netbeans.modules.profiler.selector.ui/1 [1.25.1 20140627-1325baf8243b]
org.netbeans.modules.profiler/2 [2.20.2 20140627-1325baf8243b]
org.netbeans.modules.keyring [1.19.1 20140627-1325baf8243b]
org.netbeans.core/2 [3.45.1 20140627-1325baf8243b]
org.netbeans.modules.options.api/1 [1.39.1 20140627-1325baf8243b]
org.netbeans.modules.profiler.snaptracer/1 [1.16.1 20140627-1325baf8243b]
org.netbeans.modules.profiler.oql/2 [2.11.1 20140627-1325baf8243b]
org.netbeans.modules.profiler.heapwalker [1.98.1 20140627-1325baf8243b]
org.netbeans.modules.masterfs/2 [2.46.1 20140627-1325baf8243b]
org.netbeans.modules.masterfs.nio2 [1.11.1 20140627-1325baf8243b]
org.netbeans.libs.jna/1 [1.35.1 20140627-1325baf8243b]
org.netbeans.modules.masterfs.linux [1.9.1 20140627-1325baf8243b]
org.netbeans.modules.keyring.fallback [1.3.1 20140627-1325baf8243b]
org.netbeans.modules.keyring.impl [1.18.1 20140627-1325baf8243b]
org.netbeans.modules.editor.mimelookup.impl/1 [1.26.1 20140627-1325baf8243b]
org.netbeans.modules.autoupdate.services [1.45.3 20140627-1325baf8243b]
org.netbeans.modules.autoupdate.ui [1.40.1 20140627-1325baf8243b]
org.netbeans.modules.autoupdate.cli [1.8.1 20140627-1325baf8243b]
org.netbeans.libs.jna.platform/1 [1.5.1 20140627-1325baf8243b]
org.netbeans.core.windows/2 [2.75.2 20140627-1325baf8243b]
org.netbeans.core.ui/1 [1.40.1 20140627-1325baf8243b]
org.netbeans.core.network [1.4.1 20140627-1325baf8243b]
org.netbeans.core.nativeaccess/1 [1.26.1 20140627-1325baf8243b]
org.netbeans.core.multitabs/1 [1.7.2.1 1 20140627-1325baf8243b]
com.sun.tools.visualvm.uisupport/0 [1.3 140630]
com.sun.tools.visualvm.core/0 [1.4 140630]
com.sun.tools.visualvm.host/0 [1.0 140630]
com.sun.tools.visualvm.application/0 [1.9 140630]
com.sun.tools.visualvm.tools/0 [1.4 140630]
com.sun.tools.visualvm.coredump/0 [1.0 140630]
com.sun.tools.visualvm.threaddump/0 [1.0 140630]
com.sun.tools.visualvm.heapdump/0 [1.1 140630]
com.sun.tools.visualvm.profiling/0 [1.3 140630]
com.sun.tools.visualvm.sampler [2.1 140630]
com.sun.tools.visualvm.sa/0 [1.1 140630]
com.sun.tools.visualvm.modules.startup [1.1 140630]
com.sun.tools.visualvm.profiler/0 [1.5 140630]
com.sun.tools.visualvm.modules.appui [1.0 140630]
com.sun.tools.visualvm.jvmstat/0 [1.0 140630]
com.sun.tools.visualvm.jvm/0 [1.1 140630]
com.sun.tools.visualvm.jmx/0 [1.3 140630]
com.sun.tools.visualvm.charts/0 [1.4 140630]
com.sun.tools.visualvm.host.views/0 [1.0 140630]
com.sun.tools.visualvm.host.remote/0 [1.0 140630]
com.sun.tools.visualvm.attach/0 [1.1 140630]
com.sun.tools.visualvm.application.views/0 [1.0 140630]
INFO [org.netbeans.core.network.proxy.NetworkProxyReloader]: System network proxy resolver: Gnome
INFO [org.netbeans.core.network.proxy.gnome.GconfNetworkProxy]: GConf 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
WARNING [org.openide.filesystems.Ordering]: Not all children in Windows2/Modes/explorer/ marked with the position attribute: [ExplorerTopComponent.wstcref], but some are: [profiler_cp.wstcref]
SEVERE [org.openide.util.RequestProcessor]: Error in RequestProcessor com.sun.tools.visualvm.core.explorer.ExplorerModelBuilder$1
java.lang.StringIndexOutOfBoundsException: String index out of range: -1
at java.lang.String.substring(String.java:1911)
at com.sun.tools.visualvm.application.type.NetBeansBasedApplicationType.getName(NetBeansBasedApplicationType.java:81)
at com.sun.tools.visualvm.application.ApplicationDescriptor.resolveApplicationName(ApplicationDescriptor.java:136)
at com.sun.tools.visualvm.application.ApplicationDescriptor.<init>(ApplicationDescriptor.java:74)
at com.sun.tools.visualvm.application.ApplicationDescriptor.<init>(ApplicationDescriptor.java:55)
at com.sun.tools.visualvm.application.ApplicationDescriptorProvider.createModelFor(ApplicationDescriptorProvider.java:43)
at com.sun.tools.visualvm.application.ApplicationDescriptorProvider.createModelFor(ApplicationDescriptorProvider.java:38)
at com.sun.tools.visualvm.core.model.ModelFactory.getModel(ModelFactory.java:111)
at com.sun.tools.visualvm.core.datasource.descriptor.DataSourceDescriptorFactory.getDescriptor(DataSourceDescriptorFactory.java:69)
at com.sun.tools.visualvm.core.explorer.ExplorerModelBuilder.processAddedDisplayableDataSources(ExplorerModelBuilder.java:152)
at com.sun.tools.visualvm.core.explorer.ExplorerModelBuilder.processIndependentAddedDataSources(ExplorerModelBuilder.java:116)
at com.sun.tools.visualvm.core.explorer.ExplorerModelBuilder.processAddedDisplayableDataSources(ExplorerModelBuilder.java:180)
at com.sun.tools.visualvm.core.explorer.ExplorerModelBuilder.processIndependentAddedDataSources(ExplorerModelBuilder.java:116)
at com.sun.tools.visualvm.core.explorer.ExplorerModelBuilder.processAddedDisplayableDataSources(ExplorerModelBuilder.java:180)
at com.sun.tools.visualvm.core.explorer.ExplorerModelBuilder.processIndependentAddedDataSources(ExplorerModelBuilder.java:116)
at com.sun.tools.visualvm.core.explorer.ExplorerModelBuilder.processAddedDataSources(ExplorerModelBuilder.java:105)
at com.sun.tools.visualvm.core.explorer.ExplorerModelBuilder.access$200(ExplorerModelBuilder.java:59)
at com.sun.tools.visualvm.core.explorer.ExplorerModelBuilder$1.run(ExplorerModelBuilder.java:98)
at org.openide.util.RequestProcessor$Task.run(RequestProcessor.java:1423)
[catch] at org.openide.util.RequestProcessor$Processor.run(RequestProcessor.java:2033)
SEVERE [org.openide.util.RequestProcessor]: Error in RequestProcessor com.sun.tools.visualvm.core.explorer.ExplorerModelBuilder$1
java.lang.StringIndexOutOfBoundsException: String index out of range: -1
at java.lang.String.substring(String.java:1911)
at com.sun.tools.visualvm.application.type.NetBeansBasedApplicationType.getName(NetBeansBasedApplicationType.java:81)
at com.sun.tools.visualvm.application.ApplicationDescriptor.resolveApplicationName(ApplicationDescriptor.java:136)
at com.sun.tools.visualvm.application.ApplicationDescriptor.<init>(ApplicationDescriptor.java:74)
at com.sun.tools.visualvm.application.ApplicationDescriptor.<init>(ApplicationDescriptor.java:55)
at com.sun.tools.visualvm.application.ApplicationDescriptorProvider.createModelFor(ApplicationDescriptorProvider.java:43)
at com.sun.tools.visualvm.application.ApplicationDescriptorProvider.createModelFor(ApplicationDescriptorProvider.java:38)
at com.sun.tools.visualvm.core.model.ModelFactory.getModel(ModelFactory.java:111)
at com.sun.tools.visualvm.core.datasource.descriptor.DataSourceDescriptorFactory.getDescriptor(DataSourceDescriptorFactory.java:69)
at com.sun.tools.visualvm.core.explorer.ExplorerModelBuilder.processAddedDisplayableDataSources(ExplorerModelBuilder.java:152)
at com.sun.tools.visualvm.core.explorer.ExplorerModelBuilder.processIndependentAddedDataSources(ExplorerModelBuilder.java:116)
at com.sun.tools.visualvm.core.explorer.ExplorerModelBuilder.processAddedDataSources(ExplorerModelBuilder.java:105)
at com.sun.tools.visualvm.core.explorer.ExplorerModelBuilder.access$200(ExplorerModelBuilder.java:59)
at com.sun.tools.visualvm.core.explorer.ExplorerModelBuilder$1.run(ExplorerModelBuilder.java:98)
at org.openide.util.RequestProcessor$Task.run(RequestProcessor.java:1423)
[catch] at org.openide.util.RequestProcessor$Processor.run(RequestProcessor.java:2033)
Diagnostic information
Input arguments:
-Djdk.home=/usr/java/jdk7-64
-Dnetbeans.default_userdir_root=/home/rmendes/.visualvm
-Dnetbeans.running.environment=gnome
-Dnetbeans.dirs=/home/rmendes/Desktop/visualvm_138/visualvm:/home/rmendes/Desktop/visualvm_138/profiler:
-Dnetbeans.home=/home/rmendes/Desktop/visualvm_138/platform
-XX:MaxPermSize=384m
-Xms24m
-Xmx256m
-XX:+IgnoreUnrecognizedVMOptions
-Dnetbeans.accept_license_class=com.sun.tools.visualvm.modules.startup.AcceptLicense
-Dsun.jvmstat.perdata.syncWaitMs=10000
-Dsun.java2d.noddraw=true
-XX:+HeapDumpOnOutOfMemoryError
-XX:HeapDumpPath=/home/rmendes/.visualvm/1.3.8/var/log/heapdump.hprof
Compiler: HotSpot 64-Bit Tiered Compilers
Heap memory usage: initial 24.0MB maximum 227.5MB
Non heap memory usage: initial 23.4MB maximum 432.0MB
Garbage collector: PS Scavenge (Collections=9 Total time spent=0s)
Garbage collector: PS MarkSweep (Collections=2 Total time spent=0s)
Classes: loaded=5012 total loaded=5012 unloaded 0
INFO [org.netbeans.core.ui.warmup.DiagnosticTask]: Total memory 16,643,047,424
INFO [null]: Total physical memory 16,643,047,424






[VISUALVM-603] remember decisions about future host/connection resolving Created: 16/Nov/14  Updated: 13/Dec/14

Status: Open
Project: VisualVM
Component/s: code
Affects Version/s: 1.3.8
Fix Version/s: None

Type: New Feature Priority: Major
Reporter: frsc Assignee: jsedlacek
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: File visualvm-603.diff    

 Description   

When you Startup VisualVM, it immediately resolves all configured hosts, and all configured JMX connections. If any of these fails, a dialog is presented, asking whether the hosts/connections should be resolved in the future as well.

In a dynamic environment, where I am logged in to different VPNs, having access to different hosts, or where applications might or might not be online currently, this is a repeated annoyance - there's rarely a single application startup here where I am not asked, and my answer is always the same: Yes, I do want you to try again next time!

So, the easiest way to get rid of this annoyance (there could be more sophisticated solutions) would be to add a "Remember my decision" checkbox to the dialogs, this way making the decision permanent. Of course, there must be a possibility to reset this.



 Comments   
Comment by frsc [ 16/Nov/14 ]

Uhm - I expected to be able to attach a patch here, yet I am not

What's the preferred way of submitting patches?

Comment by thurka [ 18/Nov/14 ]

You can attach file to the issue. It is available via More -> "Attach Files"

Comment by frsc [ 18/Nov/14 ]

sorry - nope, I can't. There's "Stop Watching", a separator, "Create Sub Task", a separator, and "Clone". No "Attach Files" - seems I'm too unprivileged. (this is a brand-new account.)

Comment by frsc [ 24/Nov/14 ]

ping. Nobody interested in this?

Comment by frsc [ 01/Dec/14 ]

thurka: probably I'm missing some "How noobs should apply for the most basic privileges" FAQ item, or something like this. Or is an external contributor for VisualVM that scary?

Comment by thurka [ 02/Dec/14 ]

I added you as jura-user to VisualVM project. I am not sure if it helps. If you are still not able to attach file to this issue, you can send it to me and I will do it for you.

Comment by frsc [ 02/Dec/14 ]

No, it doesn't , but thanks for the try.

Well, pasting it here then

diff --git a/core/nbproject/project.xml b/core/nbproject/project.xml
index f1e0045..297d5ea 100644
--- a/core/nbproject/project.xml
+++ b/core/nbproject/project.xml
@@ -199,6 +199,7 @@
                 <package>com.sun.tools.visualvm.core.model</package>
                 <package>com.sun.tools.visualvm.core.options</package>
                 <package>com.sun.tools.visualvm.core.properties</package>
+                <package>com.sun.tools.visualvm.core.provider</package>
                 <package>com.sun.tools.visualvm.core.scheduler</package>
                 <package>com.sun.tools.visualvm.core.snapshot</package>
                 <package>com.sun.tools.visualvm.core.ui</package>
diff --git a/core/src/com/sun/tools/visualvm/core/options/GeneralOptionsPanel.java b/core/src/com/sun/tools/visualvm/core/options/GeneralOptionsPanel.java
index 571cc57..b8e750a 100644
--- a/core/src/com/sun/tools/visualvm/core/options/GeneralOptionsPanel.java
+++ b/core/src/com/sun/tools/visualvm/core/options/GeneralOptionsPanel.java
@@ -293,7 +293,8 @@ final class GeneralOptionsPanel extends JPanel {
 
     private void resetDNSAButtonAction() {
         ProfilerIDESettings.getInstance().clearDoNotShowAgainMap();
-        resetDNSAButton.setEnabled(false);
+        GlobalPreferences preferences = GlobalPreferences.sharedInstance();
+        preferences.resetRememberedDecisions();
     }
 
     void load() {
diff --git a/core/src/com/sun/tools/visualvm/core/options/GlobalPreferences.java b/core/src/com/sun/tools/visualvm/core/options/GlobalPreferences.java
index c403035..6997652 100644
--- a/core/src/com/sun/tools/visualvm/core/options/GlobalPreferences.java
+++ b/core/src/com/sun/tools/visualvm/core/options/GlobalPreferences.java
@@ -50,6 +50,8 @@ import org.openide.util.NbPreferences;
 public final class GlobalPreferences implements PreferenceChangeListener {
     private final static Logger LOGGER = Logger.getLogger("com.sun.tools.visualvm.core.options");   // NOI18N
 
+    private static final String REMEMBERED_DECISION_PREFIX = "remembered_decision.";    // NOI18N
+
     private static final String INT_KEY_MONHOST_POLL = "MonitoredHostPoll"; // NOI18N
     private static final String INT_KEY_THREADS_POLL = "ThreadsPoll";   // NOI18N
     private static final String INT_KEY_MONDATA_POLL = "MonitoredDataPoll"; // NOI18N
@@ -242,6 +244,73 @@ public final class GlobalPreferences implements PreferenceChangeListener {
         addListener(INT_KEY_MONDATA_CACHE, pcl);
     }
     
+    private boolean isRememberedDecisionSetting(final String key) {
+        return key.startsWith(REMEMBERED_DECISION_PREFIX);
+    }
+
+    private String getFullyQualifiedRememberedDecisionKey(final String settingName) {
+        return REMEMBERED_DECISION_PREFIX + settingName;
+    }
+
+    /**
+     * return a previously persisted/remembered decision
+     * 
+     * @param decisionName a programmatic name of the decision. The actual
+     * preference key will be based on this name.
+     * @param defaultValue the default value if no persisted value could be
+     * found.
+     * @return the previously persisted/remembered decision
+     * @see #rememberDecision(java.lang.String, java.lang.String)
+     */
+    public String getRememberedDecision(final String decisionName, final String defaultValue) {
+        return prefs.get(getFullyQualifiedRememberedDecisionKey(decisionName), defaultValue);
+    }
+
+    /**
+     * return a previously persisted/remembered decision
+     *
+     * @param decisionName a programmatic name of the decision. The actual
+     * preference key will be based on this name.
+     * @return the previously persisted/remembered decision, or null if
+     * {@link #rememberDecision(java.lang.String, java.lang.String) rememberDecision}
+     * was never invoked for this decision.
+     * @see #rememberDecision(java.lang.String, java.lang.String)
+     */
+    public String getRememberedDecision(final String decisionName) {
+        return prefs.get(getFullyQualifiedRememberedDecisionKey(decisionName), null);
+    }
+
+    /**
+     * remembers (aka: persists) a certain decision made by the user, for
+     * retrieval in a later session.
+     *
+     * @param decisionName a programmatic name of the decision. The actual
+     * preference key will be based on this name.
+     * @param decision the decision made by the user.
+     */
+    public void rememberDecision(final String decisionName, final String decision) {
+        prefs.put(getFullyQualifiedRememberedDecisionKey(decisionName), decision);
+    }
+
+    /**
+     * resets all previously persisted/remembered decisions.
+     *
+     * @see #rememberDecision(java.lang.String, java.lang.String)
+     * rememberDecision
+     * @see #getRememberedDecision(java.lang.String) getRememberedDecision
+     */
+    public void resetRememberedDecisions() {
+        try {
+            for (final String key : prefs.keys()) {
+                if (isRememberedDecisionSetting(key)) {
+                    prefs.remove(key);
+                }
+            }
+        } catch (BackingStoreException ex) {
+            LOGGER.log(Level.SEVERE, "Error resetting persisted decisions preferences", ex);   // NOI18N
+        }
+    }
+
     /**
      * Persistently stores preferences values. This method is called automatically,
      * typically you don't need to call it explicitely.
diff --git a/host/src/com/sun/tools/visualvm/host/impl/HostProvider.java b/host/src/com/sun/tools/visualvm/host/impl/HostProvider.java
index e9515c7..f1e9a66 100644
--- a/host/src/com/sun/tools/visualvm/host/impl/HostProvider.java
+++ b/host/src/com/sun/tools/visualvm/host/impl/HostProvider.java
@@ -38,7 +38,7 @@ import com.sun.tools.visualvm.core.datasupport.Utils;
 import com.sun.tools.visualvm.core.explorer.ExplorerSupport;
 import com.sun.tools.visualvm.core.datasource.descriptor.DataSourceDescriptor;
 import com.sun.tools.visualvm.core.datasource.descriptor.DataSourceDescriptorFactory;
-import java.awt.BorderLayout;
+import com.sun.tools.visualvm.core.provider.DataSourceProviderUtil;
 import java.io.File;
 import java.io.FilenameFilter;
 import java.net.InetAddress;
@@ -305,17 +305,15 @@ public class HostProvider {
     private static void notifyUnresolvedHosts(final Set<File> unresolvedHostsF, final Set<String> unresolvedHostsS) {
         RequestProcessor.getDefault().post(new Runnable() {
             public void run() {
-                JPanel messagePanel = new JPanel(new BorderLayout(5, 5));
-                messagePanel.add(new JLabel(NbBundle.getMessage(HostProvider.class, "MSG_Unresolved_Hosts")), BorderLayout.NORTH); // NOI18N
-                JList list = new JList(unresolvedHostsS.toArray());
-                list.setVisibleRowCount(4);
-                messagePanel.add(new JScrollPane(list), BorderLayout.CENTER);
-                NotifyDescriptor dd = new NotifyDescriptor(
-                        messagePanel, NbBundle.getMessage(HostProvider.class, "Title_Unresolved_Hosts"), // NOI18N
-                        NotifyDescriptor.YES_NO_OPTION, NotifyDescriptor.ERROR_MESSAGE,
-                        null, NotifyDescriptor.YES_OPTION);
-                if (DialogDisplayer.getDefault().notify(dd) == NotifyDescriptor.NO_OPTION)
-                    for (File file : unresolvedHostsF) Utils.delete(file, true);
+                final boolean handling = DataSourceProviderUtil.notifyUnresolvedDataSources(unresolvedHostsS,
+                        "warn_on_unresolved_host",
+                        NbBundle.getBundle(HostProvider.class),
+                        "Title_Unresolved_Hosts", "MSG_Unresolved_Hosts");
+                if (handling == DataSourceProviderUtil.REMOVE_DATA_SOURCES) {
+                    for (File file : unresolvedHostsF) {
+                        Utils.delete(file, true);
+                    }
+                }
 
                 unresolvedHostsF.clear();
                 unresolvedHostsS.clear();
diff --git a/jmx/src/com/sun/tools/visualvm/jmx/impl/JmxApplicationProvider.java b/jmx/src/com/sun/tools/visualvm/jmx/impl/JmxApplicationProvider.java
index 5901ebd..3ba7f9e 100644
--- a/jmx/src/com/sun/tools/visualvm/jmx/impl/JmxApplicationProvider.java
+++ b/jmx/src/com/sun/tools/visualvm/jmx/impl/JmxApplicationProvider.java
@@ -44,7 +44,7 @@ import com.sun.tools.visualvm.jmx.JmxApplicationsSupport;
 import com.sun.tools.visualvm.tools.jmx.JmxModel;
 import com.sun.tools.visualvm.tools.jmx.JmxModel.ConnectionState;
 import com.sun.tools.visualvm.tools.jmx.JmxModelFactory;
-import java.awt.BorderLayout;
+import com.sun.tools.visualvm.core.provider.DataSourceProviderUtil;
 import java.beans.PropertyChangeEvent;
 import java.beans.PropertyChangeListener;
 import java.io.File;
@@ -60,10 +60,6 @@ import java.util.HashSet;
 import java.util.Map;
 import java.util.Set;
 import javax.management.remote.JMXServiceURL;
-import javax.swing.JLabel;
-import javax.swing.JList;
-import javax.swing.JPanel;
-import javax.swing.JScrollPane;
 import org.openide.DialogDisplayer;
 import org.openide.NotifyDescriptor;
 import org.openide.util.NbBundle;
@@ -377,6 +373,18 @@ public class JmxApplicationProvider {
         return new JMXServiceURL(connectionString);
     }
 
+    private EnvironmentProvider getEnvironmentProvider(final String[] values, final Storage storage) {
+        String epid = values[4];
+        if (epid == null) {
+            // Check for ver 1.0 which didn't support PROPERTY_ENVIRONMENT_PROVIDER
+            String sv = storage.getCustomProperty(SNAPSHOT_VERSION);
+            if ("1.0".equals(sv)) {
+                epid = CredentialsProvider.class.getName(); // NOI18N
+            }
+        }
+        return epid == null ? null : JmxConnectionSupportImpl.getProvider(epid);
+    }
+
     private void initPersistedApplications() {
         if (!JmxApplicationsSupport.storageDirectoryExists()) return;
         
@@ -427,15 +435,7 @@ public class JmxApplicationProvider {
                             RequestProcessor.getDefault().post(new Runnable() {
                                 public void run() {
                                     try {
-                                        String epid = values[4];
-                                        if (epid == null) {
-                                            // Check for ver 1.0 which didn't support PROPERTY_ENVIRONMENT_PROVIDER
-                                            String sv = storage.getCustomProperty(SNAPSHOT_VERSION);
-                                            if ("1.0".equals(sv)) epid = CredentialsProvider.class.getName(); // NOI18N
-                                        }
-                                        EnvironmentProvider ep = epid == null ? null :
-                                                                 JmxConnectionSupportImpl.
-                                                                 getProvider(epid);
+                                        final EnvironmentProvider ep = getEnvironmentProvider(values, storage);
                                         addJmxApplication(false, null, values[0], values[2],
                                                           values[3], values[1], ep, storage, values[5]);
                                     } catch (final JMXException e) {
@@ -479,20 +479,17 @@ public class JmxApplicationProvider {
     private static void notifyUnresolvedApplications(final Set<String> failedHostsN, final Set<Storage> failedHostsS) {
         RequestProcessor.getDefault().post(new Runnable() {
             public void run() {
-                JPanel messagePanel = new JPanel(new BorderLayout(5, 5));
-                messagePanel.add(new JLabel(NbBundle.getMessage(JmxApplicationProvider.class, "MSG_Unresolved_JMX")), BorderLayout.NORTH); // NOI18N
-                JList list = new JList(failedHostsN.toArray());
-                list.setVisibleRowCount(4);
-                messagePanel.add(new JScrollPane(list), BorderLayout.CENTER);
-                NotifyDescriptor dd = new NotifyDescriptor(
-                        messagePanel, NbBundle.getMessage(JmxApplicationProvider.class, "Title_Unresolved_JMX"), // NOI18N
-                        NotifyDescriptor.YES_NO_OPTION, NotifyDescriptor.ERROR_MESSAGE,
-                        null, NotifyDescriptor.YES_OPTION);
-                if (DialogDisplayer.getDefault().notify(dd) == NotifyDescriptor.NO_OPTION)
+                final boolean handling = DataSourceProviderUtil.notifyUnresolvedDataSources(failedHostsN,
+                        "warn_on_unresolved_application",
+                        NbBundle.getBundle(JmxApplicationProvider.class),
+                        "Title_Unresolved_JMX",
+                        "MSG_Unresolved_JMX");
+                if (handling == DataSourceProviderUtil.REMOVE_DATA_SOURCES) {
                     for (Storage storage : failedHostsS) {
                         File appStorage = storage.getDirectory();
                         if (appStorage.isDirectory()) Utils.delete(appStorage, true);
                     }
+                }
 
                 failedHostsS.clear();
             }

The patch is relative to the release138 branch, and it does

  • add a "Remember my decision" button to the above-mentioned dialogs (which ask whether to connect to the JMX application / remote host in the future)
  • adds support to the GlobalPreferences class to persist such "remembered decisions"
  • extends the semantics of the "Reset Do Not Show Again confirmations" item in the "Miscellaneous" section of the "General" tab of the Options dialog to also reset all remembered decisions.

Regards & Thanks in advance!
(/me is quite curious now about how this continues )

Comment by thurka [ 13/Dec/14 ]

Diff against svn attached.





[VISUALVM-573] monitor layout CPU-Mem-Threads-classes customizable Created: 13/Sep/13  Updated: 04/Nov/14

Status: Open
Project: VisualVM
Component/s: None
Affects Version/s: 1.3.6
Fix Version/s: None

Type: New Feature Priority: Minor
Reporter: Casper_NL Assignee: thurka
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Windows 7 x64



 Description   

as a user,
I want to be able to change the layout of the monitor (tab) of VisualVM,
so that I can have a wider timespan of the memory graph and CPU graph.

If I use VisualVM I usually only use the 'Memory' graph and the 'CPU' graph. When I switch off the 'Threads' and 'Classes', the memory graph and the the CPU graph are placed next to each other (the screen is split vertically) and I would like to have it customizable so that I place the graphs horizontally. That way I have a larger timespan.

In other words, I would like to have the ability to have the same usage of the screen for "CPU" and "Memory" as eq. "Memory" and "Classes".
Very nice to have.



 Comments   
Comment by thurka [ 13/Sep/13 ]

Please try Tracer plugin. It will allow you select what exactly do you want to monitor and it puts all the graphs on the same timeline. So you will have a larger timespan. Overview of tracer plugin is here: <http://java.dzone.com/visualvm-13>

Comment by Casper_NL [ 04/Nov/14 ]

Hi, Tried the tracer plugin for a few months and it does the trick, although the graphics are not good as the Memory graph and the CPU-graph.

Thanks for the tip, but if there is a litle time, perhaps the monitor could be made more adapable than the current version.
If not, you can close this issue.

Thanks.





[VISUALVM-602] SimpleXYChartDescriptor.decimal Should Be Able To Display > 2 decimal places Created: 30/Oct/14  Updated: 30/Oct/14

Status: Open
Project: VisualVM
Component/s: code
Affects Version/s: 1.3.8
Fix Version/s: None

Type: Bug Priority: Minor
Reporter: tmiddlet Assignee: thurka
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Using the following, i can specify > 2 decimal places as part of SimpleXYChartDescriptor.decimal, but only 2 decimal places are shown.

SimpleXYChartDescriptor sxycd = SimpleXYChartDescriptor.decimal(1, 0.0001, true, VALUES_LIMIT);

It would be very useful in being able to visual graph values that have > 2 decimal places.






[VISUALVM-600] show path value of all File objects results in no such function "toString" Created: 10/Sep/14  Updated: 08/Oct/14

Status: Open
Project: VisualVM
Component/s: code
Affects Version/s: current
Fix Version/s: None

Type: Bug Priority: Major
Reporter: scRSCsc Assignee: thurka
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Windows 7



 Description   

Using OQL Console to find all
select file.path.toString() from java.io.File file
like documented in http://visualvm.java.net/oqlhelp.html
But Visual VM 1.8.0_05 results in
Error:
javax.script.ScriptException: TypeError: [object JSAdapter] has no such function "toString" in at line number 1



 Comments   
Comment by yura.minsk [ 06/Oct/14 ]

please retest on a newer JDK version. Under 1.8.20 (Win7 x64) works ok

Comment by scRSCsc [ 08/Oct/14 ]

Yes. Works after upgrading to 1.8.20. (I am using Win7 x64, too).

Issue can be closed.





[VISUALVM-155] Need GC log analysis plug-in for VisualVM Created: 09/Jul/08  Updated: 06/Oct/14

Status: Open
Project: VisualVM
Component/s: plugins
Affects Version/s: 1.0
Fix Version/s: not determined

Type: New Feature Priority: Critical
Reporter: jess_holle Assignee: visualvm-issues
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: All
Platform: All


Issuezilla Id: 155

 Description   

A major gap in VisualVM's troubleshooting coverage is a GC log analysis tool,
e.g. HPjmeter.



 Comments   
Comment by yura.minsk [ 06/Oct/14 ]

There are commercial solution on the market - "Censum" from "Jclarity". So I am not sure that it's reasonable to do the same feature just for free.

Comment by kcpeppe [ 06/Oct/14 ]

I could write a VisualVM plugin for Censum but I'm not sure how much value it adds. VisualVM doesn't have visibility to the GC logs or GC logging data in general. I've already written a plugin that looks at the GC counters that are available and we're working to update that as we speak. I hope to release a new version by the end of Oct. Some people are working on adding analytics to that plugin that will make it more useful.





[VISUALVM-599] obtain thread dump from command line executing VisualVM silently? Created: 24/Jul/14  Updated: 24/Jul/14

Status: Open
Project: VisualVM
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: Task Priority: Minor
Reporter: yoyoma Assignee: thurka
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Hi

I am able to get the VisualVM thread dump manually in the GUI mode. However, I am looking if there is an option to fire off from the command line to run VisualVM generating threaddump silently. Is that possible ?






[VISUALVM-598] "Perform GC" button, "CPU sampling", "Thread" tab disabled. Attaching too long. Created: 09/Jul/14  Updated: 09/Jul/14

Status: Open
Project: VisualVM
Component/s: code
Affects Version/s: 1.3.7
Fix Version/s: None

Type: Bug Priority: Major
Reporter: gavenkoa Assignee: thurka
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Debian.



 Description   

Latest Debianpackaged visualvm on v1.3.7 and have a lot of issues:

  • "Perform GC" button on "Monitor" page is inactive.
  • "CPU sampling" in "Sampler" tab have error message: Not available. Failed to create JMX
    connection to target application. Use 'Add JMX Connection' action to attach to the application.
  • "Memory sampling" in "Sampler" tab have error message: (perform GC not supported, thread memory
    allocation not supported).
  • Thread tab isn't showed.
  • Attaching to process require 10-20 sec.

I got official binary distributions of v1.3.7 and v1.3.8. Same with v1.3.7 and all fine with v1.3.8.

After some thinking I remove ~/.visualvm/1.3.7 directory and reinstall all plugins and problem go away.

Just for a record to troubleshooters... as many of these didn't help:






Cannot load heap dump - ArrayIndexOutOfBoundsException (VISUALVM-587)

[VISUALVM-594] Cannot load heap dump - ArrayIndexOutOfBoundsException Created: 09/Jun/14  Updated: 15/Jun/14

Status: Open
Project: VisualVM
Component/s: code
Affects Version/s: 1.3.7
Fix Version/s: None

Type: Sub-task Priority: Major
Reporter: vash000 Assignee: thurka
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Windows 7 64-bits
jdk 1.7.0_u60



 Description   

Error:

java.lang.ArrayIndexOutOfBoundsException: -2
at org.netbeans.lib.profiler.heap.HprofLongMappedByteBuffer.get(HprofLongMappedByteBuffer.java:77)
at org.netbeans.lib.profiler.heap.HprofHeap.readDumpTag(HprofHeap.java:625)
at org.netbeans.lib.profiler.heap.HprofHeap.fillHeapTagBounds(HprofHeap.java:971)
at org.netbeans.lib.profiler.heap.HprofHeap.<init>(HprofHeap.java:99)
at org.netbeans.lib.profiler.heap.HeapFactory.createHeap(HeapFactory.java:49)
at org.netbeans.lib.profiler.heap.HeapFactory.createHeap(HeapFactory.java:31)
at org.netbeans.modules.profiler.heapwalk.HeapWalker.createHeap(HeapWalker.java:155)
at org.netbeans.modules.profiler.heapwalk.HeapWalker.<init>(HeapWalker.java:54)
at com.sun.tools.visualvm.heapdump.impl.HeapDumpView$MasterViewSupport$1.run(HeapDumpView.java:116)
at org.openide.util.RequestProcessor$Task.run(RequestProcessor.java:1393)
[catch] at org.openide.util.RequestProcessor$Processor.run(RequestProcessor.java:2005)



 Comments   
Comment by vash000 [ 09/Jun/14 ]

The thread dump file size is 2GB,the application that created it.

The file is stored at: https://drive.google.com/file/d/0B2wCtmzqNS70a2o5LTNfUUNsSDQ

public class MemoryTest {

public static void main(String[] args) {

int gb = 1;
int mb = gb * 512;
int kb = mb * 1024;
int b = (kb * 1024)-1;

int[] a = new int[b];

for(int i=0; i < a.length; i++) {
try

{ Thread.sleep(10000); }

catch (InterruptedException e)

{ e.printStackTrace(); }

}

}

}

The jvm parameters are: -XmX7g

Comment by thurka [ 10/Jun/14 ]

This exception is caused by extraordinary long int[] array. Its length is 550 millions and its size exceeds Integer.MAX_VALUE. This issue will be fixed in NetBeans.

Comment by thurka [ 15/Jun/14 ]

Tracked as NetBeans issue #245065. https://netbeans.org/bugzilla/show_bug.cgi?id=245065





[VISUALVM-429] Start application to profile from with visualvm Created: 15/Dec/10  Updated: 12/Jun/14

Status: Open
Project: VisualVM
Component/s: code
Affects Version/s: 1.3.1
Fix Version/s: not determined

Type: New Feature Priority: Major
Reporter: eraonel Assignee: visualvm-issues
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: All
Platform: All


Issuezilla Id: 429

 Description   

Hi,

We need to be able to start our application (it is started using junit runner)
under profiling from within visualvm.
I know the possibility exists in Netbeans but when I tried using Netbeans on our
Eclipse project ( sorry I cannot change that) it takes forever to Scan projects.
And that is not acceptable. Everyone here that have look at visualvm likes it a
lot but in order to make it usable we must have this feature. Is this a feature
that you are planning to include?

//mike



 Comments   
Comment by thurka [ 12/Jun/14 ]

Is "Startup profiler plugin" http://visualvm.java.net/startupprofiler.html the feature you are looking for?





[VISUALVM-578] error use OQL 64bit instance ID Created: 21/Oct/13  Updated: 10/Jun/14

Status: Open
Project: VisualVM
Component/s: code
Affects Version/s: 1.3.6
Fix Version/s: None

Type: Bug Priority: Major
Reporter: moonumi Assignee: thurka
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

1.7.0_u45 64bit windows 2008


Tags: 64bit, OQL, notFound

 Description   

errror messager :

Error
Please, check the oql queryjavax.script.ScriptException: sun.org.mozilla.javascript.internal.EvaluatorException: Cannot convert 0x9ffffffed01906e0 to java.lang.Long (#762) in at line number 762

64bit system has instance id (0x9ffffffed01906e0)
but OQL instanceof search throw error.

I use this OQL

select heap.findObject("0x9ffffffed01906e0")

and

instance id exist but not found instance use this OQL

select o from instanceof 0x9ffffffed01906e0 o






[VISUALVM-593] Unable to start VisualVM: OutOfMemoryError: GC overhead limit exceeded Created: 09/Jun/14  Updated: 10/Jun/14

Status: Open
Project: VisualVM
Component/s: None
Affects Version/s: 1.3.7
Fix Version/s: None

Type: Bug Priority: Major
Reporter: cavka Assignee: thurka
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Lenovo T430, Win7



 Description   

After clean install, I confirm license agreement, but I'm unable to start VisualVM.
This is the log from: C:\Users\mcavka\AppData\Roaming\VisualVM\1.3.7\var\log\messages.log

-------------------------------------------------------------------------------
>Log Session: Monday, June 9, 2014 2:09:00 PM CEST
>System Info:
Product Version = VisualVM 1.3.7
Operating System = Windows 7 version 6.1 running on amd64
Java; VM; Vendor = 1.7.0_60; Java HotSpot(TM) 64-Bit Server VM 24.60-b09; Oracle Corporation
Runtime = Java(TM) SE Runtime Environment 1.7.0_60-b19
Java Home = C:\local\java\jdk1.7.0_60\jre
System Locale; Encoding = en_US (visualvm); Cp1250
Home Directory = C:\Users\mcavka
Current Directory = C:\local\visualvm_137\bin
User Directory = C:\Users\mcavka\AppData\Roaming\VisualVM\1.3.7
Cache Directory = C:\Users\mcavka\AppData\Local\VisualVM\Cache\1.3.7
Installation = C:\local\visualvm_137\visualvm
C:\local\visualvm_137\profiler
C:\local\visualvm_137\platform
Boot & Ext. Classpath = C:\local\java\jdk1.7.0_60\jre\lib\resources.jar;C:\local\java\jdk1.7.0_60\jre\lib\rt.jar;C:\local\java\jdk1.7.0_60\jre\lib\sunrsasign.jar;C:\local\java\jdk1.7.0_60\jre\lib\jsse.jar;C:\local\java\jdk1.7.0_60\jre\lib\jce.jar;C:\local\java\jdk1.7.0_60\jre\lib\charsets.jar;C:\local\java\jdk1.7.0_60\jre\lib\jfr.jar;C:\local\java\jdk1.7.0_60\jre\classes;C:\local\java\jdk1.7.0_60\jre\lib\ext\access-bridge-64.jar;C:\local\java\jdk1.7.0_60\jre\lib\ext\dnsns.jar;C:\local\java\jdk1.7.0_60\jre\lib\ext\jaccess.jar;C:\local\java\jdk1.7.0_60\jre\lib\ext\localedata.jar;C:\local\java\jdk1.7.0_60\jre\lib\ext\sunec.jar;C:\local\java\jdk1.7.0_60\jre\lib\ext\sunjce_provider.jar;C:\local\java\jdk1.7.0_60\jre\lib\ext\sunmscapi.jar;C:\local\java\jdk1.7.0_60\jre\lib\ext\zipfs.jar
Application Classpath = C:\local\visualvm_137\platform\lib\boot.jar;C:\local\visualvm_137\platform\lib\org-openide-modules.jar;C:\local\visualvm_137\platform\lib\org-openide-util-lookup.jar;C:\local\visualvm_137\platform\lib\org-openide-util.jar;C:\local\java\jdk1.7.0_60\lib\dt.jar;C:\local\java\jdk1.7.0_60\lib\tools.jar
Startup Classpath = C:\local\visualvm_137\platform\core\core.jar;C:\local\visualvm_137\platform\core\org-openide-filesystems.jar;C:\local\visualvm_137\visualvm\core\com-sun-tools-visualvm-modules-startup.jar;C:\local\visualvm_137\visualvm\core\locale\core_visualvm.jar
-------------------------------------------------------------------------------
java.lang.OutOfMemoryError: GC overhead limit exceeded
at java.util.Arrays.copyOf(Arrays.java:2367)
at java.lang.String.<init>(String.java:168)
at java.io.Win32FileSystem.resolve(Win32FileSystem.java:259)
at java.io.File.<init>(File.java:262)
at java.io.File.listFiles(File.java:1206)
at org.netbeans.lib.profiler.utils.MiscUtils.deleteHeapTempFiles(MiscUtils.java:518)
at org.netbeans.modules.profiler.ProfilerModule.restored(ProfilerModule.java:134)
at org.netbeans.core.startup.NbInstaller.loadCode(NbInstaller.java:471)
at org.netbeans.core.startup.NbInstaller.loadImpl(NbInstaller.java:394)
at org.netbeans.core.startup.NbInstaller.access$000(NbInstaller.java:105)
at org.netbeans.core.startup.NbInstaller$1.run(NbInstaller.java:346)
at org.openide.filesystems.FileUtil$2.run(FileUtil.java:435)
at org.openide.filesystems.EventControl.runAtomicAction(EventControl.java:127)
at org.openide.filesystems.FileSystem.runAtomicAction(FileSystem.java:609)
at org.openide.filesystems.FileUtil.runAtomicAction(FileUtil.java:419)
at org.openide.filesystems.FileUtil.runAtomicAction(FileUtil.java:439)
at org.netbeans.core.startup.NbInstaller.load(NbInstaller.java:343)
at org.netbeans.ModuleManager.enable(ModuleManager.java:1194)
at org.netbeans.ModuleManager.enable(ModuleManager.java:1017)
at org.netbeans.core.startup.ModuleList.installNew(ModuleList.java:340)
at org.netbeans.core.startup.ModuleList.trigger(ModuleList.java:276)
at org.netbeans.core.startup.ModuleSystem.restore(ModuleSystem.java:301)
at org.netbeans.core.startup.Main.getModuleSystem(Main.java:181)
at org.netbeans.core.startup.Main.getModuleSystem(Main.java:150)
at org.netbeans.core.startup.Main.start(Main.java:307)
at org.netbeans.core.startup.TopThreadGroup.run(TopThreadGroup.java:123)
at java.lang.Thread.run(Thread.java:745)



 Comments   
Comment by thurka [ 09/Jun/14 ]

It looks like you have hundreds of thousands of files in Windows temp directory. By default temp directory is C:\Users\mcavka\AppData\Local\Temp. Can you please check it? Thanks.

Comment by cavka [ 10/Jun/14 ]

You resolved it, there was 1 million temp files, thx
Perhaps someone should stick this kind of info on the "VisualVM Troubleshooting Guide"

http://visualvm.java.net/troubleshooting.html





[VISUALVM-591] after uninstall plugins <memery pools>,can't start visualvm Created: 16/May/14  Updated: 16/May/14

Status: Open
Project: VisualVM
Component/s: plugins
Affects Version/s: 1.3.7
Fix Version/s: None

Type: Bug Priority: Blocker
Reporter: beatelove Assignee: thurka
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

win7 64,jdk7 update55,



 Description   

visualvm works perfectly.when i uninstalled memery pools,i can't start visualvm,window of visualvm shows only once in seconds.
i try and try,del visualvm,restart my computer, but it not fixed.

Finally,i del the folder that is <Local AppData>\Local\VisualVM\Cache

it can work






[VISUALVM-590] Remove the -J-Xmx256m default option in <path>/etc/visualvm.conf Created: 15/May/14  Updated: 15/May/14

Status: Open
Project: VisualVM
Component/s: code
Affects Version/s: 1.3.6
Fix Version/s: None

Type: Improvement Priority: Trivial
Reporter: drach Assignee: thurka
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Mac OS/X 10.9.2


Tags: config

 Description   

VisualVM starts with a very small maximum heap size, at least for modern architectures. It gets an OOME too often. The HotSpot JVM will create a maximum heap size of about 25% of physical memory, so any machine with over 1Gb of physical memory is assigned a smaller heap size than necessary. Remove the command line argument and let HotSpot take care of it.






[VISUALVM-588] Exception when loading heap - java.lang.ArrayIndexOutOfBoundsException: -22 Created: 10/Apr/14  Updated: 10/Apr/14

Status: Open
Project: VisualVM
Component/s: code
Affects Version/s: None
Fix Version/s: None

Type: Bug Priority: Critical
Reporter: mikedehaan Assignee: thurka
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

java version "1.7.0_45"
Java(TM) SE Runtime Environment (build 1.7.0_45-b18)
Java HotSpot(TM) 64-Bit Server VM (build 24.45-b08, mixed mode)



 Description   

I created a heap dump on the frozen VM using the following command:
sudo jmap -F -dump:format=b,file=/tmp/heap.hprof <pid>

The frozen VM was running on a linux box (Amazon Linux AMI release 2014.03) and using the following JVM:
java version "1.7.0_45"
Java(TM) SE Runtime Environment (build 1.7.0_45-b18)
Java HotSpot(TM) 64-Bit Server VM (build 24.45-b08, mixed mode)

I downloaded the heap from the linux box to a windows machine and tried to open it with visualvm (version 1.7.0_45 Build 130117) running under the following JVM:
version 1.7.0_45, vendor Oracle Corporation
Java HotSpot(TM) 64-Bit Server VM (24.45-b08, mixed mode)

Upon loading the heap dump into visualvm, I receive the following exception almost immediately:

java.lang.ArrayIndexOutOfBoundsException: -22
at org.netbeans.lib.profiler.heap.HprofHeap.fillTagBounds(HprofHeap.java:976)
at org.netbeans.lib.profiler.heap.HprofHeap.<init>(HprofHeap.java:93)
at org.netbeans.lib.profiler.heap.HeapFactory.createHeap(HeapFactory.java:49)
at org.netbeans.lib.profiler.heap.HeapFactory.createHeap(HeapFactory.java:31)
at org.netbeans.modules.profiler.heapwalk.HeapWalker.createHeap(HeapWalker.java:155)
at org.netbeans.modules.profiler.heapwalk.HeapWalker.<init>(HeapWalker.java:54)
at com.sun.tools.visualvm.heapdump.impl.HeapDumpView$MasterViewSupport$1.run(HeapDumpView.java:116)
at org.openide.util.RequestProcessor$Task.run(RequestProcessor.java:1413)
[catch] at org.openide.util.RequestProcessor$Processor.run(RequestProcessor.java:1993)



 Comments   
Comment by mikedehaan [ 10/Apr/14 ]

Unfortunately due to sensitive client data, I am unable to provide the heap dump file. I am, however, in the process of debugging through the Netbeans source in an attempt to provide more information.





[VISUALVM-587] Cannot load heap dump - ArrayIndexOutOfBoundsException Created: 14/Mar/14  Updated: 09/Apr/14

Status: Open
Project: VisualVM
Component/s: None
Affects Version/s: 1.3.7
Fix Version/s: None

Type: Bug Priority: Critical
Reporter: gonzo125 Assignee: thurka
Resolution: Unresolved Votes: 2
Labels: None
Σ Remaining Estimate: Not Specified Remaining Estimate: Not Specified
Σ Time Spent: Not Specified Time Spent: Not Specified
Σ Original Estimate: Not Specified Original Estimate: Not Specified
Environment:

jdk 1.7, windows


Sub-Tasks:
Key
Summary
Type
Status
Assignee
VISUALVM-594 Cannot load heap dump - ArrayIndexOut... Sub-task Open thurka  

 Description   

I have a heap dump created using jconsole. Its quite big, about 4GB.
I try to load it using visualvm, progress gets to about 10% and then I get following error:

java.lang.ArrayIndexOutOfBoundsException: -1
at org.netbeans.lib.profiler.heap.HprofLongMappedByteBuffer.get(HprofLongMappedByteBuffer.java:115)
at org.netbeans.lib.profiler.heap.HprofHeap.readDumpTag(HprofHeap.java:663)
at org.netbeans.lib.profiler.heap.HprofHeap.fillHeapTagBounds(HprofHeap.java:1009)
at org.netbeans.lib.profiler.heap.HprofHeap.<init>(HprofHeap.java:137)
at org.netbeans.lib.profiler.heap.HeapFactory.createHeap(HeapFactory.java:87)
at org.netbeans.lib.profiler.heap.HeapFactory.createHeap(HeapFactory.java:69)
at org.netbeans.modules.profiler.heapwalk.HeapWalker.createHeap(HeapWalker.java:193)
at org.netbeans.modules.profiler.heapwalk.HeapWalker.<init>(HeapWalker.java:92)
at com.sun.tools.visualvm.heapdump.impl.HeapDumpView$MasterViewSupport$1.run(HeapDumpView.java:136)
at org.openide.util.RequestProcessor$Task.run(RequestProcessor.java:1432)
[catch] at org.openide.util.RequestProcessor$Processor.run(RequestProcessor.java:2042)

Dump was created on another computer (also with windows), probably it has newer version of java 1.7 (but dont know which)



 Comments   
Comment by thurka [ 14/Mar/14 ]

I need your heap dump to be able to diagnose the problem. Can you upload it somewhere?

Comment by gonzo125 [ 14/Mar/14 ]

well.. I was afraid of that...
unfortunately it is a dump of our client's app instance... even using visualvm I see a lot of personal/business data there (using another dump from same instance). so I cant upload it

Comment by mikedehaan [ 09/Apr/14 ]

I am experiencing the same issue.

I created a heap dump on the frozen VM using the following command:
sudo jmap -F -dump:format=b,file=/tmp/heap.hprof <pid>

The frozen VM was running on a linux box (Amazon Linux AMI release 2014.03) and using the following JVM:
java version "1.7.0_45"
Java(TM) SE Runtime Environment (build 1.7.0_45-b18)
Java HotSpot(TM) 64-Bit Server VM (build 24.45-b08, mixed mode)

I downloaded the heap from the linux box to a windows machine and tried to open it with visualvm (version 1.7.0_45 Build 130117) running under the following JVM:
version 1.7.0_45, vendor Oracle Corporation
Java HotSpot(TM) 64-Bit Server VM (24.45-b08, mixed mode)

Upon loading the heap dump into visualvm, I receive the following exception almost immediately:

java.lang.ArrayIndexOutOfBoundsException: -22
at org.netbeans.lib.profiler.heap.HprofHeap.fillTagBounds(HprofHeap.java:976)
at org.netbeans.lib.profiler.heap.HprofHeap.<init>(HprofHeap.java:93)
at org.netbeans.lib.profiler.heap.HeapFactory.createHeap(HeapFactory.java:49)
at org.netbeans.lib.profiler.heap.HeapFactory.createHeap(HeapFactory.java:31)
at org.netbeans.modules.profiler.heapwalk.HeapWalker.createHeap(HeapWalker.java:155)
at org.netbeans.modules.profiler.heapwalk.HeapWalker.<init>(HeapWalker.java:54)
at com.sun.tools.visualvm.heapdump.impl.HeapDumpView$MasterViewSupport$1.run(HeapDumpView.java:116)
at org.openide.util.RequestProcessor$Task.run(RequestProcessor.java:1413)
[catch] at org.openide.util.RequestProcessor$Processor.run(RequestProcessor.java:1993)

Comment by thurka [ 09/Apr/14 ]

To mikedehaan;
This looks like a different issue, since the stack trace is different. Can you please file a separate bug report and I need your heap dump to be able to diagnose the problem. Can you upload it somewhere?





[VISUALVM-584] Threads tab not showing Created: 03/Jan/14  Updated: 28/Jan/14

Status: Open
Project: VisualVM
Component/s: None
Affects Version/s: 1.3.5
Fix Version/s: None

Type: Bug Priority: Major
Reporter: unai Assignee: thurka
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

VisualVM shipped with x64 JDK 1.7u45 for linux. O.S.: CentOS 6 x64.



 Description   

On GNU/Linux (CentOS 6.5) 64-bit, the "Threads" tab does not show up for application launched as "java -jar Appl.jar" (HotSpot server VM, Oracle JDK, 7u45).
However, the "VisualVM" application does have a Threads tab.

The same issue is reproducible with VisualVM 1.3.4 (as included in Oracle JDK 7u25), launching the application with HotSpot server VM 7u25...

Same application run on Windows 7 x64: "Threads" is properly shown.



 Comments   
Comment by thurka [ 23/Jan/14 ]

Thread tab is valuable only if VIsualVM can establish JMX connection to monitored application. Do you monitor local or remote application? Can you please, attach VisualVM log file (available in Help->About->Logfile). Thanks.

Comment by unai [ 23/Jan/14 ]

I'm monitoring a local application.

Here's the log:

-------------------------------------------------------------------------------
>Log Session: Thursday, January 23, 2014 2:17:06 PM CET
>System Info:
Product Version = Java VisualVM
Operating System = Linux version 2.6.32-431.3.1.el6.x86_64 running on amd64
Java; VM; Vendor = 1.7.0_45; Java HotSpot(TM) 64-Bit Server VM 24.45-b08; Oracle Corporation
Runtime = Java(TM) SE Runtime Environment 1.7.0_45-b18
Java Home = /home/utente/progs/jdk1.7.0_45/jre
System Locale; Encoding = en_US (visualvm); UTF-8
Home Directory = /home/utente
Current Directory = /home/utente/progs/jdk1.7.0_45/bin
User Directory = /home/utente/.visualvm/7u14
Cache Directory = /home/utente/.cache/visualvm/7u14
Installation = /home/utente/progs/jdk1.7.0_45/lib/visualvm/visualvm
/home/utente/progs/jdk1.7.0_45/lib/visualvm/profiler
/home/utente/progs/jdk1.7.0_45/lib/visualvm/platform
Boot & Ext. Classpath = /home/utente/progs/jdk1.7.0_45/jre/lib/resources.jar:/home/utente/progs/jdk1.7.0_45/jre/lib/rt.jar:/home/utente/progs/jdk1.7.0_45/jre/lib/sunrsasign.jar:/home/utente/progs/jdk1.7.0_45/jre/lib/jsse.jar:/home/utente/progs/jdk1.7.0_45/jre/lib/jce.jar:/home/utente/progs/jdk1.7.0_45/jre/lib/charsets.jar:/home/utente/progs/jdk1.7.0_45/jre/lib/jfr.jar:/home/utente/progs/jdk1.7.0_45/jre/classes:/home/utente/progs/jdk1.7.0_45/jre/lib/ext/localedata.jar:/home/utente/progs/jdk1.7.0_45/jre/lib/ext/sunec.jar:/home/utente/progs/jdk1.7.0_45/jre/lib/ext/sunpkcs11.jar:/home/utente/progs/jdk1.7.0_45/jre/lib/ext/zipfs.jar:/home/utente/progs/jdk1.7.0_45/jre/lib/ext/sunjce_provider.jar:/home/utente/progs/jdk1.7.0_45/jre/lib/ext/dnsns.jar
Application Classpath = /home/utente/progs/jdk1.7.0_45/lib/visualvm/platform/lib/boot.jar:/home/utente/progs/jdk1.7.0_45/lib/visualvm/platform/lib/org-openide-modules.jar:/home/utente/progs/jdk1.7.0_45/lib/visualvm/platform/lib/org-openide-util.jar:/home/utente/progs/jdk1.7.0_45/lib/visualvm/platform/lib/org-openide-util-lookup.jar:/home/utente/progs/jdk1.7.0_45/lib/visualvm/platform/lib/locale/boot_ja.jar:/home/utente/progs/jdk1.7.0_45/lib/visualvm/platform/lib/locale/boot_zh_CN.jar:/home/utente/progs/jdk1.7.0_45/lib/visualvm/platform/lib/locale/org-openide-modules_ja.jar:/home/utente/progs/jdk1.7.0_45/lib/visualvm/platform/lib/locale/org-openide-modules_zh_CN.jar:/home/utente/progs/jdk1.7.0_45/lib/visualvm/platform/lib/locale/org-openide-util_ja.jar:/home/utente/progs/jdk1.7.0_45/lib/visualvm/platform/lib/locale/org-openide-util-lookup_ja.jar:/home/utente/progs/jdk1.7.0_45/lib/visualvm/platform/lib/locale/org-openide-util-lookup_zh_CN.jar:/home/utente/progs/jdk1.7.0_45/lib/visualvm/platform/lib/locale/org-openide-util_zh_CN.jar:/home/utente/progs/jdk1.7.0_45/lib/dt.jar:/home/utente/progs/jdk1.7.0_45/lib/tools.jar
Startup Classpath = /home/utente/progs/jdk1.7.0_45/lib/visualvm/platform/core/core.jar:/home/utente/progs/jdk1.7.0_45/lib/visualvm/platform/core/org-openide-filesystems.jar:/home/utente/progs/jdk1.7.0_45/lib/visualvm/platform/core/locale/org-openide-filesystems_ja.jar:/home/utente/progs/jdk1.7.0_45/lib/visualvm/platform/core/locale/org-openide-filesystems_zh_CN.jar:/home/utente/progs/jdk1.7.0_45/lib/visualvm/platform/core/locale/core_ja.jar:/home/utente/progs/jdk1.7.0_45/lib/visualvm/platform/core/locale/core_zh_CN.jar:/home/utente/progs/jdk1.7.0_45/lib/visualvm/visualvm/core/com-sun-tools-visualvm-modules-startup.jar:/home/utente/progs/jdk1.7.0_45/lib/visualvm/visualvm/core/locale/com-sun-tools-visualvm-modules-startup_zh_CN.jar:/home/utente/progs/jdk1.7.0_45/lib/visualvm/visualvm/core/locale/core_visualvm.jar:/home/utente/progs/jdk1.7.0_45/lib/visualvm/visualvm/core/locale/com-sun-tools-visualvm-modules-startup_ja.jar
-------------------------------------------------------------------------------
INFO [org.netbeans.core.startup.NbEvents]: Turning on modules:
org.openide.util.lookup [8.15.2 20130117-unknown-revn]
org.openide.util [8.25.2 20130117-unknown-revn]
org.openide.modules [7.32.1 20130117-unknown-revn]
org.openide.filesystems [7.62.1 20130117-unknown-revn]
org.netbeans.api.annotations.common/1 [1.14.1 20130117-unknown-revn]
org.openide.awt [7.46.1 20130117-unknown-revn]
org.netbeans.api.progress/1 [1.28.1 20130117-unknown-revn]
org.openide.dialogs [7.25.1 20130117-unknown-revn]
org.openide.nodes [7.28.1 20130117-unknown-revn]
org.openide.windows [6.55.2 20130117-unknown-revn]
org.netbeans.modules.editor.mimelookup/1 [1.26.1 20130117-unknown-revn]
org.openide.text [6.49.3 20130117-unknown-revn]
org.netbeans.swing.tabcontrol [1.36.1 20130117-unknown-revn]
org.netbeans.swing.outline [1.20.1 20130117-unknown-revn]
org.openide.explorer [6.45.1 20130117-unknown-revn]
org.openide.actions [6.26.1 20130117-unknown-revn]
org.netbeans.modules.queries/1 [1.28.1 20130117-unknown-revn]
org.openide.loaders [7.37.3 20130117-unknown-revn]
org.openide.io [1.31.2 20130117-unknown-revn]
org.netbeans.swing.plaf [1.25.1 20130117-unknown-revn]
org.netbeans.spi.quicksearch [1.14.1 20130117-unknown-revn]
org.netbeans.bootstrap/1 [2.52.3 20130117-unknown-revn]
org.netbeans.core.startup/1 [1.40.1 20130117-unknown-revn]
org.netbeans.modules.settings/1 [1.35.1 20130117-unknown-revn]
org.netbeans.modules.sendopts/2 [2.22.1 20130117-unknown-revn]
org.netbeans.modules.sampler [1.1.1 20130117-unknown-revn]
org.netbeans.modules.progress.ui [1.20.1 20130117-unknown-revn]
org.netbeans.modules.profiler.utilities/1 [1.22.1 20130117-unknown-revn]
org.netbeans.lib.profiler/1 [1.19.2 20130117-unknown-revn]
org.netbeans.lib.profiler.common/1 [1.19.1 20130117-unknown-revn]
org.netbeans.modules.profiler.api/1 [1.6.1 20130117-unknown-revn]
org.netbeans.lib.profiler.charts/1 [1.14.1 20130117-unknown-revn]
org.netbeans.lib.profiler.ui/1 [1.19.1 20130117-unknown-revn]
org.netbeans.modules.profiler.attach/2 [2.3.1 20130117-unknown-revn]
org.netbeans.modules.profiler.selector.api/1 [1.20.1 20130117-unknown-revn]
org.netbeans.modules.profiler.selector.ui/1 [1.17.1 20130117-unknown-revn]
org.netbeans.modules.profiler/2 [2.4.1 20130117-unknown-revn]
org.netbeans.modules.keyring [1.11.1 20130117-unknown-revn]
org.netbeans.core/2 [3.33.1 20130117-unknown-revn]
org.netbeans.modules.options.api/1 [1.26.1 20130117-unknown-revn]
org.netbeans.modules.profiler.snaptracer/1 [1.8.1 20130117-unknown-revn]
org.netbeans.modules.profiler.oql/2 [2.3.1 20130117-unknown-revn]
org.netbeans.modules.profiler.heapwalker [1.3.1 20130117-unknown-revn]
org.netbeans.modules.masterfs/2 [2.38.2 20130117-unknown-revn]
org.netbeans.modules.keyring.impl [1.7.1 20130117-unknown-revn]
org.netbeans.modules.editor.mimelookup.impl/1 [1.18.1 20130117-unknown-revn]
org.netbeans.modules.autoupdate.services [1.33.2 20130117-unknown-revn]
org.netbeans.modules.autoupdate.ui [1.27.3 20130117-unknown-revn]
org.netbeans.core.windows/2 [2.49.3 20130117-unknown-revn]
org.netbeans.core.ui/1 [1.31.1 20130117-unknown-revn]
com.sun.tools.visualvm.uisupport/0 [1.1 130117]
com.sun.tools.visualvm.core/0 [1.4 130117]
com.sun.tools.visualvm.host/0 [1.0 130117]
com.sun.tools.visualvm.application/0 [1.6 130117]
com.sun.tools.visualvm.tools/0 [1.2 130117]
com.sun.tools.visualvm.coredump/0 [1.0 130117]
com.sun.tools.visualvm.threaddump/0 [1.0 130117]
com.sun.tools.visualvm.heapdump/0 [1.1 130117]
com.sun.tools.visualvm.profiling/0 [1.1 130117]
com.sun.tools.visualvm.sampler [2.1 130117]
com.sun.tools.visualvm.sa/0 [1.0 130117]
com.sun.tools.visualvm.profiler/0 [1.1 130117]
com.sun.tools.visualvm.modules.startup [1.0 130117]
com.sun.tools.visualvm.modules.appui [1.0 130117]
com.sun.tools.visualvm.jvmstat/0 [1.0 130117]
com.sun.tools.visualvm.jvm/0 [1.1 130117]
com.sun.tools.visualvm.jmx/0 [1.2 130117]
com.sun.tools.visualvm.charts/0 [1.1 130117]
com.sun.tools.visualvm.host.views/0 [1.0 130117]
com.sun.tools.visualvm.host.remote/0 [1.0 130117]
com.sun.tools.visualvm.attach/0 [1.1 130117]
com.sun.tools.visualvm.application.views/0 [1.0 130117]
Diagnostic information
Input arguments:
-Djdk.home=/home/utente/progs/jdk1.7.0_45
-Dnetbeans.default_userdir_root=/home/utente/.visualvm
-Dnetbeans.system_http_proxy=DIRECT
-Dnetbeans.system_http_non_proxy_hosts=
-Dnetbeans.dirs=/home/utente/progs/jdk1.7.0_45/lib/visualvm/visualvm:/home/utente/progs/jdk1.7.0_45/lib/visualvm/profiler:
-Dnetbeans.home=/home/utente/progs/jdk1.7.0_45/lib/visualvm/platform
-Xms24m
-Xmx256m
-XX:MaxPermSize=96m
-Dsun.jvmstat.perdata.syncWaitMs=10000
-Dsun.java2d.noddraw=true
-Dsun.java2d.d3d=false
-Dnetbeans.keyring.no.master=true
-XX:+HeapDumpOnOutOfMemoryError
-XX:HeapDumpPath=/home/utente/.visualvm/7u14/var/log/heapdump.hprof
Compiler: HotSpot 64-Bit Tiered Compilers
Heap memory usage: initial 24.0MB maximum 227.5MB
Non heap memory usage: initial 23.4MB maximum 144.0MB
Garbage collector: PS Scavenge (Collections=7 Total time spent=0s)
Garbage collector: PS MarkSweep (Collections=0 Total time spent=0s)
Classes: loaded=4413 total loaded=4413 unloaded 0
INFO [org.netbeans.core.ui.warmup.DiagnosticTask]: Total memory 8,255,098,880
INFO [null]: Total physical memory 8,255,098,880
INFO [com.sun.tools.visualvm.jmx.impl.JmxModelImpl]: connect(2973)
java.net.ConnectException: Connection refused
at java.net.PlainSocketImpl.socketConnect(Native Method)
at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:339)
at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:200)
at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:182)
at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392)
at java.net.Socket.connect(Socket.java:579)
at java.net.Socket.connect(Socket.java:528)
at java.net.Socket.<init>(Socket.java:425)
at java.net.Socket.<init>(Socket.java:208)
at sun.rmi.transport.proxy.RMIDirectSocketFactory.createSocket(RMIDirectSocketFactory.java:40)
at sun.rmi.transport.proxy.RMIMasterSocketFactory.createSocket(RMIMasterSocketFactory.java:147)
at sun.rmi.transport.tcp.TCPEndpoint.newSocket(TCPEndpoint.java:613)
Caused: java.rmi.ConnectException: Connection refused to host: 83.216.185.166; nested exception is:
java.net.ConnectException: Connection refused
at sun.rmi.transport.tcp.TCPEndpoint.newSocket(TCPEndpoint.java:619)
at sun.rmi.transport.tcp.TCPChannel.createConnection(TCPChannel.java:216)
at sun.rmi.transport.tcp.TCPChannel.newConnection(TCPChannel.java:202)
at sun.rmi.server.UnicastRef.invoke(UnicastRef.java:129)
at javax.management.remote.rmi.RMIServerImpl_Stub.newClient(Unknown Source)
at javax.management.remote.rmi.RMIConnector.getConnection(RMIConnector.java:2392)
at javax.management.remote.rmi.RMIConnector.connect(RMIConnector.java:308)
at com.sun.tools.visualvm.jmx.impl.JmxModelImpl$ProxyClient.tryConnect(JmxModelImpl.java:476)
[catch] at com.sun.tools.visualvm.jmx.impl.JmxModelImpl$ProxyClient.connect(JmxModelImpl.java:420)
at com.sun.tools.visualvm.jmx.impl.JmxModelImpl.connect(JmxModelImpl.java:200)
at com.sun.tools.visualvm.jmx.impl.JmxModelImpl.<init>(JmxModelImpl.java:170)
at com.sun.tools.visualvm.jmx.impl.JmxModelProvider.createModelFor(JmxModelProvider.java:45)
at com.sun.tools.visualvm.jmx.impl.JmxModelProvider.createModelFor(JmxModelProvider.java:22)
at com.sun.tools.visualvm.core.model.ModelFactory.getModel(ModelFactory.java:91)
at com.sun.tools.visualvm.tools.jmx.JmxModelFactory.getJmxModelFor(JmxModelFactory.java:49)
at com.sun.tools.visualvm.application.views.threads.ApplicationThreadsViewProvider.resolveThreads(ApplicationThreadsViewProvider.java:63)
at com.sun.tools.visualvm.application.views.threads.ApplicationThreadsViewProvider.supportsViewFor(ApplicationThreadsViewProvider.java:29)
at com.sun.tools.visualvm.application.views.threads.ApplicationThreadsViewProvider.supportsViewFor(ApplicationThreadsViewProvider.java:25)
at com.sun.tools.visualvm.core.ui.DataSourceViewsManager.getViews(DataSourceViewsManager.java:116)
at com.sun.tools.visualvm.core.ui.DataSourceWindowManager.openWindowAndAddView(DataSourceWindowManager.java:169)
at com.sun.tools.visualvm.core.ui.DataSourceWindowManager.access$000(DataSourceWindowManager.java:30)
at com.sun.tools.visualvm.core.ui.DataSourceWindowManager$1.run(DataSourceWindowManager.java:80)
at org.openide.util.RequestProcessor$Task.run(RequestProcessor.java:1413)
at org.openide.util.RequestProcessor$Processor.run(RequestProcessor.java:1993)

Comment by thurka [ 23/Jan/14 ]

Thanks. Important part of the log is this one:


Caused: java.rmi.ConnectException: Connection refused to host: 83.216.185.166; nested exception is:
java.net.ConnectException: Connection refused


What computer has 83.216.185.166 IP address?

Comment by unai [ 23/Jan/14 ]

That one, localhost has 83.216.185.166 as a public IP address.
Why should visualvm bother to look for (and establish a connection to) that when observing a local application?

Comment by thurka [ 24/Jan/14 ]

I don't know, why JMX tries to connect to 83.216.185.166. We need to find this out. Can you please run VisualVM with:
bin/vinsualvm -J-Dcom.sun.tools.visualvm.jmx.impl.level=100
and again attach VisualVM log file. I would also like to have application snapshot from both VisualVM itself and your monitored application. Thanks.

Comment by unai [ 24/Jan/14 ]

-------------------------------------------------------------------------------
>Log Session: Friday, January 24, 2014 2:41:50 PM CET
>System Info:
Product Version = Java VisualVM
Operating System = Linux version 2.6.32-431.3.1.el6.x86_64 running on amd64
Java; VM; Vendor = 1.7.0_45; Java HotSpot(TM) 64-Bit Server VM 24.45-b08; Oracle Corporation
Runtime = Java(TM) SE Runtime Environment 1.7.0_45-b18
Java Home = /home/utente/progs/jdk1.7.0_45/jre
System Locale; Encoding = en_US (visualvm); UTF-8
Home Directory = /home/utente
Current Directory = /home/utente/progs/jdk1.7.0_45/bin
User Directory = /home/utente/.visualvm/7u14
Cache Directory = /home/utente/.cache/visualvm/7u14
Installation = /home/utente/progs/jdk1.7.0_45/lib/visualvm/visualvm
/home/utente/progs/jdk1.7.0_45/lib/visualvm/profiler
/home/utente/progs/jdk1.7.0_45/lib/visualvm/platform
Boot & Ext. Classpath = /home/utente/progs/jdk1.7.0_45/jre/lib/resources.jar:/home/utente/progs/jdk1.7.0_45/jre/lib/rt.jar:/home/utente/progs/jdk1.7.0_45/jre/lib/sunrsasign.jar:/home/utente/progs/jdk1.7.0_45/jre/lib/jsse.jar:/home/utente/progs/jdk1.7.0_45/jre/lib/jce.jar:/home/utente/progs/jdk1.7.0_45/jre/lib/charsets.jar:/home/utente/progs/jdk1.7.0_45/jre/lib/jfr.jar:/home/utente/progs/jdk1.7.0_45/jre/classes:/home/utente/progs/jdk1.7.0_45/jre/lib/ext/localedata.jar:/home/utente/progs/jdk1.7.0_45/jre/lib/ext/sunec.jar:/home/utente/progs/jdk1.7.0_45/jre/lib/ext/sunpkcs11.jar:/home/utente/progs/jdk1.7.0_45/jre/lib/ext/zipfs.jar:/home/utente/progs/jdk1.7.0_45/jre/lib/ext/sunjce_provider.jar:/home/utente/progs/jdk1.7.0_45/jre/lib/ext/dnsns.jar
Application Classpath = /home/utente/progs/jdk1.7.0_45/lib/visualvm/platform/lib/boot.jar:/home/utente/progs/jdk1.7.0_45/lib/visualvm/platform/lib/org-openide-modules.jar:/home/utente/progs/jdk1.7.0_45/lib/visualvm/platform/lib/org-openide-util.jar:/home/utente/progs/jdk1.7.0_45/lib/visualvm/platform/lib/org-openide-util-lookup.jar:/home/utente/progs/jdk1.7.0_45/lib/visualvm/platform/lib/locale/boot_ja.jar:/home/utente/progs/jdk1.7.0_45/lib/visualvm/platform/lib/locale/boot_zh_CN.jar:/home/utente/progs/jdk1.7.0_45/lib/visualvm/platform/lib/locale/org-openide-modules_ja.jar:/home/utente/progs/jdk1.7.0_45/lib/visualvm/platform/lib/locale/org-openide-modules_zh_CN.jar:/home/utente/progs/jdk1.7.0_45/lib/visualvm/platform/lib/locale/org-openide-util_ja.jar:/home/utente/progs/jdk1.7.0_45/lib/visualvm/platform/lib/locale/org-openide-util-lookup_ja.jar:/home/utente/progs/jdk1.7.0_45/lib/visualvm/platform/lib/locale/org-openide-util-lookup_zh_CN.jar:/home/utente/progs/jdk1.7.0_45/lib/visualvm/platform/lib/locale/org-openide-util_zh_CN.jar:/home/utente/progs/jdk1.7.0_45/lib/dt.jar:/home/utente/progs/jdk1.7.0_45/lib/tools.jar
Startup Classpath = /home/utente/progs/jdk1.7.0_45/lib/visualvm/platform/core/core.jar:/home/utente/progs/jdk1.7.0_45/lib/visualvm/platform/core/org-openide-filesystems.jar:/home/utente/progs/jdk1.7.0_45/lib/visualvm/platform/core/locale/org-openide-filesystems_ja.jar:/home/utente/progs/jdk1.7.0_45/lib/visualvm/platform/core/locale/org-openide-filesystems_zh_CN.jar:/home/utente/progs/jdk1.7.0_45/lib/visualvm/platform/core/locale/core_ja.jar:/home/utente/progs/jdk1.7.0_45/lib/visualvm/platform/core/locale/core_zh_CN.jar:/home/utente/progs/jdk1.7.0_45/lib/visualvm/visualvm/core/com-sun-tools-visualvm-modules-startup.jar:/home/utente/progs/jdk1.7.0_45/lib/visualvm/visualvm/core/locale/com-sun-tools-visualvm-modules-startup_zh_CN.jar:/home/utente/progs/jdk1.7.0_45/lib/visualvm/visualvm/core/locale/core_visualvm.jar:/home/utente/progs/jdk1.7.0_45/lib/visualvm/visualvm/core/locale/com-sun-tools-visualvm-modules-startup_ja.jar
-------------------------------------------------------------------------------
INFO [org.netbeans.core.startup.NbEvents]: Turning on modules:
org.openide.util.lookup [8.15.2 20130117-unknown-revn]
org.openide.util [8.25.2 20130117-unknown-revn]
org.openide.modules [7.32.1 20130117-unknown-revn]
org.openide.filesystems [7.62.1 20130117-unknown-revn]
org.netbeans.api.annotations.common/1 [1.14.1 20130117-unknown-revn]
org.openide.awt [7.46.1 20130117-unknown-revn]
org.netbeans.api.progress/1 [1.28.1 20130117-unknown-revn]
org.openide.dialogs [7.25.1 20130117-unknown-revn]
org.openide.nodes [7.28.1 20130117-unknown-revn]
org.openide.windows [6.55.2 20130117-unknown-revn]
org.netbeans.modules.editor.mimelookup/1 [1.26.1 20130117-unknown-revn]
org.openide.text [6.49.3 20130117-unknown-revn]
org.netbeans.swing.tabcontrol [1.36.1 20130117-unknown-revn]
org.netbeans.swing.outline [1.20.1 20130117-unknown-revn]
org.openide.explorer [6.45.1 20130117-unknown-revn]
org.openide.actions [6.26.1 20130117-unknown-revn]
org.netbeans.modules.queries/1 [1.28.1 20130117-unknown-revn]
org.openide.loaders [7.37.3 20130117-unknown-revn]
org.openide.io [1.31.2 20130117-unknown-revn]
org.netbeans.swing.plaf [1.25.1 20130117-unknown-revn]
org.netbeans.spi.quicksearch [1.14.1 20130117-unknown-revn]
org.netbeans.bootstrap/1 [2.52.3 20130117-unknown-revn]
org.netbeans.core.startup/1 [1.40.1 20130117-unknown-revn]
org.netbeans.modules.settings/1 [1.35.1 20130117-unknown-revn]
org.netbeans.modules.sendopts/2 [2.22.1 20130117-unknown-revn]
org.netbeans.modules.sampler [1.1.1 20130117-unknown-revn]
org.netbeans.modules.progress.ui [1.20.1 20130117-unknown-revn]
org.netbeans.modules.profiler.utilities/1 [1.22.1 20130117-unknown-revn]
org.netbeans.lib.profiler/1 [1.19.2 20130117-unknown-revn]
org.netbeans.lib.profiler.common/1 [1.19.1 20130117-unknown-revn]
org.netbeans.modules.profiler.api/1 [1.6.1 20130117-unknown-revn]
org.netbeans.lib.profiler.charts/1 [1.14.1 20130117-unknown-revn]
org.netbeans.lib.profiler.ui/1 [1.19.1 20130117-unknown-revn]
org.netbeans.modules.profiler.attach/2 [2.3.1 20130117-unknown-revn]
org.netbeans.modules.profiler.selector.api/1 [1.20.1 20130117-unknown-revn]
org.netbeans.modules.profiler.selector.ui/1 [1.17.1 20130117-unknown-revn]
org.netbeans.modules.profiler/2 [2.4.1 20130117-unknown-revn]
org.netbeans.modules.keyring [1.11.1 20130117-unknown-revn]
org.netbeans.core/2 [3.33.1 20130117-unknown-revn]
org.netbeans.modules.options.api/1 [1.26.1 20130117-unknown-revn]
org.netbeans.modules.profiler.snaptracer/1 [1.8.1 20130117-unknown-revn]
org.netbeans.modules.profiler.oql/2 [2.3.1 20130117-unknown-revn]
org.netbeans.modules.profiler.heapwalker [1.3.1 20130117-unknown-revn]
org.netbeans.modules.masterfs/2 [2.38.2 20130117-unknown-revn]
org.netbeans.modules.keyring.impl [1.7.1 20130117-unknown-revn]
org.netbeans.modules.editor.mimelookup.impl/1 [1.18.1 20130117-unknown-revn]
org.netbeans.modules.autoupdate.services [1.33.2 20130117-unknown-revn]
org.netbeans.modules.autoupdate.ui [1.27.3 20130117-unknown-revn]
org.netbeans.core.windows/2 [2.49.3 20130117-unknown-revn]
org.netbeans.core.ui/1 [1.31.1 20130117-unknown-revn]
com.sun.tools.visualvm.uisupport/0 [1.1 130117]
com.sun.tools.visualvm.core/0 [1.4 130117]
com.sun.tools.visualvm.host/0 [1.0 130117]
com.sun.tools.visualvm.application/0 [1.6 130117]
com.sun.tools.visualvm.tools/0 [1.2 130117]
com.sun.tools.visualvm.coredump/0 [1.0 130117]
com.sun.tools.visualvm.threaddump/0 [1.0 130117]
com.sun.tools.visualvm.heapdump/0 [1.1 130117]
com.sun.tools.visualvm.profiling/0 [1.1 130117]
com.sun.tools.visualvm.sampler [2.1 130117]
com.sun.tools.visualvm.sa/0 [1.0 130117]
com.sun.tools.visualvm.profiler/0 [1.1 130117]
com.sun.tools.visualvm.modules.startup [1.0 130117]
com.sun.tools.visualvm.modules.appui [1.0 130117]
com.sun.tools.visualvm.jvmstat/0 [1.0 130117]
com.sun.tools.visualvm.jvm/0 [1.1 130117]
com.sun.tools.visualvm.jmx/0 [1.2 130117]
com.sun.tools.visualvm.charts/0 [1.1 130117]
com.sun.tools.visualvm.host.views/0 [1.0 130117]
com.sun.tools.visualvm.host.remote/0 [1.0 130117]
com.sun.tools.visualvm.attach/0 [1.1 130117]
com.sun.tools.visualvm.application.views/0 [1.0 130117]
Diagnostic information
Input arguments:
-Djdk.home=/home/utente/progs/jdk1.7.0_45
-Dnetbeans.default_userdir_root=/home/utente/.visualvm
-Dnetbeans.system_http_proxy=DIRECT
-Dnetbeans.system_http_non_proxy_hosts=
-Dnetbeans.dirs=/home/utente/progs/jdk1.7.0_45/lib/visualvm/visualvm:/home/utente/progs/jdk1.7.0_45/lib/visualvm/profiler:
-Dnetbeans.home=/home/utente/progs/jdk1.7.0_45/lib/visualvm/platform
-Xms24m
-Xmx256m
-XX:MaxPermSize=96m
-Dsun.jvmstat.perdata.syncWaitMs=10000
-Dsun.java2d.noddraw=true
-Dsun.java2d.d3d=false
-Dnetbeans.keyring.no.master=true
-Dcom.sun.tools.visualvm.jmx.impl.level=100
-XX:+HeapDumpOnOutOfMemoryError
-XX:HeapDumpPath=/home/utente/.visualvm/7u14/var/log/heapdump.hprof
Compiler: HotSpot 64-Bit Tiered Compilers
Heap memory usage: initial 24.0MB maximum 227.5MB
Non heap memory usage: initial 23.4MB maximum 144.0MB
Garbage collector: PS Scavenge (Collections=5 Total time spent=0s)
Garbage collector: PS MarkSweep (Collections=0 Total time spent=0s)
Classes: loaded=4410 total loaded=4410 unloaded 0
INFO [org.netbeans.core.ui.warmup.DiagnosticTask]: Total memory 8,255,098,880
INFO [null]: Total physical memory 8,255,098,880

Comment by unai [ 24/Jan/14 ]

I can't find a way to attach a file to this issue...

Comment by thurka [ 28/Jan/14 ]

Thanks for the new log, however I don't see the 'java.rmi.ConnectException: Connection refused to host: 83.216.185.166;' in the new log. Without it I am not able to diagnose the problem. Please send the attachments via email. Thanks.

Comment by unai [ 28/Jan/14 ]

...to which e-mail address?

Comment by thurka [ 28/Jan/14 ]

thurka at java dot net





[VISUALVM-586] eclipse plugin fails to run project(s) (NullPointerException) Created: 21/Jan/14  Updated: 23/Jan/14

Status: Open
Project: VisualVM
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: Bug Priority: Blocker
Reporter: Gorbles Assignee: thurka
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Windows 8.1 64-bit, Eclipse Java EE IDE for Web Developers (Kepler - build id: 20130614-0229), Java 7 64-bit (JDK 1.7.0_25). VisualFM Launcher Feature v1.1.1 (Oracle Corporation)



 Description   

An internal error occurred during: "Launching <projectname>".

java.lang.NullPointerException
at org.eclipse.jdt.launching.JavaLaunchDelegate.launch(JavaLaunchDelegate.java:101)
at org.eclipse.visualvm.launcher.java.VisualVMJavaDelegate.launch(VisualVMJavaDelegate.java:44)
at org.eclipse.debug.internal.core.LaunchConfiguration.launch(LaunchConfiguration.java:858)
at org.eclipse.debug.internal.core.LaunchConfiguration.launch(LaunchConfiguration.java:707)
at org.eclipse.debug.internal.ui.DebugUIPlugin.buildAndLaunch(DebugUIPlugin.java:1018)
at org.eclipse.debug.internal.ui.DebugUIPlugin$8.run(DebugUIPlugin.java:1222)
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53)

I've seen this on the Internet a bit, but there doesn't seem to be a resolution for it. My project launches fine without using this plugin, and this issue *also* affects my other projects (if I attempt to launch using VisualVM).

Using this version of VisualVM - http://visualvm.java.net/eclipse-launcher.html



 Comments   
Comment by thurka [ 23/Jan/14 ]

Thanks for the report. It looks to me that we will need updated version of the plugin for Eclipse Kepler release.





[VISUALVM-585] Java VisualVM does not show MBeans sometimes Created: 11/Jan/14  Updated: 23/Jan/14

Status: Open
Project: VisualVM
Component/s: plugins
Affects Version/s: 1.3.5
Fix Version/s: None

Type: Bug Priority: Major
Reporter: mosesad Assignee: thurka
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Windows 7, 8GB RAM, Intel Core i7-3720QM CPU @ 2.60GHz & 500 GB HDD


Tags: mbean

 Description   

When opened the MBeans tab, "Data not available because JMX connection to the JMX agent could not be established." message displayed.

Actually, for the first time MBeans was shown in this tab. For some reason, during the application execution it suddenly disappeared with leaving the above message.



 Comments   
Comment by thurka [ 23/Jan/14 ]

Is this issue always reproducible? When it happens, can you pleased attach VisualVM log file (available in Help->About->Logfile). Thanks.





[VISUALVM-575] Fix sampler memory snapshot type Created: 24/Sep/13  Updated: 24/Sep/13

Status: Open
Project: VisualVM
Component/s: code
Affects Version/s: 1.3.6
Fix Version/s: None

Type: Bug Priority: Major
Reporter: jsedlacek Assignee: thurka
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Currently the sampled memory snapshots created by Sampler are internally AllocMemoryResultsSnapshot. Should be SampledMemoryResultsSnapshot. Now breaks comparing sampled vs. instrumented memory snapshots.






[VISUALVM-567] Render MBean attribute value of type ObjectName as link. Clicking on the link selects the corresponding MBean in the tree Created: 03/Jul/13  Updated: 03/Jul/13

Status: Open
Project: VisualVM
Component/s: plugins
Affects Version/s: 1.3.5
Fix Version/s: None

Type: Improvement Priority: Major
Reporter: weissr Assignee: thurka
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

VisualVM-MBeans Plugin:
Render the value of an MBean attribute of type javax.management.ObjectName as a link.
Clicking on the link selects the corresponding MBean in the MBean tree and shows its attributes.

Alternative: Render a the value as text with a button at the end. Clicking on the button selects the corresponding MBean.






[VISUALVM-415] Don't check&delete the remote sites at startup Created: 23/Oct/10  Updated: 13/Jun/13

Status: Open
Project: VisualVM
Component/s: code
Affects Version/s: 1.3.1
Fix Version/s: 1.3.6

Type: Improvement Priority: Major
Reporter: jan_goyvaerts Assignee: jsedlacek
Resolution: Unresolved Votes: 7
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: All
Platform: All


Attachments: PNG File cannotconnect.png    
Issue Links:
Duplicate
is duplicated by VISUALVM-436 Temporarily unavailable remote server... Closed
Issuezilla Id: 415

 Description   

First of all: visualVM is a livesaver, bugkiller tool !!!! I'm using it daily to
diagnose all kind of issues on our live systems - with grand success !!!!

I'm having a tens of remote sites with a number of JMX connections each; which
visualvm all checks at startup. That would not be that bad if the unreachable
sites were not removed ! The whole machine park has application servers in
various states. And each time one is down for maintenance/redeploy/... it
dissapears. And each time my carefully organized hosts, names and ports are
gone.

So really, I would suggest only to remove the hosts/connections/... on explicit
demand of the user. And therefor there would be no need any more to check the
presence at startup time. I'll notice myself it can't connect when I'm trying
to.

And again guys: visualVM is thé Java killer tool !!!!!



 Comments   
Comment by thurka [ 23/Oct/10 ]

Thanks for the feedback. We will try to address it in the next release.

Comment by rainerfrey [ 23/Mar/11 ]

PLease see also VISUALVM-436

Comment by muffl0n [ 20/Oct/11 ]

Responsible for this behaviour is this method:

com.sun.tools.visualvm.jmx.impl.JmxApplicationProvider:300
    private void cleanupCreatedHost(Set<Host> hosts, Host host) {
    // NOTE: this is not absolutely failsafe, if resolving the JMX application
    // took a long time and its host has been added by the user/plugin, it may
    // be removed by this call. Hopefully just a hypothetical case...
    if (host != null && !Host.LOCALHOST.equals(host) && !hosts.contains(host))
        host.getOwner().getRepository().removeDataSource(host);
    }

Doesn't seem that hypothetical like the author thought.

Couldn't you just spit out a warning? Or just not remove the datasource? I really see no point in this. If I added a datasource that is not valid anymore I certainly can take care of removing it myself. At least I'd like to be asked about it.
In fact the error message shown to the user doesn't even tell the user what is going on. It just states that VisualVM cannot connect. Not that it is removing the host.

Thank you very much!

Comment by jsedlacek [ 06/Jun/13 ]

VisualVM can only display nodes for alive hosts/applications, displaying nodes for unavailable resources is currently unsupported.

Implemented the same approach as currently used for hosts - the user is asked to keep/delete unresolved JMX connections on startup.

Available in revision 3217.

Comment by jsedlacek [ 06/Jun/13 ]

Leaving the RFE open for the possibility to not resolve hosts/JMX connections on startup once VisualVM can handle nodes for unavailable resources.





[VISUALVM-561] "No Proxy" configuration not working Created: 23/May/13  Updated: 11/Jun/13

Status: Open
Project: VisualVM
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: Bug Priority: Minor
Reporter: the_alchemist Assignee: thurka
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

java version "1.7.0_21"
Java(TM) SE Runtime Environment (build 1.7.0_21-b11)
Java HotSpot(TM) 64-Bit Server VM (build 23.21-b01, mixed mode)



 Description   

I'm not sure what I'm doing wrong, but I've made a screencast of my visual vm session.

I can't get the "No proxy hosts" setting to work.



 Comments   
Comment by the_alchemist [ 23/May/13 ]

I guess you can't attach files, so here's a link to it.

Comment by jsedlacek [ 11/Jun/13 ]

Bug in NetBeans Platform, will be fixed by upgrading to NB 7.4+ once available.





[VISUALVM-560] cannot perform "Memory Sampling" against Tomcat 7 Created: 16/May/13  Updated: 24/May/13

Status: Open
Project: VisualVM
Component/s: code
Affects Version/s: 1.3.4
Fix Version/s: not determined

Type: Bug Priority: Major
Reporter: the_alchemist Assignee: thurka
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Summary

After connecting to my local Tomcat instance and going to the Sampler tab, it says:

CPU sampling:
Available. Press the 'CPU' button to start collecting performance data.

Memory sampling:
Not available. Failed to read objects in target application. Check the logfile for details (use Help | About | Logfile).

In the logfile, it says:

WARNING [com.sun.tools.visualvm.sampler.SamplerImpl]: attachModel.takeHeapHistogram() throws Throwable for Application [id: localhost-3212, pid: 3212, host: localhost]
java.util.InputMismatchException
	at java.util.Scanner.throwFor(Scanner.java:909)
	at java.util.Scanner.next(Scanner.java:1530)
	at java.util.Scanner.next(Scanner.java:1463)
	at com.sun.tools.visualvm.attach.HeapHistogramImpl.<init>(HeapHistogramImpl.java:92)
	at com.sun.tools.visualvm.attach.AttachModelImpl.takeHeapHistogram(AttachModelImpl.java:92)
	at com.sun.tools.visualvm.attach.AttachModelImpl.takeHeapHistogram(AttachModelImpl.java:22)
[catch] at com.sun.tools.visualvm.sampler.SamplerImpl$12.run(SamplerImpl.java:620)
	at org.openide.util.RequestProcessor$Task.run(RequestProcessor.java:1372)
	at org.openide.util.RequestProcessor$Processor.run(RequestProcessor.java:1952)

I know this is my Tomcat instance because that's what's on pid 3212.

Additional Details

  • This is jvisualvm build 120605.
  • JDK 1.7.0_21
  • Technically, I'm running vmware's vFabric tvServer Developer Edition v2.8 (not sure if it matters)


 Comments   
Comment by thurka [ 22/May/13 ]

Please attach whole logfile, not just the exception. Are you able to reproduce it? What JDK/JRE is used for your Tomcat? It would be useful to have application snapshot your Tomcat instance. Can you, please, attach it to the issue or you can send it via email.

Comment by the_alchemist [ 23/May/13 ]

Whole Logfile

-------------------------------------------------------------------------------
>Log Session: Thursday, May 23, 2013 1:09:21 PM EDT
>System Info: 
  Product Version         = Java VisualVM
  Operating System        = Windows 7 version 6.1 running on amd64
  Java; VM; Vendor        = 1.7.0_21; Java HotSpot(TM) 64-Bit Server VM 23.21-b01; Oracle Corporation
  Runtime                 = Java(TM) SE Runtime Environment 1.7.0_21-b11
  Java Home               = C:\Program Files\Java\jdk1.7.0_21\jre
  System Locale; Encoding = en_US (visualvm); Cp1252
  Home Directory          = C:\Users\kpietrzak
  Current Directory       = C:\Program Files\Java\jdk1.7.0_21\bin
  User Directory          = C:\Users\kpietrzak\AppData\Roaming\.visualvm\7u6
  Cache Directory         = C:\Users\kpietrzak\AppData\Roaming\.visualvm\7u6\var\cache
  Installation            = C:\Program Files\Java\jdk1.7.0_21\lib\visualvm\visualvm
                            C:\Program Files\Java\jdk1.7.0_21\lib\visualvm\profiler
                            C:\Program Files\Java\jdk1.7.0_21\lib\visualvm\platform
  Boot & Ext. Classpath   = C:\Program Files\Java\jdk1.7.0_21\jre\lib\resources.jar;C:\Program Files\Java\jdk1.7.0_21\jre\lib\rt.jar;C:\Program Files\Java\jdk1.7.0_21\jre\lib\sunrsasign.jar;C:\Program Files\Java\jdk1.7.0_21\jre\lib\jsse.jar;C:\Program Files\Java\jdk1.7.0_21\jre\lib\jce.jar;C:\Program Files\Java\jdk1.7.0_21\jre\lib\charsets.jar;C:\Program Files\Java\jdk1.7.0_21\jre\lib\jfr.jar;C:\Program Files\Java\jdk1.7.0_21\jre\classes;C:\Program Files\Java\jdk1.7.0_21\jre\lib\ext\access-bridge-64.jar;C:\Program Files\Java\jdk1.7.0_21\jre\lib\ext\dnsns.jar;C:\Program Files\Java\jdk1.7.0_21\jre\lib\ext\jaccess.jar;C:\Program Files\Java\jdk1.7.0_21\jre\lib\ext\localedata.jar;C:\Program Files\Java\jdk1.7.0_21\jre\lib\ext\sunec.jar;C:\Program Files\Java\jdk1.7.0_21\jre\lib\ext\sunjce_provider.jar;C:\Program Files\Java\jdk1.7.0_21\jre\lib\ext\sunmscapi.jar;C:\Program Files\Java\jdk1.7.0_21\jre\lib\ext\zipfs.jar
  Application Classpath   = C:\Program Files\Java\jdk1.7.0_21\lib\visualvm\platform\lib\boot.jar;C:\Program Files\Java\jdk1.7.0_21\lib\visualvm\platform\lib\org-openide-modules.jar;C:\Program Files\Java\jdk1.7.0_21\lib\visualvm\platform\lib\org-openide-util-lookup.jar;C:\Program Files\Java\jdk1.7.0_21\lib\visualvm\platform\lib\org-openide-util.jar;C:\Program Files\Java\jdk1.7.0_21\lib\visualvm\platform\lib\locale\boot_ja.jar;C:\Program Files\Java\jdk1.7.0_21\lib\visualvm\platform\lib\locale\boot_zh_CN.jar;C:\Program Files\Java\jdk1.7.0_21\lib\visualvm\platform\lib\locale\org-openide-modules_ja.jar;C:\Program Files\Java\jdk1.7.0_21\lib\visualvm\platform\lib\locale\org-openide-modules_zh_CN.jar;C:\Program Files\Java\jdk1.7.0_21\lib\visualvm\platform\lib\locale\org-openide-util-lookup_ja.jar;C:\Program Files\Java\jdk1.7.0_21\lib\visualvm\platform\lib\locale\org-openide-util-lookup_zh_CN.jar;C:\Program Files\Java\jdk1.7.0_21\lib\visualvm\platform\lib\locale\org-openide-util_ja.jar;C:\Program Files\Java\jdk1.7.0_21\lib\visualvm\platform\lib\locale\org-openide-util_zh_CN.jar;C:\Program Files\Java\jdk1.7.0_21\lib\dt.jar;C:\Program Files\Java\jdk1.7.0_21\lib\tools.jar
  Startup Classpath       = C:\Program Files\Java\jdk1.7.0_21\lib\visualvm\platform\core\core.jar;C:\Program Files\Java\jdk1.7.0_21\lib\visualvm\platform\core\org-openide-filesystems.jar;C:\Program Files\Java\jdk1.7.0_21\lib\visualvm\platform\core\locale\core_ja.jar;C:\Program Files\Java\jdk1.7.0_21\lib\visualvm\platform\core\locale\core_zh_CN.jar;C:\Program Files\Java\jdk1.7.0_21\lib\visualvm\platform\core\locale\org-openide-filesystems_ja.jar;C:\Program Files\Java\jdk1.7.0_21\lib\visualvm\platform\core\locale\org-openide-filesystems_zh_CN.jar;C:\Program Files\Java\jdk1.7.0_21\lib\visualvm\visualvm\core\com-sun-tools-visualvm-modules-startup.jar;C:\Program Files\Java\jdk1.7.0_21\lib\visualvm\visualvm\core\locale\com-sun-tools-visualvm-modules-startup_ja.jar;C:\Program Files\Java\jdk1.7.0_21\lib\visualvm\visualvm\core\locale\com-sun-tools-visualvm-modules-startup_zh_CN.jar;C:\Program Files\Java\jdk1.7.0_21\lib\visualvm\visualvm\core\locale\core_visualvm.jar
-------------------------------------------------------------------------------
INFO [org.netbeans.core.startup.NbEvents]: Turning on modules:
	org.openide.util.lookup [8.11.1 20120605-unknown-revn]
	org.openide.util [8.19.1 20120605-unknown-revn]
	org.openide.modules [7.27.1 20120605-unknown-revn]
	org.openide.filesystems [7.53.2 20120605-unknown-revn]
	org.openide.awt [7.39.1 20120605-unknown-revn]
	org.netbeans.api.progress/1 [1.26.1 20120605-unknown-revn]
	org.openide.dialogs [7.23.1 20120605-unknown-revn]
	org.openide.nodes [7.25.1 20120605-unknown-revn]
	org.openide.windows [6.48.2 20120605-unknown-revn]
	org.netbeans.modules.editor.mimelookup/1 [1.24.1 20120605-unknown-revn]
	org.openide.text [6.43.2 20120605-unknown-revn]
	org.netbeans.swing.tabcontrol [1.29.1 20120605-unknown-revn]
	org.netbeans.swing.outline [1.17.2 20120605-unknown-revn]
	org.openide.explorer [6.40.1 20120605-unknown-revn]
	org.openide.actions [6.24.1 20120605-unknown-revn]
	org.netbeans.modules.queries/1 [1.25.1 20120605-unknown-revn]
	org.netbeans.api.annotations.common/1 [1.11.1 20120605-unknown-revn]
	org.openide.loaders [7.32.1 20120605-unknown-revn]
	org.openide.io [1.29.1 20120605-unknown-revn]
	org.netbeans.swing.plaf [1.23.1 20120605-unknown-revn]
	org.netbeans.spi.quicksearch [1.12.1 20120605-unknown-revn]
	org.netbeans.bootstrap/1 [2.44.3 20120605-unknown-revn]
	org.netbeans.core.startup/1 [1.36.1 20120605-unknown-revn]
	org.netbeans.modules.settings/1 [1.33.1 20120605-unknown-revn]
	org.netbeans.modules.sendopts/2 [2.15.1 20120605-unknown-revn]
	org.netbeans.modules.progress.ui [1.18.1 20120605-unknown-revn]
	org.netbeans.modules.profiler.utilities/1 [1.20.1 20120605-unknown-revn]
	org.netbeans.lib.profiler/1 [1.17.3 20120605-unknown-revn]
	org.netbeans.lib.profiler.common/1 [1.17.2 20120605-unknown-revn]
	org.netbeans.modules.profiler.api/1 [1.1.2 20120605-unknown-revn]
	org.netbeans.lib.profiler.charts/1 [1.12.1 20120605-unknown-revn]
	org.netbeans.lib.profiler.ui/1 [1.16.2 20121009-48ef3cd55cdf]
	org.netbeans.modules.profiler.selector.api/1 [1.18.1 20120605-unknown-revn]
	org.netbeans.modules.profiler.selector.ui/1 [1.14.1 20120605-unknown-revn]
	org.netbeans.modules.profiler.oql/2 [2.1.1 20120605-unknown-revn]
	org.netbeans.modules.profiler.attach/2 [2.1.1 20120605-unknown-revn]
	org.netbeans.modules.profiler/2 [2.1.1 20120605-unknown-revn]
	org.netbeans.modules.profiler.heapwalker [1.1.3 20120605-unknown-revn]
	org.netbeans.modules.keyring [1.8.1.1 20120605-unknown-revn]
	org.netbeans.core/2 [3.28.1 20120605-unknown-revn]
	org.netbeans.modules.options.api/1 [1.24.1 20120605-unknown-revn]
	org.netbeans.modules.masterfs/2 [2.34.2 20120605-unknown-revn]
	org.netbeans.modules.keyring.impl [1.5.2 20120605-unknown-revn]
	org.netbeans.modules.editor.mimelookup.impl/1 [1.16.1 20120605-unknown-revn]
	org.netbeans.modules.autoupdate.services [1.28.2 20120605-unknown-revn]
	org.netbeans.modules.autoupdate.ui [1.25.1 20120605-unknown-revn]
	org.netbeans.core.windows/2 [2.41.2 20120605-unknown-revn]
	org.netbeans.core.ui/1 [1.29.1 20120605-unknown-revn]
	com.sun.tools.visualvm.uisupport/0 [1.0 120605]
	com.sun.tools.visualvm.core/0 [1.4 120605]
	com.sun.tools.visualvm.host/0 [1.0 120605]
	com.sun.tools.visualvm.application/0 [1.6 120605]
	com.sun.tools.visualvm.tools/0 [1.2 120605]
	com.sun.tools.visualvm.coredump/0 [1.0 120605]
	com.sun.tools.visualvm.threaddump/0 [1.0 120605]
	com.sun.tools.visualvm.heapdump/0 [1.1 120605]
	com.sun.tools.visualvm.profiling/0 [1.0 120605]
	com.sun.tools.visualvm.sampler [2.0 120605]
	com.sun.tools.visualvm.sa/0 [1.0 120605]
	com.sun.tools.visualvm.profiler/0 [1.1 120605]
	com.sun.tools.visualvm.modules.startup [1.0 120605]
	com.sun.tools.visualvm.modules.appui [1.0 120605]
	com.sun.tools.visualvm.jvmstat/0 [1.0 120605]
	com.sun.tools.visualvm.jvm/0 [1.1 120605]
	com.sun.tools.visualvm.jmx/0 [1.2 120605]
	com.sun.tools.visualvm.charts/0 [1.1 120605]
	com.sun.tools.visualvm.host.views/0 [1.0 120605]
	com.sun.tools.visualvm.host.remote/0 [1.0 120605]
	com.sun.tools.visualvm.attach/0 [1.1 120605]
	com.sun.tools.visualvm.application.views/0 [1.0 120605]
Diagnostic information
Input arguments:
	-Xms24m
	-Xmx256m
	-Dsun.jvmstat.perdata.syncWaitMs=10000
	-Dsun.java2d.noddraw=true
	-Dsun.java2d.d3d=false
	-Djdk.home=C:\Program Files\Java\jdk1.7.0_21
	-Dnetbeans.home=C:\Program Files\Java\jdk1.7.0_21\lib\visualvm\platform
	-Dnetbeans.user=C:\Users\kpietrzak\AppData\Roaming\.visualvm\7u6
	-XX:+HeapDumpOnOutOfMemoryError
	-XX:HeapDumpPath=C:\Users\kpietrzak\AppData\Roaming\.visualvm\7u6\var\log\heapdump.hprof
	-Dnetbeans.system_http_proxy=DIRECT
	-Dsun.awt.keepWorkingSetOnMinimize=true
	-Dnetbeans.dirs=C:\Program Files\Java\jdk1.7.0_21\lib\visualvm\visualvm;C:\Program Files\Java\jdk1.7.0_21\lib\visualvm\profiler
Compiler: HotSpot 64-Bit Tiered Compilers
Heap memory usage: initial 24.0MB maximum 227.6MB
Non heap memory usage: initial 23.2MB maximum 130.0MB
Garbage collector: PS Scavenge (Collections=7 Total time spent=0s)
Garbage collector: PS MarkSweep (Collections=0 Total time spent=0s)
Classes: loaded=4377 total loaded=4377 unloaded 0
INFO [org.netbeans.core.ui.warmup.DiagnosticTask]: Total memory 4,293,386,240
INFO [null]: Total physical memory 4,293,386,240
WARNING [com.sun.tools.visualvm.sampler.SamplerImpl]: attachModel.takeHeapHistogram() throws Throwable for Application [id: localhost-3496, pid: 3496, host: localhost]
java.util.InputMismatchException
	at java.util.Scanner.throwFor(Scanner.java:909)
	at java.util.Scanner.next(Scanner.java:1530)
	at java.util.Scanner.next(Scanner.java:1463)
	at com.sun.tools.visualvm.attach.HeapHistogramImpl.<init>(HeapHistogramImpl.java:92)
	at com.sun.tools.visualvm.attach.AttachModelImpl.takeHeapHistogram(AttachModelImpl.java:92)
	at com.sun.tools.visualvm.attach.AttachModelImpl.takeHeapHistogram(AttachModelImpl.java:22)
[catch] at com.sun.tools.visualvm.sampler.SamplerImpl$12.run(SamplerImpl.java:620)
	at org.openide.util.RequestProcessor$Task.run(RequestProcessor.java:1372)
	at org.openide.util.RequestProcessor$Processor.run(RequestProcessor.java:1952)
WARNING [org.netbeans.TopSecurityManager]: use of system property netbeans.user has been obsoleted in favor of InstalledFileLocator at com.sun.tools.visualvm.modules.appui.AboutAction.getDetails(AboutAction.java:145)

I was able to reproduce on from a different machine, so this logfile is technically from a different machine than the original submission, but that shouldn't make a difference.

Comment by thurka [ 24/May/13 ]

Thanks for the log file, but next time, please attach it to the issue. I am still missing the answers to my other questions:
------
What JDK/JRE is used for your Tomcat?
It would be useful to have application snapshot your Tomcat instance.
Can you, please, attach it to the issue or you can send it via email?
-------
Thanks.





[VISUALVM-550] SimpleXYChartDescriptor.setTooltipTimeFormat() request Created: 02/Mar/13  Updated: 02/Apr/13

Status: Open
Project: VisualVM
Component/s: None
Affects Version/s: 1.3.5
Fix Version/s: None

Type: Improvement Priority: Minor
Reporter: jplichta Assignee: jsedlacek
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Any Java Environment



 Description   

It would be useful to have more control over the time format shown in the tooltip box when hovering over points in the SimpleXYChart.

If one were to set their own tooltip time format string then it would be used instead of the format string returned in the call to TimeAxisUtils.getFormatString from the SimpleXYChartUtils.formatTime method.

Thanks,
Jeremy






[VISUALVM-342] NPE when attaching to restarted remote GlassFish instance Created: 02/Dec/09  Updated: 20/Mar/13

Status: Open
Project: VisualVM
Component/s: plugins
Affects Version/s: 1.2.1
Fix Version/s: not determined

Type: Bug Priority: Major
Reporter: olamattsson Assignee: visualvm-issues
Resolution: Unresolved Votes: 1
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: Windows XP
Platform: All


Issuezilla Id: 342

 Description   

It is not possible to attach to a remote glassfish instance that has been
restarted after VisualVM's first has connected to it with JMX.
After a restart of the GF instance, I try to open a new JMX tab to the instance
in the same VisualVM instance I used before the restart. This fails with the
following error detail:

java.lang.NullPointerException
at
net.java.visualvm.modules.glassfish.GlassFishApplicationTypeFactory.createModelF
or(GlassFishApplicationTypeFactory.java:62)
at
net.java.visualvm.modules.glassfish.GlassFishApplicationTypeFactory.createModelF
or(GlassFishApplicationTypeFactory.java:43)
at
com.sun.tools.visualvm.core.model.ModelFactory.getModel(ModelFactory.java:111)
at
com.sun.tools.visualvm.application.type.ApplicationTypeFactory.getApplicationTyp
eFor(ApplicationTypeFactory.java:72)
at
net.java.visualvm.modules.glassfish.dataview.GlassFishApplicationViewProvider.su
pportsViewFor(GlassFishApplicationViewProvider.java:93)
at
net.java.visualvm.modules.glassfish.dataview.GlassFishApplicationViewProvider.su
pportsViewFor(GlassFishApplicationViewProvider.java:52)
at
com.sun.tools.visualvm.core.ui.DataSourceViewsManager.getViews(DataSourceViewsMa
nager.java:136)
at
com.sun.tools.visualvm.core.ui.DataSourceWindowManager.openWindowAndAddView(Data
SourceWindowManager.java:180)
at
com.sun.tools.visualvm.core.ui.DataSourceWindowManager.access$000(DataSourceWind
owManager.java:50)
at
com.sun.tools.visualvm.core.ui.DataSourceWindowManager$1.run(DataSourceWindowMan
ager.java:100)
at org.openide.util.RequestProcessor$Task.run(RequestProcessor.java:577)
[catch] at
org.openide.util.RequestProcessor$Processor.run(RequestProcessor.java:1030)

I'm running VisualVM on a 32 bit XP professional with Sun java 1.6.0_17-b04



 Comments   
Comment by mhankus [ 20/Mar/13 ]

This bug is quite annoying, it happens also when computer on which visualvm is running hibernates. After computer resumes operation, all you can do is restart visualvm to continue operation.

More current stack for 1.3.5 (previous one was filed against 1.2.1)

java.lang.NullPointerException
	at net.java.visualvm.modules.glassfish.GlassFishApplicationTypeFactory.createModelFor(GlassFishApplicationTypeFactory.java:62)
	at net.java.visualvm.modules.glassfish.GlassFishApplicationTypeFactory.createModelFor(GlassFishApplicationTypeFactory.java:43)
	at com.sun.tools.visualvm.core.model.ModelFactory.getModel(ModelFactory.java:111)
	at com.sun.tools.visualvm.application.type.ApplicationTypeFactory.getApplicationTypeFor(ApplicationTypeFactory.java:74)
	at net.java.visualvm.modules.glassfish.dataview.GlassFishApplicationViewProvider.supportsViewFor(GlassFishApplicationViewProvider.java:93)
	at net.java.visualvm.modules.glassfish.dataview.GlassFishApplicationViewProvider.supportsViewFor(GlassFishApplicationViewProvider.java:52)
	at com.sun.tools.visualvm.core.ui.DataSourceViewsManager.getViews(DataSourceViewsManager.java:136)
	at com.sun.tools.visualvm.core.ui.DataSourceWindowManager.openWindowAndAddView(DataSourceWindowManager.java:189)
	at com.sun.tools.visualvm.core.ui.DataSourceWindowManager.access$000(DataSourceWindowManager.java:50)
	at com.sun.tools.visualvm.core.ui.DataSourceWindowManager$1.run(DataSourceWindowManager.java:100)
	at org.openide.util.RequestProcessor$Task.run(RequestProcessor.java:1452)
[catch] at org.openide.util.RequestProcessor$Processor.run(RequestProcessor.java:2032)




[VISUALVM-551] CLONE -Profiler Agent Warning: Failed to lookup cached class Created: 07/Mar/13  Updated: 07/Mar/13

Status: Open
Project: VisualVM
Component/s: code
Affects Version/s: 1.0
Fix Version/s: 1.2.2

Type: Bug Priority: Critical
Reporter: schevuru Assignee: thurka
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: All
Platform: All


Issuezilla Id: 345

 Description   

In some cases profiler agent reports "Profiler Agent Warning: Failed to lookup cached class
<name_of_the_class>".
The problem can be reproduce with
apache-tomcat-5.5.27
Magnolia 4.2.1 EE

Steps to reproduce:
As for the Tomcat and Magnolia you can download it separately, or you
can download bundle containing both from
http://files.magnolia-cms.com/4.2.1/magnolia-enterprise-bundle-4.2.1-bundle-jdk15.tar.gz

and you can get the evaluation license from
http://registration.magnolia-cms.com/

Once you unzip the bundle, just startup tomcat using
apache-tomcat-5.5.27/bin/magnolia_control.sh

  • wait until tomcat is started (the message like "2009-12-07 17:07:17,683 INFO
    info.magnolia.module.ModuleManagerImpl: Starting module adminInterface" in the logs/catalina.out)
  • start VisualVM,
  • double click on Tomcat node,
  • open "Profiler" tab and
  • click on "CPU" button
  • observe logs/catalina.out ... you'll see bunch of messages like:
    Profiler Agent: JNI On Load Initializing...
    Profiler Agent: JNI OnLoad Initialized succesfully
    Profiler Agent: Waiting for connection on port 5140 (Protocol version:9)
    Profiler Agent: Established local connection with the tool
    Profiler Agent: 250 classes cached.
    ...
    Profiler Agent: Redefining 100 classes at idx 500, out of total 694
    Profiler Agent: Redefining 94 classes at idx 600, out of total 694
  • once profiler is connected and all classes are indexed, try to make use of Magnolia. E.g. open browser
    at http://localhost:8080/magnoliaAuthor/.magnolia/pages/adminCentral.html
  • fill in the login info (superuser/superuser) and hit the login button.
    Once you do the above you get bunch of "Profiler Agent Warning: Failed to lookup cached class
    org/apache/tomcat/util/http/MimeHeaderField" messages in the logs/catalina.out and those classes
    will not appear in the profiler.


 Comments   
Comment by schevuru [ 07/Mar/13 ]

I am trying to profile with VisualVM 1.3.5 and still see this issue for tomcat-6.0.36





[VISUALVM-547] NPE at Start Fail to connect to any local JVM Created: 22/Feb/13  Updated: 25/Feb/13

Status: Open
Project: VisualVM
Component/s: None
Affects Version/s: 1.3.5
Fix Version/s: None

Type: Bug Priority: Critical
Reporter: jdsalingerjr Assignee: thurka
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Windows 7 64-bit



 Description   

After downloading VisualVM 1.3.5 I copied the folder into C:\Program Files\visualvm. Whenever I launch visualvm.exe (even if I run as an administrator), VisualVM fails to connect to any running JVM. In the bottom right corner there is an error icon, and upon inspecting the error is listed as:

SEVERE [org.openide.util.RequestProcessor]: Error in RequestProcessor com.sun.tools.visualvm.core.explorer.ExplorerModelBuilder$1
java.lang.NullPointerException
at com.sun.tools.visualvm.tools.jvmstat.JvmJvmstatModel.getFirstArgument(JvmJvmstatModel.java:261)

I am unable to use VisualVM at all and need to figure out why this is being blocked.
(attached is the complete logfile)

-JD



 Comments   
Comment by jdsalingerjr [ 22/Feb/13 ]

c:\users\921496.CORP\AppData\Roaming\VisualVM\1.3.5\var\log\messages.log:

-------------------------------------------------------------------------------
>Log Session: Friday, February 22, 2013 2:23:06 PM CST
>System Info:
Product Version = VisualVM 1.3.5
Operating System = Windows 7 version 6.1 running on x86
Java; VM; Vendor = 1.6.0_20; Java HotSpot(TM) Client VM 16.3-b01; Sun Microsystems Inc.
Runtime = Java(TM) SE Runtime Environment 1.6.0_20-b02
Java Home = C:\Program Files (x86)\Java\jdk1.6.0_20\jre
System Locale; Encoding = en_US (visualvm); Cp1252
Home Directory = C:\Users\921496.CORP
Current Directory = C:\Program Files\visualvm\bin
User Directory = C:\Users\921496.CORP\AppData\Roaming\VisualVM\1.3.5
Cache Directory = C:\Users\921496.CORP\AppData\Local\VisualVM\Cache\1.3.5
Installation = C:\Program Files\visualvm\visualvm
C:\Program Files\visualvm\profiler
C:\Program Files\visualvm\platform
Boot & Ext. Classpath = C:\Program Files (x86)\Java\jdk1.6.0_20\jre\lib\resources.jar;C:\Program Files (x86)\Java\jdk1.6.0_20\jre\lib\rt.jar;C:\Program Files (x86)\Java\jdk1.6.0_20\jre\lib\sunrsasign.jar;C:\Program Files (x86)\Java\jdk1.6.0_20\jre\lib\jsse.jar;C:\Program Files (x86)\Java\jdk1.6.0_20\jre\lib\jce.jar;C:\Program Files (x86)\Java\jdk1.6.0_20\jre\lib\charsets.jar;C:\Program Files (x86)\Java\jdk1.6.0_20\jre\classes;C:\Program Files (x86)\Java\jdk1.6.0_20\jre\lib\ext\dnsns.jar;C:\Program Files (x86)\Java\jdk1.6.0_20\jre\lib\ext\localedata.jar;C:\Program Files (x86)\Java\jdk1.6.0_20\jre\lib\ext\sunjce_provider.jar;C:\Program Files (x86)\Java\jdk1.6.0_20\jre\lib\ext\sunmscapi.jar;C:\Program Files (x86)\Java\jdk1.6.0_20\jre\lib\ext\sunpkcs11.jar
Application Classpath = C:\Program Files\visualvm\platform\lib\boot.jar;C:\Program Files\visualvm\platform\lib\org-openide-modules.jar;C:\Program Files\visualvm\platform\lib\org-openide-util-lookup.jar;C:\Program Files\visualvm\platform\lib\org-openide-util.jar;C:\Program Files (x86)\Java\jdk1.6.0_20\lib\dt.jar;C:\Program Files (x86)\Java\jdk1.6.0_20\lib\tools.jar
Startup Classpath = C:\Program Files\visualvm\platform\core\core.jar;C:\Program Files\visualvm\platform\core\org-openide-filesystems.jar;C:\Program Files\visualvm\visualvm\core\com-sun-tools-visualvm-modules-startup.jar;C:\Program Files\visualvm\visualvm\core\locale\core_visualvm.jar
-------------------------------------------------------------------------------
INFO [org.netbeans.core.startup.NbEvents]: Turning on modules:
org.openide.util.lookup [8.15.2 20120926-d0f92ba97f49]
org.openide.util [8.25.1 20120926-d0f92ba97f49]
org.openide.modules [7.32.1 20120926-d0f92ba97f49]
org.openide.filesystems [7.62.1 20120926-d0f92ba97f49]
org.netbeans.api.annotations.common/1 [1.14.1 20120926-d0f92ba97f49]
org.openide.awt [7.46.1 20120926-d0f92ba97f49]
org.netbeans.api.progress/1 [1.28.1 20120926-d0f92ba97f49]
org.openide.dialogs [7.25.1 20120926-d0f92ba97f49]
org.openide.nodes [7.28.1 20120926-d0f92ba97f49]
org.openide.windows [6.55.2 20120926-d0f92ba97f49]
org.netbeans.modules.editor.mimelookup/1 [1.26.1 20120926-d0f92ba97f49]
org.openide.text [6.49.1 20120926-d0f92ba97f49]
org.netbeans.swing.tabcontrol [1.36.1 20120926-d0f92ba97f49]
org.netbeans.swing.outline [1.20.1 20120926-d0f92ba97f49]
org.openide.explorer [6.45.1 20120926-d0f92ba97f49]
org.openide.actions [6.26.1 20120926-d0f92ba97f49]
org.netbeans.modules.queries/1 [1.28.1 20120926-d0f92ba97f49]
org.openide.loaders [7.37.3 20120926-d0f92ba97f49]
org.openide.io [1.31.2 20120926-d0f92ba97f49]
org.netbeans.swing.plaf [1.25.1 20120926-d0f92ba97f49]
org.netbeans.spi.quicksearch [1.14.1 20120926-d0f92ba97f49]
org.netbeans.bootstrap/1 [2.52.2 20120926-d0f92ba97f49]
org.netbeans.core.startup/1 [1.40.1 20120926-d0f92ba97f49]
org.netbeans.modules.settings/1 [1.35.1 20120926-d0f92ba97f49]
org.netbeans.modules.sendopts/2 [2.22.1 20120926-d0f92ba97f49]
org.netbeans.modules.sampler [1.1.1 20120926-d0f92ba97f49]
org.netbeans.modules.progress.ui [1.20.1 20120926-d0f92ba97f49]
org.netbeans.modules.profiler.utilities/1 [1.22.1 20120926-d0f92ba97f49]
org.netbeans.lib.profiler/1 [1.19.2 20120926-d0f92ba97f49]
org.netbeans.lib.profiler.common/1 [1.19.1 20120926-d0f92ba97f49]
org.netbeans.modules.profiler.api/1 [1.6.1 20120926-d0f92ba97f49]
org.netbeans.lib.profiler.charts/1 [1.14.1 20120926-d0f92ba97f49]
org.netbeans.lib.profiler.ui/1 [1.19.1 20121009-773a7f1f34fd]
org.netbeans.modules.profiler.attach/2 [2.3.1 20120926-d0f92ba97f49]
org.netbeans.modules.profiler.selector.api/1 [1.20.1 20120926-d0f92ba97f49]
org.netbeans.modules.profiler.selector.ui/1 [1.17.1 20120926-d0f92ba97f49]
org.netbeans.modules.profiler/2 [2.4.1 20120926-d0f92ba97f49]
org.netbeans.modules.keyring [1.11.1 20120926-d0f92ba97f49]
org.netbeans.core/2 [3.33.1 20120926-d0f92ba97f49]
org.netbeans.modules.options.api/1 [1.26.1 20120926-d0f92ba97f49]
org.netbeans.modules.profiler.snaptracer/1 [1.8.1 20120926-d0f92ba97f49]
org.netbeans.modules.profiler.oql/2 [2.3.1 20120926-d0f92ba97f49]
org.netbeans.modules.profiler.heapwalker [1.3.1 20120926-d0f92ba97f49]
org.netbeans.modules.masterfs/2 [2.38.2 20120926-d0f92ba97f49]
org.netbeans.libs.jna/1 [1.21.1 20120926-d0f92ba97f49]
org.netbeans.modules.masterfs.windows [1.1.1 20120926-d0f92ba97f49]
org.netbeans.modules.keyring.impl [1.7.1 20120926-d0f92ba97f49]
org.netbeans.modules.editor.mimelookup.impl/1 [1.18.1 20120926-d0f92ba97f49]
org.netbeans.modules.autoupdate.services [1.33.1 20120926-d0f92ba97f49]
org.netbeans.modules.autoupdate.ui [1.27.2 20120926-d0f92ba97f49]
org.netbeans.core.windows/2 [2.49.3 20120926-d0f92ba97f49]
org.netbeans.core.ui/1 [1.31.1 20120926-d0f92ba97f49]
org.netbeans.core.nativeaccess/1 [1.16.1 20120926-d0f92ba97f49]
com.sun.tools.visualvm.uisupport/0 [1.1 121105]
com.sun.tools.visualvm.core/0 [1.4 121105]
com.sun.tools.visualvm.host/0 [1.0 121105]
com.sun.tools.visualvm.application/0 [1.6 121105]
com.sun.tools.visualvm.tools/0 [1.2 121105]
com.sun.tools.visualvm.coredump/0 [1.0 121105]
com.sun.tools.visualvm.threaddump/0 [1.0 121105]
com.sun.tools.visualvm.heapdump/0 [1.1 121105]
com.sun.tools.visualvm.profiling/0 [1.1 121105]
com.sun.tools.visualvm.sampler [2.1 121105]
com.sun.tools.visualvm.sa/0 [1.0.1 121127]
com.sun.tools.visualvm.profiler/0 [1.1 121105]
com.sun.tools.visualvm.modules.startup [1.0 121105]
com.sun.tools.visualvm.modules.appui [1.0 121105]
com.sun.tools.visualvm.jvmstat/0 [1.0 121105]
com.sun.tools.visualvm.jvm/0 [1.1 121105]
com.sun.tools.visualvm.jmx/0 [1.2 121105]
com.sun.tools.visualvm.charts/0 [1.1 121105]
com.sun.tools.visualvm.host.views/0 [1.0 121105]
com.sun.tools.visualvm.host.remote/0 [1.0 121105]
com.sun.tools.visualvm.attach/0 [1.1 121105]
com.sun.tools.visualvm.application.views/0 [1.0 121105]
WARNING [org.openide.filesystems.Ordering]: Not all children in Windows2/Modes/explorer/ marked with the position attribute: [ExplorerTopComponent.wstcref], but some are: [profiler_cp.wstcref]
SEVERE [org.openide.util.RequestProcessor]: Error in RequestProcessor com.sun.tools.visualvm.core.explorer.ExplorerModelBuilder$1
java.lang.NullPointerException
at com.sun.tools.visualvm.tools.jvmstat.JvmJvmstatModel.getFirstArgument(JvmJvmstatModel.java:261)
at com.sun.tools.visualvm.tools.jvmstat.JvmJvmstatModel.getMainArgs(JvmJvmstatModel.java:211)
at com.sun.tools.visualvm.jvm.JVMImpl.initStaticData(JVMImpl.java:468)
at com.sun.tools.visualvm.jvm.JVMImpl.getMainClass(JVMImpl.java:138)
at com.sun.tools.visualvm.application.type.MainClassApplicationTypeFactory.createModelFor(MainClassApplicationTypeFactory.java:148)
at com.sun.tools.visualvm.application.type.MainClassApplicationTypeFactory.createModelFor(MainClassApplicationTypeFactory.java:42)
at com.sun.tools.visualvm.core.model.ModelFactory.getModel(ModelFactory.java:111)
at com.sun.tools.visualvm.application.type.ApplicationTypeFactory.getApplicationTypeFor(ApplicationTypeFactory.java:74)
at com.sun.tools.visualvm.application.ApplicationDescriptor.<init>(ApplicationDescriptor.java:55)
at com.sun.tools.visualvm.application.ApplicationDescriptorProvider.createModelFor(ApplicationDescriptorProvider.java:43)
at com.sun.tools.visualvm.application.ApplicationDescriptorProvider.createModelFor(ApplicationDescriptorProvider.java:38)
at com.sun.tools.visualvm.core.model.ModelFactory.getModel(ModelFactory.java:111)
at com.sun.tools.visualvm.core.datasource.descriptor.DataSourceDescriptorFactory.getDescriptor(DataSourceDescriptorFactory.java:69)
at com.sun.tools.visualvm.core.explorer.ExplorerModelBuilder.processAddedDisplayableDataSources(ExplorerModelBuilder.java:152)
at com.sun.tools.visualvm.core.explorer.ExplorerModelBuilder.processIndependentAddedDataSources(ExplorerModelBuilder.java:116)
at com.sun.tools.visualvm.core.explorer.ExplorerModelBuilder.processAddedDataSources(ExplorerModelBuilder.java:105)
at com.sun.tools.visualvm.core.explorer.ExplorerModelBuilder.access$200(ExplorerModelBuilder.java:59)
at com.sun.tools.visualvm.core.explorer.ExplorerModelBuilder$1.run(ExplorerModelBuilder.java:98)
at org.openide.util.RequestProcessor$Task.run(RequestProcessor.java:1452)
[catch] at org.openide.util.RequestProcessor$Processor.run(RequestProcessor.java:2032)
Diagnostic information
Input arguments:
-client
-Xms24m
-Xmx256m
-XX:MaxPermSize=96m
-Dnetbeans.accept_license_class=com.sun.tools.visualvm.modules.startup.AcceptLicense
-Dsun.jvmstat.perdata.syncWaitMs=10000
-Dsun.java2d.noddraw=true
-Dsun.java2d.d3d=false
-Djdk.home=C:\Program
Files
(x86)\Java\jdk1.6.0_20
-Dnetbeans.home=C:\Program
Files\visualvm\platform
-Dnetbeans.user=C:\Users\921496.CORP\AppData\Roaming\VisualVM\1.3.5
-Dnetbeans.default_userdir_root=C:\Users\921496.CORP\AppData\Roaming\VisualVM
-XX:+HeapDumpOnOutOfMemoryError
-XX:HeapDumpPath=C:\Users\921496.CORP\AppData\Roaming\VisualVM\1.3.5\var\log\heapdump.hprof
-Dnetbeans.system_http_proxy=PAC
http://internet.proxy.fedex.com/
-Dsun.awt.keepWorkingSetOnMinimize=true
-Dnetbeans.dirs=C:\Program
Files\visualvm\visualvm;C:\Program
Files\visualvm\profiler
Compiler: HotSpot Client Compiler
Heap memory usage: initial 24.0MB maximum 247.5MB
Non heap memory usage: initial 34.2MB maximum 150.0MB
Garbage collector: Copy (Collections=13 Total time spent=0s)
Garbage collector: MarkSweepCompact (Collections=0 Total time spent=0s)
Classes: loaded=4468 total loaded=4468 unloaded 0
INFO [org.netbeans.core.ui.warmup.DiagnosticTask]: Total memory 4,294,967,295
INFO [null]: Total physical memory 4,294,967,295

Comment by jdsalingerjr [ 22/Feb/13 ]

I did notice it was connecting to a 32-bit JVM. When I switched it to a 64-bit JVM using the config file I still get the same error

Comment by jdsalingerjr [ 22/Feb/13 ]

Well I am still getting the error when I launch VisualVM. However, I was able to resolve the issue with not being able to connect to a JVM.

Navigate Tools -> Options -> Network, and set the Proxy configuration to either 'No Proxy' or 'Manual proxy settings'.

I can't understand how that would affect the ability to connect to a running JVM but it does. Everything (almost, still have the NPE) is now working great.

Comment by thurka [ 25/Feb/13 ]

This is interesting. Are you able to provide reproducible test case?

Comment by jdsalingerjr [ 25/Feb/13 ]

I will try it on some of our other workstations this morning.

Any specific details you're looking for?

Comment by thurka [ 25/Feb/13 ]

Currently I don't have an idea, why it does not work, so having the steps how to reproduce it, would be great.





[VISUALVM-546] Filtered out classes shown anyway in the profiler results Created: 22/Feb/13  Updated: 25/Feb/13

Status: Open
Project: VisualVM
Component/s: code
Affects Version/s: None
Fix Version/s: None

Type: Bug Priority: Major
Reporter: mauromol Assignee: thurka
Resolution: Unresolved Votes: 1
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Using JVisualVM from JDK 1.7.0_15 (I don't know the corresponding version of VisualVM, maybe 1.3.4?)



 Description   

I tried to search for this problem in the existing issues, but I couldn't find it.

Although I set up filters before starting a profiling session, some classes that should not be profiled still appear in the results.

For example, if I set the following rule:

Profile new Runnables AND do not profile classes:
java., javax.,
sun., sunw., com.sun.*, com.cardinis.common.support.io.client.executor.PlainHttpURLConnectionHttpProvider$PlainHttpURLConnectionHttpRequest,
com.cardinis.common.support.io.client.executor.PlainHttpURLConnectionHttpProvider

I get the following methods in the hot sposts:

  • sun.net.www.http.KeepAliveCache.run()
  • javax.swing.RepaintManager$ProcessingRunnable.run()
  • com.cardinis.common.support.io.client.executor.PlainHttpURLConnectionHttpProvider$PlainHttpURLConnectionHttpRequest.doRequest(int)

Please note:
1) at least the method sun.net.www.http.KeepAliveCache.run() is included in the hot spots even if I change the filtering criteria to something like:
Profile new Runnables AND profile only classes: com.something.*
In other words, whatever I specify in the filtering criteria ("profile only" or "do not profile") in order to exclude the sun.net.** package, I always get that method in the hot spots!!

2) regarding the method com.cardinis.common.support.io.client.executor.PlainHttpURLConnectionHttpProvider$PlainHttpURLConnectionHttpRequest.doRequest(int), I suspect the problem is how I specify the inner class in the "do not profile classes" text area. I already tried to specify either:
com.cardinis.common.support.io.client.executor.PlainHttpURLConnectionHttpProvider$PlainHttpURLConnectionHttpRequest

  • or -
    com.cardinis.common.support.io.client.executor.PlainHttpURLConnectionHttpProvider.PlainHttpURLConnectionHttpRequest
    but the specified method is always included in the hot spots.


 Comments   
Comment by mauromol [ 22/Feb/13 ]

Sorry, I can't edit the description to fix the text formatting around the "- or -" alternatives for the syntaxes I tried to use to specify the inner class.

Moverover, JIRA has eaten some asterisks in the first block of "do not profile classes": it should be read in this way:
java.*, javax.*,
sun.*, sunw.*, com.sun.*, com.cardinis.common.support.io.client.executor.PlainHttpURLConnectionHttpProvider$PlainHttpURLConnectionHttpRequest, com.cardinis.common.support.io.client.executor.PlainHttpURLConnectionHttpProvider

Comment by thurka [ 25/Feb/13 ]

Do not forget to uncheck 'Profile new Runnables'. See its tooltip for details.

Comment by mauromol [ 25/Feb/13 ]

Yes, I read that tool tip, but I don't see any reason why new runnables shouldn't be subject to class filtering like all the other classes. Correct me if I'm wrong.

Comment by thurka [ 25/Feb/13 ]

'New runnables' are combined with 'Start profiling from classes'. It defines entry points for profiling (a.k.a root methods) and the class filtering is used for the code invoked from those root methods.

Comment by mauromol [ 25/Feb/13 ]

I see. Anyway, it's not intuitive. IMHO, it' ok for using them as root methods, but the profiling statistics of themselves, if they do not satisfy the class filtering criteria, should be filtered out in the profiling results. Unless there's another way to obtain the desired behaviour: in my real-word example, I do not want to see information about sun.net.www.http.KeepAliveCache.run() or javax.swing.RepaintManager$ProcessingRunnable.run(), they're polluting my profiling data. I could uncheck "Profile new Runnables", but in this way I would have to take extreme care to choose the correct root methods (and in a complex environment this might not be so easy).

Do you also have any suggestion about the issue I'm facing on the inner class filtering?





[VISUALVM-543] VisualVM Version 1.3.5 from JAVA 7 Update 10/11 not starting Created: 16/Jan/13  Updated: 01/Feb/13

Status: Open
Project: VisualVM
Component/s: None
Affects Version/s: 1.3.5
Fix Version/s: None

Type: Bug Priority: Major
Reporter: karkre Assignee: thurka
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Windows 7 64 Bit



 Description   

VisualVM did not start, when i click on the symbol.

Ich have installed JAVA 7 Update 11.



 Comments   
Comment by karkre [ 16/Jan/13 ]

JAVA is also an 64 BIT JDK

Comment by karkre [ 21/Jan/13 ]

On JAVA 7 Update 7 VisualVM starts on Windows 64 without Errors.

Comment by thurka [ 31/Jan/13 ]

Are you running Java VisualVM, which is bundled with JDK 7 update 10 or do you try to run VisualVM 1.3.5?

Comment by karkre [ 31/Jan/13 ]

I used the version with delivers with JAVA.

Comment by thurka [ 31/Jan/13 ]

Just to be sure. Java VisualVM does not start If you execute jdk1.7.0_11\bin\jvisualvm.exe and it works fine if you execute jdk1.7.0_07\bin\jvisualvm.exe
Am I right?

Comment by karkre [ 31/Jan/13 ]

YES! I see nothing in Taskmanager or any GUI of ViusalVM.

How can i log this problem for you?

Comment by thurka [ 31/Jan/13 ]

This is strange, since both JDK 7u11 and JDK 7u7 contains the same version of Java VisualVM.
Can you please run jvisualvm.exe from command-line with the following argument:

C:\Users\tom>"c:\Program Files\Java\jdk1.7.0_11\bin\jvisualvm.exe" --trace c:\Windows\Temp\visualvm_log.txt

and attach c:\Windows\Temp\visualvm_log.txt file to this issue.

Comment by karkre [ 31/Jan/13 ]

Starting platform...

Module: c:\Program Files\Java\jdk1.7.0_11\lib\visualvm\platform\lib\nbexec.dll
Platform dir: c:\Program Files\Java\jdk1.7.0_11\lib\visualvm\platform
Parsing arguments:
--jdkhome
c:\Program Files\Java\jdk1.7.0_11
--branding
visualvm
--clusters
c:\Program Files\Java\jdk1.7.0_11\lib\visualvm\visualvm;c:\Program Files\Java\jdk1.7.0_11\lib\visualvm\profiler
--userdir
C:\Users\karkre\AppData\Roaming/.visualvm/7u6
-J-client
-J-Xms24m
-J-Xmx256m
-J-Dsun.jvmstat.perdata.syncWaitMs=10000
-J-Dsun.java2d.noddraw=true
-J-Dsun.java2d.d3d=false
--trace
c:\visualvm_log.txt
JvmLauncher::initialize()
javaPathOrMinVersion: c:\Program Files\Java\jdk1.7.0_11
checkJava(c:\Program Files\Java\jdk1.7.0_11)
File "c:\Program Files\Java\jdk1.7.0_11\jre\bin\client\jvm.dll" does not exist
File "c:\Program Files\Java\jdk1.7.0_11\jre\bin\server\jvm.dll" exists
File "c:\Program Files\Java\jdk1.7.0_11\jre\bin\java.exe" exists
File "c:\Program Files\Java\jdk1.7.0_11\jre\bin\javaw.exe" exists
User dir: C:\Users\karkre\AppData\Roaming\.visualvm\7u6
JvmLauncher::getJavaPath()
File "C:\Users\karkre\AppData\Roaming\.visualvm\7u6\var\cache\splash.png" does not exist
File "C:\Users\karkre\AppData\Roaming\.visualvm\7u6\var\log\heapdump.hprof" does not exist
findHttpProxyFromEnv()
findProxiesFromRegistry()
getDwordFromRegistry()
keyName: Software\Microsoft\Windows\CurrentVersion\Internet settings
valueName: ProxyEnable
ProxyEnable: 1
getStringFromRegistry()
keyName: Software\Microsoft\Windows\CurrentVersion\Internet settings
valueName: ProxyServer
ProxyServer: proxy:3128
Proxy servers:
proxy: proxy:3128
socks proxy:
nonProxy:
getStringFromRegistry()
keyName: Software\Microsoft\Windows\CurrentVersion\Internet settings
valueName: ProxyOverride
ProxyOverride: "cgmoss.corp.comgroup.com;*portal.wgn;cgdecms1.comgroup.de;eisos.comgroup.de;cgdecms1.comgroup.de;cgdecms4.comgroup.de;*wgs.wuerth.com;cgrwdap1.corp.comgroup.com;*cons1.wurthnet.com;*cons2.wurthnet.com;*wuerth-egh.de;tfs.corp.comgroup.com;webmail.wuerthnet.com;autodiscover.comgroup.de;<local>
processAutoUpdateCL()...
File "C:\Users\karkre\AppData\Roaming\.visualvm\7u6\update\download\netbeans.dirs" does not exist
checkForNewUpdater() at c:\Program Files\Java\jdk1.7.0_11\lib\visualvm\platform
No new updater at c:\Program Files\Java\jdk1.7.0_11\lib\visualvm\platform\update\new_updater\updater.jar
Checking for updates: c:\Program Files\Java\jdk1.7.0_11\lib\visualvm\platform\update\download*.nbm
checkForNewUpdater() at c:\Program Files\Java\jdk1.7.0_11\lib\visualvm\visualvm
No new updater at c:\Program Files\Java\jdk1.7.0_11\lib\visualvm\visualvm\update\new_updater\updater.jar
Checking for updates: c:\Program Files\Java\jdk1.7.0_11\lib\visualvm\visualvm\update\download*.nbm
checkForNewUpdater() at c:\Program Files\Java\jdk1.7.0_11\lib\visualvm\profiler
No new updater at c:\Program Files\Java\jdk1.7.0_11\lib\visualvm\profiler\update\new_updater\updater.jar
Checking for updates: c:\Program Files\Java\jdk1.7.0_11\lib\visualvm\profiler\update\download*.nbm
checkForNewUpdater() at C:\Users\karkre\AppData\Roaming\.visualvm\7u6
No new updater at C:\Users\karkre\AppData\Roaming\.visualvm\7u6\update\new_updater\updater.jar
Checking for updates: C:\Users\karkre\AppData\Roaming\.visualvm\7u6\update\download*.nbm
Starting application...
constructClassPath()
addFilesToClassPath()
dir: C:\Users\karkre\AppData\Roaming\.visualvm\7u6
subdir: lib\patches
pattern: *.jar
Nothing found (C:\Users\karkre\AppData\Roaming\.visualvm\7u6\lib\patches*.jar)
addFilesToClassPath()
dir: C:\Users\karkre\AppData\Roaming\.visualvm\7u6
subdir: lib\patches
pattern: *.zip
Nothing found (C:\Users\karkre\AppData\Roaming\.visualvm\7u6\lib\patches*.zip)
addFilesToClassPath()
dir: C:\Users\karkre\AppData\Roaming\.visualvm\7u6
subdir: lib
pattern: *.jar
Nothing found (C:\Users\karkre\AppData\Roaming\.visualvm\7u6\lib*.jar)
addFilesToClassPath()
dir: C:\Users\karkre\AppData\Roaming\.visualvm\7u6
subdir: lib
pattern: *.zip
Nothing found (C:\Users\karkre\AppData\Roaming\.visualvm\7u6\lib*.zip)
addFilesToClassPath()
dir: C:\Users\karkre\AppData\Roaming\.visualvm\7u6
subdir: lib\locale
pattern: *.jar
Nothing found (C:\Users\karkre\AppData\Roaming\.visualvm\7u6\lib\locale*.jar)
addFilesToClassPath()
dir: C:\Users\karkre\AppData\Roaming\.visualvm\7u6
subdir: lib\locale
pattern: *.zip
Nothing found (C:\Users\karkre\AppData\Roaming\.visualvm\7u6\lib\locale*.zip)
addFilesToClassPath()
dir: c:\Program Files\Java\jdk1.7.0_11\lib\visualvm\platform
subdir: lib\patches
pattern: *.jar
Nothing found (c:\Program Files\Java\jdk1.7.0_11\lib\visualvm\platform\lib\patches*.jar)
addFilesToClassPath()
dir: c:\Program Files\Java\jdk1.7.0_11\lib\visualvm\platform
subdir: lib\patches
pattern: *.zip
Nothing found (c:\Program Files\Java\jdk1.7.0_11\lib\visualvm\platform\lib\patches*.zip)
addFilesToClassPath()
dir: c:\Program Files\Java\jdk1.7.0_11\lib\visualvm\platform
subdir: lib
pattern: *.jar
addToClassPath()
path: c:\Program Files\Java\jdk1.7.0_11\lib\visualvm\platform\lib\boot.jar
onlyIfExists: false
addToClassPath()
path: c:\Program Files\Java\jdk1.7.0_11\lib\visualvm\platform\lib\org-openide-modules.jar
onlyIfExists: false
addToClassPath()
path: c:\Program Files\Java\jdk1.7.0_11\lib\visualvm\platform\lib\org-openide-util-lookup.jar
onlyIfExists: false
addToClassPath()
path: c:\Program Files\Java\jdk1.7.0_11\lib\visualvm\platform\lib\org-openide-util.jar
onlyIfExists: false
addFilesToClassPath()
dir: c:\Program Files\Java\jdk1.7.0_11\lib\visualvm\platform
subdir: lib
pattern: *.zip
Nothing found (c:\Program Files\Java\jdk1.7.0_11\lib\visualvm\platform\lib*.zip)
addFilesToClassPath()
dir: c:\Program Files\Java\jdk1.7.0_11\lib\visualvm\platform
subdir: lib\locale
pattern: *.jar
addToClassPath()
path: c:\Program Files\Java\jdk1.7.0_11\lib\visualvm\platform\lib\locale\boot_ja.jar
onlyIfExists: false
addToClassPath()
path: c:\Program Files\Java\jdk1.7.0_11\lib\visualvm\platform\lib\locale\boot_zh_CN.jar
onlyIfExists: false
addToClassPath()
path: c:\Program Files\Java\jdk1.7.0_11\lib\visualvm\platform\lib\locale\org-openide-modules_ja.jar
onlyIfExists: false
addToClassPath()
path: c:\Program Files\Java\jdk1.7.0_11\lib\visualvm\platform\lib\locale\org-openide-modules_zh_CN.jar
onlyIfExists: false
addToClassPath()
path: c:\Program Files\Java\jdk1.7.0_11\lib\visualvm\platform\lib\locale\org-openide-util-lookup_ja.jar
onlyIfExists: false
addToClassPath()
path: c:\Program Files\Java\jdk1.7.0_11\lib\visualvm\platform\lib\locale\org-openide-util-lookup_zh_CN.jar
onlyIfExists: false
addToClassPath()
path: c:\Program Files\Java\jdk1.7.0_11\lib\visualvm\platform\lib\locale\org-openide-util_ja.jar
onlyIfExists: false
addToClassPath()
path: c:\Program Files\Java\jdk1.7.0_11\lib\visualvm\platform\lib\locale\org-openide-util_zh_CN.jar
onlyIfExists: false
addFilesToClassPath()
dir: c:\Program Files\Java\jdk1.7.0_11\lib\visualvm\platform
subdir: lib\locale
pattern: *.zip
Nothing found (c:\Program Files\Java\jdk1.7.0_11\lib\visualvm\platform\lib\locale*.zip)
addToClassPath()
path: c:\Program Files\Java\jdk1.7.0_11\lib\dt.jar
onlyIfExists: true
File "c:\Program Files\Java\jdk1.7.0_11\lib\dt.jar" exists
addToClassPath()
path: c:\Program Files\Java\jdk1.7.0_11\lib\tools.jar
onlyIfExists: true
File "c:\Program Files\Java\jdk1.7.0_11\lib\tools.jar" exists
ClassPath: c:\Program Files\Java\jdk1.7.0_11\lib\visualvm\platform\lib\boot.jar;c:\Program Files\Java\jdk1.7.0_11\lib\visualvm\platform\lib\org-openide-modules.jar;c:\Program Files\Java\jdk1.7.0_11\lib\visualvm\platform\lib\org-openide-util-lookup.jar;c:\Program Files\Java\jdk1.7.0_11\lib\visualvm\platform\lib\org-openide-util.jar;c:\Program Files\Java\jdk1.7.0_11\lib\visualvm\platform\lib\locale\boot_ja.jar;c:\Program Files\Java\jdk1.7.0_11\lib\visualvm\platform\lib\locale\boot_zh_CN.jar;c:\Program Files\Java\jdk1.7.0_11\lib\visualvm\platform\lib\locale\org-openide-modules_ja.jar;c:\Program Files\Java\jdk1.7.0_11\lib\visualvm\platform\lib\locale\org-openide-modules_zh_CN.jar;c:\Program Files\Java\jdk1.7.0_11\lib\visualvm\platform\lib\locale\org-openide-util-lookup_ja.jar;c:\Program Files\Java\jdk1.7.0_11\lib\visualvm\platform\lib\locale\org-openide-util-lookup_zh_CN.jar;c:\Program Files\Java\jdk1.7.0_11\lib\visualvm\platform\lib\locale\org-openide-util_ja.jar;c:\Program Files\Java\jdk1.7.0_11\lib\visualvm\platform\lib\locale\org-openide-util_zh_CN.jar;c:\Program Files\Java\jdk1.7.0_11\lib\dt.jar;c:\Program Files\Java\jdk1.7.0_11\lib\tools.jar
JvmLauncher::start()
mainClassName: org/netbeans/Main
separateProcess: false
args:
--branding
visualvm
options:
-client
-Xms24m
-Xmx256m
-Dsun.jvmstat.perdata.syncWaitMs=10000
-Dsun.java2d.noddraw=true
-Dsun.java2d.d3d=false
-Djdk.home=c:\Program Files\Java\jdk1.7.0_11
-Dnetbeans.home=c:\Program Files\Java\jdk1.7.0_11\lib\visualvm\platform
-Dnetbeans.user=C:\Users\karkre\AppData\Roaming\.visualvm\7u6
-XX:+HeapDumpOnOutOfMemoryError
-XX:HeapDumpPath=C:\Users\karkre\AppData\Roaming\.visualvm\7u6\var\log\heapdump.hprof
-Dnetbeans.system_http_proxy=proxy:3128
-Dnetbeans.system_http_non_proxy_hosts="cgmoss.corp.comgroup.com;*portal.wgn;cgdecms1.comgroup.de;eisos.comgroup.de;cgdecms1.comgroup.de;cgdecms4.comgroup.de;*wgs.wuerth.com;cgrwdap1.corp.comgroup.com;*cons1.wurthnet.com;*cons2.wurthnet.com;*wuerth-egh.de;tfs.corp.comgroup.com;webmail.wuerthnet.com;autodiscover.comgroup.de;<local>
-Dsun.awt.keepWorkingSetOnMinimize=true
-Dnetbeans.dirs=c:\Program Files\Java\jdk1.7.0_11\lib\visualvm\visualvm;c:\Program Files\Java\jdk1.7.0_11\lib\visualvm\profiler
-Djava.class.path=c:\Program Files\Java\jdk1.7.0_11\lib\visualvm\platform\lib\boot.jar;c:\Program Files\Java\jdk1.7.0_11\lib\visualvm\platform\lib\org-openide-modules.jar;c:\Program Files\Java\jdk1.7.0_11\lib\visualvm\platform\lib\org-openide-util-lookup.jar;c:\Program Files\Java\jdk1.7.0_11\lib\visualvm\platform\lib\org-openide-util.jar;c:\Program Files\Java\jdk1.7.0_11\lib\visualvm\platform\lib\locale\boot_ja.jar;c:\Program Files\Java\jdk1.7.0_11\lib\visualvm\platform\lib\locale\boot_zh_CN.jar;c:\Program Files\Java\jdk1.7.0_11\lib\visualvm\platform\lib\locale\org-openide-modules_ja.jar;c:\Program Files\Java\jdk1.7.0_11\lib\visualvm\platform\lib\locale\org-openide-modules_zh_CN.jar;c:\Program Files\Java\jdk1.7.0_11\lib\visualvm\platform\lib\locale\org-openide-util-lookup_ja.jar;c:\Program Files\Java\jdk1.7.0_11\lib\visualvm\platform\lib\locale\org-openide-util-lookup_zh_CN.jar;c:\Program Files\Java\jdk1.7.0_11\lib\visualvm\platform\lib\locale\org-openide-util_ja.jar;c:\Program Files\Java\jdk1.7.0_11\lib\visualvm\platform\lib\locale\org-openide-util_zh_CN.jar;c:\Program Files\Java\jdk1.7.0_11\lib\dt.jar;c:\Program Files\Java\jdk1.7.0_11\lib\tools.jar
Java DLL path: c:\Program Files\Java\jdk1.7.0_11\jre\bin\server\jvm.dll
PrepareDllPath: c:\Program Files\Java\jdk1.7.0_11\jre\bin
Cannot load c:\Program Files\Java\jdk1.7.0_11\jre\bin\server\jvm.dll. %1 ist keine zulässige Win32-Anwendung. (193)
Falling back to running Java in a separate process; DLL cannot be loaded (64-bit DLL?).
Command line:
"c:\Program Files\Java\jdk1.7.0_11\jre\bin\java.exe" "client" "-Xms24m" "-Xmx256m" "-Dsun.jvmstat.perdata.syncWaitMs=10000" "-Dsun.java2d.noddraw=true" "-Dsun.java2d.d3d=false" "-Djdk.home=c:\Program Files\Java\jdk1.7.0_11" "-Dnetbeans.home=c:\Program Files\Java\jdk1.7.0_11\lib\visualvm\platform" "-Dnetbeans.user=C:\Users\karkre\AppData\Roaming\.visualvm\7u6" "-XX:+HeapDumpOnOutOfMemoryError" "-XX:HeapDumpPath=C:\Users\karkre\AppData\Roaming\.visualvm\7u6\var\log\heapdump.hprof" "-Dnetbeans.system_http_proxy=proxy:3128" "-Dnetbeans.system_http_non_proxy_hosts="cgmoss.corp.comgroup.com;*portal.wgn;cgdecms1.comgroup.de;eisos.comgroup.de;cgdecms1.comgroup.de;cgdecms4.comgroup.de;*wgs.wuerth.com;cgrwdap1.corp.comgroup.com;*cons1.wurthnet.com;*cons2.wurthnet.com;*wuerth-egh.de;tfs.corp.comgroup.com;webmail.wuerthnet.com;autodiscover.comgroup.de;<local>" "-Dsun.awt.keepWorkingSetOnMinimize=true" "-Dnetbeans.dirs=c:\Program Files\Java\jdk1.7.0_11\lib\visualvm\visualvm;c:\Program Files\Java\jdk1.7.0_11\lib\visualvm\profiler" "-Djava.class.path=c:\Program Files\Java\jdk1.7.0_11\lib\visualvm\platform\lib\boot.jar;c:\Program Files\Java\jdk1.7.0_11\lib\visualvm\platform\lib\org-openide-modules.jar;c:\Program Files\Java\jdk1.7.0_11\lib\visualvm\platform\lib\org-openide-util-lookup.jar;c:\Program Files\Java\jdk1.7.0_11\lib\visualvm\platform\lib\org-openide-util.jar;c:\Program Files\Java\jdk1.7.0_11\lib\visualvm\platform\lib\locale\boot_ja.jar;c:\Program Files\Java\jdk1.7.0_11\lib\visualvm\platform\lib\locale\boot_zh_CN.jar;c:\Program Files\Java\jdk1.7.0_11\lib\visualvm\platform\lib\locale\org-openide-modules_ja.jar;c:\Program Files\Java\jdk1.7.0_11\lib\visualvm\platform\lib\locale\org-openide-modules_zh_CN.jar;c:\Program Files\Java\jdk1.7.0_11\lib\visualvm\platform\lib\locale\org-openide-util-lookup_ja.jar;c:\Program Files\Java\jdk1.7.0_11\lib\visualvm\platform\lib\locale\org-openide-util-lookup_zh_CN.jar;c:\Program Files\Java\jdk1.7.0_11\lib\visualvm\platform\lib\locale\org-openide-util_ja.jar;c:\Program Files\Java\jdk1.7.0_11\lib\visualvm\platform\lib\locale\org-openide-util_zh_CN.jar;c:\Program Files\Java\jdk1.7.0_11\lib\dt.jar;c:\Program Files\Java\jdk1.7.0_11\lib\tools.jar" org/netbeans/Main "-branding" "visualvm"
processAutoUpdateCL()...
File "C:\Users\karkre\AppData\Roaming\.visualvm\7u6\update\download\netbeans.dirs" does not exist
checkForNewUpdater() at c:\Program Files\Java\jdk1.7.0_11\lib\visualvm\platform
No new updater at c:\Program Files\Java\jdk1.7.0_11\lib\visualvm\platform\update\new_updater\updater.jar
Checking for updates: c:\Program Files\Java\jdk1.7.0_11\lib\visualvm\platform\update\download*.nbm
checkForNewUpdater() at c:\Program Files\Java\jdk1.7.0_11\lib\visualvm\visualvm
No new updater at c:\Program Files\Java\jdk1.7.0_11\lib\visualvm\visualvm\update\new_updater\updater.jar
Checking for updates: c:\Program Files\Java\jdk1.7.0_11\lib\visualvm\visualvm\update\download*.nbm
checkForNewUpdater() at c:\Program Files\Java\jdk1.7.0_11\lib\visualvm\profiler
No new updater at c:\Program Files\Java\jdk1.7.0_11\lib\visualvm\profiler\update\new_updater\updater.jar
Checking for updates: c:\Program Files\Java\jdk1.7.0_11\lib\visualvm\profiler\update\download*.nbm
checkForNewUpdater() at C:\Users\karkre\AppData\Roaming\.visualvm\7u6
No new updater at C:\Users\karkre\AppData\Roaming\.visualvm\7u6\update\new_updater\updater.jar
Checking for updates: C:\Users\karkre\AppData\Roaming\.visualvm\7u6\update\download*.nbm
File "C:\Users\karkre\AppData\Roaming\.visualvm\7u6\var\restart" does not exist
onExit()
JVM in separate process, no need to restart

Comment by thurka [ 31/Jan/13 ]

Thanks for the log. The problem is caused by " (double-quote) in proxy settings in non-proxy hosts. I mean this:

"cgmoss.corp.comgroup.com;*portal.wgn;cgdecms1.comgroup.de;eisos.comgroup.de;cgdecms1.comgroup.de;cgdecms4.comgroup.de;*wgs.wuerth.com;cgrwdap1.corp.comgroup.com;*cons1.wurthnet.com;*cons2.wurthnet.com;*wuerth-egh.de;tfs.corp.comgroup.com;webmail.wuerthnet.com;autodiscover.comgroup.de;<local>

The fix is to remove " (double-quote) from non-proxy hosts settings.

Comment by karkre [ 01/Feb/13 ]

Now it works!

Can you please make check of quote character an show the user the problem, when this is very critical.

Thank you!





[VISUALVM-544] CPU force GC etc... doesn't work Created: 30/Jan/13  Updated: 31/Jan/13

Status: Open
Project: VisualVM
Component/s: None
Affects Version/s: 1.3.5
Fix Version/s: None

Type: Bug Priority: Minor
Reporter: djschaff Assignee: thurka
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Linux environment, running SAP. Downloaded separate JDK 6 to use jvisualvm to monitor node.


Tags: CPU, GC, do, force, monitor, not, on, startup, thread, work

 Description   

Hi:

My name is David Schaffel. I am using jvisualvm to monitor an instance of my sap portal. I like the tool a lot, has alot of really nice features. However, it seems that some of the features and plugins don't fully work unless the JVM has been freshly started and the jvisualvm tool is running before that.

For instance, if SAP is running and portal is up, I can open jvisualvm and see memory, but not CPU. I can see visual GC, but I cannot force a GC. And I cannot see the threads either.

However, if I am running jvisualvm before I bring SAP up on the server, all of those features start working. Is this a bug, shouldn't jvisualvm be able to initialize these features whenever it is started, and not when the jvm is first starting up? Please advise, thanks, great tool!



 Comments   
Comment by thurka [ 31/Jan/13 ]

If you do not see CPU, it means that JMX connection to SAP portal does not work. Can you please try to use latest VisualVM 1.3.5, just to be sure that this was not fixed in the latest version. Thanks.

Comment by djschaff [ 31/Jan/13 ]

I am currently using version 1.3.5

Comment by thurka [ 31/Jan/13 ]

OK, can you please attach VisualVM messages.log. It is available in Help->About->Logfile





[VISUALVM-538] hostname vs localhost with 2 machines on the net Created: 01/Dec/12  Updated: 31/Jan/13

Status: Open
Project: VisualVM
Component/s: code
Affects Version/s: 1.3.5
Fix Version/s: None

Type: Bug Priority: Major
Reporter: oshyshko Assignee: thurka
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Mac OS X 10.7 / Oracle JDK 1.7 / Bundled with Mac OS X JDK 1.6


Tags: hostname, ip, java7, local, localhost, mac, visualvm

 Description   

I have 2 freshly installed MacBooks.
They have addresses 192.168.1.2 and 192.168.1.3 in my Wi-Fi network.
Both of them are turned on.

I use the second laptop (with 192.168.1.3)
I launch a local Java program that I want to profile (under JVM 1.7).
I launch a local VisualVM after that (under same JVM 1.7).

VisualVM attaches to program JVM, bur fails to show CPU graph.
Instead of CPU I graph it says "Not supported for this JVM".

When open VisualVM log I can see:
=============================================
INFO [com.sun.tools.visualvm.jmx.impl.JmxModelImpl]: connect(6984)
java.net.ConnectException: Connection refused
at java.net.PlainSocketImpl.socketConnect(Native Method)
at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:339)
at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:200)
at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:182)
at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:391)
at java.net.Socket.connect(Socket.java:579)
at java.net.Socket.connect(Socket.java:528)
at java.net.Socket.<init>(Socket.java:425)
at java.net.Socket.<init>(Socket.java:208)
at sun.rmi.transport.proxy.RMIDirectSocketFactory.createSocket(RMIDirectSocketFactory.java:40)
at sun.rmi.transport.proxy.RMIMasterSocketFactory.createSocket(RMIMasterSocketFactory.java:146)
at sun.rmi.transport.tcp.TCPEndpoint.newSocket(TCPEndpoint.java:613)
Caused: java.rmi.ConnectException: Connection refused to host: 192.168.1.2; nested exception is:
java.net.ConnectException: Connection refused
at sun.rmi.transport.tcp.TCPEndpoint.newSocket(TCPEndpoint.java:619)
at sun.rmi.transport.tcp.TCPChannel.createConnection(TCPChannel.java:216)
at sun.rmi.transport.tcp.TCPChannel.newConnection(TCPChannel.java:202)
at sun.rmi.server.UnicastRef.invoke(UnicastRef.java:128)
at javax.management.remote.rmi.RMIServerImpl_Stub.newClient(Unknown Source)
at javax.management.remote.rmi.RMIConnector.getConnection(RMIConnector.java:2370)
at javax.management.remote.rmi.RMIConnector.connect(RMIConnector.java:296)
at com.sun.tools.visualvm.jmx.impl.JmxModelImpl$ProxyClient.tryConnect(JmxModelImpl.java:476)
=============================================

Clearly, a laptop on which I am running the program + Visual VM, both locally, which has IP 192.168.1.3 tries to connect to its neighbour with IP 192.168.1.2 .

If I turn off Wi-Fi on laptop with IP 192.168.1.3, and re-run the program + JVM...
...suddenly it works (I can see CPU graph)

If I turn on Wi-Fi on back on laptop with IP 192.168.1.3, then the problem is back (no CPU graph, I see it's attempting to connect to neighbour 192.168.1.2).

Now, if I run a Java program on first laptop with IP 192.168.1.2, I can see the CPU grap when on Visual VM.

Observation:

  • telemetry and memory profiling works with "localhost" when attaching to local JVM
  • CPU profiling / sampling doesn't work when attaching to local JVM (it uses "hostname" to resolve local host)

Why is it happening:

When Mac OS X is installed, the hostname is set to default (regardless of System Preferences > Sharing > Computer Name):

$ hostname
macbook

So "ping `hostmame`" will actually (quite often) ping neighbors on Wi-Fi.
Sometimes it will resolve just fine to its own (external) IP.

Conclusion:
Apparently, different parts of VisualVM (CPU vs Memory and telemetry) use different ways to resolve "local host".

Fix:
I believe it is preferred to skip host resolution for local host (use loopback IP instead).

Workaround:
If you ran into a similar problem, try changing your "host name".
Here is how to change host name on Mac OS X

$ sudo scutil --set HostName NEW_HOSTNAME

Then reboot.



 Comments   
Comment by thurka [ 31/Jan/13 ]

VisualVM uses different technologies (some of them are using TCP/IP some are not). This is the reason, why some data are always available. For local application monitoring, VisualVM does no host resolution. The problem seems to be in JDK. Can you try the same scenario with JDK 6?

Comment by oshyshko [ 31/Jan/13 ]

Unfortunately I don't have the setup to check it with JDK6 (it was a long time ago).

You are saying:
> For local application monitoring, VisualVM does no host resolution.

I could be wrong, but I have an observation that tells the opposite.

By some means its is affected by host name clash.
It does host resolution for local applications, otherwise it would not connect to external IP like 192.168.1.3 (instead of using loopback address 127.0.0.1).

It is probably done implicitly by resolving "localhost" IP from VisualVM code, but then it goes wrong deeper in JDK code and could be a JDK bug as you say.

However it doesn't mean that it could not be (or should not be) fixed in VisualVM code.
Why not just use loopback addresses like 127.0.0.1 instead of "localhost"? (I am not sure that this will work, just guessing)

Comment by thurka [ 31/Jan/13 ]

If you still have those two MacBooks running Mac OS X 10.8.2, you can test it with JDK 6.

For local connection VisualVM uses PID to identify the monitoring process. The rest is done by JDK, so I still believe that the problem is in JDK and not in VisualVM.





[VISUALVM-541] MBean graph Created: 20/Dec/12  Updated: 20/Dec/12

Status: Open
Project: VisualVM
Component/s: plugins
Affects Version/s: 1.3.5
Fix Version/s: None

Type: Improvement Priority: Major
Reporter: tcanvn Assignee: thurka
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

OS: All



 Description   

Graphs/Data of mbeans in MBean plugin currently disappear after the application that contains mbeans terminated.
It is more reasonable/useful if we can review the graphs/data after the application stops.
I tried to find the log or cache of mbean data but I couldn't find them.






[VISUALVM-537] JVisualVM is unable to connect to a service using the "--openpid [PID]" commandline arg. Created: 30/Nov/12  Updated: 10/Dec/12

Status: Open
Project: VisualVM
Component/s: code
Affects Version/s: 1.3.2
Fix Version/s: None

Type: Bug Priority: Major
Reporter: chriss.dev Assignee: thurka
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Win7


Attachments: Text File messages.log    

 Description   

I have an application that is running as a win-service (using Apache-Procrun). I want to monitor that application with JVisualVM. I've used the commandline argument --openpid <PID> without success, ironically the old JConsole managed to connect to that application.

I also checked all issues with the %TMP%\hsperfdata_username-Directory that are described in the JVisualVM-Trouble Shooting Guide. Its all well.

How can i get the JVisualVM to monitor my app?

Please also answer to the corresponding stackoverflow question : http://stackoverflow.com/questions/13625812/jvisualvm-is-unable-to-connect-to-process-using-the-openpid-argument



 Comments   
Comment by thurka [ 30/Nov/12 ]

See the following page <https://blogs.oracle.com/nbprofiler/entry/monitoring_java_processes_running_as>. It will show you how you can monitor your application.

Comment by chriss.dev [ 30/Nov/12 ]

Ohh this a lot of work to do, why is the old jconsole able to connect and JvisualVM not? Its feel like a bug? At a failed startup the JVVM should give a hint what to do, like presenting a link to the blog you posted.

This should be fixed.

Comment by thurka [ 30/Nov/12 ]

It should work the same way as jconsole. Can you attach Java VisualVM log file? Do you see your application when you run Java VisualVM (without any parameter)?
VisualVM cannot give you link to the blog, since there could a lot of other different cases, not just the one with monitoring windows service app.

Comment by chriss.dev [ 04/Dec/12 ]

Can you attach Java VisualVM log file?

Here is the requested Log-File: messages.log

Do you see your application when you run Java VisualVM without any parameter)?

No, there is nothing!

Comment by thurka [ 08/Dec/12 ]

I was able to reproduce it, but jconsole only works this way on Windows XP and it is probably a side-effect of Attach API bug and not a jconsole feature. jconsole itself does not display windows service app, you need to specify PID directly. I think it is more convenient to start your windows service app with enabled JMX service and use JMX connection on a specific port. This way you don't need to look up process PID.

Comment by chriss.dev [ 10/Dec/12 ]

Thanks using a JMX connection works! For the record here one can find how to setup a JMX connection-> Connecting to JMX Agents Explicitly





[VISUALVM-539] Support headless CPU/memory snapshot of finite duration java apps Created: 06/Dec/12  Updated: 06/Dec/12

Status: Open
Project: VisualVM
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: New Feature Priority: Major
Reporter: fommil Assignee: thurka
Resolution: Unresolved Votes: 3
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

... preferably with easy use from Maven.

This would be an incredibly useful way to be able to automatically obtain snapshots in development environments.

Even being able to automatically register a JVM instance AND start CPU/memory snapshot recording from the command line / Maven would be very useful.






[VISUALVM-532] VisualVM closes the JVM abnormally Created: 20/Nov/12  Updated: 23/Nov/12

Status: Open
Project: VisualVM
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: Bug Priority: Major
Reporter: vidhyadharantechdays Assignee: thurka
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

windows 2008 server


Attachments: File attachment[1].cgi_id=128027     File attachment[1].cgi_id=128028     File attachment[1].cgi_id=128029    

 Description   

I try to profile with visualVM via JMX, The JVM closes automatically.
Please find the attached

Duplicate Reference :
http://netbeans.org/bugzilla/show_bug.cgi?id=222356






[VISUALVM-531] java.lang.OutOfMemoryError: PermGen space Created: 05/Nov/12  Updated: 05/Nov/12

Status: Open
Project: VisualVM
Component/s: None
Affects Version/s: 1.3.4
Fix Version/s: None

Type: Bug Priority: Critical
Reporter: Stephen_Fernandes Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Windows 7 Professional 64 bit



 Description   

Getting the below error while profiling the application.The JVM parameters are :
-Xms512M
-Xmx1024M
-XX:MaxPermSize=512M

However the sampling of application works fine.
The problem is only when the visual vm tries to profile the classes and it goes out of memory.

java.lang.OutOfMemoryError: PermGen space
at java.lang.String.intern(Native Method)
at org.netbeans.lib.profiler.utils.StringUtils.utf8ToString(StringUtils.java:394)
at org.netbeans.lib.profiler.classfile.ClassFileParser.utf8AtCPIndex(ClassFileParser.java:596)
at org.netbeans.lib.profiler.classfile.ClassFileParser.readMethods(ClassFileParser.java:451)
at org.netbeans.lib.profiler.classfile.ClassFileParser.parseClassFile(ClassFileParser.java:118)
at org.netbeans.lib.profiler.classfile.DynamicClassInfo.<init>(DynamicClassInfo.java:105)
at org.netbeans.lib.profiler.classfile.ClassPath.getClassInfoForClass(ClassPath.java:237)
at org.netbeans.lib.profiler.classfile.ClassRepository.tryLoadRealClass(ClassRepository.java:729)
at org.netbeans.lib.profiler.classfile.ClassRepository.lookupClass(ClassRepository.java:705)
at org.netbeans.lib.profiler.classfile.ClassRepository.lookupClass(ClassRepository.java:470)
at org.netbeans.lib.profiler.instrumentation.ClassManager.javaClassForName(ClassManager.java:198)
at org.netbeans.lib.profiler.instrumentation.RecursiveMethodInstrumentor1.getMethodsToInstrumentUponClassLoad(RecursiveMethodInstrumentor1.java:193)
at org.netbeans.lib.profiler.instrumentation.Instrumentor.createFollowUpInstrumentMethodGroupResponseForCallGraph(Instrumentor.java:363)
at org.netbeans.lib.profiler.instrumentation.Instrumentor.createFollowUpInstrumentMethodGroupResponse(Instrumentor.java:248)
at org.netbeans.lib.profiler.ProfilerClient.instrumentMethodGroupFollowUp(ProfilerClient.java:1822)
at org.netbeans.lib.profiler.ProfilerClient.access$300(ProfilerClient.java:87)






[VISUALVM-168] SSH tunnel plugin Created: 23/Jul/08  Updated: 02/Nov/12

Status: Open
Project: VisualVM
Component/s: plugins
Affects Version/s: 1.0
Fix Version/s: not determined

Type: New Feature Priority: Blocker
Reporter: bjb Assignee: visualvm-issues
Resolution: Unresolved Votes: 5
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: All
Platform: All
URL: http://java.sun.com/javase/6/docs/technotes/guides/management/agent.html#gdfvv


Issuezilla Id: 168

 Description   

At this time VisualVM (as JConsole) because of JMX&RMI issues are
is not working behind SSH.

See
http://java.sun.com/javase/6/docs/technotes/guides/management/agent.html#gdfvv
http://java.sun.com/javase/6/docs/technotes/guides/management/faq.html#rmi1

Most production machines are nowadays only accessible thru a SSH layer (because
beeing in protected areas in white rooms). Not having a SSH friendly solution
means, not beeing able to supervision most environment.

This is blocking because there is no way at this time to workaround the
situation, thus preventing anybody to use VisualVM on such environment.



 Comments   
Comment by jsedlacek [ 01/Jul/09 ]

Could you please be more specific on what exactly doesn't work for you?
Also, could you please describe how would you like the VisualVM to support the
SSH tunelling? Thanks.

Comment by scoopex [ 14/Mar/11 ]

I also experienced this problem. Typically i use the following commandline to tunnel to a remote server (firewalls typically do not permit access to hosting areas):

ssh -L 10001:127.0.0.1:10001 my-server.hosting.org

This command tunnels port 10001 of the remote system to my local system (127.0.0.1/localhost) port 10001.

Visualvm rejects to open a jmx connection to port 10001 with a notification that "...localhost is already monitored..."
It seems that the logic for detecting duplicate connections should improved.

You can workaround this problem using a socks tunnel:
(but this is not available for every ssh client)

1.) Connect to server
ssh -D 10002 my-server.hosting.org
2.) Execute Visualvm on your workstation
./visualvm -J-Dnetbeans.system_socks_proxy=localhost:10002 -J-Djava.net.useSystemProxies=true

It also seems that some features (i.e. tracing) are nit available using jmx connections over network.
A great advantage would be a tiny remote server daemon which utilizes the java vmattach api (access via process id)
and exposes access to all jvms over network. A new connection type in visualvm opens the connection to this daemon.
running on this host. This connection can be tunnelled via SSH or exposed over a single port (then we need authentication and encryption) - probably we do not need a new communication protocol and use the existing.....

I think comfortable remote access is essential for making visualvm to be the most popular java-profiling-tool )

Comment by scoopex [ 10/Jan/12 ]

From my point of view it would be a cool thing to have the possibility to run visalvm divided in two processes:

1.) The backend

  • runs at serverside
  • connect to local procces ids via vm.attach()
    (for security reasons this would be a nice thing in production environments - only users with acces to that
    process/user can connect - no extra jmx account management)
  • provides access to all jvms(pids) which run on this system
  • analysis at serverside

2.) The frontend

  • runs on the developer workstation
  • displays data and interacts with the user
  • opens a ssh channel, uploads the backend to /tmp/visalvm-<randomkey>, executes the backend, communicates
    over stdin/stdout with the server process
    => Support for SSH Keys would be good
    => Support for jumphosts would be great (workstation --SSH--> jumphost ---SSH--> production machine)

It seems that only via vm.attach(<process-id>) the full features of visualvm are available....is that correct?

Comment by scoopex [ 02/Nov/12 ]

Still waiting for this feature.

There is a workaround (see http://gabenell.blogspot.de/2010/04/connecting-to-jmx-on-tomcat-6-through.html) - but with this settings it is not possible to use the VisualGC plugin (which needs jstatd connectivity).

Using VisualVM on remotehosts behind a firewall ist still a real pain!





[VISUALVM-523] The eclipse plugin launcher fails to open a JUnit4 test Created: 17/Oct/12  Updated: 17/Oct/12

Status: Open
Project: VisualVM
Component/s: plugins
Affects Version/s: 1.3.4
Fix Version/s: None

Type: Bug Priority: Major
Reporter: khal100 Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

OS: Windows XP (5.1) Service Pack 3
Architecture: x86 32bit
Processors: 2

Version: Helios Service Release 2
Build id: 20110218-0911


Tags: eclipse_plugin, junit4

 Description   

The Eclipse launcher for VisualVM 1.3.4 in eclipse 3.6 (Version: Helios Service Release 2
Build id: 20110218-0911) does not lauch the Junit4 test (application). I have followed the instructions to use Junit (keep junit running flag and launching the VisualVm Launcher) and tried various options but every time VisualVM does launch but the application is not attached. A warning dialogue box appears with the message "Cannot open requested application".






[VISUALVM-522] Memory profiling breaks JConsole Created: 10/Oct/12  Updated: 10/Oct/12

Status: Open
Project: VisualVM
Component/s: code
Affects Version/s: 1.3.4
Fix Version/s: None

Type: Bug Priority: Critical
Reporter: jsedlacek Assignee: thurka
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Windows 7 64bit, JDK 7u7 64bit


Attachments: File threaddump-1349872293625.tdump    

 Description   

Started jconsole.exe, started VisualVM 1.3.4, switched to Profiler tab and clicked the Memory button. JConsole hangs, thread dump from its JVM attached.






[VISUALVM-514] Add support for obfuscated applications Created: 06/Sep/12  Updated: 06/Sep/12

Status: Open
Project: VisualVM
Component/s: code
Affects Version/s: 1.3.4
Fix Version/s: None

Type: New Feature Priority: Major
Reporter: nicoulaj Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Tags: obfuscation, proguard

 Description   

It would be nice if VisualVM had support for obfuscated applications, ie showing the real package/class/method/field names if user provides the obfuscation "map" file. Yourkit supports this feature. ProGuard has an easily embeddable API for deobfuscating.

This could be implemented as a generic support for something like "display item transformer", so plugins can register transformers on package/class/method/field names, and support for specific obfuscation tool is provided as a separate plugin.






[VISUALVM-470] Add command line option to start sampling or profiling right away in addition to --openid and use it in Eclipse Launcher Created: 18/Oct/11  Updated: 24/Aug/12

Status: Open
Project: VisualVM
Component/s: code
Affects Version/s: 1.3.3
Fix Version/s: None

Type: New Feature Priority: Major
Reporter: famod Assignee: Unassigned
Resolution: Unresolved Votes: 1
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

It would come in very handy if one could instruct VisualVM to start sampling/profiling a java process right away that has been given by the already existing --openid command line option.

This could be implemented as a new option --autostart with values like "cpu-sampling", "memory-sampling", "cpu-profiling" etc.

This new feature could then be used in the eclipse launcher so that you don't have to switch over to VisualVM and start sampling/profiling manually. This manual activation is quite cumbersome and you might click the respective button too late (in case of rather short running JUnit tests and the like).
For a clean integration in eclipse, one should be able to configure this "autostart" behaviour on a "per run configuration" basis but I don't know if this can be achieved easily. YourKit has an integration like that, for example.

To make this scenario complete, another command line option could be introduced to pre-select a VisualVM profile (e.g. --profile).

Btw: I couldn't find a description of all command line options in the documentation that are available today, so maybe a page for that should be added.



 Comments   
Comment by thurka [ 29/Nov/11 ]

>Btw: I couldn't find a description of all command line options in the documentation that are available today, so maybe a page for that should be added.

To get description of the command line options, use
visualvm --help

Comment by krzyk [ 24/Aug/12 ]

Actually it would be even better if this worked without the GUI.
Just do the sampling for a defined time and return the results to the screen. It would be very useful to find out performance issues on production boxes that can't be reproduced locally.





[VISUALVM-503] VisualVM thread timetable don't show threads Created: 02/Apr/12  Updated: 31/Jul/12

Status: Open
Project: VisualVM
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: Bug Priority: Critical
Reporter: rgonzalezsiguero Assignee: thurka
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Windows 7, Windows 2008R2



 Description   

Product Version = NetBeans IDE 7.1 (Build 201112071828)
Operating System = Windows 7 version 6.1 running on amd64
Java; VM; Vendor = 1.7.0_02
Runtime = Java HotSpot(TM) 64-Bit Server VM 22.0-b10

I hava a java application that uses threads and i would like to monitor it with
visualvm. I could connect it to visualvm and i see every tab correctly but not
the threads tab.

On it, i can't see any threads working but i can see the number of them
running.

I have also the JConsole plugin "Top threads" and there i also cannot see any
thread.

The Java version is 1.7.2 and the application uses daemon threads.

I've debugged the app and when it starts everything goes fine and i can see
thread timetable. When the first thread starts the timetable hangs and i can't
see anything else.

This is the code to create and start the threads

for (i = 0; i < 10; i++)

{ attenderThreads.add(new Attender(i)); }

for (i = 0; i < attenderThreads.size(); i++)

{ ((Attender) attenderThreads.elementAt(i)).start(); }

And this is the class Attender than extends Thread

public Attender(int _ithread)

{ setDaemon(true); ithread = _ithread; threadSuspended = true; locked = false; super.setName ("Attender "+ _ithread); }

Finally, the application works fine but i need to see the threads because
sometimes the app hangs and i don't know where it's happening.

The app is Java Console and i can make a Thread dump and i see all the threads.



 Comments   
Comment by rgonzalezsiguero [ 02/Apr/12 ]

The setDaemon (true) is mandatory. I removed just to try but the problem is the same.

I compiled with Java 6 and the problem persists.

I forgot to mention that the run method have a call to Object.wait() method and it's the time when the timetable hangs.

Comment by thurka [ 14/Jun/12 ]

I am a little bit confused - why this:

Product Version = NetBeans IDE 7.1 (Build 201112071828)
Operating System = Windows 7 version 6.1 running on amd64
Java; VM; Vendor = 1.7.0_02
Runtime = Java HotSpot(TM) 64-Bit Server VM 22.0-b10

is at the top of your description? What this has to do with NetBeans?
Can you attach your application so that we can test it?

Comment by rgonzalezsiguero [ 31/Jul/12 ]

This is what appears on About of my jvisualvm. I don't know why netbeans appears on it because i'm using JDK 7 jvisualvm. You'll find the piece of code on the description. I cannot send the whole application.

Version:

1.7.0_02 (Build 1320-110325); platform 110131-9c8b3bfb3a1e

System:

Windows 7 (6.1) Service Pack 1, amd64 64bit

Java:

1.7.0_02; Java HotSpot(TM) 64-Bit Server VM (22.0-b10, mixed mode)

Vendor:

Oracle Corporation, http://java.oracle.com/

Environment:

Cp1252; es_ES (visualvm)

Clusters:

C:\Program Files\Java\jdk1.7.0_02\lib\visualvm\platform
C:\Program Files\Java\jdk1.7.0_02\lib\visualvm\visualvm
C:\Program Files\Java\jdk1.7.0_02\lib\visualvm\profiler

Visit http://visualvm.java.net for more information. Built on NetBeans Platform.





[VISUALVM-511] estimated real CPU time gives impossible values Created: 28/Jun/12  Updated: 28/Jun/12

Status: Open
Project: VisualVM
Component/s: code
Affects Version/s: None
Fix Version/s: None

Type: Bug Priority: Major
Reporter: w.pasman Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

osx 10.6.8 on 2.66GHz Intel Core i7.
java version "1.6.0_33"
Java(TM) SE Runtime Environment (build 1.6.0_33-b03-424-10M3720)
Java HotSpot(TM) 64-Bit Server VM (build 20.8-b03-424, mixed mode)


Attachments: PNG File wrongcalltree.png    

 Description   

Profile (with the Sampler in default settings) the attached program on a eg 4-core CPU. The program tries to run 8 threads in parallel, each thread busy-waiting for exactly 10 seconds.

On a 4-core CPU this should result in an even distribution of the available 4*10s over the 8 processes.

The ThreadMXBean output from the program confirms this, with each process getting around 4s of real CPU time.

But the VisualVM gives a totally different picture, saying that all 8 processes got a 10seconds estimated real CPU time for a total of 80seconds. Obviously this is impossible with only 10 seconds runtime on a 4-core processor.

The problem also shows on Win7-32bit.

{{{
import java.lang.management.ManagementFactory;
import java.lang.management.ThreadMXBean;
import java.util.Scanner;

/**

  • simple test for profiler. Runs 8 threads all for 10 seconds
  • @author W.Pasman
  • */
    public class test2 {
    public static void main(String[] args) {
    System.out.println("press enter to start");
    Scanner sc = new Scanner(System.in);
    sc.nextLine();

for (int n = 0; n < 8; n++) {
Thread t = new Thread() {
@Override
public void run()

{ test2.sleep("child ", 10000); }

};
t.start();
}
test2.sleep("main", 10000);
System.out.println("press enter to stop");
sc.nextLine();

}

public static void sleep(String name, long t)

{ System.out.println(name + " is sleeping " + t); long start = System.currentTimeMillis(); while (System.currentTimeMillis() - start < t) ; ThreadMXBean bean = ManagementFactory.getThreadMXBean(); System.out.println("this thread ran " + bean.getThreadCpuTime(Thread.currentThread().getId()) / 1000000000. + "s."); }

}
}}}

Attached is an image with the incorrect calltree CPU times.



 Comments   
Comment by w.pasman [ 28/Jun/12 ]

I checked the code (trunk version on svn)

I see this in ThreadsCPU.java:

{{{
public ThreadsCPUInfo getThreadsCPUInfo() throws MBeanException, ReflectionException, IOException, InstanceNotFoundException {
long[] ids = threadBean.getAllThreadIds();
ThreadInfo[] tids = threadBean.getThreadInfo(ids);
Object[] args = new Object[]

{ids}

;
String[] sigs = new String[]

{"[J"}

; // NOI18N
long[] tinfo = (long[])connection.invoke(THREAD_NAME, "getThreadCpuTime", args, sigs); // NOI18N
long time = System.currentTimeMillis();

return new ThreadsCPUInfo(time,tids,tinfo);
}
}}}

Now I'm not used to the connection.invoke but it seems to me that getThreadCpuTime takes only 1 long, not an array of longs as what I understand from the code. See the ThreadMXBean interface definition.





[VISUALVM-485] can't compile plugin for visualVM Created: 06/Jan/12  Updated: 17/Jun/12

Status: Open
Project: VisualVM
Component/s: None
Affects Version/s: 1.3.3
Fix Version/s: None

Type: Bug Priority: Trivial
Reporter: sebastien_descamps Assignee: thurka
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

windows xp, netbeans 7.0.1, visualvm 1.3.3


Attachments: Zip Archive HelloVisualVM.zip    
Tags: developement, plugin, tutorial

 Description   

I want to develop a plugin for visualVM, I follow the tutorial http://visualvm.java.net/api-quickstart.html for hello worl plugin.
The project compile in Netbeans but when I want to make build and clean, I have this message :

build-init:
Created dir: D:\workspace_netbean\HelloVisualVM\build\public-package-jars
Scanning for modules in D:\Programs\visualvm_133\platform
Scanning for modules in D:\Programs\visualvm_133\profiler
D:\Programs\NetBeans 7.0.1\harness\build.xml:174: No dependent module com.sun.tools.visualvm.application



 Comments   
Comment by sebastien_descamps [ 06/Jan/12 ]

this is the project

Comment by lary.klein [ 15/Jun/12 ]

I am having the same issue. Is there any progress on this issue yet?

Comment by thurka [ 17/Jun/12 ]

You also need to add dependency on "VisualVM-Application" module. Do this by right-clicking the project node, choosing "Properties", and then setting the dependency in the "Libraries" tab.





[VISUALVM-506] Histogram view of heap dump data Created: 11/Apr/12  Updated: 14/Jun/12

Status: Open
Project: VisualVM
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: New Feature Priority: Major
Reporter: tln Assignee: thurka
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

I would really welcome a histogram function for array data found in heap dumps.

Frequent example question that can't be answered easily with what's already offered in VisualVM and which should show what I'm up to:
"From the 123879 character arrays in my heap dump, ... how many are size 8192 characters, and how much memory do they consume together?"

A diagram view would be perfect but not immediately necessary.

Also, ... I would really welcome a similar histogram() function in the OQL console. I somehow emulated it using map(), sort(), and filter(), but the result is really unwieldy:

select	filter(
		map(
			sort(
				map(
					heap.objects('[C'),
					"{size: sizeof(it)}"
				),
				'lhs.size<rhs.size'
			),
			function (it, index, array, result)
			{
				if (index==length(array)-1)
				{
					var lastSize=-1;
					var cumulatedSize=0;
					var cumulatedSizeGlobal=0;
	
					for (i=0; i<index; i++)
					{
						var curElement=array[i];
						var curSize=curElement.size;

						cumulatedSizeGlobal+=curSize;
	
						result[i]={keep_in_filter: false};
	
						if (curSize!=lastSize)
						{
							if (i>0)
							{
								result[i-1]={keep_in_filter: true, cumulated: cumulatedSize, cumulatedGlobal: cumulatedSizeGlobal, size: lastSize};
							}
							lastSize=curSize;
							cumulatedSize=0;
						}
	
						cumulatedSize+=curSize;
					}
	
					return {keep_in_filter: true, cumulated: cumulatedSize, cumulatedGlobal: cumulatedSizeGlobal, size: lastSize};
				}
			}
		),
		"it.keep_in_filter"
	)

The signature of the histogram() function I have in mind would be something like:

histogram(array/enumeration, name_of_field_to_group_by, name_of_field_to_cumulate)

Please note: A more generic (and thus even more welcome) approach would be to have something like "group by" in SQL. With its help a histogram and many other useful things could easily be created. And also it would be more intuitive to those familiar with SQL.



 Comments   
Comment by thurka [ 14/Jun/12 ]

Your problem "From the 123879 character arrays in my heap dump, ... how many are size 8192 characters, and how much memory do they consume together?" cannot be easily solved with OQL, but you can sort the character arrays instances in instance view. Does it help?





[VISUALVM-502] Profiler engine warning: Failed to lookup cached class Created: 23/Mar/12  Updated: 14/Jun/12

Status: Open
Project: VisualVM
Component/s: None
Affects Version/s: 1.3.4
Fix Version/s: None

Type: Bug Priority: Major
Reporter: spidertom Assignee: thurka
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Tomcat 7, Windows 7, java 1.6.0_31



 Description   

I just recently upgraded to 1.6.0_31 and whenever i try to profile my app in tomcat, i get a bunch of these messages

Profiler engine warning: Failed to lookup cached class "insert class here"

in the nd not much ends up being profiled making it quite useless



 Comments   
Comment by spidertom [ 23/Mar/12 ]

I'm not sure what other kind of information would be helpful, but i started tomcat via eclipse if perhaps that might be a problem





[VISUALVM-394] Thread names are not updated on display Created: 31/Jul/10  Updated: 09/Apr/12

Status: Open
Project: VisualVM
Component/s: code
Affects Version/s: 1.2.2
Fix Version/s: not determined

Type: Bug Priority: Major
Reporter: bartonhammond Assignee: visualvm-issues
Resolution: Unresolved Votes: 1
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: Windows 7
Platform: PC


Issuezilla Id: 394

 Description   

I have a batch application that runs many thousand tasks utilizing a fixed
number of threads. Before each task is run i update the thread name so I know
what is running. The names in VisualVM are always the same from the initial
invocation. I really need the name changes to be reflected in the UI.



 Comments   
Comment by jsedlacek [ 31/Jul/10 ]

As a workaround, you can use the Threads Inspector plugin which is available for
VisualVM 1.3. It correctly updates the thread names.

Comment by bartonhammond [ 31/Jul/10 ]

I download the 1.3 VisualVM for Eclipse IDE but when I run it says version
1.2.2. The plugin is only for 1.3. I'll learn NetBeans I guess!

Comment by jsedlacek [ 31/Jul/10 ]

There's no VisualVM for Eclipse IDE. Just go to
https://visualvm.dev.java.net/download.html, click the 'VisualVM 1.3' link, and
unzip the downloaded archive to somewhere (do not overwrite the original VisualVM
1.2.2). This way you will get VisualVM 1.3.

You can also download the VisualVM launcher for Eclipse IDE at
https://visualvm.dev.java.net/eclipse-launcher.html, this will allow you to start
the downloaded VisualVM along with the monitored application right from the IDE.
Do not forget to setup the plugin to use VisualVM 1.3 - not the previous VisualVM
installation.

Comment by monotoli [ 09/Apr/12 ]

It'd be awesome if the profiler snapshot view had some additional smarts to handle changing thread names as well (in addition to the 'Threads' tab). It's tough to profile stuff that runs on thread pools since numerous tasks share those threads; being able to separate things out based on the current thread name would be pretty pro.





[VISUALVM-493] command line option to read attributes or invoke operations Created: 09/Mar/12  Updated: 09/Mar/12

Status: Open
Project: VisualVM
Component/s: code
Affects Version/s: 1.3.3
Fix Version/s: None

Type: Improvement Priority: Major
Reporter: weberjn Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

There should be command line options to read attributes or invoke operations non interactively, so one could use VisualVM in a batch.

e.g.

visualvm --service service:jmx:rmi:///jndi/rmi://server:12345/jmxrmi --object "java.lang:type=Memory" -attribute HeapMemoryUsage






[VISUALVM-492] Copy Tree Path and data to Clipboard Created: 09/Mar/12  Updated: 09/Mar/12

Status: Open
Project: VisualVM
Component/s: plugins
Affects Version/s: 1.3.2
Fix Version/s: None

Type: Improvement Priority: Major
Reporter: weberjn Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Tree entries in MBeans plugin should get a context menu entry: copy path to clipboard.
e.g. the clipboard would contain: java.lang:type=Memory

Same for the Attributes and Metadata table cells.

This would be useful for documentation purposes.






[VISUALVM-482] "Connection Refused" bug happens again for Windows 7 (64-bit) Created: 03/Dec/11  Updated: 20/Feb/12

Status: Open
Project: VisualVM
Component/s: code
Affects Version/s: 1.3.3
Fix Version/s: None

Type: Bug Priority: Major
Reporter: cnkmym Assignee: thurka
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Windows 7 (version 6.1), 64bit
Jdk1.7 (64-bit version)


Attachments: Text File logfile.txt    

 Description   

When start VisualVM1.3.3 from Windows 7 (64bit),
it took too long time to scan local running JAVA applications.
I have to wait nearly 1 minute before VisualVM find any application other than itself.

Then I investigated the log, in which I found "Connection Time out" cased by "Connection Refused".

I saw similar bug is reported as VisualVM-74, and the problem should already been fixed.
But unfortunately it appeared again.



 Comments   
Comment by cnkmym [ 03/Dec/11 ]

Then I change my jdk from 1.7 downto 1.6 (6u27), but the problem is still there.

I change computer to 32-bit version, then no problem is found.

Comment by cnkmym [ 03/Dec/11 ]

Sorry, i already found the problem.
It lies in my personal firewall installed in computer.

I use ESET Smart Security, which automatically blocks all UDP connection of windows svchost.

Since inside visualVM, it will try to use SSL pattern to assist discovering local application,
this action is blocked . The log from ESET shows "SSDP(UDP Request) is blocked".

The solutions are:
1, disable your firewall
(OR)
2, change block strategy, enable SSDP by java.





[VISUALVM-484] JRE recieves SIGSEGV on launch of visualvm Created: 18/Dec/11  Updated: 20/Feb/12

Status: Open
Project: VisualVM
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: Bug Priority: Major
Reporter: darkdimius Assignee: thurka
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Gentoo linux, stable tree, oracle-jdk 7u1


Attachments: Text File hs_err_pid30394.log    

 Description   

On launching of both VisualVM downloaded from site(1.3.3) and packaged with oracle-jdk7 I immediately receive
#

  1. A fatal error has been detected by the Java Runtime Environment:
    #
  2. SIGSEGV (0xb) at pc=0x0000003b9c282326, pid=30394, tid=140144192292608
    #
  3. JRE version: 7.0_01-b08
  4. Java VM: Java HotSpot(TM) 64-Bit Server VM (21.1-b02 mixed mode linux-amd64 compressed oops)
  5. Problematic frame:
  6. C [libGL.so.1+0x82326] XQueryExtension+0x82326
    #
  7. Failed to write core dump. Core dumps have been disabled. To enable core dumping, try "ulimit -c unlimited" before starting Java again
    #
  8. An error report file with more information is saved as:
  9. /home/dark_gentoo/Desktop/visualvm_133/hs_err_pid30394.log
    #
  10. If you would like to submit a bug report, please visit:
  11. http://bugreport.sun.com/bugreport/crash.jsp
    #
    [thread 140144109164288 also had an error]

This does NOT happen if I start visualVm pakaged with jdk6u23

libgl.so is one provided by Nvidia in their 290.10 drivers.

All other java applications(including Eclipse4.1, vuse, jconsole) are functioning with no observable problems.



 Comments   
Comment by darkdimius [ 18/Dec/11 ]

Same happens with latest jdk7u2
#

  1. A fatal error has been detected by the Java Runtime Environment:
    #
  2. SIGSEGV (0xb) at pc=0x0000003b9c282326, pid=31234, tid=140562758719232
    #
  3. JRE version: 7.0_02-b13
  4. Java VM: Java HotSpot(TM) 64-Bit Server VM (22.0-b10 mixed mode linux-amd64 compressed oops)
  5. Problematic frame:
  6. C [libGL.so.1+0x82326] XQueryExtension+0x82326
    #
  7. Failed to write core dump. Core dumps have been disabled. To enable core dumping, try "ulimit -c unlimited" before starting Java again
    #
  8. An error report file with more information is saved as:
  9. /home/dark_gentoo/hs_err_pid31234.log
    #
  10. If you would like to submit a bug report, please visit:
  11. http://bugreport.sun.com/bugreport/crash.jsp
    #
    [thread 140562740569856 also had an error]
Comment by darkdimius [ 08/Jan/12 ]

After some experiments i've found that insetting environment variable GNOME_DESKTOP_SESSION_ID stops this issue from occurring.
Here you can see all environment variables on my machine: http://pastebin.com/qRSGEQ6q





[VISUALVM-487] I want the tracing function for certain application (by type) can be started automatically! Created: 21/Jan/12  Updated: 20/Feb/12

Status: Open
Project: VisualVM
Component/s: code, plugins
Affects Version/s: None
Fix Version/s: None

Type: New Feature Priority: Major
Reporter: cnkmym Assignee: thurka
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: 1 week
Time Spent: Not Specified
Original Estimate: 1 week
Environment:

Windows XP, JDK1.6


Tags: Tracer-Framework

 Description   

In my project, multiple Java application will be started automatically. I want to profile and monitor them by VisualVM. However, click each Application node to start monitoring function by hand is time-consuming since the project will be launched repeatedly. What make things worse is that some application would be terminated due to exceptions like Memory Overflow before I click its node.

So I wonder if it is possible to support auto-start-monitoring function for certain types of applications? Give users some GUI to define the application type list (e.g. by registering the main class). And then VisualVM will automatically open the monitor overview or tracer plugin to gather the data as soon as it has been found.

In fact, I already made my own VisualVM plugin to solve this problem. But I have to make some change to the "Tracer-Framework" plugin to support new methods to fetch the TracerView Object.

I do not think this solution is beautiful. So I wonder if VisualVM project could provide official solution to my requirement?






[VISUALVM-488] Starting memory profiler produces error message "Agent JAR loaded but agent failed to initialize". Created: 07/Feb/12  Updated: 20/Feb/12

Status: Open
Project: VisualVM
Component/s: code
Affects Version/s: 1.3.3
Fix Version/s: None

Type: Bug Priority: Major
Reporter: ennerr Assignee: thurka
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

os.arch=x86
os.name=SunOS
os.version=5.10
oracle.j2ee.container.name=Oracle Containers for J2EE 10g (10.1.3.4.0)
oracle.j2ee.container.version=10.1.3.4.0
java.runtime.version=1.6.0_22-b04



 Description   

Starting memory profiler produces error message "Agent JAR loaded but agent failed to initialize". Other than Profiler, everything seems to work just fine.

visualvm console log:

Profiler.attachToApp: ***************************************************
profiling settings --------------------------------
isPreset: true
name: Analyze Memory
profilingType: 2
overrideGlobalSettings: false
workingDir:
jvmArgs:
javaPlatform: <project>
threadsMonitoringEnabled: false
threadsSamplingEnabled: true
useProfilingPoints: true
excludeWaitTime: true
cpuProfilingType: 0
instrScheme: 1
threadCPUTimerOn: false
instrumentGetterSetterMethods: false
instrumentEmptyMethods: false
instrumentMethodInvoke: true
instrumentSpawnedThreads: false
nProfiledThreadsLimit: 32
sortResultsByThreadCPUTime: false
samplingInterval: 10
instrumentationRootMethods: []
codeFragmentSelection: null
codeRegionCPUResBufSize: 1000
runGCOnGetResultsInMemoryProfiling: true
allocTrackEvery: 10
allocStackTraceLimit: -1
selectedInstrFilter:
profileUnderlyingFramework: false

attach settings -----------------------------------
target type =
server type =
remote =false
direct =false
dynamic JDK16 =true
pid =20433
host =
host os =Solaris (x86), 32bit JVM
transient port =-1

instrumentation filter ----------------------------
Filter type: Inclusive
Filter value:

Profiler.attachToApp: ***************************************************
com.sun.tools.attach.AgentInitializationException: Agent JAR loaded but agent failed to initialize
at sun.tools.attach.HotSpotVirtualMachine.loadAgent(HotSpotVirtualMachine.java:103)
at org.netbeans.modules.profiler.NetBeansProfiler$2.loadAgentIntoTargetJVM(NetBeansProfiler.java:904)
at org.netbeans.modules.profiler.NetBeansProfiler$2.doInBackground(NetBeansProfiler.java:857)
at org.netbeans.lib.profiler.ui.SwingWorker$2.run(SwingWorker.java:122)
at org.openide.util.RequestProcessor$Task.run(RequestProcessor.java:1424)
at org.openide.util.RequestProcessor$Processor.run(RequestProcessor.java:1968)






[VISUALVM-476] Unable to do Profile for Tomcat app, does not automatically connect Created: 09/Nov/11  Updated: 02/Dec/11

Status: Open
Project: VisualVM
Component/s: code
Affects Version/s: 1.3.3
Fix Version/s: None

Type: Bug Priority: Major
Reporter: markie44 Assignee: thurka
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Linux RedHat Enterprise 5


Attachments: JPEG File alert.jpg     Text File messages.log     Text File tomcat_processes.log     PNG File VisualVM on tul1cpgtapp2.png     Text File visualvm.messages.log    

 Description   

Installed VisualVM 1.3.3, started application from command line, answered license question. Observed startup screen, only application listed on left panel under local is VisualVM. There was already a running tomcat6 application. I made a JMX connection to the application, when I browsed the application, there was no tab visible for Profiling.



 Comments   
Comment by markie44 [ 09/Nov/11 ]

Additional information: I reconnected, now I do not even see MBeans tab. Under Sampler, CPU sampling, it never changes from "Checking availability..." and Memory sampling says "Not available. Cannot connect to target application." I can change CPU settings by clicking Edit button, but anything saved there does not appear under Preset menu next to Edit button. Sample buttons never become enabled. Attaching process list showing all processes run by user 'tomcat' which is running the App and VisualVM.

Updating 15-Nov-2011:
Discovered this problem is due to bug in JVM (http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=7009828), work-around is to launch visualvm with explicit link to temp dir. Once this is done, application discovery and profiliing is available.

Unfortunately, this exposed another issue, profiling is blocked by this alert: "Unable to open socket file: target process not responding or HotSpot VM not loaded"

Comment by markie44 [ 15/Nov/11 ]

error alert

Comment by cnkmym [ 02/Dec/11 ]

I do not know why you cannot do Profiling. What I know is how to enable VisualVM to find local Tomcat automatically.

It is common that VisualVM and JConsole cannot automatically detect Running Tomcat.
The reason is that Tomcat (with version >=6) will not save its temp files into system default folder (%TEMP%).
So JConsole and VisualVM cannot find it, then VisualVM thinks there is no Tomcat on running.

You can add customized "CATALINA_TMP" variable into Tomcat's catalina.bat/catalina.sh file.
Specify the exact path of system default TEMP folder.
By doing that, VisualVM can find the local Tomcat automatically.

By the way, you can google this problem. There are many solutions available online.

Comment by thurka [ 02/Dec/11 ]

To cnkmym: You don't need to change "CATALINA_TMP" variable. The reason that VisualVM cannot find Tomcat is the following JDK bug #7009828 <http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=7009828>. Please upgrade your JDK to 1.6.0_29 and run bot VisualVM and Tomcat on JDK 1.6.0_29.





[VISUALVM-444] Remote-Host (see Environment) : VisualVM can't connect to jstatd Created: 18/Apr/11  Updated: 02/Dec/11

Status: Open
Project: VisualVM
Component/s: code
Affects Version/s: 1.3.2
Fix Version/s: None

Type: Bug Priority: Major
Reporter: geto Assignee: Unassigned
Resolution: Unresolved Votes: 2
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

VisualVM: Windows XP, SP3
Remote-Host: Ubuntu Server 10.04 (Lucid Lynx) 64 Bit with OpenJDK 1.6.20 64 Bit


Tags: 64, jstatd, ubuntu

 Description   

Connect succesful with:

  • Ubuntu-Server 9.10-Karmic-Koala and Java 32-Bit-Sun 1.6.0_24

Not working:

  • Ubuntu Server 10.04 (Lucid Lynx) 64 Bit with OpenJDK 1.6.0_20 64 Bit
  • jstatd starts without error message:

    sudo jstatd -p 1234 -J-Djava.security.policy=all.policy -J-Djava.rmi.server.logCalls=true

  • jstatd receives VisualVM 1.32 -messages:

    sun.rmi.server.UnicastServerRef logCall
    FEINER: RMI TCP Connection(3)-10.xxx.yy.zzz: [10.xxx.yy.zzz: sun.rmi.registry.RegistryImpl[0:0:0, 0]: java.rmi.Remote lookup(java.lang.String)]}}

  • Log VisualVM is empty
  • telnet from Windows to jstatd-port okay


 Comments   
Comment by ferdez [ 01/Jun/11 ]

Same problem here.

Client: VisualVM 1.3.2 on Windows 7/64, with Java 1.6.0_23/64bit
Server: Java 1.6.0_24 on linux 2.6.32 /Ubuntu 10.04 LTS 64bit)

VisualVM has no problems connecting with jstatd (log confirms) but the tomcat server running on that machine is not listed.

Comment by thurka [ 09/Jun/11 ]

To ferdez:
Your problem is different. It is caused by a bug in JDK. See http://bit.ly/iaQmYP. The fix of this regression will be available in JDK 6 update 25.

Comment by hesog [ 10/Jun/11 ]

I'm having a similar problem

VisualVM connects to remote server.
but i can't see any of the remote applications

the remote server is:

Distributor ID:	Ubuntu
Description:	Ubuntu 10.04.2 LTS
Release:	10.04
Codename:	lucid

java version "1.6.0_24"
Java(TM) SE Runtime Environment (build 1.6.0_24-b07)
Java HotSpot(TM) 64-Bit Server VM (build 19.1-b02, mixed mode)

to start the jstatd daemon i used this command:

$  jstatd -J-Djava.security.policy=jstatd.all.policy  -J-Djava.net.preferIPv4Stack=true

the client is VisualVM 1.6.0_24 running on UBUNTU 11.04 64bit

Comment by brnfd [ 02/Dec/11 ]

Same problem to me:

When a I run VisualVM, jstatd keep loging:

Dec 02, 2011 8:47:11 AM sun.rmi.server.UnicastServerRef logCall
FINER: RMI TCP Connection(3)-192.xxx.yyy.zzz: [192.xxx.yyy.zzz: sun.rmi.registry.RegistryImpl[0:0:0, 0]: java.rmi.Remote lookup(java.lang.String)]
but never connect.

Jstatd is runnig on CentOS 5.7, 32-bits and JDK 1.7.0_01.
VisualVM version is 1.3.3, running on windows with JDK 1.7.0_01.

Running jstat locally via rmi works, but remote doesn't:
jstat -printcompilation rmi://pid@localhost:1099





[VISUALVM-472] Stack trace for individual threads Created: 27/Oct/11  Updated: 29/Nov/11

Status: Open
Project: VisualVM
Component/s: code
Affects Version/s: 1.3.3
Fix Version/s: None

Type: Improvement Priority: Major
Reporter: jan_goyvaerts Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

I am very pleased with the "Thread CPU time" metrics !!! It's now very easy to see what thread is consuming what CPU.

The next logical step is in my opinion to right-click on the thread and ask for a stack trace. To answer the fundamental question: WTH is this thread doing ?

The current workaround is to get a thread dump, copy/paste it into a text editor and search for the thread name.

Would it be possible to get the stack trace for individual threads ? Possibly as a general measure also in the "Threads" tab.

Many thanks indeed for this wonderful - and much underestimated - tool !!!!



 Comments   
Comment by thurka [ 29/Nov/11 ]

Can't you use 'Threads Inspector' plugin http://visualvm.java.net/plugins.html ? It will allow you to take thread dump from one thread.





[VISUALVM-480] Automatically Capturing heap dump,thread dump and application snapshot Created: 24/Nov/11  Updated: 29/Nov/11

Status: Open
Project: VisualVM
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: Improvement Priority: Major
Reporter: jerrysamphilip Assignee: thurka
Resolution: Unresolved Votes: 1
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Windows environment, Application is running on Apache Tomcat server and is built in Java



 Description   

Hi,

Our application has major memory leak issue and crashes during a 12 hour test. We tried analyzing the trend through VisualVM and it has been very helpful. The tool is amazing with the kind of detail its provides us.

The tool does capture the flow and size of JVM from start of instance and this can be used but the problem occurs when the memory issue crashes the tool and thus the data captured by the tool is lost.

We wanted to request a feature whereby the heap dump, thread dump and application snapshot can be automatically be captured and stored at a predefined location after every say 2 hours etc.

We tried using vbs for automation but the tool does not have much of keyboard shortcuts that vbs can use to capture the date.

Any help to get this automation done will be highly appreciated.

Regards,
Jerry






[VISUALVM-401] GlassFish Plugin Created: 08/Sep/10  Updated: 18/Nov/11

Status: Open
Project: VisualVM
Component/s: plugins
Affects Version/s: 1.3
Fix Version/s: not determined

Type: Bug Priority: Major
Reporter: yadepu Assignee: visualvm-issues
Resolution: Unresolved Votes: 4
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: All
Platform: All


Issuezilla Id: 401

 Description   

I installed glassfish plugin in Visual VM 1.3, I cannot monitor the glassfish
applicaiton though I could establish a JMX connection. I tried the below
resolution but still the same problem.. Please help.... thanks - Yellapa

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Description: Opening the "Model" subnode of the GlassFish application hangs
with "Please Wait" displayed

Resolution: This happens when monitoring of web applications is not allowed on
the target server. In order to enable monitoring you need to go to Application
Server/Monitor/Runtime/Configure Monitoring from the GlassFish administration
console and set Web Container to High. You can also try and use this link to
open the configuration from here.

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++



 Comments   
Comment by yadepu [ 16/Sep/10 ]

don't see any response.. please advise how to address get a resolution.. thanks..

Comment by svader [ 06/Sep/11 ]

I have this issue with visaulVM 1.6.0_25

In the troubleshooting guide it says the following:

Description: Opening the "Model" subnode of the GlassFish application hangs with "Please Wait" displayed
Resolution: This happens when monitoring of web applications is not allowed on the target server. In order to enable monitoring you need to go to Application Server/Monitor/Runtime/Configure Monitoring from the GlassFish administration console and set Web Container to High. You can also try and use this link to open the configuration from here.

I have tried this and bounced glassfish and restarted VisualVM but the problem persists.

Comment by parsnip [ 18/Nov/11 ]

I've had the same trouble on two remote servers. Even after setting all monitoring levels to HIGH and restarting glassfish the VisualVM tree does not display the web applications (Model -> Please wait issue).

GlassFish 3.1
VisualVM 1.3.3
VisualVM-Glassfish plugin 1.4





[VISUALVM-450] Add 'allocated bytes' to Profiler snapshot Created: 06/Jun/11  Updated: 05/Oct/11

Status: Open
Project: VisualVM
Component/s: code
Affects Version/s: 1.3.2
Fix Version/s: None

Type: Improvement Priority: Major
Reporter: jborgers Assignee: thurka
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Any



 Description   

I record allocation stack traces in the memory profiler. I want to find out where most bytes are allocated in the use case of uploading and processing one large file. Currently, there is no way to find out with visualvm that I know of. We fell back on hprof to find out, which involved a lot of boring manual labor. This seems a missing feature to me. Would be really helpful to have.



 Comments   
Comment by thurka [ 04/Oct/11 ]

There is 'Allocated Object' column, which displays number of all allocated objects since the start of the profiling or last 'Reset Results'. Will that work for you?

Comment by jborgers [ 05/Oct/11 ]

Hi Turka,

Thanks for your reply.

The thing is, for uploading a large file, most bytes are allocated in a few StringBuffers or StringBuilders. So the number of objects does not tell much, it is the number of bytes that tells us where the problem is, e.g. because the buffer is growing from 32 bytes to 5 Mega bytes by doubling the capacity of the StringBuilder in many steps. If we see the allocated bytes in a column, we can easily pinpoint the problem.
Hope this makes the motivation for my question more clear.
Regards,
Jeroen.





[VISUALVM-413] Not able to create heap dump Created: 19/Oct/10  Updated: 04/Oct/11

Status: Open
Project: VisualVM
Component/s: code
Affects Version/s: 1.3.1
Fix Version/s: not determined

Type: Bug Priority: Major
Reporter: jai_steave Assignee: thurka
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: Windows 7
Platform: Other


Attachments: JPEG File err.jpg     Text File logfile.txt    
Issuezilla Id: 413

 Description   

Hi,
when i tried to generate the heap dump for the remote jvm, it is giving
error.Following is stack trace:

java.lang.UnsupportedOperationException: DumpHeap0
at sun.management.HotSpotDiagnostic.dumpHeap(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at
com.sun.jmx.mbeanserver.ConvertingMethod.invokeWithOpenReturn(ConvertingMethod.java:167)
at com.sun.jmx.mbeanserver.MXBeanIntrospector.invokeM2(MXBeanIntrospector.java:96)
at com.sun.jmx.mbeanserver.MXBeanIntrospector.invokeM2(MXBeanIntrospector.java:33)
at com.sun.jmx.mbeanserver.MBeanIntrospector.invokeM(MBeanIntrospector.java:208)
at com.sun.jmx.mbeanserver.PerInterface.invoke(PerInterface.java:120)
at com.sun.jmx.mbeanserver.MBeanSupport.invoke(MBeanSupport.java:262)
at javax.management.StandardMBean.invoke(StandardMBean.java:391)
at
com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:836)
at com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:761)
at
javax.management.remote.rmi.RMIConnectionImpl.doOperation(RMIConnectionImpl.java:1426)
at
javax.management.remote.rmi.RMIConnectionImpl.access$200(RMIConnectionImpl.java:72)
at
javax.management.remote.rmi.RMIConnectionImpl$PrivilegedOperation.run(RMIConnectionImpl.java:1264)
at
javax.management.remote.rmi.RMIConnectionImpl.doPrivilegedOperation(RMIConnectionImpl.java:1359)
at javax.management.remote.rmi.RMIConnectionImpl.invoke(RMIConnectionImpl.java:788)
at sun.reflect.GeneratedMethodAccessor97.invoke(Unknown Source)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:305)
at sun.rmi.transport.Transport$1.run(Transport.java:160)
at sun.rmi.transport.Transport.serviceCall(Transport.java:155)
at sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:535)
at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:790)
at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:649)
at
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:909)
[catch] at java.lang.Thread.run(Thread.java:619)

Could you please siist me to solve this issue.

Thanks and Regards
Jayaram Prasad p.



 Comments   
Comment by jai_steave [ 19/Oct/10 ]

Created an attachment (id=138)
error description

Comment by thurka [ 19/Oct/10 ]

Please attach VisualVM log file. It is available from Help->About->Logfile. Thanks.

Comment by jai_steave [ 19/Oct/10 ]

Created an attachment (id=139)
Log file

Comment by jai_steave [ 19/Oct/10 ]

I have attached the log file.

Comment by thurka [ 19/Oct/10 ]

I still don't know, what is wrong. Is there any exception in your remote application? Can you provide steps
how to reproduce it? Thanks.

Comment by jai_steave [ 19/Oct/10 ]

1. First i started the tomcat on remote host by providing following 3 system
parameter's to make it enable to access from remote location.

-Dcom.sun.management.jmxremote.port=3333
-Dcom.sun.management.jmxremote.ssl=false
-Dcom.sun.management.jmxremote.authenticate=false

2.I have placed "jstatd.all.policy" file in the remote host jdk bin,this file
consists the security policy information as follows

grant codebase "file:$

{java.home}

/../lib/tools.jar"

{ permission java.security.AllPermission; }

;

3. And then i have executed the command follwing
"jstatd -p 1234 -J-Djava.security.policy=jstatd.all.policy"

3. Then i have connected to that remote host from my machine using visual vm.
everything is working fine but it unable to create the heap dump.

Thanks and Regards
Jayaram Prasad P.

Comment by thurka [ 19/Oct/10 ]

Unfortunately I am not able to reproduce it. I followed your steps and I was able to get the heap dump
from remote JVM running tomcat.
I started tomcat with your arguments.
I started jstatd.
I added remote host in VisualVM and specified 1234 as jstatd port instead of default 1099.
Tomcat and jstatd nodes appeared and I invoked 'Take Heapdump' action from Tomcat's context menu.

Note that to connect to remote JVM, you don't need to use jstatd. Just use 'Add JMX connection'.





[VISUALVM-458] libprofilerinterface.so exports popular symbol names Created: 29/Jul/11  Updated: 04/Oct/11

Status: Open
Project: VisualVM
Component/s: code
Affects Version/s: None
Fix Version/s: None

Type: Bug Priority: Critical
Reporter: manu4ever Assignee: thurka
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Linux RHEL 5. Using 64-bit 1.6.0_26.



 Description   

When using visualvm on 6u24 we see that the JVM crashes.

Stack trace analysis of the hs_err file indicates that the JVM is executing visualvm code. Specifically, it is executing the function save_class_file_bytes() in source file class_file_cache.c.

There is a function called hash() in this file. The function looks like it could be declared as "static" but it isn't. The save_class_file_bytes() function calls hash(). However our JVM has already loaded another native library that also contains a public function called hash().

The linker decides to call the hash() function in the other native library rather than the hash() function in visualvm, and it crashes.

I see a number of bug reports scattered around the web that look similar to what we see:

Java frames: (J=compiled Java code, j=interpreted, Vv=VM code)
j org.netbeans.lib.profiler.server.system.Classes.cacheLoadedClasses([Ljava/lang/Class;I)V+0
j org.netbeans.lib.profiler.server.ProfilerInterface.getLoadedClasses()V+77
j org.netbeans.lib.profiler.server.ProfilerInterface.access$600()V+0
j org.netbeans.lib.profiler.server.ProfilerInterface$InitiateInstThread.run()V+232
v ~StubRoutines::call_stub

Which makes me think that this is quite a common problem.

Could you fix it, perhaps by marking your "hash()" function as static?



 Comments   
Comment by thurka [ 04/Oct/11 ]

This is a problem in NetBeans Profiler code, so the issue is now tracked in NetBeans bug database. http://netbeans.org/bugzilla/show_bug.cgi?id=203050





[VISUALVM-464] Problems with VisualVM AIX and the cpuload Created: 21/Sep/11  Updated: 04/Oct/11

Status: Open
Project: VisualVM
Component/s: None
Affects Version/s: current
Fix Version/s: None

Type: Bug Priority: Major
Reporter: Xeroo Assignee: thurka
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

The problem is that the cpuload in the VisualVM on AIX is always 0%. We can see the threads and everything else works well, only the cpuload will not be displayed.



 Comments   
Comment by thurka [ 04/Oct/11 ]

What JDK are you using on AIX? Which version VisualVM are you using? Maybe you are using old version of VisualVM, see issue #386 http://java.net/jira/browse/VISUALVM-386.





[VISUALVM-148] VisualVM hangs when lost remote connection Created: 22/May/08  Updated: 08/Sep/11

Status: Open
Project: VisualVM
Component/s: code
Affects Version/s: current
Fix Version/s: dev

Type: Bug Priority: Major
Reporter: dariatitova Assignee: visualvm-issues
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: All
Platform: All


Attachments: Text File connect_exception.txt     Text File messages.log    
Issuezilla Id: 148

 Description   

Version 1.6.0_07 (Build 080507).

Steps to reproduce:

  • define existing remote host with running java applications
  • disconnect network connection (or shutdown the host)
  • now try to open an application on remote host (right-click the application
    node in Applications window and choose Open)
    VisualVM hangs.
    If you reconnect network connection, VisualVM will work again.
    On Solaris x86 there is 'java.net.ConnectException: Connection timed out'
    exception after reconnecting network connection.


 Comments   
Comment by dariatitova [ 22/May/08 ]

Created an attachment (id=78)
Connect exception after reconnecting network connection

Comment by jsedlacek [ 20/Nov/08 ]

Could you please check if the problem still happens in the latest VisualVM version?

Comment by dariatitova [ 24/Nov/08 ]

This bug is still reproducible: VisualVM hangs (but on Solaris x86 there is no
java.net.ConnectException exception after reconnecting network connection.).

Version: Dev (Build 081106); platform 081105
System: SunOS (5.11) , x86 32bit
Java: 1.6.0_07; Java HotSpot(TM) Server VM (10.0-b23, mixed mode)
Environment: UTF-8; en_US (visualvm)

Comment by dariatitova [ 24/Nov/08 ]

Did not notice last time, java.net.ConnectException exception is still
reproducible on Solaris x86. Attaching log file.

Comment by dariatitova [ 24/Nov/08 ]

Created an attachment (id=94)
VisualVM log with connection exception

Comment by npiguet [ 08/Sep/11 ]

Works for me on 1.6.0_23, Linux 64 bits





[VISUALVM-461] Better support for replicated applications Created: 08/Sep/11  Updated: 08/Sep/11

Status: Open
Project: VisualVM
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: New Feature Priority: Major
Reporter: npiguet Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

I my work environment, I have a lot of applications to monitor, and most of them are replicated on several machines. Since all of those applications are the same, they expose the same MBeans. It would be extremely useful for me to be able to setup those applications as "Replicated applications".

A way to do that that would work well for me would be to be able to define multiple JMX connections for each application (ex: AppFooBar needs to connect to server1:1200, server2:4512, server3:8672). When I click on that replicated application, the "Monitor" view would show the information obtained from all the 3 JMX connections on the same charts. So the CPU usage view for example would show 6 lines (GC + user for each machine). When I open an MBean, I should be able to see the values of all properties for all connections in different columns. When I double click a property, there should be a single chart with 3 lines (one per JMX connection).






[VISUALVM-457] Gnome 3 display issues Created: 07/Jul/11  Updated: 07/Sep/11

Status: Open
Project: VisualVM
Component/s: plugins
Affects Version/s: 1.3.2
Fix Version/s: None

Type: Bug Priority: Minor
Reporter: mdeggersjava Assignee: jsedlacek
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Fedora 15, JDK/JRE 1.6.0_26-b03, Gnome 3.0.2



 Description   

Overview:

VisualVM's SysTray plugin fails to work under Gnome 3.0.2. A system tray icon will not appear. Switching to an application in another virtual workspace will cause visualvm to disappear from the alt-tab application list. Once this happens, you can no longer switch back to visualvm.

Reproduce:

1. Enable the SysTray plugin
2. Start visualvm under Gnome 3.0.2
3. Use alt-tab to switch to another application in another virtual workspace
4. Switch back to visualvm with alt-tab

Expected:

1. alt-tab in step 4 from Reproduce brings up visualvm as one of the applications
2. Switching back to visualvm brings up the application in appropriate virtual workspace

Actual:

1. alt-tab in step 4 from Reproduce does not list visualvm in the list of applications
2. There is no system tray icon to recover visualvm

Work Around:

Do not enable the SysTray plugin on Gnome 3.0.2.






[VISUALVM-224] Cannot memory profile JBoss AS 4.2.3.GA Created: 25/Nov/08  Updated: 04/Aug/11

Status: Open
Project: VisualVM
Component/s: code
Affects Version/s: 1.0.1
Fix Version/s: 1.2

Type: Bug Priority: Blocker
Reporter: rholder Assignee: yardus
Resolution: Unresolved Votes: 3
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: Windows XP
Platform: All


Attachments: Text File visualvm-log-JDK-1.6.0_10.txt    
Issuezilla Id: 224

 Description   

Activating memory profiling renders the connected JBoss AS instance unusable
with the following stack trace on every page of all applications:

Profiler Agent Warning: Failed to lookup cached class javax/servlet/ServletException
16:33:53,750 ERROR [[default]] Servlet.service() for servlet default threw exception
java.lang.ClassNotFoundException: No ClassLoaders found for:
org.netbeans.lib.profiler.server.ProfilerRuntimeObjLiveness
at org.jboss.mx.loading.LoadMgr3.beginLoadTask(LoadMgr3.java:320)
at
org.jboss.mx.loading.RepositoryClassLoader.loadClassImpl(RepositoryClassLoader.java:533)
at
org.jboss.mx.loading.RepositoryClassLoader.loadClass(RepositoryClassLoader.java:423)
at java.lang.ClassLoader.loadClass(ClassLoader.java:252)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:320)
at org.jboss.seam.servlet.SeamFilter.doFilter(SeamFilter.java:158)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:238)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
at
org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:238)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:230)
at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:177)
at
org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:188)
at
org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:438)
at
org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:84)
at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
at
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at
org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:163)
at
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:262)
at
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
at
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:446)
at java.lang.Thread.run(Thread.java:619)

Steps to reproduce:
1. Deploy any Seam example application (i.e. Booking) to JBoss AS
2. Connect Visual VM console to the running JBoss AS instance
3. Profiler -> Memory, wait patiently to instrument all classes, clicking "no"
when prompted to disconnect because application hasn't responded yet.
4. Access any page on from the application server.

Live results are recorded and all the classes appear to be instrumented (visible
via the console and "Profiler Agent" output). However, the instrumentation
appears to have broken a class somewhere. Any ideas on why this might have
occurred?

JBoss Seam 2.0.3.CR1
JBoss AS 4.2.3.GA
Windows XP SP3



 Comments   
Comment by rholder [ 25/Nov/08 ]

It's also an issue with the version of VisualVM that ships with the JDK 1.6.0_10.

Comment by rholder [ 25/Nov/08 ]

Created an attachment (id=95)
Log file for VisualVM that ships with Sun JDK 1.6.0_10

Comment by mosabua [ 25/Nov/08 ]

Probably related to issue 208

Comment by yardus [ 26/May/09 ]

Could you try supplying JAVA_OPTS=-XX:MaxPermSize=200m to JBoss?

It seems that the permgen space is getting depleted and that makes the profiled
process to fail.

Comment by wayfarer3130 [ 04/Aug/11 ]

I've tried this with MaxPermSize=256m and it makes no difference whatsoever.
I expect this issue is that the classloader that manages the web archives isn't the one that was used to load ProfilerRuntimeObjLiveness and that causes the object to be unuseable once it has been rewritten. It might be possible to drop the class into the global classpath and get things running that way.

Comment by wayfarer3130 [ 04/Aug/11 ]

My previous comment was correct. If you drop jfluid-server.jar into server/default/lib (or the appropriate instance in jboss if not default instance), then VisualVM works fine and the application works fine.





[VISUALVM-456] Visual 1.3.2 Multi-Language version - Profiler error dialog box with blank message upon clicked CPU/Memory Created: 05/Jul/11  Updated: 05/Jul/11

Status: Open
Project: VisualVM
Component/s: None
Affects Version/s: 1.3.2
Fix Version/s: None

Type: Bug Priority: Blocker
Reporter: gml.check.tool Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Windows XP Professional version 2002 SP3 Japanese OS
java version "1.6.0_21"
Java(TM) SE Runtime Environment (build 1.6.0_21-b07)
Java HotSpot(TM) Client VM (build 17.0-b17, mixed mode, sharing)


Attachments: JPEG File visualvm_error.JPG     JPEG File visualvm_error_console.JPG    
Tags: cpu/memory, multi-language, profiler, visualvm

 Description   

trying to use VisualVM to monitor and determine where my java application performance problem.
When I go to profiler to see what method I need to check, I receive a
error message box with blank message and don't know how to address it.
Please refer to the attached screen shot.

However, when I tried to use the english version, it works properly as expected.






[VISUALVM-449] VisualVM icon as separate file Created: 23/May/11  Updated: 09/Jun/11

Status: Open
Project: VisualVM
Component/s: code
Affects Version/s: 1.3.2
Fix Version/s: None

Type: Improvement Priority: Trivial
Reporter: jan_goyvaerts Assignee: Unassigned
Resolution: Unresolved Votes: 1
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

When installing a new release of VisualVM I'd like to select an icon file for the launcher. But there is none.

Probably a resource in a jar somewhere.

Would it be possible to provide a separate image file for the icon in the distribution ?

Thanks !



 Comments   
Comment by thurka [ 09/Jun/11 ]

Which platform are you talking about?

Comment by jan_goyvaerts [ 09/Jun/11 ]

Linux. I'm unzipping VisualVM, adding a launcher and typically searching on google for an icon.





[VISUALVM-448] Thread filter Created: 23/May/11  Updated: 23/May/11

Status: Open
Project: VisualVM
Component/s: code
Affects Version/s: 1.3.2
Fix Version/s: None

Type: Improvement Priority: Major
Reporter: jan_goyvaerts Assignee: Unassigned
Resolution: Unresolved Votes: 1
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

At this moment it would help me immensely if I would be able to filter the threads on name. Just like the filters applied in the profiling to just see data about the classes satisfying to the filter.

For a simple, local, application seeing the whole list is okay. But when looking into the spaghetti of threads on an application server ... This is really hard to find the right thread. Especially since they're not sorted on name.

Thanks in advance !






[VISUALVM-441] No busy cursor / indicator when a JMX managed operation is in progress Created: 18/Mar/11  Updated: 18/Mar/11

Status: Open
Project: VisualVM
Component/s: plugins
Affects Version/s: None
Fix Version/s: None

Type: Bug Priority: Major
Reporter: najmi Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

There is no visual feedback at present while a JMX managed operation is in progress.
This will be specially important when the following related issue is addressed:

http://java.net/jira/browse/VISUALVM-440






[VISUALVM-440] [MBean plugin] Need to support multiple concurent JMX managed operations to be run as background tasks Created: 18/Mar/11  Updated: 18/Mar/11

Status: Open
Project: VisualVM
Component/s: plugins
Affects Version/s: None
Fix Version/s: None

Type: Improvement Priority: Major
Reporter: najmi Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

In the MBean plugin, certain JMX managed operations (like backup / restore of a server) may take a long time. It is desirable for them to be done as background tasks and it should be possible to do other JMX managed operations concurently.

I propose having a Netbeans style background task bar which shows currently active background tasks.






[VISUALVM-433] MBeans tab is available but not its data Created: 03/Feb/11  Updated: 03/Feb/11

Status: Open
Project: VisualVM
Component/s: None
Affects Version/s: 1.3.1
Fix Version/s: None

Type: Bug Priority: Major
Reporter: cfd Assignee: Unassigned
Resolution: Unresolved Votes: 1
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

I start VisualVM 1.3.1 (b100916) and open a (remote) JVM; I can access and use the MBeans tab.

If I shutdown the remote JVM, the MBeans tab fades to gray -> OK.
Then, I close the remote JVM general monitoring tab.

I start the remote JVM, I open its VisualVM view -> the MBeans tab is available but not its data:
"Data not available because JMX connection to the JMX agent could not be established."

workaround: I restart VisualVM.

Note: Is it related to the fact that the tabs "Monitor" and "Threads" are not available then ?






[VISUALVM-431] mbean plugin does not repaint on keypress Created: 05/Jan/11  Updated: 18/Jan/11

Status: Open
Project: VisualVM
Component/s: plugins
Affects Version/s: 1.3.1
Fix Version/s: None

Type: Bug Priority: Minor
Reporter: jendap Assignee: thurka
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

sun/oracle jdk6 u23, ubuntu linux



 Description   

When MBean plugin does not repaint attributes when navigating using keyboard.

Steps to replicate:
1) go to mbean plugin
2) open some mbean - "java.lang" / "ClassLoading" - you will see "attributes"
3) do not touch mouse and press down key - the cursor moves you to next mbean ("Compilation") but it will not repaint the right side (the "attributes")

It will repaint on mouse move, application switch, ...

It behaves the same on other tabs as well ("operations", "notifications", etc.)



 Comments   
Comment by thurka [ 18/Jan/11 ]

You are right. I am able to reproduce it.





[VISUALVM-427] Race Condition when launch several visualvm instances Created: 10/Dec/10  Updated: 10/Dec/10

Status: Open
Project: VisualVM
Component/s: code
Affects Version/s: 1.3.1
Fix Version/s: not determined

Type: Bug Priority: Major
Reporter: David Liu Assignee: visualvm-issues
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: Windows XP
Platform: All


Issuezilla Id: 427

 Description   

Hi,

I get the EOFException when I launch 3 visualvm instances in the windows from
time to time. It looks like this EOFException will happen when I launch 3
visualvm instances when my PC is busy.
I think it might be a race condition issue during visualvm.exe startup.

Exceptions:

WARNING [org.netbeans.CLIHandler]
java.io.EOFException
at java.io.DataInputStream.readFully(DataInputStream.java:180)
at java.io.DataInputStream.readFully(DataInputStream.java:152)
at org.netbeans.CLIHandler$Server.handleConnect(CLIHandler.java:1051)
[catch] at org.netbeans.CLIHandler$Server.run(CLIHandler.java:990)
WARNING [org.netbeans.CLIHandler]
java.io.EOFException
at java.io.DataInputStream.readFully(DataInputStream.java:180)
at java.io.DataInputStream.readFully(DataInputStream.java:152)
at org.netbeans.CLIHandler$Server.handleConnect(CLIHandler.java:1051)
[catch] at org.netbeans.CLIHandler$Server.run(CLIHandler.java:990)
WARNING [org.netbeans.CLIHandler]
java.io.EOFException
at java.io.DataInputStream.readFully(DataInputStream.java:180)
at java.io.DataInputStream.readFully(DataInputStream.java:152)
at org.netbeans.CLIHandler$Server.handleConnect(CLIHandler.java:1051)
[catch] at org.netbeans.CLIHandler$Server.run(CLIHandler.java:990)
WARNING [org.netbeans.CLIHandler]
java.io.EOFException
at java.io.DataInputStream.readFully(DataInputStream.java:180)
at java.io.DataInputStream.readFully(DataInputStream.java:152)
at org.netbeans.CLIHandler$Server.handleConnect(CLIHandler.java:1051)
[catch] at org.netbeans.CLIHandler$Server.run(CLIHandler.java:990)
WARNING [org.netbeans.CLIHandler]
java.io.EOFException
at java.io.DataInputStream.readFully(DataInputStream.java:180)
at java.io.DataInputStream.readFully(DataInputStream.java:152)
at org.netbeans.CLIHandler$Server.handleConnect(CLIHandler.java:1051)
[catch] at org.netbeans.CLIHandler$Server.run(CLIHandler.java:990)
INFO [org.netbeans.core.startup.NbEvents]: Updating module: BTrace4VisualVM

David






[VISUALVM-424] sql summary screen... Created: 08/Dec/10  Updated: 08/Dec/10

Status: Open
Project: VisualVM
Component/s: code
Affects Version/s: 1.3.1
Fix Version/s: not determined

Type: New Feature Priority: Major
Reporter: deleted_user Assignee: visualvm-issues
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: All
Platform: All


Issuezilla Id: 424

 Description   

Hi,

Can you please add a window or report that lists all the SQL calls and has the
following info.

Method SQL executed from, number of times called, maximum response time,
minimum response time, size of response.

You should be able to sort on any columns above.

Thanks,
-Tony






[VISUALVM-423] Add SQL response times Created: 08/Dec/10  Updated: 08/Dec/10

Status: Open
Project: VisualVM
Component/s: code
Affects Version/s: 1.3.1
Fix Version/s: not determined

Type: New Feature Priority: Major
Reporter: deleted_user Assignee: visualvm-issues
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: All
Platform: All


Issuezilla Id: 423

 Description   

Hi,
I would like your tool to add the SQL response time during CPU sample. So
basically we for those methods that send SQL we should a SQL statement and the
time it took to get data back. So as you expand the node on a tree that shows
the response time it should drill down to showing the JDBC SQL call.

Thanks,
-Tony






[VISUALVM-420] exclude Object.wait() from profiling Created: 23/Nov/10  Updated: 02/Dec/10

Status: Open
Project: VisualVM
Component/s: code
Affects Version/s: 1.3.1
Fix Version/s: not determined

Type: Improvement Priority: Major
Reporter: jan_goyvaerts Assignee: thurka
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: All
Platform: All


Issuezilla Id: 420

 Description   

I've often wondered why Object.wait() is taken into account for cpu profiling.

Each time I'm profiling an enterprise application I've got quite some threads
using 100% of CPU while they did nothing at all. And each time I've got to
manually go through all the threads to make sure they were not waiting.

It should be quite useful for these cases to eliminate those threads.



 Comments   
Comment by thurka [ 02/Dec/10 ]

You are right, this is a known issue, which has to be fixed in NetBeans Profiler. In the meantime, you can
try to use sampler, which does not have this problem.





[VISUALVM-421] Calling xxx_ModelFactory.getModel() blocks all other factories in creating a model for the same datasource Created: 29/Nov/10  Updated: 29/Nov/10

Status: Open
Project: VisualVM
Component/s: code
Affects Version/s: 1.3.1
Fix Version/s: not determined

Type: Bug Priority: Major
Reporter: yardus Assignee: visualvm-issues
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: All
Platform: All


Issuezilla Id: 421

 Description   

Let's say we have two ModelFactory subclasses - ModelFactoryA and ModelFactoryB.
When one calls getModel() on ModelFactoryA for a particular datasource any call
to getModel() on ModelFactoryB will get blocked till the call to
ModelFactoryA.getModel() returns. This basically means, that for a given
datasource only one model can be being computed at any given time.






[VISUALVM-414] Not able to connect to my remote JVM Created: 22/Oct/10  Updated: 22/Oct/10

Status: Open
Project: VisualVM
Component/s: code
Affects Version/s: 1.3.1
Fix Version/s: not determined

Type: Bug Priority: Blocker
Reporter: jai_steave Assignee: visualvm-issues
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: Windows 7
Platform: Other


Attachments: Text File logfile.txt    
Issuezilla Id: 414

 Description   

Hi Team,
When i tried to connect to one of the remote jvm ,it is saying "cannot connect
to ..... ".
Iam able to ping that host and iam able to do telnet with that host and port.
But iam not able to connect to that host through visual vm.
I have attached logfile.please help me in this issue.

Thanks and Regards
Jayaram Prasad P.



 Comments   
Comment by jai_steave [ 22/Oct/10 ]

Created an attachment (id=140)
Log File

Comment by thurka [ 22/Oct/10 ]

Is there a firewall enabled on iodine.wwteam.com? JMX connection uses more ports. Opening just 9080 is
not enough. Please use mailing lists for this type of problems. Thanks.





[VISUALVM-410] UI inconsistency regarding putting remote connection under local tab Created: 21/Sep/10  Updated: 21/Sep/10

Status: Open
Project: VisualVM
Component/s: code
Affects Version/s: 1.3.1
Fix Version/s: not determined

Type: Improvement Priority: Major
Reporter: tehehe Assignee: visualvm-issues
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: All
Platform: All


Issuezilla Id: 410

 Description   

Adding jmxconnection using service:jmx:<protocol>:<sap> style of connection url
causes connection to show up for some reason into Local tab.
Expected behavior is for new connection to show up under appropriate hostname in
Remote tab.



 Comments   
Comment by thurka [ 21/Sep/10 ]

In general this works fine. Can you provide an example of address of a JMX API connector server, where it
does not work?

Comment by tehehe [ 21/Sep/10 ]

service:jmx:rmi:///jndi/jnp://localhost:1099/customrmiconnector

Comment by tehehe [ 21/Sep/10 ]

where localhost can be any host that has this connector deployed

Comment by thurka [ 21/Sep/10 ]

I am not surprised that such URL appears under localhost. According to the URL specification, localhost is
the URL host. Why do you expect anything else? If you use

service:jmx:rmi:///jndi/jnp://remote_host.company.com:1099/customrmiconnector

the JMX connection will appear under remote_host.company.com host.

Comment by tehehe [ 21/Sep/10 ]

As I said localhost is just an example - in reality I'm using others host than
localhost from my lan network.

Comment by thurka [ 21/Sep/10 ]

If you use other host than localhost, the connection should be added under that host under Remote tab. If
this is not the case, I need to know steps how to reproduce it. Thanks.





[VISUALVM-408] Objects not tracked by memory profiler Created: 17/Sep/10  Updated: 17/Sep/10

Status: Open
Project: VisualVM
Component/s: code
Affects Version/s: 1.2.2
Fix Version/s: not determined

Type: Bug Priority: Major
Reporter: higuava Assignee: visualvm-issues
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: Windows XP
Platform: PC


Issuezilla Id: 408

 Description   

Some of the objects in our application are not recorded in the memory profiler.
For example, heap dump reports that there are 120 such objects but memory profiler
says there are only 16. I use 'track every 1 object'.
This problem exists in 1.2.1, 1.2.2 and 1.3. JDK version is 1.6.0_21






[VISUALVM-404] Time in CPU profile is wrong Created: 10/Sep/10  Updated: 10/Sep/10

Status: Open
Project: VisualVM
Component/s: code
Affects Version/s: 1.3
Fix Version/s: not determined

Type: Bug Priority: Major
Reporter: higuava Assignee: visualvm-issues
Resolution: Unresolved Votes: 1
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: Windows XP
Platform: PC


Issuezilla Id: 404

 Description   

In some threads, the total time is 0.000ms. If you traverse down the call tree,
you will see there are many methods whose time are not 0. The time are in
hundreds of ms in my case. I wish I can attach a picture showing the call tree
here.
This bug does not exist in the version shipped with jdk1.6.0_21. This may be
related the GC since methods whose time are not reported may be triggered by GC.






[VISUALVM-396] Add extended "Save As" functionality for snapshots Created: 11/Aug/10  Updated: 11/Aug/10

Status: Open
Project: VisualVM
Component/s: code
Affects Version/s: 1.3
Fix Version/s: not determined

Type: New Feature Priority: Major
Reporter: sethgoings Assignee: jis
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: All
Platform: All


Issuezilla Id: 396

 Description   

It would be nice if VisualVM would allow users to export snapshot data (not just
profiler data) to other formats other than the current ".apps file".

This way, people could combine the data retrieved from VisualVM with other
tools, such as load testing suites and even other performance gathering tools.



 Comments   
Comment by thurka [ 11/Aug/10 ]

-





[VISUALVM-395] Eclipse Plugin should support WTP integration Created: 09/Aug/10  Updated: 09/Aug/10

Status: Open
Project: VisualVM
Component/s: plugins
Affects Version/s: 1.3
Fix Version/s: not determined

Type: Improvement Priority: Major
Reporter: tknerr Assignee: yardus
Resolution: Unresolved Votes: 1
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: All
Platform: All


Issuezilla Id: 395

 Description   

With the current version of the Eclipse plugin you can debug only Standalone
applications, but not applications running in a WTP Server, since there is no
possibility to choose the "VisualVM Launcher".



 Comments   
Comment by thurka [ 09/Aug/10 ]

-





[VISUALVM-393] Add no-GUI mode Created: 30/Jul/10  Updated: 30/Jul/10

Status: Open
Project: VisualVM
Component/s: plugins
Affects Version/s: 1.3
Fix Version/s: not determined

Type: New Feature Priority: Blocker
Reporter: lpouzac Assignee: visualvm-issues
Resolution: Unresolved Votes: 3
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: All
Platform: All


Issuezilla Id: 393

 Description   

Add a no-GUI mode VisualVM (provide API?) to automate the registration / export
probes, profiling, ...

For example, this would create plugins for maven2



 Comments   
Comment by jsedlacek [ 30/Jul/10 ]

VisualVM is a GUI tool, this request seems to be out of its scope.
Could you please provide some concrete use cases for evaluation?

Comment by lpouzac [ 30/Jul/10 ]

The automated analysis maven2/visualvm could be interesting.
With an API in VisualVM, it would start recording and export data.
Then he would open the file in VisualVM to view information of the behavior of
jvm. (Example: MissionControl Oracle can do - recording jra)

Case example of practical use.
Launching a script maven2

-> Launching a load test (type jmeter)
-> Launch the jvm analysis (via VisualVM)
End test
Opening of registration in VisualVM to analyze.

Regards





[VISUALVM-392] JMX Probe Created: 28/Jul/10  Updated: 29/Jul/10

Status: Open
Project: VisualVM
Component/s: plugins
Affects Version/s: 1.3
Fix Version/s: not determined

Type: Improvement Priority: Major
Reporter: gmagniez Assignee: visualvm-issues
Resolution: Unresolved Votes: 1
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: All
Platform: All


Issuezilla Id: 392

 Description   

Can a JMX probe plugin be developped and included into visualvm to graph some
mbeans attributes?
i.e. currentThreadBusy attribute of the ThreadPool MBean from Tomcat.
Eventually adding a scripting functionnality to grab the values being graphed
(i.e. calulate an average, a difference betwenn two attributes, ...)



 Comments   
Comment by jsedlacek [ 29/Jul/10 ]

You can start experimenting with custom Tracer probes right now - there's a
special support for graphing JMX attributes implemented in the Tracer-Dynamic
module.

Using JavaScript you can define the attributes to monitor, specify the probes
appearance (name, color, format etc.), and process the collected values before
displaying (averages, differences etc.).

A quick start guide is available at
https://visualvm.dev.java.net/source/browse/visualvm/plugins/tracerdynamic/doc/Q
uickStart.txt?view=markup. You can use dev[at]visualvm.dev.java.net mailing list
for further support.

Comment by jsedlacek [ 29/Jul/10 ]

Leaving the RFE open, it would be useful to provide an integrated GUI/editor for
creating custom probes monitoring MBeans attributes.





[VISUALVM-385] Implement remote heap dump Created: 29/Jun/10  Updated: 29/Jun/10

Status: Open
Project: VisualVM
Component/s: code
Affects Version/s: current
Fix Version/s: dev

Type: New Feature Priority: Major
Reporter: jsedlacek Assignee: visualvm-issues
Resolution: Unresolved Votes: 1
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: All
Platform: All


Issuezilla Id: 385

 Description   

Currently the remote heap dump can be created only using the MBeans plugin by
invoking an operation on the appropriate MBean. It would be useful if VisualVM
could do this automatically when invoking the Heap Dump action for JMX-enabled
applications.



 Comments   
Comment by jsedlacek [ 29/Jun/10 ]

Implemented in trunk. Remote heap dump is now supported for JMX-enabled
applications, the user is asked to provide fully qualified filename for the dump
on the remote machine.

Comment by jsedlacek [ 29/Jun/10 ]

Lowering priority, leaving open - it would be nice if VisualVM could help with
transferring the remote dump file to the local system in order to open it.
Ideally, the Heap Dump action should work the same way for local & remote
applications.





[VISUALVM-129] Application node remains in Application window after kill -9 command on Linux and Solaris Created: 04/May/08  Updated: 24/Jun/10

Status: Open
Project: VisualVM
Component/s: code
Affects Version/s: current
Fix Version/s: dev

Type: Bug Priority: Major
Reporter: rashid_vm Assignee: thurka
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: Linux
Platform: All


Issuezilla Id: 129

 Description   

After stop application by kill -9 command Application node remains in
Application window. After that :

  • in Threads tab all threads a stopped
  • in Monitor tab all diagramms are still alive
  • in profiler tab after try to perform CPU or Memory profiling I've got
    empty Error message box.
    I've checked java processes using ps -ef |grep java - there are not anyone
    except for VisualVM.


 Comments   
Comment by jsedlacek [ 05/May/08 ]

This is reproducible always, at least on Linux. It looks like a bug in jvmstat
and most likely won't be fixed in VisualVM.

The workaround is to invoke 'jps' command after killing an application using
'kill -9', this way jvmstat correctly determines finised applications.

Comment by yardus [ 12/Nov/08 ]

According to http://en.wikipedia.org/wiki/SIGKILL :
"When sent to a program, SIGKILL causes it to terminate immediately. In contrast
to SIGTERM and SIGINT, this signal cannot be caught or ignored, and the
receiving process cannot perform any clean-up upon receiving this signal."
The crucial part of the definition is that the receiving process *cannot perform
any clean-up upon receiving this signal* - meaning there is no way of notifying
jps system that the process has died. Thus jps will not notify about changes in
the current process list till it is explicitly invoked.
Performance-wise it's no good to call jps periodically only to detect the case
when a process had been hard-killed - the only way would be to add a new action
that would refresh all local applications.

Comment by thurka [ 02/Jul/09 ]

I will try to work-around it somehow.





[VISUALVM-318] memory profiling failed on Coldfusion8 Created: 12/Oct/09  Updated: 24/Jun/10

Status: Open
Project: VisualVM
Component/s: code
Affects Version/s: 1.0
Fix Version/s: not determined

Type: Bug Priority: Major
Reporter: samlooker Assignee: visualvm-issues
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: Windows XP
Platform: PC


Issuezilla Id: 318

 Description   

When I tried to do memory profiling on Coldfusion8 using the VisualVM comes with
java 1.6_0_11, it ran for a minute than the CF8 server (JRun) was killed.

The cf8 server is running 1.6_0_4 32 bit hava.

I noticed there is an article
(https://visualvm.dev.java.net/troubleshooting.html#xshare) explaining I need to
add "-Xshare:off" to the CF8 start up script, and when I did that, it worked.

My problem is, according to this article
(http://java.sun.com/javase/6/docs/technotes/guides/vm/class-data-sharing.html),
CDS "is supported only with the Java HotSpot Client VM, and only with the serial
garbage collector".
In my cf8 start up script, I have this:
java.args=-server -Xmx1024m -Dsun.io.useCanonCaches=false -XX:+UseParallelGC ...

So it is 1) in server mode and 2) using ParallelGC. Why VisualVM thinks the CDS
is still in effect in CF8? or why actually CDS is in effect in CF8?

Thanks,
Sam



 Comments   
Comment by thurka [ 24/Jun/10 ]

Can you, please, test it with VisualVM 1.2.2? Thanks.





[VISUALVM-325] SysTray plugin doesn't work correctly on Linux Created: 17/Oct/09  Updated: 24/Jun/10

Status: Reopened
Project: VisualVM
Component/s: plugins
Affects Version/s: 1.0.1
Fix Version/s: dev

Type: Bug Priority: Critical
Reporter: jsedlacek Assignee: jsedlacek
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: Linux
Platform: All


Issuezilla Id: 325

 Description   

Steps:

1/ Set the Hide when minimized mode
2/ Minimize VisualVM window
3/ Try to restore VisualVM window using the SysTray icon

The window tries to restore to the state previous to minimized but due to a bug
(awt/window system?) it's immediately minimized again. This makes it impossible
to further use the running instance. The only solution is to restart VisualVM.



 Comments   
Comment by jsedlacek [ 17/Oct/09 ]

Fixed for VisualVM 1.2.

/cvs/visualvm/plugins/systray/manifest.mf,v <-- manifest.mf
new revision: 1.3; previous revision: 1.2
/cvs/visualvm/plugins/systray/src/com/sun/tools/visualvm/modules/systray/SysTray.java,v
<-- SysTray.java
new revision: 1.5; previous revision: 1.4

Comment by cyhelsky [ 07/Dec/09 ]

In my 1.2 it works on "fresh" VisualVM, but after I play with it a little it
ceases to work. On the top of this usually after few attempts at restoring
VisualVM from systray the icon in systray disappears and VisualVM is no longer
accessible(but the java process is still running).

Product Version = VisualVM 1.2
Operating System = Linux version 2.6.31-16-generic running on amd64
Java; VM; Vendor = 1.6.0_0; OpenJDK 64-Bit Server VM 14.0-b16; Sun
Microsystems Inc.
Runtime = OpenJDK Runtime Environment 1.6.0_0-b16

btw I've tried running on JDK1.6_18 and the same thing happens.





[VISUALVM-350] Java VisualVM Version 1.6.0_14 shows incorrect results. Created: 06/Jan/10  Updated: 12/May/10

Status: Open
Project: VisualVM
Component/s: code
Affects Version/s: current
Fix Version/s: not determined

Type: Bug Priority: Major
Reporter: ki4rxm Assignee: visualvm-issues
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: Windows XP
Platform: PC


Issuezilla Id: 350

 Description   

I am attempting to use Java VisualVM to profile and compare two programs which
complete the same operations, but whose inner workings are different (one is
recursive, one looped). Conventional belief says that the looped version should
run faster, which the profiler confirms, but in real-world applications the looped
version has been shown to run slower. Confirmation of the looped version running
faster while the profiler was in action was confirmed independently by an embedded
counter in the source. I believe that the profiler may be affecting runtime by
adjusting garbage collection.



 Comments   
Comment by jsedlacek [ 12/May/10 ]

It's possible that the profiler instrumentation slightly biases the profiled
application's execution time and that the overhead is different for
recursive/looped algorithms.

Not sure if it's fixable at all - could you please provide the code samples for us
to be able to reproduce & investigate the problem?





[VISUALVM-314] Unexpected IO and NPE exceptions Created: 30/Sep/09  Updated: 12/May/10

Status: Open
Project: VisualVM
Component/s: code
Affects Version/s: 1.1.1
Fix Version/s: not determined

Type: Bug Priority: Major
Reporter: Mike Swingler Assignee: thurka
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: Mac OS X
Platform: Macintosh


Issuezilla Id: 314

 Description   

During qualification testing of VisualVM on Mac OS X 10.6 Snow Leopard, we encountered the following failures attaching to a Java2Demo process:

  • STEPS TO REPRODUCE
    1. > export JAVA_HOME=`/usr/libexec/java_home -v 1.6`
    2. > $JAVA_HOME/bin/java -Dcom.sun.management.jmxremote -jar /Developer/Extras/Java/JFC/Java2D/Java2D.jar
    3. > /usr/bin/jvisualvm
    4. Select Java2D
    5. Select the Monitor tab
    6. Click the "Heap Dump" button
    7. If a red button appears in the lower right hand corner, click it
  • REGRESSION
    This was the first time I noticed a little red button (which may have contained a minus sign) in the lower right hand corner. I clicked it and learned that it's an error
    button.

This bug is not readily reproducible, but we believe it is important to report it if it can provide some clues to a deeper issue.

-------------------------------------------------------------------------------
>Log Session: Wednesday, July 8, 2009 3:19:04 PM PDT
>System Info:
Product Version = VisualVM
Operating System = Mac OS X version 10.6 running on x86_64
Java; VM; Vendor = 1.6.0_15; Java HotSpot(TM) 64-Bit Server VM 14.1-b02-88; Apple Inc.
Runtime = Java(TM) SE Runtime Environment 1.6.0_15-b02-216
Java Home = /System/Library/Frameworks/JavaVM.framework/Versions/1.6.0/Home
System Locale; Encoding = en_US (visualvm); MacRoman
Home Directory = /Users/mrj
Current Directory = /private/tmp/jdb_722
User Directory = /Users/mrj/Library/Application Support/visualvm/6u14
Installation = /System/Library/Frameworks/JavaVM.framework/Resources/VisualVM.bundle/Contents/Home/visualvm
/System/Library/Frameworks/JavaVM.framework/Resources/VisualVM.bundle/Contents/Home/profiler3
/System/Library/Frameworks/JavaVM.framework/Resources/VisualVM.bundle/Contents/Home/platform9
Boot & Ext. Classpath =
/System/Library/Frameworks/JavaVM.framework/Versions/1.6.0/Classes/jsfd.jar:/System/Library/Frameworks/JavaVM.framework/Versions/1.6.0/Classes/classes.ja
r:/System/Library/Frameworks/JavaVM.framework/Frameworks/JavaRuntimeSupport.framework/Resources/Java/JavaRuntimeSupport.jar:/System/Library/Framework
s/JavaVM.framework/Versions/1.6.0/Classes/ui.jar:/System/Library/Frameworks/JavaVM.framework/Versions/1.6.0/Classes/laf.jar:/System/Library/Frameworks/Jav
aVM.framework/Versions/1.6.0/Classes/sunrsasign.jar:/System/Library/Frameworks/JavaVM.framework/Versions/1.6.0/Classes/jsse.jar:/System/Library/Framewor
ks/JavaVM.framework/Versions/1.6.0/Classes/jce.jar:/System/Library/Frameworks/JavaVM.framework/Versions/1.6.0/Classes/charsets.jar:/System/Library/Java/Ex
tensions/AppleScriptEngine.jar:/System/Library/Java/Extensions/dns_sd.jar:/System/Library/Java/Extensions/j3daudio.jar:/System/Library/Java/Extensions/j3dcore.
jar:/System/Library/Java/Extensions/j3dutils.jar:/System/Library/Java/Extensions/jai_codec.jar:/System/Library/Java/Extensions/jai_core.jar:/System/Library/Java/E
xtensions/mlibwrapper_jai.jar:/System/Library/Java/Extensions/MRJToolkit.jar:/System/Library/Java/Extensions/QTJava.zip:/System/Library/Java/Extensions/vecma
th.jar:/System/Library/Frameworks/JavaVM.framework/Versions/1.6.0/Home/lib/ext/apple_provider.jar:/System/Library/Frameworks/JavaVM.framework/Versions/
1.6.0/Home/lib/ext/dnsns.jar:/System/Library/Frameworks/JavaVM.framework/Versions/1.6.0/Home/lib/ext/localedata.jar:/System/Library/Frameworks/JavaVM.fr
amework/Versions/1.6.0/Home/lib/ext/sunjce_provider.jar:/System/Library/Frameworks/JavaVM.framework/Versions/1.6.0/Home/lib/ext/sunpkcs11.jar
Application Classpath =
/System/Library/Frameworks/JavaVM.framework/Resources/VisualVM.bundle/Contents/Home/platform9/lib/boot.jar:/System/Library/Frameworks/JavaVM.framewo
rk/Resources/VisualVM.bundle/Contents/Home/platform9/lib/org-openide-
modules.jar:/System/Library/Frameworks/JavaVM.framework/Resources/VisualVM.bundle/Contents/Home/platform9/lib/org-openide-
util.jar:/System/Library/Frameworks/JavaVM.framework/Versions/1.6.0/Home/lib/dt.jar
Startup Classpath =
/System/Library/Frameworks/JavaVM.framework/Resources/VisualVM.bundle/Contents/Home/platform9/core/core.jar:/System/Library/Frameworks/JavaVM.framew
ork/Resources/VisualVM.bundle/Contents/Home/platform9/core/org-openide-
filesystems.jar:/System/Library/Frameworks/JavaVM.framework/Resources/VisualVM.bundle/Contents/Home/bin/../visualvm/core/com-sun-tools-visualvm-
modules-startup.jar:/System/Library/Frameworks/JavaVM.framework/Resources/VisualVM.bundle/Contents/Home/bin/../visualvm/core/locale/core_visualvm.jar
-------------------------------------------------------------------------------

      • Profiler message (Wed Jul 08 15:19:25 PDT 2009): Starting target application...
        /System/Library/Frameworks/JavaVM.framework/Versions/1.6.0/Home/bin/java -
        agentpath:/System/Library/Frameworks/JavaVM.framework/Versions/A/Resources/VisualVM.bundle/Contents/Home/profiler3/lib/deployed/jdk16/mac/libprofilerin
        terface.jnilib Xbootclasspath/a:/System/Library/Frameworks/JavaVM.framework/Versions/A/Resources/VisualVM.bundle/Contents/Home/profiler3/lib/jfluid
        server.jar:/System/Library/Frameworks/JavaVM.framework/Versions/A/Resources/VisualVM.bundle/Contents/Home/profiler3/lib/jfluid-server-15.jar
        org.netbeans.lib.profiler.server.ProfilerServer
        /System/Library/Frameworks/JavaVM.framework/Versions/A/Resources/VisualVM.bundle/Contents/Home/profiler3/lib/deployed/jdk16/mac 5141 10
        ___Profiler+Calibration+Run___
        INFO [org.netbeans.core.startup.NbEvents]: Turning on modules:
        org.openide.util [7.18.1.1 1 090628]
        org.openide.modules [7.7.1 090628]
        org.netbeans.lib.profiler/1 [1.3.1 081204]
        org.openide.awt [7.3.1.1 090628]
        org.jdesktop.layout/1 [1.6.1 1.0.3 090628]
        org.netbeans.api.progress/1 [1.12.1.1 1 090628]
        org.openide.dialogs [7.8.1 090628]
        org.netbeans.swing.outline [1.1.1 090628]
        org.openide.nodes [7.7.1.1 090628]
        org.openide.explorer [6.16.1 1 090628]
        org.openide.windows [6.24.1 090628]
        org.openide.filesystems [7.13.1.1.1 1 090628]
        org.netbeans.modules.editor.mimelookup/1 [1.10.1 090628]
        org.openide.text [6.21.1 090628]
        org.openide.actions [6.8.1.1 090628]
        org.netbeans.lib.profiler.common/1 [1.4.1 081204]
        org.netbeans.spi.quicksearch [1.0.1 090628]
        org.netbeans.modules.options.api/1 [1.10.1 090628]
        org.netbeans.modules.queries/1 [1.13.1 090628]
        org.openide.loaders [7.2.1 090628]
        org.openide.io [1.13.1 090628]
        org.openide.execution [1.12.1 090628]
        org.netbeans.lib.profiler.ui/1 [1.3.1 081204]
        org.netbeans.modules.profiler/1 [1.9.1 081204]
        org.netbeans.bootstrap/1 [2.15.1 090628]
        org.netbeans.core.startup/1 [1.14.1.1 090628]
        org.netbeans.modules.autoupdate.services [1.5.1 090628]
        org.netbeans.modules.sendopts/2 [2.3.1 090628]
        com.sun.tools.visualvm.core/0 [1.2 090629]
        com.sun.tools.visualvm.host/0 [1.0 090629]
        com.sun.tools.visualvm.application/0 [1.1 090629]
        com.sun.tools.visualvm.tools/0 [1.0 090629]
        com.sun.tools.visualvm.coredump/0 [1.0 090629]
        com.sun.tools.visualvm.heapdump/0 [1.0 090629]
        com.sun.tools.visualvm.threaddump/0 [1.0 090629]
        com.sun.tools.visualvm.application.views/0 [1.0 090629]
        org.netbeans.modules.favorites/1 [1.14.1 090628]
        com.sun.tools.visualvm.attach/0 [1.1 090629]
        org.netbeans.core.output2/1 [1.10.1.1 1 090628]
        com.sun.tools.visualvm.sa/0 [1.0 090629]
        com.sun.tools.visualvm.modules.startup [1.0 090629]
        org.netbeans.swing.plaf [1.8.1 090628]
        org.netbeans.core/2 [3.10.1.1 090628]
        org.netbeans.modules.settings/1 [1.15.1 090628]
        org.netbeans.swing.tabcontrol [1.13.1 090628]
        org.netbeans.core.windows/2 [2.12.1.1 090628]
        org.netbeans.modules.applemenu/1 [1.9.1 090628]
        org.netbeans.modules.autoupdate.ui [1.5.1 090628]
        org.netbeans.core.ui/1 [1.12.1 090628]
        org.netbeans.modules.masterfs/2 [2.15.1 090628]
        org.netbeans.modules.templates [1.3.1 090628]
        org.netbeans.modules.options.keymap [1.4.1 090628]
        org.netbeans.modules.core.kit [1.2.1 090628]
        org.netbeans.core.execution/1 [1.12.1.1 090628]
        com.sun.tools.visualvm.jvm/0 [1.1 090629]
        com.sun.tools.visualvm.host.views/0 [1.0 090629]
        org.netbeans.modules.javahelp/1 [2.11.1 090628]
        com.sun.tools.visualvm.jmx/0 [1.1 090629]
        com.sun.tools.visualvm.modules.appui [1.0 090629]
        com.sun.tools.visualvm.jvmstat/0 [1.0 090629]
        org.netbeans.modules.editor.mimelookup.impl/1 [1.3.1 090628]
        org.netbeans.modules.progress.ui [1.2.1 090628]
        com.sun.tools.visualvm.profiler/0 [1.0 090629]
        WARNING [org.openide.filesystems.Ordering]: Not all children in Windows2/Modes/explorer/ marked with the position attribute: [ExplorerTopComponent.wstcref],
        but some are: [favorites.wstcref, runtime.wstcref]
        WARNING [org.openide.filesystems.Ordering]: Not all children in Toolbars/ marked with the position attribute: [Standard.xml], but some are: [File, Snapshot,
        Memory]
        Diagnostic information
        Input arguments:
        -Djdk.home=/System/Library/Frameworks/JavaVM.framework/Versions/1.6.0/Home
        -Dnetbeans.system_http_proxy=DIRECT
        -Dnetbeans.system_http_non_proxy_hosts=
        -
        Dnetbeans.dirs=/System/Library/Frameworks/JavaVM.framework/Resources/VisualVM.bundle/Contents/Home/bin/..//visualvm:/System/Library/Frameworks/JavaV
        M.framework/Resources/VisualVM.bundle/Contents/Home/bin/..//profiler3:
        -Dnetbeans.home=/System/Library/Frameworks/JavaVM.framework/Resources/VisualVM.bundle/Contents/Home/platform9
        -Dcom.apple.mrj.application.apple.menu.about.name=visualvm
        -Xms24m
        -Xmx192m
        -Dsun.jvmstat.perdata.syncWaitMs=10000
        Compiler: HotSpot 64-Bit Server Compiler
        Heap memory usage: initial 26.0MB maximum 189.0MB
        Non heap memory usage: initial 23.2MB maximum 132.0MB
        Garbage collector: ParNew (Collections=6 Total time spent=0s)
        Garbage collector: ConcurrentMarkSweep (Collections=1 Total time spent=0s)
        Classes: loaded=4536 total loaded=4536 unloaded 0
        INFO [org.netbeans.core.ui.warmup.DiagnosticTask]: Total memory 2,147,483,648
        INFO [null]: Total physical memory 2,147,483,648
        INFO [org.netbeans.modules.autoupdate.updateprovider.AutoupdateCatalogCache]: Processing URL: https://visualvm.dev.java.net/uc/6u14/updates.xml.gz?
        unique=0805ec8d9-0cae-4825-946a-39d825426c8a_cfe74558-e453-4eda-9f7b-bd33b0d80fe5
        INFO [com.sun.tools.visualvm.attach.AttachModelImpl]: takeHeapDump
        INFO [com.sun.tools.visualvm.attach.AttachModelImpl]: takeHeapDump
        java.io.IOException: Broken pipe
        at sun.tools.attach.MacosxVirtualMachine.write(Native Method)
        at sun.tools.attach.MacosxVirtualMachine.writeString(MacosxVirtualMachine.java:285)
        at sun.tools.attach.MacosxVirtualMachine.execute(MacosxVirtualMachine.java:157)
        at sun.tools.attach.HotSpotVirtualMachine.executeCommand(HotSpotVirtualMachine.java:195)
        at sun.tools.attach.HotSpotVirtualMachine.dumpHeap(HotSpotVirtualMachine.java:162)
        [catch] at com.sun.tools.visualvm.attach.AttachModelImpl.takeHeapDump(AttachModelImpl.java:45)
        at com.sun.tools.visualvm.jvm.JVMImpl.takeHeapDump(JVMImpl.java:314)
        at com.sun.tools.visualvm.heapdump.impl.HeapDumpProvider$1.run(HeapDumpProvider.java:66)
        at org.openide.util.RequestProcessor$Task.run(RequestProcessor.java:536)
        at org.openide.util.RequestProcessor$Processor.run(RequestProcessor.java:961)
        SEVERE [org.openide.util.RequestProcessor]
        java.lang.NullPointerException
        at com.sun.tools.visualvm.core.snapshot.SnapshotDescriptor.<init>(SnapshotDescriptor.java:26)
        at com.sun.tools.visualvm.heapdump.HeapDumpDescriptor.<init>(HeapDumpDescriptor.java:30)
        at com.sun.tools.visualvm.heapdump.impl.HeapDumpDescriptorProvider.createModelFor(HeapDumpDescriptorProvider.java:21)
        at com.sun.tools.visualvm.heapdump.impl.HeapDumpDescriptorProvider.createModelFor(HeapDumpDescriptorProvider.java:17)
        at com.sun.tools.visualvm.core.model.ModelFactory.getModel(ModelFactory.java:91)
        at com.sun.tools.visualvm.core.datasource.descriptor.DataSourceDescriptorFactory.getDescriptor(DataSourceDescriptorFactory.java:45)
        at com.sun.tools.visualvm.heapdump.impl.HeapDumpView.<init>(HeapDumpView.java:39)
        at com.sun.tools.visualvm.heapdump.impl.HeapDumpViewProvider.createView(HeapDumpViewProvider.java:25)
        at com.sun.tools.visualvm.heapdump.impl.HeapDumpViewProvider.createView(HeapDumpViewProvider.java:18)
        at com.sun.tools.visualvm.core.ui.DataSourceViewProvider.getView(DataSourceViewProvider.java:83)
        at com.sun.tools.visualvm.core.ui.DataSourceViewsManager.getViews(DataSourceViewsManager.java:117)
        at com.sun.tools.visualvm.core.ui.DataSourceWindowManager.openWindowAndSelectView(DataSourceWindowManager.java:156)
        at com.sun.tools.visualvm.core.ui.DataSourceWindowManager.access$000(DataSourceWindowManager.java:30)
        at com.sun.tools.visualvm.core.ui.DataSourceWindowManager$1.run(DataSourceWindowManager.java:70)
        at org.openide.util.RequestProcessor$Task.run(RequestProcessor.java:536)
        [catch] at org.openide.util.RequestProcessor$Processor.run(RequestProcessor.java:961)
        SEVERE [org.openide.util.RequestProcessor]
        java.lang.NullPointerException
        at com.sun.tools.visualvm.core.snapshot.SnapshotDescriptor.<init>(SnapshotDescriptor.java:26)
        at com.sun.tools.visualvm.heapdump.HeapDumpDescriptor.<init>(HeapDumpDescriptor.java:30)
        at com.sun.tools.visualvm.heapdump.impl.HeapDumpDescriptorProvider.createModelFor(HeapDumpDescriptorProvider.java:21)
        at com.sun.tools.visualvm.heapdump.impl.HeapDumpDescriptorProvider.createModelFor(HeapDumpDescriptorProvider.java:17)
        at com.sun.tools.visualvm.core.model.ModelFactory.getModel(ModelFactory.java:91)
        at com.sun.tools.visualvm.core.datasource.descriptor.DataSourceDescriptorFactory.getDescriptor(DataSourceDescriptorFactory.java:45)
        at com.sun.tools.visualvm.core.explorer.ExplorerModelBuilder.processAddedDisplayableDataSources(ExplorerModelBuilder.java:127)
        at com.sun.tools.visualvm.core.explorer.ExplorerModelBuilder.processIndependentAddedDataSources(ExplorerModelBuilder.java:91)
        at com.sun.tools.visualvm.core.explorer.ExplorerModelBuilder.processAddedDataSources(ExplorerModelBuilder.java:80)
        at com.sun.tools.visualvm.core.explorer.ExplorerModelBuilder.access$100(ExplorerModelBuilder.java:37)
        at com.sun.tools.visualvm.core.explorer.ExplorerModelBuilder$1.run(ExplorerModelBuilder.java:73)
        at org.openide.util.RequestProcessor$Task.run(RequestProcessor.java:536)
        [catch] at org.openide.util.RequestProcessor$Processor.run(RequestProcessor.java:961)
        INFO [com.sun.tools.visualvm.attach.AttachModelImpl]: takeHeapDump
        INFO [com.sun.tools.visualvm.attach.AttachModelImpl]: takeHeapDump
        INFO [com.sun.tools.visualvm.attach.AttachModelImpl]: takeHeapDump
        INFO [com.sun.tools.visualvm.attach.AttachModelImpl]: takeHeapDump


 Comments   
Comment by thurka [ 30/Sep/09 ]

I will take a look. BTW: Does monitored Java2D application crashed, while VisualVM was doing heap dump?

Comment by Mike Swingler [ 12/Dec/09 ]

Yes, the monitored app does crash.

Comment by jsedlacek [ 12/May/10 ]

The 'java.lang.NullPointerException' is fixed since VisualVM 1.2. The
java.io.IOException: Broken pipe is still to be investigated.





[VISUALVM-367] [SA Plugin]: SA plugin fails with exception on a 64bit Linux Created: 25/Mar/10  Updated: 25/Mar/10

Status: Open
Project: VisualVM
Component/s: plugins
Affects Version/s: 1.2.2
Fix Version/s: not determined

Type: Bug Priority: Major
Reporter: yardus Assignee: poonambajaj
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: Linux
Platform: All


Attachments: Text File SAPlugin.txt    
Issuezilla Id: 367

 Description   

When trying to invoke "Attach to Process" the SA Plugin fails with
java.lang.RuntimeException.
The stacktrace will be attached shortly



 Comments   
Comment by yardus [ 25/Mar/10 ]

Created an attachment (id=129)
Stacktrace

Comment by thurka [ 25/Mar/10 ]

-





[VISUALVM-358] If selfsigned certificate(s) have been loaded into the keystore then "Available Plugins" tab is greyed out. Created: 10/Feb/10  Updated: 11/Feb/10

Status: Open
Project: VisualVM
Component/s: code
Affects Version/s: 1.2.1
Fix Version/s: not determined

Type: Bug Priority: Major
Reporter: randyjones Assignee: visualvm-issues
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: Solaris
Platform: Sun


Issuezilla Id: 358

 Description   

The version selector doesn't have the correct version so I just selected
current. My java version is this:
spock% java -version
java version "1.6.0_18"
Java(TM) SE Runtime Environment (build 1.6.0_18-b07)
Java HotSpot(TM) Server VM (build 16.0-b13, mixed mode)
spock%

To duplicate this issue do the following:
1. create a self signed certificate

  • create a new private rsa key
    openssl genrsa -out privkey.pem 2048
  • create a certificate
    openssl req -new -x509 -key privkey.pem -out cacert.pem -days 3520

2. import this certificate into the keystore
keytool -importcert -alias myHost.myDomain.com -file cacert.pem -storetype
jks -keystore /usr/java/jre/lib/security/jssecacerts

3. quit any running jvisualvm's

4. rename or remove $HOME/.visualvm

5. fire up jvisualvm

6. attempt to install plugin in jvisualvm

7. you should now have a greyed out "Available Plugins" tab

Shouldn't "keytool -importcert" add to the builtin list of valid certificates?
vs overriding as it seems to be doing? Maybe this is more of a general java
issue as opposed to a jvisualvm issue.



 Comments   
Comment by thurka [ 11/Feb/10 ]

Java VisualVM in 1.6.0_18 is based on VisualVM 1.2.1 (See https://visualvm.dev.java.net/releases.html).





[VISUALVM-347] Remote Profiling Created: 30/Dec/09  Updated: 02/Jan/10

Status: Open
Project: VisualVM
Component/s: plugins
Affects Version/s: 1.2.1
Fix Version/s: not determined

Type: New Feature Priority: Major
Reporter: gjramos1130 Assignee: visualvm-issues
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: Windows XP
Platform: All


Issuezilla Id: 347

 Description   

I would like to be able to do remote profiling. Netbeans has this feature so I
can't see why VisualVM does not have this feature.



 Comments   
Comment by jsedlacek [ 02/Jan/10 ]

VisualVM is a monitoring and troubleshooting tool which connects to both local
and remote applications. Using the VisualVM-Sampler plugin you can even profile
performance of remote applications.

VisualVM is not NetBeans profiler so I can't see why it should provide it's
feature set. Could you please be more descriptive on which features are you
missing in VisualVM and why you can't use the NetBeans profiler for your remote
profiling?





[VISUALVM-336] add "Perform GC" and "Heap Dump" buttons to VisualGC Created: 06/Nov/09  Updated: 06/Nov/09

Status: Open
Project: VisualVM
Component/s: plugins
Affects Version/s: 1.2
Fix Version/s: not determined

Type: New Feature Priority: Major
Reporter: e1fb828d0b88 Assignee: visualvm-issues
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: All
Platform: All


Issuezilla Id: 336

 Description   

please add "Perform GC" and "Heap Dump" buttons to VisualGC;
thank you.






[VISUALVM-335] make Sampler show extra column: "instance size" Created: 06/Nov/09  Updated: 06/Nov/09

Status: Open
Project: VisualVM
Component/s: code
Affects Version/s: 1.2
Fix Version/s: not determined

Type: New Feature Priority: Major
Reporter: e1fb828d0b88 Assignee: visualvm-issues
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: All
Platform: All


Issuezilla Id: 335

 Description   

please make Sampler show extra column: "instance size";
thank you.






[VISUALVM-331] GlassFish plugin doesn't work with GF v3 Created: 28/Oct/09  Updated: 01/Nov/09

Status: Open
Project: VisualVM
Component/s: plugins
Affects Version/s: 1.2
Fix Version/s: not determined

Type: Bug Priority: Major
Reporter: psterk Assignee: visualvm-issues
Resolution: Unresolved Votes: 2
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: All
Platform: All


Issuezilla Id: 331

 Description   

Glassfish v3 b68:

The (great) Visual VM plugin, works perfectly with Glassfish v2, but seems not to
work with GF v3. After connect, only the "usual" Java SE monitoring capability is
available.



 Comments   
Comment by thurka [ 28/Oct/09 ]

Original bug report at:
https://glassfish.dev.java.net/issues/show_bug.cgi?id=10597

Comment by thurka [ 01/Nov/09 ]

GlassFish plugin uses AMX (https://glassfish.dev.java.net/javaee5/amx/) and currently used version of
AMX does not work with GlassFish v3. We nned to upgrade to new version of AMX, which is compatible
with GlassFish v3.





[VISUALVM-198] Export of chart data in Monitor tab Created: 02/Oct/08  Updated: 04/Sep/09

Status: Open
Project: VisualVM
Component/s: code
Affects Version/s: 1.0.1
Fix Version/s: not determined

Type: Improvement Priority: Major
Reporter: bjb Assignee: visualvm-issues
Resolution: Unresolved Votes: 1
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: All
Platform: All
URL: https://visualvm.dev.java.net/issues/show_bug.cgi?id=185


Issuezilla Id: 198

 Description   

At this time, all the monitor mesures are only kept "live" (unlike threaddumps
and memory dumps), closing the visualvm will result the data to be lost (same
thing when the targeted VM crash).

Adding a "save to file" feature to contiously save the data as-is to a file (say
a simple CSV structured file where each column are one of the mesure), will
enable us to keep those stats.

People will be free to do whatever they want with those data.

This could for instance help us to solve the issue 185 applying simply applying
macros on those data.



 Comments   
Comment by jsedlacek [ 04/Sep/09 ]

The Monitor and Threads tab are now saved to Application Snapshot which can be
opened later - see Issue 235.

Updating summary of this issue to reflect the need for exporting the charts data
into some common data format (probably CSV/XML/HTML similar to Issue 185).





[VISUALVM-305] Thread dump history Created: 12/Aug/09  Updated: 12/Aug/09

Status: Open
Project: VisualVM
Component/s: code
Affects Version/s: 1.1.1
Fix Version/s: not determined

Type: New Feature Priority: Major
Reporter: dernasherbrezon Assignee: visualvm-issues
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: All
Platform: All


Issuezilla Id: 305

 Description   

It would be nice to have and somehow navigate through thread dump history.
Example can be obtained from YourKit profiler: in "Threads" view user can left
click on timeline for some thread and see below thread dump for all threads for
selected time.

It is very useful to analyze blocking issues.






[VISUALVM-303] Glassfish plugin don´t show j2ee-applications, only j2ee-modules Created: 27/Jul/09  Updated: 28/Jul/09

Status: Open
Project: VisualVM
Component/s: plugins
Affects Version/s: current
Fix Version/s: not determined

Type: Improvement Priority: Major
Reporter: brionet Assignee: visualvm-issues
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: All
Platform: All


Issuezilla Id: 303

 Description   

Glassfish plugin don´t show j2ee-applications (.ear), only j2ee-modules (.war)



 Comments   
Comment by yardus [ 28/Jul/09 ]

The GlassFish plugin is only a sample plugin ("technology demo" if you wish) that
is supposed to show the abilities of VisualVM platform.
For the full-featured support of GlassFish v2, please, take a look at "Enterprise
Manager/Performance Monitor"
http://www.sun.com/software/products/appsrvr/features_glassfish.xml

However, this feature might get implemented so keeping this issue open as
enhancement.





[VISUALVM-298] CPU profiling - waiting / not filters Created: 16/Jul/09  Updated: 16/Jul/09

Status: Open
Project: VisualVM
Component/s: code
Affects Version/s: current
Fix Version/s: not determined

Type: New Feature Priority: Major
Reporter: pjt33 Assignee: visualvm-issues
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: All
Platform: All


Issuezilla Id: 298

 Description   

If I profile my app's CPU usage, take a snapshot, and look at the hotspots it
displays based on time spent "in" a method. This has some applications, but it
doesn't really tell me where the CPU time is going. I would find it more useful
to have a filter:

a) All time
b) CPU time
c) Wait time

Personally I would find b) most useful, but I can see use cases for c) and if
you're doing the one it's not much more work to do the other.

Example use case: a server with one thread which blocks on Socket.accept and a
pool of others to process the connected sockets. If the pool size is 4 then the
hotspot list will show 20% of time in Socket.accept, which isn't very helpful.
On the other hand it's necessary to aggregate the data from the pooled threads
to see where your CPU time is going.






[VISUALVM-295] C++ Assertation Failed Created: 26/Jun/09  Updated: 02/Jul/09

Status: Open
Project: VisualVM
Component/s: code
Affects Version/s: current
Fix Version/s: not determined

Type: Bug Priority: Major
Reporter: szantopeter Assignee: visualvm-issues
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: Windows XP
Platform: All


Attachments: JPEG File visual_vm.jpg    
Issuezilla Id: 295

 Description   

I try to profile my tomcat server and constantly get a Microsoft Visual C++
runtime exception when I hit the Profile/Memory button. The message says

Assertation failed!

Program c:\Progra~1\Java\jdk1.6.0_13\bin\java.exe
File ..\src-jdk15\class_file_cache.c
Line: 155

Expression: res == JVMTI_ERROR_NONE

I run on tomcat 6.0.20 + JDK6



 Comments   
Comment by szantopeter [ 26/Jun/09 ]

Created an attachment (id=112)
screenshot

Comment by thurka [ 02/Jul/09 ]

Can you please provide some steps how to reproduce it? Which version of JDK6 is using your Tomcat? Is it
1.6.0_13?

Comment by szantopeter [ 02/Jul/09 ]

Meanwhile I found the root of the issue. It happens only when the Javarebel options

-javaagent:javarebel.jar

is enabled. I can understand this to happen, but a nicer error message would be
helpful





[VISUALVM-296] Grid (table) view of maps returned by MBeans Created: 30/Jun/09  Updated: 30/Jun/09

Status: Open
Project: VisualVM
Component/s: plugins
Affects Version/s: 1.1.1
Fix Version/s: not determined

Type: New Feature Priority: Major
Reporter: mhankus Assignee: visualvm-issues
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: All
Platform: All


Issuezilla Id: 296

 Description   

When MBean returns Map, result is rendered as a list view of key and value (when
expanded). My request is to put it in a grid with sortable collumns. Right now I
have to copy values, sort it outside of visualvm when I'm looking for value of
specific key (in my case returned values are unordered). Simple click on collumn
header should sort rows of a grid.






[VISUALVM-281] MBean plugin: The information in ModelMBeanOperationInfo's Descriptor is ignored Created: 18/May/09  Updated: 13/Jun/09

Status: Open
Project: VisualVM
Component/s: plugins
Affects Version/s: 1.1.1
Fix Version/s: not determined

Type: Bug Priority: Major
Reporter: celalziftci Assignee: visualvm-issues
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: All
Platform: All


Issuezilla Id: 281

 Description   

Hi,
as per the jmx spec, ModelMBeanOperationInfo class has a Descriptor which has
the following property:

  • role: must be "operation", "getter", or "setter

VisualVM is ignoring this property however. This results in a situation, where
an attribute's methods are exposed twice. For example, if you have a
setName/getName for the name attribute, VisualVM shows the "name" attribute in
Attributes section.

But then, it also shows those as operations in the "Operations" section.

This creates so many operations (2 per attribute + the rest of the actual
operations).

Can we get this fixed please?



 Comments   
Comment by jsedlacek [ 18/May/09 ]

Could you please check how this works in JConsole? VisualVM is just reusing it's
MBeans browser, this doesn't seem like a VisualVM problem to me...

If I understand it correctly no operation/information is missing, some features
are just duplicated -> lowering priority, harmless.

Comment by celalziftci [ 23/May/09 ]

It works the same way in JConsole too.

As you mention, the problem is about duplication. But I would consider this to
be a big problem in usability, because way too many operations appear because of
this.

Comment by celalziftci [ 09/Jun/09 ]

Hi,
is there any update on this? We are keen on understanding why things work this
way in JConsole/VisualVM.

Comment by jsedlacek [ 10/Jun/09 ]

Speaking for VisualVM, things work this way just because it uses the MBeans
browser from JConsole. Probably a question for JConsole?

Comment by celalziftci [ 13/Jun/09 ]

OK, we will report this to JConsole then.





[VISUALVM-117] Same JMX application can be added twice Created: 27/Apr/08  Updated: 26/May/09

Status: Open
Project: VisualVM
Component/s: code
Affects Version/s: Beta 2
Fix Version/s: not determined

Type: Bug Priority: Major
Reporter: jsedlacek Assignee: visualvm-issues
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: All
Platform: All


Issuezilla Id: 117

 Description   

Steps to reproduce:

1/ Add JMX application using full hostname: myhost.com:1234
2/ Add the same application using short hostname: myhost:1234

Both applications are added instead of just showing a warning dialog.



 Comments   
Comment by lmalvent [ 27/Apr/08 ]

Finding out if a given JMX application is already present in the application's
tree is not that simple as the host and port information can appear at different
places depending on the protocol (they can even be encoded in the URL) and also
the authentication credentials must be used to distinguish between two different
users connecting to the same JMX agent.

I agree this is a nice to have thing (when possible) but not for VisualVM 1.0.

Comment by thurka [ 19/Nov/08 ]

-

Comment by thurka [ 25/May/09 ]
      • Issue 231 has been marked as a duplicate of this issue. ***
Comment by thurka [ 26/May/09 ]

reassigning





[VISUALVM-156] Higher-level heap analysis tools Created: 09/Jul/08  Updated: 25/May/09

Status: Open
Project: VisualVM
Component/s: plugins
Affects Version/s: 1.0
Fix Version/s: not determined

Type: New Feature Priority: Major
Reporter: jess_holle Assignee: visualvm-issues
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: All
Platform: All


Issuezilla Id: 156

 Description   

The existing heap analysis tools are very helpful in cases, but are fairly low
level. Higher-level tools like those provided by http://www.eclipse.org/mat/
would be very helpful.






[VISUALVM-144] VisualVM should provide user feedback on OOME Created: 19/May/08  Updated: 25/May/09

Status: Open
Project: VisualVM
Component/s: code
Affects Version/s: current
Fix Version/s: not determined

Type: Improvement Priority: Major
Reporter: mkhramov Assignee: visualvm-issues
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: Windows XP
Platform: PC


Issuezilla Id: 144

 Description   

Actually when taking Heap dump on OOME is enabled user hasn't any notification
that such exception