[build 616] java.rmi.ConnectIOException

Questions about YourKit Java Profiler
Post Reply
sereda
Posts: 15
Joined: Sat Jun 25, 2005 10:33 pm

[build 616] java.rmi.ConnectIOException

Post by sereda »

I run CPU tracing from the very beginning of heavy-loaded test. CPU consumption is 100%, system is slow and unresponsive. When I try to "capture snapshot and stop tracing" from GUI, I get the following in IDEA:

java.rmi.ConnectIOException: Exception creating connection to: <my ip address>; nested exception is:
java.net.NoRouteToHostException: No route to host: connect
at sun.rmi.transport.tcp.TCPEndpoint.newSocket(TCPEndpoint.java:587)
at sun.rmi.transport.tcp.TCPChannel.createConnection(TCPChannel.java:185)
at sun.rmi.transport.tcp.TCPChannel.newConnection(TCPChannel.java:171)
at sun.rmi.server.UnicastRef.invoke(UnicastRef.java:94)
at com.yourkit.runtime.RemoteProgressCallbackImpl_Stub.update(Unknown Source)
at com.yourkit.runtime.Core.captureCPUSnapshot(Native Method)
at com.yourkit.runtime.Core.captureSnapshotImpl(Core.java:345)
at com.yourkit.runtime.AgentImpl.captureCPUSnapshot(AgentImpl.java:76)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:294)
at sun.rmi.transport.Transport$1.run(Transport.java:153)
at java.security.AccessController.doPrivileged(Native Method)
at sun.rmi.transport.Transport.serviceCall(Transport.java:149)
at sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:460)
at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:701)
at java.lang.Thread.run(Thread.java:595)
Caused by: java.net.NoRouteToHostException: No route to host: connect
at java.net.PlainSocketImpl.socketConnect(Native Method)
at java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:333)
at java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:195)
at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:182)
at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:364)
at java.net.Socket.connect(Socket.java:507)
at java.net.Socket.connect(Socket.java:457)
at java.net.Socket.<init>(Socket.java:365)
at java.net.Socket.<init>(Socket.java:178)
at sun.rmi.transport.proxy.RMIDirectSocketFactory.createSocket(RMIDirectSocketFactory.java:22)
at sun.rmi.transport.proxy.RMIMasterSocketFactory.createSocket(RMIMasterSocketFactory.java:128)
at sun.rmi.transport.tcp.TCPEndpoint.newSocket(TCPEndpoint.java:569)
... 18 more
Anton Katilin
Posts: 6172
Joined: Wed Aug 11, 2004 8:37 am

Post by Anton Katilin »

Thanks for the report. Looks like something wrong happens inside Java network stuff when system is under heavy pressure.

Please don't use CPU tracing, please use sampling instead.

The only reason to prefer tracing over sampling is when one has a need to measure method invocation counts. If you only need times, sampling is your friend.
Furthermore, in recent builds we have dramatically improved quality of sampling results on e.g. Windows.

We're currently working to resolve the issue with tracing. I hope we'll be able to intorduce the new approach in one of the next builds.
Post Reply