Bug 452665 - [jdt] Socket operation on nonsocket: configureBlocking
Summary: [jdt] Socket operation on nonsocket: configureBlocking
Status: CLOSED WONTFIX
Alias: None
Product: JDT
Classification: Eclipse Project
Component: Debug (show other bugs)
Version: 4.5   Edit
Hardware: All All
: P3 normal with 2 votes (vote)
Target Milestone: ---   Edit
Assignee: JDT-Debug-Inbox CLA
QA Contact:
URL:
Whiteboard: stalebug
Keywords: needinfo
Depends on:
Blocks:
 
Reported: 2014-11-21 09:44 EST by EPP Error Reports CLA
Modified: 2020-05-15 13:12 EDT (History)
9 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description EPP Error Reports CLA 2014-11-21 09:44:21 EST
Hello committers,

we received a new error report for Eclipse 4.5.0.I20141029-2000.


General Information:
    anonymous-id:         94f7bd67-c628-4edb-8634-728a7ed64345
    eclipse-build-id:     4.5.0.I20141029-2000
    eclipse-product:      org.eclipse.epp.package.committers.product
    operating system:     Windows7 6.1.0 (x86_64) - win32
    java-runtime-version: 1.8.0_20-b26

The following plug-ins were present on the execution stack (*):
    1. org.eclipse.jdt.launching_3.7.200.v20140901-1234
    2. org.eclipse.jdt_3.11.0.v20141029-2000


Error Status:

    code:                   120
    plugin:                 org.eclipse.jdt.launching_3.7.200.v20140901-1234
    message:                Cannot connect to VM
    fingerprint:            3db46cb3
    exception class:        java.net.SocketException
    exception message:      Socket operation on nonsocket: configureBlocking
    number of children:     0
    
    java.net.SocketException: Socket operation on nonsocket: configureBlocking
    at java.net.DualStackPlainSocketImpl.configureBlocking(DualStackPlainSocketImpl.java:-2)
    at java.net.DualStackPlainSocketImpl.socketAccept(DualStackPlainSocketImpl.java:141)
    at java.net.AbstractPlainSocketImpl.accept(AbstractPlainSocketImpl.java:404)
    at java.net.PlainSocketImpl.accept(PlainSocketImpl.java:199)
    at java.net.ServerSocket.implAccept(ServerSocket.java:545)
    at java.net.ServerSocket.accept(ServerSocket.java:513)
    at org.eclipse.jdi.internal.connect.SocketTransportService.accept(SocketTransportService.java:103)
    at org.eclipse.jdi.internal.connect.SocketTransportImpl.accept(SocketTransportImpl.java:59)
    at org.eclipse.jdi.internal.connect.SocketListeningConnectorImpl.accept(SocketListeningConnectorImpl.java:153)
    at org.eclipse.jdt.internal.launching.StandardVMDebugger$ConnectRunnable.run(StandardVMDebugger.java:110)
    at java.lang.Thread.run(Thread.java:745)
   

    

Messages, stacktraces, and nested status objects may be shortened. Please visit 
http://dev.eclipse.org/recommenders/committers/confess/0.5/reports/-
for the complete error log.


Some general information and guidelines about how to use this bug report:

1. Feel free to move this bug to your own product and components. Please note
   that this bug is only accessible to Eclipse committers. If you move this bug
   please make sure that it's still in the "Security Advisor" group.

2. The bug contents of the fields status, resolution, keywords, and whitelist
   are presented to reporters. If you needs more information, please set the
   keyword "needinfo". This will trigger a specialized dialog asking the user
   to provide further details.

3. Use the following resolutions for the following situations:
   * CLOSED / FIXED: This bug has been fixed. Please provide additional
     information in the whiteboard field.
   * CLOSED / WORKSFORME: Use this resolution if you can't reproduce this issue
     and request further information. Please use the whiteboard text to specify
     more details what a user should provide and how.
   * CLOSED / INVALID: Use this resolution if the reported problem is a
     'user-configuration' problem. Please consider giving hints how to fix
     these issues in the whiteboard field.
   * CLOSED / NOT ECLIPSE: Use this if the problem is caused by another plugin
     not developed at Eclipse.org
   * CLOSED / MOVED: If this bug has been moved else where. Please provide more 
     information (e.g. a link) in the whiteboard field.

4. Please remember that only committers can view and comment on this bug. You
   may, however, manually add the reporting user to the bug's cc list. But keep
   in mind that the report may contains sensitive information.

5. If you are missing a feature, please file a enhancement request here:
   https://bugs.eclipse.org/bugs/enter_bug.cgi?product=Recommenders.Incubator&component=Stacktraces
    
 

Thank you for your assistance.
Your friendly error-reports-inbox.


--
* Note: The list of present bundles and their respective versions was
  calculated by package naming heuristics. This may or may not reflect reality.
Comment 1 EPP Error Reports CLA 2014-11-21 09:44:23 EST
I've looked up the (to date) top-3 most similar bug groups and listed the 
closest bug of each group below. This report may or may not be duplicate of
those (low or similar scores for all entries may indicate that this hasn't
been reported yet):

>     1. Bug 444010: Cannot connect to VM (err_grp: 5bff4476) – 0,7    
>     2. Bug 451390: [ant] Error logged from Ant UI: – 0,6    
>     3. Bug 450637: [jdt] Cannot connect to VM – 0,4    


If this report actually is a duplicate of those, please mark it as such. This
information helps me to improve the recommendations further for the next issue.

Thank you for your assistance.
Your friendly error-reports-inbox.
Comment 2 Marcel Bruch CLA 2014-12-10 07:51:45 EST
Can a jdt committer shed some light on this error message? I don't know how to interpret the message and the stacktrace. TY.
Comment 3 Michael Rennie CLA 2014-12-10 10:32:31 EST
(In reply to Marcel Bruch from comment #2)
> Can a jdt committer shed some light on this error message? I don't know how
> to interpret the message and the stacktrace. TY.

I have seen a similar message in cases where the socket connection is failing due to network configuration issues (firewalls, etc). Bug 65385 (and its dupes) have a bunch of reports about this.

Is there any way to see what the console output was when the launch failed?

If it was something like:

FATAL ERROR in native method: JDWP No transports initialized, jvmtiError=AGENT_ERROR_TRANSPORT_INIT(197)

ERROR: transport error 202: connect failed: Connection refused
ERROR: JDWP Transport dt_socket failed to initialize, TRANSPORT_INIT(510)

then we would likely have a configuration issue.
Comment 4 Marcel Bruch CLA 2014-12-10 10:36:21 EST
This is not yet (automatically) possible. For now, we have to use needinfo. But I'm currently thinking about storing some information like a thread dump, active editor content, (and maybe) console output until an error was reported and iff the bug ticket has the needinfo flag set, a popup would occur on the server side asking the user to send this (previously gathered) information.

But this won't be in place before M5 or M6.
Comment 5 Vlad Dumitrescu CLA 2015-07-17 09:14:59 EDT
I got hit by this issue when trying to execute an Ant script and it started working when I noticed that it was using JDK 1.6 and I changed it to 1.7. I hope this helps debugging, it would be nice if at least the error message was a little more helpful.
Comment 6 Lothar Kimmeringer CLA 2016-03-16 15:39:02 EDT
I found this report since I had the very same error message and found the reason for it while creating the account for this site ;-)

A testcase of mine was working for years and failing suddenly with this message. I realized that I had an active VPN using Cisco AnyConnect during the test. After disconnecting the VPN the error vanished.

In this test I create a ServerSocket by calling
new ServerSocket(0)
which tries to bind itself to all network interfaces including the one being created by the VPN-client. It seems that the client is denying this, leading to the exception reported in this bug.

Here is my stacktrace for comparison:
java.net.SocketException: Socket operation on nonsocket: configureBlocking
	at java.net.DualStackPlainSocketImpl.configureBlocking(Native Method)
	at java.net.DualStackPlainSocketImpl.socketAccept(DualStackPlainSocketImpl.java:131)
	at java.net.AbstractPlainSocketImpl.accept(AbstractPlainSocketImpl.java:398)
	at java.net.PlainSocketImpl.accept(PlainSocketImpl.java:183)
	at java.net.ServerSocket.implAccept(ServerSocket.java:522)
	at java.net.ServerSocket.accept(ServerSocket.java:490)
	at com.mypackage.__Test_ISProxySelector$SocksProxyThread.run(__Test_ISProxySelector.java:313)
Comment 7 George Luiz Rosa CLA 2017-05-17 20:01:30 EDT
The Same Error

eclipse.buildId=4.6.3.M20170301-0400
java.version=1.8.0_131
java.vendor=Oracle Corporation
BootLoader constants: OS=win32, ARCH=x86_64, WS=win32, NL=pt_BR
Framework arguments:  -product org.eclipse.epp.package.jee.product
Command-line arguments:  -os win32 -ws win32 -arch x86_64 -product org.eclipse.epp.package.jee.product -clean

org.eclipse.jdt.launching
Error
Wed May 17 20:30:54 BRT 2017
Cannot connect to VM

java.net.SocketException: Socket operation on nonsocket: configureBlocking
	at java.net.DualStackPlainSocketImpl.configureBlocking(Native Method)
	at java.net.DualStackPlainSocketImpl.socketAccept(Unknown Source)
	at java.net.AbstractPlainSocketImpl.accept(Unknown Source)
	at java.net.PlainSocketImpl.accept(Unknown Source)
	at java.net.ServerSocket.implAccept(Unknown Source)
	at java.net.ServerSocket.accept(Unknown Source)
	at org.eclipse.jdi.internal.connect.SocketTransportService.accept(SocketTransportService.java:103)
	at org.eclipse.jdi.internal.connect.SocketTransportImpl.accept(SocketTransportImpl.java:60)
	at org.eclipse.jdi.internal.connect.SocketListeningConnectorImpl.accept(SocketListeningConnectorImpl.java:157)
	at org.eclipse.jdt.internal.launching.StandardVMDebugger$ConnectRunnable.run(StandardVMDebugger.java:112)
	at java.lang.Thread.run(Unknown Source)
Comment 8 Kevin Brem CLA 2017-05-30 10:28:46 EDT
I get the same error when I pass an invalid -X parameter to the VM. I accidentally passed -Xss=5m instead of -Xss5m.
The error is also reproducable for other invalid -X parameter specifications -- e.g. -Xmx=10000m instead of -Xmx10000m.
Comment 9 Sarika Sinha CLA 2017-05-31 00:46:18 EDT
Will investigate if could at least give some useful message.
Comment 10 Andrey Loskutov CLA 2017-05-31 01:28:06 EDT
(In reply to Sarika Sinha from comment #9)
> Will investigate if could at least give some useful message.

I wonder if we should NOT use default port 0 if we can't understand the port argument, and just stop there with the appropriate message.
Comment 11 Sarika Sinha CLA 2017-06-07 02:11:21 EDT
(In reply to Andrey Loskutov from comment #10)
> (In reply to Sarika Sinha from comment #9)
> > Will investigate if could at least give some useful message.
> 
> I wonder if we should NOT use default port 0 if we can't understand the port
> argument, and just stop there with the appropriate message.

@Andrey, You want to work on this ?
Comment 12 Eclipse Genie CLA 2017-07-10 04:55:42 EDT
New Gerrit change created: https://git.eclipse.org/r/100974
Comment 13 Andrey Loskutov CLA 2017-07-10 04:58:34 EDT
(In reply to Sarika Sinha from comment #11)
> @Andrey, You want to work on this ?

Not really, as the we have no idea about the root cause & steps to reproduce.

(In reply to Eclipse Genie from comment #12)
> New Gerrit change created: https://git.eclipse.org/r/100974

This is not the fix, rather allowing us to fail early enough if the address is not properly specified. I still have no clue how this can happen.

@Everyone on CC: if you can reproduce, please provide exact steps, launch configurations and console errors printed by the Eclipse while trying to connect to the JVM.
Comment 15 Sarika Sinha CLA 2018-04-13 03:01:55 EDT
Moving out of 4.8.
Comment 16 Eclipse Genie CLA 2020-05-15 13:12:37 EDT
This bug hasn't had any activity in quite some time. Maybe the problem got resolved, was a duplicate of something else, or became less pressing for some reason - or maybe it's still relevant but just hasn't been looked at yet. As such, we're closing this bug.

If you have further information on the current state of the bug, please add it and reopen this bug. The information can be, for example, that the problem still occurs, that you still want the feature, that more information is needed, or that the bug is (for whatever reason) no longer relevant.

--
The automated Eclipse Genie.